xerberus.api

Documentation for eth_defi.xerberus.api Python module.

Fetch helpers for Xerberus public REST API endpoints.

Thin wrappers around individual endpoints. Each function takes a XerberusSession and returns parsed data or raises XerberusAPIError.

Authenticated calls use headers set on the session (x-api-key and x-user-email). Build the session with an explicit api_email or with operator-supplied XERBERUS_API_EMAIL — do not invent email values.

See Xerberus API documentation and README-xerberus.md for authentication details.

Functions

fetch_healthcheck(session[, group, timeout])

Fetch plain-text liveness for a route group.

fetch_registry_scores(session[, types, timeout])

Fetch composite scores from GET /registry/scores.

fetch_vault_list(session, platform[, timeout])

Fetch active vaults for one platform from GET /vault/list.

fetch_vault_report_url(session, address[, ...])

Fetch dendrogram report URL for a vault address.

fetch_registry_scores(session, types=None, timeout=60.0)

Fetch composite scores from GET /registry/scores.

Parameters
Returns

List of entity dicts with type, id, name, chain, address, chainId, score.

Return type

list[dict]

fetch_vault_list(session, platform, timeout=60.0)

Fetch active vaults for one platform from GET /vault/list.

Parameters
Returns

List of vault dicts with id, name, platform, chain, address, chainId, score.

Return type

list[dict]

fetch_vault_report_url(session, address, timeout=60.0)

Fetch dendrogram report URL for a vault address.

Parameters
Returns

Report URL string, or None if the address is not mapped (HTTP 404).

Return type

Optional[str]

fetch_healthcheck(session, group='registry', timeout=60.0)

Fetch plain-text liveness for a route group.

Healthchecks are unauthenticated and return plain text (not a JSON envelope). They should not be rate-limited aggressively.

Parameters
Returns

Response body text.

Return type

str