Skip to content

Integration contract

Contract for anyone building on DAY.

APIhttps://dayprotocol.com/api/v1
OpenAPIopenapi.json
AuthX-API-Key (owner / agent / keeper). Never use X-Role.
GuidesAgent API · Route catalog

Money paths: /api/v1/wallets/{address}/…
Public paths: /api/v1/day/…


HTTPMeaning
200Done
202Prepared (plan ready, not broadcast)
422Blocked (outcome: "blocked", blockers[])
401Missing or invalid API key
403Wrong role or wallet not allowed for this key
404Unknown resource
429Rate limited

Branch on the status line, then read the body.


  • Catalog: GET /api/v1/day/errors
  • Shape: { code, message, retryable, blockers: [{ code, detail? }] }
  • Renaming a code is a breaking change; new codes may be added.

Common codes: UNAUTHORIZED, INVALID_API_KEY, WALLET_SCOPE, NOT_FOUND, RATE_LIMITED.

Plan endpoints often return 200 with status: "blocked" — check the body.


MethodPathAuth
GET/wallets/{address}/positionowner | agent
GET/wallets/{address}/portfolioowner | agent
GET/wallets/{address}/performanceowner | agent
POST/wallets/batch/positionsowner | agent (max 50)

Performance fields that are unknown are null — never fabricated APY.


Subscribe with an owner key. Events include autopilot ticks, harvest results, and bridge delivery. Payloads never include secrets or private keys.

See OpenAPI and Agent API for the current event set.


  • API series: v1
  • Client may send X-DAY-API-Client-Version
  • Server returns version headers on responses
  • Breaking changes ship as a new major series, not silent renames

Details: Versioning