GET List Source Identities
List the identities that source credentials from a connected identity source, joined with their catalogs
GET
https://api.anakin.io/v1/wire/identity-sources/{id}/identitiesLists the identities that currently source their credentials from a given connection, joined with the catalog (website) each identity belongs to.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id required | string (UUID) | Identity source ID |
Response
200 OK{
"status": "ok",
"identities": [
{
"id": "7c3f1a2b-4d5e-6f7a-8b9c-0d1e2f3a4b5c",
"name": "Prod login",
"is_default": false,
"catalog_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"catalog_slug": "neb",
"catalog_name": "Nebula",
"has_active_credential": true,
"created_at": "2026-06-01T09:00:00Z"
}
]
}| Field | Type | Description |
|---|---|---|
identities[].id | string (UUID) | Identity ID |
identities[].name | string | User-given name for the identity |
identities[].is_default | boolean | Marked as the user's default for its catalog |
identities[].catalog_id | string (UUID) | The catalog (website) this identity belongs to |
identities[].catalog_slug | string | Catalog slug, e.g. neb |
identities[].catalog_name | string | Human-readable catalog name |
identities[].has_active_credential | boolean | true = the identity still has non-expired session cookies (ready to use); false = it needs re-verify / login |
identities[].created_at | string | RFC3339 UTC — when the identity was created |
If no identities source credentials from this connection, identities is an empty array.
Error Responses
All errors return JSON of the form { "status": "error", "error": { "code": "...", "message": "..." } }.
| Code | HTTP | When |
|---|---|---|
NOT_FOUND | 404 | The source doesn't exist (message "Integration not found") |
FORBIDDEN | 403 | The source belongs to another user (message "Integration does not belong to user") |
Code Examples
curl https://api.anakin.io/v1/wire/identity-sources/f1e2d3c4-0000-0000-0000-000000000000/identities \
-H "X-API-Key: your_api_key"import requests
source_id = 'f1e2d3c4-0000-0000-0000-000000000000'
response = requests.get(
f'https://api.anakin.io/v1/wire/identity-sources/{source_id}/identities',
headers={'X-API-Key': 'your_api_key'},
)
for identity in response.json()['identities']:
ready = 'ready' if identity['has_active_credential'] else 'needs re-verify'
print(f"{identity['name']} ({identity['catalog_name']}) → {ready}")const sourceId = 'f1e2d3c4-0000-0000-0000-000000000000';
const response = await fetch(`https://api.anakin.io/v1/wire/identity-sources/${sourceId}/identities`, {
headers: { 'X-API-Key': 'your_api_key' }
});
const { identities } = await response.json();
for (const identity of identities) {
const ready = identity.has_active_credential ? 'ready' : 'needs re-verify';
console.log(`${identity.name} (${identity.catalog_name}) → ${ready}`);
}Rate limit
60 requests per minute per user.
Related
- GET /v1/wire/identity-sources — list connected sources
- GET /v1/wire/identities — list all your identities and their credentials
- Identity Sources guide — concepts and setup walkthrough