How the API works
The Edward Partner API gives investment intermediaries (IZ) programmatic read access to the data Edward holds for their book of business: client profiles, account balances and performance, portfolio composition, reserves, financial goals, deposits, rent settings, and fee schedules.
This is a read-only interface. No data can be created or changed through this API.
Access model
Each API key is issued to one intermediary organization and grants access to that organization's entire book of business — all of its clients, accounts, and advisors. There is no separate authentication for individual advisors or clients: if a partner wants to expose a scoped view (e.g. a single advisor's book, or an individual client's own accounts) to their own users, they build that on top of this API in their own systems, using the clientId and advisorId filters available on the relevant endpoints to narrow the data they request.
No key can access another organization's data.
Data freshness
Data is refreshed on a regular schedule rather than in real time. Every response reports when its data reflects — via the X-Data-As-Of response header, and via a dataAsOf field in the response body. Most resources report this down to the second; resources delivered as periodic snapshots (reserves, goals, deposits, rent, and fees, which are refreshed monthly) report a date.
Rate limits
Rate limits apply per API key (i.e. per organization, not per end user). Every successful response carries X-RateLimit-Limit and X-RateLimit-Remaining; those headers are the authoritative statement of the limit in force. Exceeding it returns 429 with a Retry-After header giving the seconds to wait. Contact us if your integration needs a higher limit.
The gateway refills continuously rather than resetting on the minute, so the limit behaves as a bucket rather than a window: a short burst can exceed X-RateLimit-Limit without being throttled at all, while a long enough burst is throttled before reaching that many calls in any single minute. Sustained throughput is what the figure describes. Read X-RateLimit-Remaining and back off on 429 rather than pacing against a wall clock — pacing leaves capacity unused, and a burst that succeeded once is not a promise that a longer one will.
The full contract
· Browse the API — every endpoint, every field, every error shape, rendered from the contract itself.
· The machine-readable OpenAPI 3.1 document is what you generate clients from, and there is a self-contained HTML render you can keep offline. Ask us for either; both are versioned, and the changelog records what changed between versions.
Where to go next
· Quickstart — the first working request, and the error format.
· Access — how a key is issued.