Obtain API credentials from Arcadia by registering as a developer at arcadia.com; authenticate using OAuth 2.0 client_credentials flow against the Arcadia authorization server to obtain a bearer token.
Create a credential submission for the customer by POSTing to the /utility-credentials endpoint with the customer's utility username, password (via the Arcadia secure credential submission flow — never log or store the plaintext password), and the utility's identifier (arcadia-assigned utility code).
Poll the credential status endpoint (GET /utility-credentials/{id}) until the status transitions from 'pending' to 'connected' or 'error'; 'connected' indicates Arcadia has successfully authenticated with the utility on the customer's behalf and data collection has begun.
Once connected, retrieve bill statements via GET /accounts/{account_id}/statements which returns a list of bill statement objects with billing period start/end dates, total charges, and a breakdown by charge component (energy, demand, taxes, fees).
For interval usage data, call GET /accounts/{account_id}/intervals?start={date}&end={date} to retrieve time-series meter data; parse the response array of {start, end, kwh} objects and apply the ReadingType metadata to confirm units and accumulation behavior.
Handle credential expiration: utility websites change passwords and session requirements; implement a webhook or polling loop on the credential status endpoint to detect 'error' states and trigger a re-authorization flow for the customer when credentials become invalid.
Known gotchas
Arcadia's credential-based utility data access (screen-scraping / utility portal login) operates in a legal grey area in some jurisdictions; confirm with Arcadia support and your legal counsel whether this access method is permitted by the target utility's terms of service before deploying to production.
Utility bill data from Arcadia may have a latency of several days after the billing period closes; do not set customer expectations around real-time bill data — Arcadia's interval data is typically available with 24–48 hours delay for smart-meter utilities but may be monthly-only for older AMR meters.
The Arcadia credential submission API requires that customer credentials be transmitted through Arcadia's secure endpoint and never stored by your application; implement the tokenized credential flow (where Arcadia returns a credential token rather than accepting plaintext credentials directly in your API call) to reduce PCI/SOC scope.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp