{ "opencollection": "1.0.0", "info": { "name": "Edge Impulse Devices API", "version": "1.0.0" }, "request": { "auth": { "type": "apikey", "key": "x-api-key", "value": "{{x-api-key}}", "placement": "header" } }, "items": [ { "info": { "name": "Devices", "type": "folder" }, "items": [ { "info": { "name": "Lists devices", "type": "http" }, "http": { "method": "GET", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/devices", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" } ] }, "docs": "List all devices for this project. Devices get included here if they connect to the remote management API or if they have sent data to the ingestion API and had the `device_id` field set." }, { "info": { "name": "Get device", "type": "http" }, "http": { "method": "GET", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/device/:deviceId", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ] }, "docs": "Retrieves a single device" }, { "info": { "name": "Delete device", "type": "http" }, "http": { "method": "DELETE", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/device/:deviceId", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ] }, "docs": "Delete a device. When this device sends a new message to ingestion or connects to remote management the device will be recreated." }, { "info": { "name": "Start sampling", "type": "http" }, "http": { "method": "POST", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/device/:deviceId/start-sampling", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Start sampling on a device. This function returns immediately. Updates are streamed through the websocket API." }, { "info": { "name": "Start inference debug stream", "type": "http" }, "http": { "method": "POST", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/device/:deviceId/debug-stream/inference/start", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ] }, "docs": "Start an inference debug stream for this device with inference results (and images if a camera is attached). Updates are streamed through the websocket API. A keep-alive token is returned, you'll need to ping the API (with keepDeviceDebugStreamAlive) every 10 seconds (so we know when the client is disconnected)." }, { "info": { "name": "Start snapshot debug stream", "type": "http" }, "http": { "method": "POST", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/device/:deviceId/debug-stream/snapshot/start", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Start a snapshot debug stream for this device with a current camera view. Updates are streamed through the websocket API. A keep-alive token is returned, you'll need to ping the API (with keepDeviceDebugStreamAlive) every 10 seconds (so we know when the client is disconnected)." }, { "info": { "name": "Keep debug stream alive", "type": "http" }, "http": { "method": "POST", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/device/:deviceId/debug-stream/keep-alive", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ], "body": { "type": "json", "data": "{}" } }, "docs": "If you have opened a debug stream, ping this interface every 10 seconds to let us know to keep the debug stream open." }, { "info": { "name": "Stop debug stream", "type": "http" }, "http": { "method": "POST", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/device/:deviceId/debug-stream/stop", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ], "body": { "type": "json", "data": "{}" } }, "docs": "If you have opened a debug stream, close it." }, { "info": { "name": "Get impulse records", "type": "http" }, "http": { "method": "POST", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/device/:deviceId/get-impulse-records", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Retrieve impulse records from the device." }, { "info": { "name": "Create device", "type": "http" }, "http": { "method": "POST", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/devices/create", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Create a new device. If you set `ifNotExists` to `false` and the device already exists, the `deviceType` will be overwritten." }, { "info": { "name": "Rename device", "type": "http" }, "http": { "method": "POST", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/devices/:deviceId/rename", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Set the current name for a device." }, { "info": { "name": "Trigger model update request", "type": "http" }, "http": { "method": "POST", "url": "https://studio.edgeimpulse.com/v1/api/:projectId/devices/:deviceId/request-model-update", "params": [ { "name": "projectId", "value": "", "type": "path", "description": "Project ID" }, { "name": "deviceId", "value": "", "type": "path", "description": "Device ID" } ] }, "docs": "Trigger a model update request, this only works for devices connected to remote management server in inference mode." } ] } ], "bundled": true }