Reference
API conventions
Cross-cutting rules that apply across endpoints, plus a few known inconsistencies worth knowing up front. See the API reference for per-endpoint detail and the workflows for runnable examples.
Authentication
- Send your key in the
X-API-KEYheader on every request (except the public trial flow). - Keys are scoped: a tenant key may only act on its own
{tenantId}(other tenants are masked as404); a full (admin) key additionally sees administrative endpoints. - Responses are serialized in PascalCase (e.g.
TenantId,ApiKey).
Pagination (three styles)
- PageOptions (Discovery, Reporting, Monitoring): send
PageSizeand aMarker(the continuation token from the previous response'sOptions.Marker). Page size is capped at 100. - top / skip (Search): the documents endpoint uses raw
topandskipintegers (defaults 50 / 0). - OData: OData-enabled collections also honour
$top/$skip/$orderby/$filterdirectly on the URL.
Filtering
- The search endpoint takes a single OData
filterstring and a full-textquery; collection fields use theany(...)lambda. - Discovery exposes convenience params
filter.name/filter.type; OData-enabled endpoints accept$filter. - Multi-value query params repeat the key:
?jobTypes=BACKUP&jobTypes=RESTORE— not a comma-separated list.
Dates & times
- Times are UTC ISO 8601 unless noted.
- Date filters differ by area: Discovery item listing uses full timestamps (
fromDate/toDate), while Reporting uses calendar dates (startDate/endDate,YYYY-MM-DD).
Resource ids
- Route id segments are
{id}on Location/Archive endpoints but{jobId}on Jobs — both are GUIDs.
Errors
400invalid input ·401missing/invalid key ·404not found or cross-tenant masked ·409conflicting state ·429rate-limited (trial endpoints) ·500unexpected.