Call log
The call log is your caller-scoped history of executions, for reconciliation, support and usage review. Every route requires executions:read and returns only your own executions. Records contain no request content or results.
List: GET /v1/executions
Section titled “List: GET /v1/executions”Newest first, cursor paginated.
| Query | Meaning |
|---|---|
from, to |
RFC 3339 window over started_at, to exclusive. Default: the last 24 hours. At most 31 days |
invocation_id |
Exact invocation. Without from/to it searches the whole retention |
capability, operation, provider |
Exact filters |
outcome |
succeeded, failed, unknown, accepted, expired, or in_progress. Matches the reported outcome, so a stuck record past its deadline matches unknown |
limit |
1–100, default 50 |
cursor |
meta.next_cursor of the previous page |
curl -sS "https://services.zgi.im/v1/executions?outcome=unknown&limit=20" \ -H "Authorization: Bearer $ZGI_SERVICES_TOKEN"{ "code": 0, "message": "success", "data": [ { "id": "exe_...", "invocation_id": "...", "outcome": "unknown", "upstream_ref": "...", "duration_ms": 30012 } ], "meta": { "per_page": 20, "has_more": true, "next_cursor": "eyJ0Ijoi..." }}Call-log execution blocks add two fields: upstream_ref (the provider’s own request or task id, for checking against the provider’s dashboard) and duration_ms.
One execution: GET /v1/executions/{id}
Section titled “One execution: GET /v1/executions/{id}”Another caller’s id returns 404 COMMON.NOT_FOUND.
Summary: GET /v1/executions/summary
Section titled “Summary: GET /v1/executions/summary”Aggregates per (capability, provider) over a window of at most 31 days (default: the last 24 hours).
curl -sS "https://services.zgi.im/v1/executions/summary?from=2026-10-01T00:00:00Z&to=2026-10-08T00:00:00Z" \ -H "Authorization: Bearer $ZGI_SERVICES_TOKEN"{ "code": 0, "message": "success", "data": { "from": "2026-10-01T00:00:00Z", "to": "2026-10-08T00:00:00Z", "rows": [{ "capability": "public_holiday", "provider": "holiday-cn", "total": 120, "succeeded": 118, "failed": 2, "unknown": 0, "accepted": 0, "expired": 0, "in_progress": 0, "provider_requests": 0, "units": { "days": 2760 }, "duration_ms_p50": 3, "duration_ms_p95": 9 }] }}Errors
Section titled “Errors”Invalid filters, windows or cursors return 422 COMMON.VALIDATION_FAILED; an unavailable record store returns 503 SERVICES.RECORD_UNAVAILABLE.
Retention and privacy
Section titled “Retention and privacy”Execution records are kept for 90 days and then pruned. They hold identifiers, outcome, error classification, usage and the provider’s request reference, and never queries, URLs, document content, results, credentials or provider error bodies.