Key concepts

Organizations, provider connections, declared models, the default connection, gateway keys, applications and teams: the vocabulary used in all ACOG docs.

3 min read Updated View as Markdown Report a problem

Organization

An organization is a tenant. Every connection, key, budget, cache entry, usage record and invoice belongs to exactly one organization, and nothing is shared between organizations. You can belong to more than one; the organization switcher at the top of the sidebar moves between them.

Provider connection

A connection is one set of credentials for one platform and one model family, for example Anthropic models on Google Vertex AI in project my-project or GPT models on Azure OpenAI resource my-resource. Platforms are called channels in the API:

ChannelModel families
directanthropic (the Anthropic API), openai (the OpenAI API)
bedrockanthropic (models on AWS Bedrock)
vertexanthropic (Claude on Vertex AI), gemini
azureopenai (Azure OpenAI)
customcompatible (any OpenAI-compatible server)

An organization has at most one connection per channel and family. Credentials are encrypted at rest and can be replaced but never read back.

Declared models

Each connection declares the models it serves. Routing is by model: the model field of a request selects the connection that declared it. You never choose a provider in a request; you choose a model.

  • A declared id ending in * matches any model id with that prefix, and * alone matches every model.
  • A version suffix is matched loosely: a request for claude-haiku-4-5 reaches a connection that declared claude-haiku-4-5@20251001, and the other way round. A match never crosses model families or major versions.
  • A model that no connection declares is refused with 409 model_not_configured.

If several connections declare the same model, ACOG spreads requests across them and fails over between them. See Routing and failover.

Default connection and default model

One connection is the organization’s default, and each connection has a default model. A request for model: "auto" goes to the default connection’s default model when auto mode is off. A model that the default connection declares is always served by the default connection.

Gateway key

A gateway key (acog_…) authenticates requests to the gateway and to the management API. There are two kinds:

Key typeWho uses itUsage is attributed toLimits and model rules
User keyA personThat personTheir per-person limits apply
Service keyAn application, script or botThe keySet on the key itself

A key carries scopes, which are permissions. A key needs the proxy scope to call the gateway. A key never has more permissions than the person who created it. See API keys.

Application

An application is a name for traffic, such as support-bot or nightly-etl. Assign service keys to it and every request made with those keys is reported under that application, in reports and in traces. Attribution comes only from the key: no request header can change it. Requests from keys with no application are reported as unattributed. See Applications.

Team

A team groups members below the organization. Budgets, rate limits and model access can be set per team. In the budgets API a team is called a group. See Teams.

Scopes of control

Governance rules attach to scopes, from broadest to narrowest:

RuleScopes
Model accessOrganization, team, user, service key
BudgetsOrganization, team (group), user
Rate limitsOrganization, application, team, user, service key
Data loss prevention rulesOrganization, team, user, application

A narrower scope can only tighten what a broader one allows.

Request outcome (disposition)

Every request is recorded with how it was served:

DispositionMeaning
Exact cacheAnswered from the response cache; no upstream call
Semantic cacheAnswered from the semantic cache; no upstream call
DedupShared an identical in-flight request’s upstream call
OptimizedForwarded with savings applied (prompt caching, cleanup, routing)
BatchServed by the provider’s batch service
Pass-throughForwarded unchanged