GET List Containers

List the containers (1Password vaults, Azure Key Vaults) a connected identity source can read

GEThttps://api.anakin.io/v1/wire/identity-sources/{id}/containers

Lists the containers a connected identity source can read. A container is a provider's top-level grouping of secrets:

ProviderA container isAn entry is
1passworda vaulta login item
azure_key_vaulta Key Vaulta secret

This endpoint is provider-agnostic — the source's provider decides what gets listed, and the response shape is the same either way. Use a container's id as the \{container_id\} path segment in GET /v1/wire/identity-sources/{id}/containers/{container_id}/entries to browse what's inside.

This is a live call to the provider — the engine uses the source's stored credential to enumerate containers at request time, so the result always reflects the current state of the connected account.

Requires an X-API-Key. The source must belong to the authenticated user.


Path Parameters

ParameterTypeDescription
id requiredstring (UUID)The connected source's ID. Get it from GET /v1/wire/identity-sources

Response

200 OK
{
  "status": "ok",
  "containers": [
    {
      "id": "abcd1234",
      "name": "Engineering"
    }
  ]
}
FieldTypeDescription
containers[].idstringContainer ID. Use this as \{container_id\} in the entries endpoint, and as container in a source_ref
containers[].namestringDisplay name
containers[].item_countnumberHow many entries the container holds. Optional — omitted when the provider doesn't report it

Container IDs are not always opaque. A 1Password vault ID is a short alphanumeric string, but an Azure Key Vault container ID is the vault's URL — https://my-vault.vault.azure.net. Percent-encode it when you put it in the entries path.


Error Responses

All errors return JSON of the form { "status": "error", "error": { "code": "...", "message": "..." } }.

CodeHTTPWhen
SOURCE_AUTH_FAILED400The provider rejected the stored credential — rotate or reconnect the source (it is now marked revoked)
SOURCE_FORBIDDEN400The credential is valid but has no access to the container. Grant it access at the provider, then retry
SOURCE_INACTIVE400The source is not active
SOURCE_THROTTLED429The provider is rate-limiting us. Retry shortly
SOURCE_UNREACHABLE502Could not reach the provider. If the vault restricts network access, allow our egress addresses
SOURCE_UPSTREAM_ERROR502The provider failed for an unclassified reason
PROVIDER_NOT_SUPPORTED400No source is registered for this provider in this engine version
PROVIDER_NOT_BROWSABLE400The provider doesn't support browsing
SOURCE_NOT_AVAILABLE503The source resolver isn't configured on this engine
NOT_FOUND404Source not found
FORBIDDEN403The source belongs to another user

SOURCE_AUTH_FAILED is the only failure that revokes the source. A permission failure against one container leaves the connection healthy — every other container on it still works.


Code Examples

curl https://api.anakin.io/v1/wire/identity-sources/f1e2d3c4-b5a6-7890-1234-56789abcdef0/containers \
  -H "X-API-Key: your_api_key"

Rate limit

30 requests per minute per user (each call makes a live request to the provider).