generated: '2026-10-03' method: searched generator: extract-docs-artifacts.py (local) source: https://arcmira.com/docs/requests sources: - https://arcmira.com/docs/requests - https://arcmira.com/agent-setup - https://arcmira.com/docs/index.md - https://arcmira.com/docs/teams/setup.md idempotency: coverage: partial header: Idempotency-Key retention: 'key persists for the duration of the mutation transaction; retries return 409 idempotency_conflict or Idempotency-Replayed: true' evidence: 'Send an Idempotency-Key on each logical mutation. A retry returns that outcome with Idempotency-Replayed: true. A changed operation with the same key returns 409 idempotency_conflict. GET reads need no key.' scope: - not enumerated on the pages read pagination: style: cursor params: - limit (1-100, default 20) - cursor (opaque token from previous response’s next_cursor) response_fields: - data (array) - has_more (boolean) - next_cursor (string or null) evidence: List endpoints use cursor pagination. No total counts. Cursors are opaque and must be passed back verbatim. versioning: API is versioned in the path (/v1). Additive changes are unannounced; removals are marked deprecated with a deprecation window. error_envelope: Errors include fields error.code, error.request_id, and doc_url. X-Request-Id header matches error.request_id on failures. authentication: 'Authorization: Bearer header. Scopes are defined per key (e.g., read, account:admin).' request_tracing: X-Request-Id header present on every response; same value as error.request_id on failures. rate_limit_signaling: Headers RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset on every response after key check. field_expansion: Absent docs: https://arcmira.com/docs/requests