GET List Entries
List the entries (1Password login items, Azure Key Vault secrets) inside a container on a connected identity source
https://api.anakin.io/v1/wire/identity-sources/{id}/containers/{container_id}/entriesLists the entries inside a single container — the selectable secrets you can bind a login to. A 1Password container yields login items; an Azure Key Vault container yields secrets. The response shape is the same for every provider.
This is a live call to the provider — the engine uses the source's stored credential to enumerate entries at request time.
Use an entry's id as key in the source_ref when creating a source-backed login via POST /v1/wire/login.
Requires an X-API-Key. The source must belong to the authenticated user.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id required | string (UUID) | The connected source's ID |
container_id required | string | A container ID from GET /v1/wire/identity-sources/{id}/containers |
Percent-encode
container_id. An Azure Key Vault container ID is a URL (https://my-vault.vault.azure.net), which has to survive as a single path segment — send it ashttps%3A%2F%2Fmy-vault.vault.azure.net. 1Password's alphanumeric vault IDs are unaffected, but encoding them is harmless, so encode unconditionally.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
domain | string | Case-insensitive substring. Filters to entries whose title or any associated URL contains it. This is what powers the catalog-domain pre-filter in the identity-creation UI. |
Response
200 OK{
"status": "ok",
"entries": [
{
"id": "wxyz5678",
"title": "Acme Prod",
"category": "Login",
"urls": [
{ "href": "https://acme.com/login", "label": "website" }
]
}
]
}| Field | Type | Description |
|---|---|---|
entries[].id | string | Entry ID. Use this as key in source_ref when creating a source-backed login |
entries[].title | string | Entry title as set at the provider |
entries[].category | string | Provider's own classification — a 1Password category such as Login, or an Azure secret's content type. Optional — omitted when unknown |
entries[].urls | array | Websites associated with the entry. Each element is { href, label }. For 1Password these are the item's own website fields; for Azure Key Vault it is the first domain / url / site / host tag found on the secret. Optional |
Results are capped, and the cap is per provider — 200 entries for 1Password, 500 for Azure Key Vault. A larger container is truncated silently; the response carries no "there are more" marker. Pass
domainto narrow the list to the site you're targeting rather than relying on the cap.
What domain matches differs by provider. 1Password matches the item title and the item's own website URLs. Azure Key Vault matches the secret name, any tag key or value, and — because a dotted domain can't appear in a secret name — the bare first label too, so acme.com finds a secret called acme-portal.
Entry listings never contain secret values — only the metadata needed to pick one.
Error Responses
All errors return JSON of the form { "status": "error", "error": { "code": "...", "message": "..." } }.
| Code | HTTP | When |
|---|---|---|
SOURCE_AUTH_FAILED | 400 | The provider rejected the stored credential — rotate or reconnect the source (it is now marked revoked) |
SOURCE_FORBIDDEN | 400 | The credential is valid but has no access to this container. Grant it access at the provider, then retry |
SOURCE_ITEM_NOT_FOUND | 400 | The container was not found. Check that container_id is percent-encoded |
SOURCE_INACTIVE | 400 | The source is not active |
SOURCE_THROTTLED | 429 | The provider is rate-limiting us. Retry shortly |
SOURCE_UNREACHABLE | 502 | Could not reach the provider. If the vault restricts network access, allow our egress addresses |
SOURCE_UPSTREAM_ERROR | 502 | The provider failed for an unclassified reason |
PROVIDER_NOT_SUPPORTED | 400 | No source is registered for this provider in this engine version |
PROVIDER_NOT_BROWSABLE | 400 | The provider doesn't support browsing |
SOURCE_NOT_AVAILABLE | 503 | The source resolver isn't configured on this engine |
NOT_FOUND | 404 | Source not found |
FORBIDDEN | 403 | The source belongs to another user |
Code Examples
# 1Password — opaque container id
curl "https://api.anakin.io/v1/wire/identity-sources/f1e2d3c4-b5a6-7890-1234-56789abcdef0/containers/abcd1234/entries?domain=acme.com" \
-H "X-API-Key: your_api_key"
# Azure Key Vault — container id is a URL, so it must be percent-encoded
curl "https://api.anakin.io/v1/wire/identity-sources/f1e2d3c4-b5a6-7890-1234-56789abcdef0/containers/https%3A%2F%2Fmy-vault.vault.azure.net/entries?domain=acme.com" \
-H "X-API-Key: your_api_key"import requests
from urllib.parse import quote
source_id = 'f1e2d3c4-b5a6-7890-1234-56789abcdef0'
container_id = 'https://my-vault.vault.azure.net' # or a 1Password vault id
response = requests.get(
f'https://api.anakin.io/v1/wire/identity-sources/{source_id}/containers/{quote(container_id, safe="")}/entries',
headers={'X-API-Key': 'your_api_key'},
params={'domain': 'acme.com'},
)
data = response.json()
if data['status'] == 'ok':
for entry in data['entries']:
print(f"{entry['id']} {entry['title']}")
else:
print(f"Error: {data['error']['code']} — {data['error']['message']}")const sourceId = 'f1e2d3c4-b5a6-7890-1234-56789abcdef0';
const containerId = 'https://my-vault.vault.azure.net'; // or a 1Password vault id
const params = new URLSearchParams({ domain: 'acme.com' });
const response = await fetch(
`https://api.anakin.io/v1/wire/identity-sources/${sourceId}/containers/${encodeURIComponent(containerId)}/entries?${params}`,
{ headers: { 'X-API-Key': 'your_api_key' } }
);
const data = await response.json();
if (data.status === 'ok') {
for (const entry of data.entries) {
console.log(`${entry.id} ${entry.title}`);
}
} else {
console.error(`Error: ${data.error.code} — ${data.error.message}`);
}Rate limit
30 requests per minute per user (each call makes a live request to the provider).
Related
- GET /v1/wire/identity-sources/{id}/containers — list containers first
- POST /v1/wire/login — sign in using the entry you picked
- GET /v1/wire/identity-sources — list connected sources