This page covers authentication, pagination, errors and rate limits — the things a specification renders badly. All 38 operations are documented in the API reference, generated from the OpenAPI 3.1 contract so it cannot drift from it. A Postman collection is generated from the same source.
Download the current OpenAPI 3.1.2 YAML or JSON. It includes device bootstrap, integration management, authenticated inbound IoT webhooks and signed outbound webhook destinations.
Base URL
https://platform.indagate.ai/api
Account and fleet
/api/accountCognito user/api/devicesTenant devices/api/devices/{deviceId}Name/location/api/enrolmentsOne-time enrolmentDevice protocol
/api/device/enrolToken exchange/api/device/bootstrapSigned verified installer/api/device/heartbeatTelemetry + OTA pollEdge 0.3.2 can use the heartbeat to request a five-minute, device-scoped upload for a new inference JPEG. Its exact size and SHA-256 are signed. After verification, authenticated GET /api/devices responses include a separate ten-minute viewing URL. The edge opens no inbound camera port.
Monitoring and model decisions
/api/monitorsRules + current state/api/monitorsCreate threshold rule/api/monitors/{monitorId}Update or pause/api/monitors/{monitorId}Remove rule/api/alertsActive + transition history/api/determinationsRecent VLM/VLA outcomes/api/determinationsRetain + evaluate outcomeDevice metrics and normalized model outcomes evaluate tenant-scoped warning and critical thresholds. The platform retains recovery transitions for 180 days and determinations for 90 days. Stable source event IDs prevent a repeated heartbeat from replaying the same decision.
IoT integrations
/api/integrationsTenant connections/api/integrationsCreate + shown-once secret/api/integrations/{integrationId}Update connection/api/integrations/{integrationId}Remove connection/api/integrations/{integrationId}/rotate-secretRotate shown-once secret/api/integrations/{integrationId}/eventsRecent normalized events/api/iot/devicesDiscovered endpoints/api/webhooks/{integrationId}Generic signed JSON/api/webhooks/{integrationId}/uplinkTTN uplinkReleases and agent access
/api/releasesApproved metadata/api/download?key=...Signed download/api/devices/{deviceId}/otaLinux OTA intent/api/tokensAgent tokens/api/tokensCreate shown-once token/api/tokens/{tokenId}Revoke tokenPublic access request
/api/invite-requestsStructured platform requestVersioning
The current web API remains under /api while the public contract stabilises. Breaking contract changes will be introduced through a versioned path or documented deprecation window. MCP has its own negotiated protocol version.