# Ambiguous API

> An interface whose names and parameters hide what it does, so callers must guess or read the implementation.

Record: `lexicon:ambiguous-api`
Kind: anti-pattern
Layer: [Contracts Core](https://banes-lab.com/records/layer/contracts-core.md)
Canonical: https://banes-lab.com/ontology/lexicon#lexicon-ambiguous-api

Listed in [Lexicon terms](https://banes-lab.com/api/records/lexicon.md), after [Technical/Domain Mismatch](https://banes-lab.com/records/lexicon/technical-domain-mismatch.md) and before [Clear Semantics](https://banes-lab.com/records/lexicon/clear-semantics.md).

## Category

- [Schema / Canonical Data / Semantics](https://banes-lab.com/records/lexicon-category/schema-canonical-data-semantics.md)

## Negated by

- [Intent-Revealing Interface](https://banes-lab.com/records/architecture/intent-revealing-interface.md)

## Linked from

- [Schema / Canonical Data / Semantics](https://banes-lab.com/ontology/principles/architecture-category-schema-canonical-data-semantics.md)
