{ "openapi": "3.0.1", "info": { "title": "ActionStreamer API", "description": "A web API for the ActionStreamer platform. Publish date: 2026-07-07 16:13:41 UTC", "termsOfService": "https://actionstreamer.com/terms-of-use", "contact": { "name": "Contact", "url": "https://actionstreamer.com/company" }, "version": "v1" }, "paths": { "/v1/agent/{agentID}": { "get": { "tags": [ "Agent" ], "summary": "Retrieves an individual agent based on the provided agentID.", "description": "Returns the requested agent when access is allowed.", "parameters": [ { "name": "agentID", "in": "path", "description": "The unique identifier of the agent to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Agent" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Agent" }, "example": { "key": 1, "deviceID": 201, "agentTypeID": 1, "agentIndex": 1, "currentEventID": 501, "processID": 4321, "version": "1.0.0", "agentName": "Example value", "agentDescription": "Example description", "recentOutput": "Agent started successfully.", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Agent" } } } } } }, "put": { "tags": [ "Agent" ], "summary": "Updates an agent.", "description": "Request body: JSON object. Updates selected runtime fields such as\r\n`currentEventID`, `processID`, `agentName`, `agentDescription`, and `recentOutput`.", "parameters": [ { "name": "agentID", "in": "path", "description": "The ID of the agent to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Agent" }, "example": { "key": 1, "deviceID": 201, "agentTypeID": 1, "agentIndex": 1, "currentEventID": 501, "processID": 4321, "version": "1.0.0", "agentName": "Example value", "agentDescription": "Example description", "recentOutput": "Agent started successfully.", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "Agent" ], "summary": "Applies a patch to an agent.", "description": "Request body: array of patch operations. Only allows patching\r\n`agentDescription`, `recentOutput`, `processID`, and `currentEventID`.", "parameters": [ { "name": "agentID", "in": "path", "description": "The ID of the agent to patch.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Agent" }, "example": { "key": 1, "deviceID": 201, "agentTypeID": 1, "agentIndex": 1, "currentEventID": 501, "processID": 4321, "version": "1.0.0", "agentName": "Example value", "agentDescription": "Example description", "recentOutput": "Agent started successfully.", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "delete": { "tags": [ "Agent" ], "summary": "Deletes an agent.", "description": "Deletes the agent.", "parameters": [ { "name": "agentID", "in": "path", "description": "The ID of the agent to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/agent/list": { "post": { "tags": [ "Agent" ], "summary": "Retrieves a list of agents with additional name details based on the provided filter criteria.", "description": "Request body: JSON object.\r\nReturns a list of agents with additional name details.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DateAndCountFilter" }, "example": { "deviceID": 201, "startDate": "2026-03-30T12:00:00.0000000Z", "endDate": "2026-03-30T12:00:00.0000000Z", "count": 25, "order": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Agent" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "agentTypeID": 1, "agentIndex": 1, "currentEventID": 501, "processID": 4321, "version": "1.0.0", "agentName": "Example value", "agentDescription": "Example description", "recentOutput": "Agent started successfully.", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] } }, "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Agent" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "agentTypeID": 1, "agentIndex": 1, "currentEventID": 501, "processID": 4321, "version": "1.0.0", "agentName": "Example value", "agentDescription": "Example description", "recentOutput": "Agent started successfully.", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "agentTypeID": 1, "agentIndex": 1, "currentEventID": 501, "processID": 4321, "version": "1.0.0", "agentName": "Example value", "agentDescription": "Example description", "recentOutput": "Agent started successfully.", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "agentType": "Device" } ] }, "text/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Agent" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "agentTypeID": 1, "agentIndex": 1, "currentEventID": 501, "processID": 4321, "version": "1.0.0", "agentName": "Example value", "agentDescription": "Example description", "recentOutput": "Agent started successfully.", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] } } } } } } }, "/v1/agent": { "post": { "tags": [ "Agent" ], "summary": "Creates a new agent or updates an existing agent.", "description": "This endpoint either creates a new agent or updates an existing one. It should be called at agent startup.\r\nRequest body: JSON object. Supports `deviceSerial` or `deviceName`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RegisterAgent" }, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "agentType": "Device", "agentVersion": "1.0.0", "agentIndex": 1, "processID": 4321 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Agent" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Agent" }, "example": { "key": 1, "deviceID": 201, "agentTypeID": 1, "agentIndex": 1, "currentEventID": 501, "processID": 4321, "version": "1.0.0", "agentName": "Example value", "agentDescription": "Example description", "recentOutput": "Agent started successfully.", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Agent" } } } }, "400": { "description": "Bad Request", "content": { "text/plain": { "schema": { "type": "string", "example": "Example value" } }, "application/json": { "schema": { "type": "string", "example": "Example value" } }, "text/json": { "schema": { "type": "string", "example": "Example value" } } } } } } }, "/v1/agenttype/list": { "get": { "tags": [ "AgentType" ], "summary": "Gets the agent type list.", "description": "Returns the supported agent types.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AgentType" }, "example": [ { "key": 1, "agentTypeName": "Device", "detailedDescription": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "agentTypeName": "Device", "detailedDescription": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/apikey/{apiKeyID}": { "get": { "tags": [ "APIKey" ], "summary": "Gets an API key by ID.", "description": "This endpoint requires an authenticated web session.", "parameters": [ { "name": "apiKeyID", "in": "path", "description": "The ID of the API key to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKey" }, "example": { "key": 1, "appID": 1, "aPIKeyDescription": "Example description", "accessKey": "Example value", "secretKey": "Example value", "status": 1, "lastAccessDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "APIKey" ], "summary": "Updates an API key.", "description": "Request body: JSON object. This endpoint requires an authenticated web\r\nsession and currently only updates `aPIKeyDescription`.", "parameters": [ { "name": "apiKeyID", "in": "path", "description": "The ID of the API key to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKey" }, "example": { "key": 1, "appID": 1, "aPIKeyDescription": "Example description", "accessKey": "Example value", "secretKey": "Example value", "status": 1, "lastAccessDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "APIKey" ], "summary": "Deletes an API key.", "description": "This endpoint requires an authenticated web session.", "parameters": [ { "name": "apiKeyID", "in": "path", "description": "The ID of the API key to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/apikey/list": { "get": { "tags": [ "APIKey" ], "summary": "Gets the API key list.", "description": "This endpoint requires an authenticated web session.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/APIKey" }, "example": [ { "key": 1, "userID": 101, "appID": 1, "aPIKeyDescription": "Example description", "accessKey": "Example value", "secretKey": "Example value", "status": 1, "lastAccessDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "appID": 1, "aPIKeyDescription": "Example description", "accessKey": "Example value", "secretKey": "Example value", "status": 1, "lastAccessDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/apikey": { "post": { "tags": [ "APIKey" ], "summary": "Creates an API key.", "description": "This endpoint requires an authenticated web session. A new access key and secret are generated automatically.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKey" }, "example": { "key": 1, "appID": 1, "aPIKeyDescription": "Example description", "accessKey": "Example value", "secretKey": "Example value", "status": 1, "lastAccessDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/audioclip/{audioClipID}": { "get": { "tags": [ "AudioClip" ], "summary": "Gets an audio clip by ID.", "parameters": [ { "name": "audioClipID", "in": "path", "description": "The audio clip ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "AudioClip" ], "summary": "Updates an audio clip.", "description": "Request body: JSON object.", "parameters": [ { "name": "audioClipID", "in": "path", "description": "The audio clip ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "AudioClip" ], "summary": "Applies a patch to an audio clip.", "description": "Request body: array of patch operations.\r\nOnly a limited set of fields such as `fileID` and `audioClipStatus` can be patched.", "parameters": [ { "name": "audioClipID", "in": "path", "description": "The audio clip ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": "Patch applied successfully." } } } } }, "delete": { "tags": [ "AudioClip" ], "summary": "Deletes an audio clip.", "parameters": [ { "name": "audioClipID", "in": "path", "description": "The audio clip ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/audioclip": { "post": { "tags": [ "AudioClip" ], "summary": "Creates an audio clip.", "description": "Request body: JSON object.\r\nThis endpoint is not used by devices.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateAudioClip" }, "example": { "deviceID": 201, "deviceName": "WearableDevice", "fileID": 1, "localFilePath": "Example value", "startTime": 1, "startTimeMs": 1, "clipLengthInSeconds": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/audioclip/{deviceSerial}": { "post": { "tags": [ "AudioClip" ], "summary": "Creates an audio clip for a device identified by serial number.", "parameters": [ { "name": "deviceSerial", "in": "path", "description": "The device serial number from the route.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/audioclip/createlist/{deviceSerial}": { "post": { "tags": [ "AudioClip" ], "summary": "Creates one or more audio clip records.", "description": "Request body: JSON array of audio clip objects.", "parameters": [ { "name": "deviceSerial", "in": "path", "description": "The device serial number from the route.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AudioClip" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/audioclip/upload": { "post": { "tags": [ "AudioClip" ], "summary": "Uploads one or more audio clips.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadAudioClips" }, "example": { "deviceID": 201, "audioClips": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/audioclip/list": { "get": { "tags": [ "AudioClip" ], "summary": "Gets the audio clip list.", "description": "This endpoint returns `501 Not implemented`.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AudioClip" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } }, "post": { "tags": [ "AudioClip" ], "summary": "Gets the filtered audio clip list.", "description": "Request body: JSON object.\r\nSupports an optional `alldevices=true` query parameter.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioClipEpochAndCountFilter" }, "example": { "deviceID": 201, "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "audioClipTypeID": 1, "tagList": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AudioClipWithNames" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "deviceName": "WearableDevice", "tagList": [ { "key": null, "tagName": null, "creationDate": null, "createdBy": null, "lastModifiedDate": null, "lastModifiedBy": null } ] } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "tagList": [ { "key": null, "tagName": null, "creationDate": null } ] } ] } } } } } }, "/v1/audioclip/concatenate": { "post": { "tags": [ "AudioClip" ], "summary": "Enqueue a concatenate clips event based on a start time and end time.", "description": "Request body: JSON object.\r\nSupports an optional `usevrs=true` query parameter.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConcatenateAudioClipsArgs" }, "example": { "deviceID": 201, "deviceName": "WearableDevice", "startEpoch": 1711800000, "endEpoch": 1711800000, "uploadURL": "https://api.actionstreamer.com/example", "postbackURL": "https://api.actionstreamer.com/example", "timeout": "Example value", "audioClips": [ { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Event" }, "example": { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/audioclip/extract/list": { "post": { "tags": [ "AudioClip" ], "summary": "Gets the extracted audio clip list.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceEpochRange" }, "example": { "deviceSerial": "10001234", "startEpoch": 1711800000, "endEpoch": 1711800000 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AudioClip" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/audioclip/devices/list": { "post": { "tags": [ "AudioClip" ], "summary": "Gets the audio clip list for multiple devices.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DevicesEpochAndCountFilter" }, "example": { "deviceIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AudioClip" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/audioclip/devices/tag/list": { "post": { "tags": [ "AudioClip" ], "summary": "Get a list of AudioClips, AudioClipTags, and a unique list of Tags based on a start and end epoch.", "description": "Request body: JSON object.\r\nSupports an optional `minutes` query parameter to constrain the tag aggregation window.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetTagListForDeviceList" }, "example": { "deviceIDList": [ 1 ], "tagIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "searchText": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AudioClipListWithTags" }, "example": { "audioClipList": [ { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "captionID": 1, "transcript": "Example value" } ], "audioClipTagList": [ { "key": 1, "audioClipID": 1, "deviceID": 201, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "creationDate": "2026-03-30T12:00:00.0000000Z", "tagName": "Example value" } ], "tagList": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } } }, "/v1/audioclip/list/search/caption": { "post": { "tags": [ "AudioClip" ], "summary": "Get a list of AudioClips based on if their captions contain a search word/phrase", "description": "Request body: JSON object.", "parameters": [ { "name": "order", "in": "query", "style": "form", "schema": { "type": "string", "default": "desc", "example": "Example value" } }, { "name": "offset", "in": "query", "style": "form", "schema": { "type": "integer", "format": "int32", "default": 0, "example": 1 } }, { "name": "limit", "in": "query", "style": "form", "schema": { "type": "integer", "format": "int32", "default": 20, "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CaptionSearch" }, "example": { "searchText": "Example value", "deviceIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { } } } } } }, "/v1/caption/audio/{deviceSerial}": { "post": { "tags": [ "Caption" ], "summary": "Generates image tags for an image.", "description": "Request body: JSON object.\r\nSupports optional `maxLabels` and `minConfidence`.", "parameters": [ { "name": "deviceSerial", "in": "path", "description": "The device serial number.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/caption/words/{captionID}": { "get": { "tags": [ "Caption" ], "summary": "Generates image tags for an image.", "description": "Request body: JSON object.", "parameters": [ { "name": "captionID", "in": "path", "description": "The {mediaType}ID that the caption belongs to.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/collectionitem/{collectionItemID}": { "get": { "tags": [ "CollectionItem" ], "summary": "Gets a collection item by ID.", "parameters": [ { "name": "collectionItemID", "in": "path", "description": "The ID of the collection item to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CollectionItem" }, "example": { "key": 1, "collectionID": 1, "itemTypeID": 1, "itemID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "delete": { "tags": [ "CollectionItem" ], "summary": "Deletes a collection item.", "description": "Removes the item from its collection after write authorization succeeds.", "parameters": [ { "name": "collectionItemID", "in": "path", "description": "The ID of the collection item to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/collectionitem/list": { "get": { "tags": [ "CollectionItem" ], "summary": "Gets the collection item list.", "description": "Returns collection items associated with the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CollectionItem" }, "example": [ { "key": 1, "collectionID": 1, "userID": 101, "itemTypeID": 1, "itemID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "collectionID": 1, "itemTypeID": 1, "itemID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/collectionitem/{collectionID}": { "post": { "tags": [ "CollectionItem" ], "summary": "Creates a collection item.", "description": "Request body: JSON object. Accepted values include\r\n`itemType` values of `device`, `user`, or `file`. The caller must have write access\r\nto the collection and read access to the item being added.", "parameters": [ { "name": "collectionID", "in": "path", "description": "The ID of the collection that will receive the item.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateCollectionItem" }, "example": { "itemType": "Example value", "itemID": 1 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CollectionItem" }, "example": { "key": 1, "collectionID": 1, "itemTypeID": 1, "itemID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/device/{deviceID}": { "get": { "tags": [ "Device" ], "summary": "Gets a device by ID.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The device ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Device" }, "example": { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "Device" ], "summary": "Updates a device.", "parameters": [ { "name": "deviceID", "in": "path", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Device" }, "example": { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "Device" ], "summary": "Deletes a device.", "parameters": [ { "name": "deviceID", "in": "path", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "Device" ], "summary": "Applies a patch to a device.", "parameters": [ { "name": "deviceID", "in": "path", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/device/name": { "post": { "tags": [ "Device" ], "summary": "Gets a device by name or serial number.", "description": "Request body: JSON object.\r\nThe lookup first tries the serial number and then falls back to device name.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceNameArg" }, "example": { "deviceName": "WearableDevice" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Device" }, "example": { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/device/list": { "get": { "tags": [ "Device" ], "summary": "Gets the device list.", "description": "Supports optional query parameters including `orderby`, `shared`, and `userid`.\r\nAdmins can use `userid` to retrieve another user's device list.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Device" }, "example": [ { "key": 201, "deviceTypeID": 1, "userID": 101, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/device/sharedwithme/list": { "get": { "tags": [ "Device" ], "summary": "Get a list of devices shared with the logged in user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Device" }, "example": [ { "key": 201, "deviceTypeID": 1, "userID": 101, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/device/sharedbyme/list": { "get": { "tags": [ "Device" ], "summary": "Get a list of devices shared by the logged in user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Device" }, "example": [ { "key": 201, "deviceTypeID": 1, "userID": 101, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/device": { "post": { "tags": [ "Device" ], "summary": "Creates a device.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Device" }, "example": { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Device" }, "example": { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/device/share": { "post": { "tags": [ "Device" ], "summary": "Creates a shared-device permission entry.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSharedDevice" }, "example": { "deviceID": 201, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/device/ready": { "post": { "tags": [ "Device" ], "summary": "Marks a device as ready and returns the current device record.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RegisterAgent" }, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "agentType": "Device", "agentVersion": "1.0.0", "agentIndex": 1, "processID": 4321 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Device" }, "example": { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/device/{deviceID}/transfer": { "post": { "tags": [ "Device" ], "summary": "Transfers a device to another user.", "description": "Request body: JSON object.\r\nThis endpoint is session-only and admin-only.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The device ID to transfer.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TransferDeviceArgs" }, "example": { "newAPIKey": "Example value", "newSecretKey": "Example value", "environment": "Example value", "webServiceBaseUrl": "https://api.actionstreamer.com/example" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/device/{deviceID}/runanalytics/{runAnalytics}": { "post": { "tags": [ "Device" ], "summary": "Sets the device analytics state and queues any required event.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The device ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } }, { "name": "runAnalytics", "in": "path", "description": "Use 0 to disable analytics and 1 to enable analytics.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int32", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "EventID": 101 } } } } } } }, "/v1/device/list/all": { "get": { "tags": [ "Device" ], "summary": "Gets the full device list available to the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Device" }, "example": [ { "key": 201, "deviceTypeID": 1, "userID": 101, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/device/{deviceID}/comment/{commentID}": { "get": { "tags": [ "DeviceComment" ], "summary": "Gets a device comment by ID.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device that owns the comment list.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } }, { "name": "commentID", "in": "path", "description": "The ID of the comment to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Comment" }, "example": { "key": 1, "commentText": "Example value", "commentDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "DeviceComment" ], "summary": "Updates a device comment.", "description": "Request body: JSON object. This endpoint updates the comment text from\r\n`value` after HTML-encoding it, and only the comment creator can update the comment.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device that owns the comment.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } }, { "name": "commentID", "in": "path", "description": "The ID of the comment to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "DeviceComment" ], "summary": "Deletes a device comment.", "description": "The caller must have write access to the device, and only the comment owner can\r\ndelete the comment.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device that owns the comment.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } }, { "name": "commentID", "in": "path", "description": "The ID of the comment to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/device/{deviceID}/comment/list": { "get": { "tags": [ "DeviceComment" ], "summary": "Gets the device comment list.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device whose comments should be returned.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CommentWithNames" }, "example": [ { "key": 1, "userID": 101, "commentText": "Example value", "commentDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "username": "testuser" } ] }, "example": [ { "key": 1, "commentText": "Example value", "commentDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "username": "testuser" } ] } } } } } }, "/v1/device/{deviceID}/comment": { "post": { "tags": [ "DeviceComment" ], "summary": "Creates a device comment.", "description": "Request body: JSON object. This endpoint stores the comment text from\r\n`value` after HTML-encoding it. If the device does not already have a comment collection, one is\r\ncreated automatically before the comment is added.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device to comment on.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Comment" }, "example": { "key": 1, "commentText": "Example value", "commentDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/devicegroup/{deviceGroupID}": { "get": { "tags": [ "DeviceGroup" ], "summary": "Gets a device group by ID.", "parameters": [ { "name": "deviceGroupID", "in": "path", "description": "The device group ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Collection" }, "example": { "key": 1, "collectionName": "Example value", "description": "Example description", "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "DeviceGroup" ], "summary": "Updates a device group.", "description": "Request body: JSON object containing the updated device group name.", "parameters": [ { "name": "deviceGroupID", "in": "path", "description": "The device group ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "DeviceGroup" ], "summary": "Deletes a device group.", "description": "Deletes a device group.", "parameters": [ { "name": "deviceGroupID", "in": "path", "description": "The device group ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/devicegroup": { "get": { "tags": [ "DeviceGroup" ], "summary": "Gets a device group by name.", "description": "Request body: JSON object containing the device group name.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Collection" }, "example": { "key": 1, "collectionName": "Example value", "description": "Example description", "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "post": { "tags": [ "DeviceGroup" ], "summary": "Creates a device group.", "description": "Request body: JSON object containing the new device group name.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Collection" }, "example": { "key": 1, "collectionName": "Example value", "description": "Example description", "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/devicegroup/list": { "get": { "tags": [ "DeviceGroup" ], "summary": "Gets the device group list.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Collection" }, "example": [ { "key": 1, "collectionName": "Example value", "description": "Example description", "userID": 101, "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "collectionName": "Example value", "description": "Example description", "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/devicegroup/{deviceGroupID}/device/list": { "get": { "tags": [ "DeviceGroup" ], "summary": "Get a list of devices in a device group.", "parameters": [ { "name": "deviceGroupID", "in": "path", "description": "The device group ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Device" }, "example": [ { "key": 201, "deviceTypeID": 1, "userID": 101, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/shareddevicegroup/list": { "get": { "tags": [ "DeviceGroup" ], "summary": "Get a flat list of root device groups the user has been added to.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/SharedItem" }, "example": [ { "key": 1, "itemTypeID": 1, "sharedItemObjectID": 1, "collectionTypeID": 1, "fieldName": "Example value", "sharedByID": 1, "sharedWithID": 1, "sharedWithTypeID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "itemTypeID": 1, "sharedItemObjectID": 1, "collectionTypeID": 1, "fieldName": "Example value", "sharedByID": 1, "sharedWithID": 1, "sharedWithTypeID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/devicegroup/treenode/list": { "get": { "tags": [ "DeviceGroup" ], "summary": "Get a list of device groups the user has created and all devices and device groups under them, recursively.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/TreeNode" }, "example": [ { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ { "title": null, "key": null, "isLeaf": null, "selectable": null, "children": null } ] } ] }, "example": [ { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ { "title": null, "key": null, "isLeaf": null, "selectable": null, "children": null } ] } ] } } } } } }, "/v1/devicegroup/tree": { "get": { "tags": [ "DeviceGroup" ], "summary": "Gets the device group tree.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TreeNode" }, "example": { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ null ] } ] } } } } } } }, "/v1/shareddevicegroup/tree": { "get": { "tags": [ "DeviceGroup" ], "summary": "Get a list of device groups the user has been added to by other users and all devices and device groups under them, recursively.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TreeNode" }, "example": { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ null ] } ] } } } } } } }, "/v1/shareddevicegroup/treenode/list": { "get": { "tags": [ "DeviceGroup" ], "summary": "Get a list of device groups the user has been added to by other users and all devices and device groups under them, recursively.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/TreeNode" }, "example": [ { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ { "title": null, "key": null, "isLeaf": null, "selectable": null, "children": null } ] } ] }, "example": [ { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ { "title": null, "key": null, "isLeaf": null, "selectable": null, "children": null } ] } ] } } } } } }, "/v1/devicegroup/{deviceGroupID}/device/{deviceID}": { "post": { "tags": [ "DeviceGroup" ], "summary": "Adds a device to a device group.", "parameters": [ { "name": "deviceGroupID", "in": "path", "description": "The device group ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } }, { "name": "deviceID", "in": "path", "description": "The device ID to add to the group.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/devicegroup/share": { "post": { "tags": [ "DeviceGroup" ], "summary": "Creates a shared-device-group permission entry.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSharedDeviceGroup" }, "example": { "deviceGroupID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/devicehealth/{deviceHealthID}": { "get": { "tags": [ "DeviceHealth" ], "summary": "Gets a device health record by ID.", "parameters": [ { "name": "deviceHealthID", "in": "path", "description": "The ID of the device health record to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceHealth" }, "example": { "key": 1, "deviceID": 201, "healthDate": "2026-03-30T12:00:00.0000000Z", "healthJSON": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "DeviceHealth" ], "summary": "Updates a device health record.", "description": "Request body: JSON object. Updates the stored\r\n`healthJSON` for the specified record after validating device ownership.", "parameters": [ { "name": "deviceHealthID", "in": "path", "description": "The ID of the device health record to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateDeviceHealth" }, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "healthJSON": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "deviceHealthID": 501 } } } } } } }, "/v1/devicehealth/getlatest/{deviceID}": { "get": { "tags": [ "DeviceHealth" ], "summary": "Gets the latest device health record for a device.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device whose latest health record should be returned.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceHealth" }, "example": { "key": 1, "deviceID": 201, "healthDate": "2026-03-30T12:00:00.0000000Z", "healthJSON": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/devicehealth/list": { "post": { "tags": [ "DeviceHealth" ], "summary": "Gets the device health list.", "description": "Request body: JSON object. Requires\r\n`deviceID`, converts the epoch range to dates internally, and limits the result count to 5000.\r\nThe `order` field is accepted but is not currently used.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EpochAndCountFilter" }, "example": { "deviceID": 201, "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "videoClipTypeID": 1 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceHealth" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "healthDate": "2026-03-30T12:00:00.0000000Z", "healthJSON": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "healthDate": "2026-03-30T12:00:00.0000000Z", "healthJSON": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/device/list/health": { "get": { "tags": [ "DeviceHealth" ], "summary": "Gets device health rows for the authenticated user's devices.", "description": "Use the optional `status=online` query parameter to return only online devices.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceHealthRow" }, "example": [ { "key": 201, "deviceName": "WearableDevice", "serialNumber": "10001234", "batteryStatus": "Example value", "batteryPercent": 42.5, "batteryVoltage": 1, "cpuTemp": 1, "gpuTemp": 1, "cpuPercent": "Example value", "accessPointName": "Example value", "networkAlias": "Example value", "frequency": 1, "linkQuality": "Example value", "signalStrength_dBm": 1, "transferBitrate_Mbps": 1, "deviceStatus": "Example value", "cameraStatus": "online", "cameraActivity": "Example value", "tunnelStatus": "Example value", "softwareVersion": "1.0.0", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "lastVideoClipDate": "2026-03-30T12:00:00.0000000Z", "softwareDeployDate": "2026-03-30T12:00:00.0000000Z" } ] }, "example": [ { "key": 201, "deviceName": "WearableDevice", "serialNumber": "10001234", "batteryStatus": "Example value", "batteryPercent": 42.5, "batteryVoltage": 1, "cpuTemp": 1, "gpuTemp": 1, "cpuPercent": "Example value", "accessPointName": "Example value", "networkAlias": "Example value", "frequency": 1, "linkQuality": "Example value", "signalStrength_dBm": 1, "transferBitrate_Mbps": 1, "deviceStatus": "Example value", "cameraStatus": "online", "cameraActivity": "Example value", "tunnelStatus": "Example value", "softwareVersion": "1.0.0", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "lastVideoClipDate": "2026-03-30T12:00:00.0000000Z", "softwareDeployDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/device/{deviceID}/health/linechart": { "post": { "tags": [ "DeviceHealth" ], "summary": "Gets line chart data for a device health variable.", "description": "Request body: JSON object with a variable name and optional epoch range,\r\ncount, and vertical line timestamps. Returns line chart data.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device whose line chart data should be generated.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LineChartArgs" }, "example": { "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "variableName": "Example value", "verticalLineTimestamps": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LineChartResponse" }, "example": { "datasets": [ { "label": "Example value", "data": [ null ] } ], "verticalLines": [ { "timestamp": 1, "color": "Example value" } ] } } } } } } }, "/v1/devicehealth": { "post": { "tags": [ "DeviceHealth" ], "summary": "Creates a device health record.", "description": "Request body: JSON object. Accepts either\r\n`deviceSerial` or `deviceName`. If `healthJSON.time.datetime` contains a valid epoch in\r\nmilliseconds, it is used for `healthDate`; otherwise the server uses the current UTC time.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateDeviceHealth" }, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "healthJSON": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "deviceHealthID": 501 } } } } } } }, "/v1/devicehealth/updatelatest": { "post": { "tags": [ "DeviceHealth" ], "summary": "Updates the latest device health record for a device.", "description": "Request body: JSON object. Updates the latest device health state and\r\nreturns the affected device health record ID.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateDeviceHealth" }, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "healthJSON": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "deviceHealthID": 501 } } } } } } }, "/v1/devicewificonnection/{deviceWifiConnectionID}": { "get": { "tags": [ "DeviceWifiConnection" ], "summary": "Gets a device Wi-Fi connection by ID.", "parameters": [ { "name": "deviceWifiConnectionID", "in": "path", "description": "The ID of the device Wi-Fi connection to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceWifiConnection" }, "example": { "key": 1, "deviceID": 201, "wifiConnectionID": 1, "priority": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "DeviceWifiConnection" ], "summary": "Updates a device Wi-Fi connection.", "description": "This endpoint is currently not fully implemented and returns `200 OK` after authorization succeeds.", "parameters": [ { "name": "deviceWifiConnectionID", "in": "path", "description": "The ID of the device Wi-Fi connection to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "DeviceWifiConnection" ], "summary": "Applies a patch to a device Wi-Fi connection.", "description": "Request body: array of patch operations.", "parameters": [ { "name": "deviceWifiConnectionID", "in": "path", "description": "The ID of the device Wi-Fi connection to patch.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": "Patch applied successfully." } } } } }, "delete": { "tags": [ "DeviceWifiConnection" ], "summary": "Deletes a device Wi-Fi connection.", "description": "Deletes the device Wi-Fi connection.", "parameters": [ { "name": "deviceWifiConnectionID", "in": "path", "description": "The ID of the device Wi-Fi connection to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/devicewificonnection/list/{deviceID}": { "get": { "tags": [ "DeviceWifiConnection" ], "summary": "Gets the device Wi-Fi connection list.", "description": "Returns a custom list of Wi-Fi connection objects for the device.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device whose Wi-Fi connections should be returned.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceWifiConnection" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "wifiConnectionID": 1, "priority": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "wifiConnectionID": 1, "priority": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/devicewificonnection/list/{deviceID}/config": { "get": { "tags": [ "DeviceWifiConnection" ], "summary": "Gets the device Wi-Fi configuration list.", "description": "Returns the device Wi-Fi connections in configuration format.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device whose Wi-Fi configuration should be returned.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceWifiConnection" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "wifiConnectionID": 1, "priority": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "wifiConnectionID": 1, "priority": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/devicewificonnection": { "post": { "tags": [ "DeviceWifiConnection" ], "summary": "Creates a device Wi-Fi connection.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceWifiConnection" }, "example": { "key": 1, "deviceID": 201, "wifiConnectionID": 1, "priority": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceWifiConnection" }, "example": { "key": 1, "deviceID": 201, "wifiConnectionID": 1, "priority": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/event/dequeue": { "post": { "tags": [ "Event" ], "summary": "Dequeues the next pending event for a device agent.", "description": "Request body: JSON object. Accepts either\r\n`deviceSerial` or `deviceName`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DequeueEvent" }, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "agentType": "Device", "agentIndex": 1, "processID": 4321 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Event" }, "example": { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/event": { "post": { "tags": [ "Event" ], "summary": "Creates an event.", "description": "Request body: JSON object. Supports either\r\n`deviceSerial` or `deviceID`, either agent and event names or their numeric IDs,\r\nand optional fields such as `serverEvent`, `eventParameters`, `priority`,\r\n`maxAttempts`, and `expirationEpoch`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateEvent" }, "example": { "deviceID": 201, "deviceSerial": "10001234", "agentType": "Device", "eventType": "Run", "agentTypeID": 1, "eventTypeID": 1, "serverEvent": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "priority": 1, "maxAttempts": 3, "expirationEpoch": 1711800000 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StandardResult" }, "example": { "code": 1, "description": "Example description" } } } } } } }, "/v1/event/{eventID}": { "get": { "tags": [ "Event" ], "summary": "Gets an event by ID.", "description": "Returns a reduced event status payload.\r\nThe response includes status details for the event.", "parameters": [ { "name": "eventID", "in": "path", "description": "The ID of the event to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetEventStatus" }, "example": { "eventID": 501, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "result": "Example value", "percentComplete": 42.5, "priority": 1, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1 } } } } } }, "put": { "tags": [ "Event" ], "summary": "Updates an event.", "description": "Request body: JSON object. Only non-null fields from the request are applied.", "parameters": [ { "name": "eventID", "in": "path", "description": "The ID of the event to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEvent" }, "example": { "eventStatus": 1, "attemptNumber": 1, "result": "Example value", "processID": 4321, "percentComplete": 42.5, "tagString": "Example value", "tagNumber": 1 } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/event/status": { "patch": { "tags": [ "Event" ], "summary": "Updates event status fields.", "description": "Request body: JSON object. Updates the\r\n`EventStatus` field for each event ID in the `events` list for the specified device.\r\nThe device can be identified by `deviceID` or by `deviceName`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchEventStatus" }, "example": { "deviceID": 201, "deviceName": "WearableDevice", "eventStatus": 1, "events": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/event/{eventID}/progress": { "patch": { "tags": [ "Event" ], "summary": "Updates event progress fields.", "description": "Request body: JSON object. Patches only\r\n`PercentComplete` for the specified event.", "parameters": [ { "name": "eventID", "in": "path", "description": "The ID of the event to patch.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchEventProgress" }, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "percentComplete": 42.5 } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/event/list": { "post": { "tags": [ "Event" ], "summary": "Gets the event list.", "description": "Request body: JSON object. Set `deviceID` to return events\r\nfor one device, or use `deviceID = 0` to get events for the authenticated user across devices.\r\nSupports an optional `updatedevice=true` query parameter.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DateAndCountFilter" }, "example": { "deviceID": 201, "startDate": "2026-03-30T12:00:00.0000000Z", "endDate": "2026-03-30T12:00:00.0000000Z", "count": 25, "order": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventWithNames" }, "example": [ { "key": 501, "userID": 101, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] }, "example": [ { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] } } } } } }, "/v1/event/lastevent/agenttype/{agentTypeID}": { "post": { "tags": [ "Event" ], "summary": "Gets the last event for a device based on agent type.", "description": "Request body: JSON object. This endpoint follows the same\r\nfiltered event-list behavior as `GetEventListFilter`, including optional `updatedevice=true`.", "parameters": [ { "name": "agentTypeID", "in": "path", "description": "The agent type ID in the route.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DateAndCountFilter" }, "example": { "deviceID": 201, "startDate": "2026-03-30T12:00:00.0000000Z", "endDate": "2026-03-30T12:00:00.0000000Z", "count": 25, "order": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventWithNames" }, "example": [ { "key": 501, "userID": 101, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] }, "example": [ { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] } } } } } }, "/v1/event/list/pending": { "post": { "tags": [ "Event" ], "summary": "Get a list of pending events.", "description": "Request body: JSON object. When `deviceName` is provided, this endpoint\r\nreturns at most one pending event for that device.\r\nIf no device is provided, server users can retrieve pending server events instead.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceNameArg" }, "example": { "deviceName": "WearableDevice" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventWithNames" }, "example": [ { "key": 501, "userID": 101, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] }, "example": [ { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] } } } } } }, "/v1/event/list/pending/longpoll": { "post": { "tags": [ "Event" ], "summary": "Long-polls for pending events for a device.", "description": "Request body: JSON object. This endpoint polls for up to 60 seconds and returns an\r\nempty list if no pending events are found before the timeout.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceNameArg" }, "example": { "deviceName": "WearableDevice" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventWithNames" }, "example": [ { "key": 501, "userID": 101, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] }, "example": [ { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] } } } } } }, "/v1/event/list/pending/{deviceID}": { "delete": { "tags": [ "Event" ], "summary": "Clears pending events for a device.", "description": "Clears pending events for the specified device after authorization succeeds.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device whose pending events should be cleared.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventWithNames" }, "example": [ { "key": 501, "userID": 101, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] }, "example": [ { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } ] } } } } } }, "/v1/event/endprocess/{eventID}": { "post": { "tags": [ "Event" ], "summary": "Queues an event to end the process associated with an event.", "parameters": [ { "name": "eventID", "in": "path", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StandardResult" }, "example": { "code": 1, "description": "Example description" } } } } } } }, "/v1/eventpreset/{eventPresetID}": { "get": { "tags": [ "EventPreset" ], "summary": "Gets an event preset by ID.", "parameters": [ { "name": "eventPresetID", "in": "path", "description": "The ID of the event preset to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventPreset" }, "example": { "key": 1, "eventPresetName": "Example value", "deviceID": 201, "deviceGroupID": 1, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "EventPreset" ], "summary": "Updates an event preset.", "description": "Request body: JSON object.", "parameters": [ { "name": "eventPresetID", "in": "path", "description": "The ID of the event preset to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventPreset" }, "example": { "key": 1, "eventPresetName": "Example value", "deviceID": 201, "deviceGroupID": 1, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "EventPreset" ], "summary": "Deletes an event preset.", "description": "Deletes the event preset.", "parameters": [ { "name": "eventPresetID", "in": "path", "description": "The ID of the event preset to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/eventpreset/list/device/{deviceID}": { "get": { "tags": [ "EventPreset" ], "summary": "Gets the event preset list.", "description": "Returns presets directly associated with the device and may also include presets inherited from shared device groups.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device whose available event presets should be returned.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventPreset" }, "example": [ { "key": 1, "eventPresetName": "Example value", "userID": 101, "deviceID": 201, "deviceGroupID": 1, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "checkoutToken": "example-token", "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "eventPresetName": "Example value", "deviceID": 201, "deviceGroupID": 1, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/eventpreset/run/{eventPresetID}": { "post": { "tags": [ "EventPreset" ], "summary": "This endpoint runs a preset.", "description": "Request body: JSON object when you want to override the target devices with a\r\n`data` array of device IDs.", "parameters": [ { "name": "eventPresetID", "in": "path", "description": "The ID of the event preset to run.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegerArray" }, "example": { "data": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "EventID": 101 } } } } } } }, "/v1/eventpreset/startupevent/{deviceState}/{eventPresetID}": { "post": { "tags": [ "EventPreset" ], "summary": "Sets the device startup event preset.", "description": "Startup presets must target a single device.", "parameters": [ { "name": "eventPresetID", "in": "path", "description": "The event preset ID to apply as the startup preset.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } }, { "name": "deviceState", "in": "path", "description": "The device startup mode. Accepted values are \"online\" and \"standalone\".", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "EventID": 101 } } } } } } }, "/v1/eventpreset/startupevent/{deviceState}/device/{deviceID}": { "delete": { "tags": [ "EventPreset" ], "summary": "Deletes the device startup event preset.", "description": "Clears the configured startup preset for the specified mode.", "parameters": [ { "name": "deviceState", "in": "path", "description": "The device startup mode. Accepted values are \"online\" and \"standalone\".", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } }, { "name": "deviceID", "in": "path", "description": "The ID of the device whose startup preset should be cleared.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int32", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "EventID": 101 } } } } } } }, "/v1/eventpreset": { "post": { "tags": [ "EventPreset" ], "summary": "Creates an event preset.", "description": "Request body: JSON object. Supports creating presets\r\nfor either a single device or a device group, based on `deviceID` or `deviceGroupID`. If\r\n`eventParameters` is empty, it is stored as `{}`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateEventPreset" }, "example": { "eventPresetName": "Example value", "deviceID": 201, "deviceGroupID": 1, "agentType": "Device", "eventType": "Run", "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "priority": 1, "maxAttempts": 3, "expirationEpoch": 1711800000 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventPreset" }, "example": { "key": 1, "eventPresetName": "Example value", "deviceID": 201, "deviceGroupID": 1, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/eventpreset/{eventPresetID}/copy/{newDeviceID}": { "post": { "tags": [ "EventPreset" ], "summary": "Copies an event preset to another device.", "description": "Copies the existing preset to the destination device after validating read access to the source preset and\r\nwrite access to the destination device.", "parameters": [ { "name": "eventPresetID", "in": "path", "description": "The ID of the source event preset.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } }, { "name": "newDeviceID", "in": "path", "description": "The ID of the destination device.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventPreset" }, "example": { "key": 1, "eventPresetName": "Example value", "deviceID": 201, "deviceGroupID": 1, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/eventstatus/list": { "get": { "tags": [ "EventStatus" ], "summary": "Gets the event status list.", "description": "Returns the supported event statuses.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventStatus" }, "example": [ { "key": 1, "eventStatusName": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "eventStatusName": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/eventtype/list": { "post": { "tags": [ "EventType" ], "summary": "Gets the event type list.", "description": "Request body: JSON object with the agent type name.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetEventType" }, "example": { "agentType": "Device" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventType" }, "example": [ { "key": 1, "legacyEventTypeID": 1, "agentTypeID": 1, "eventTypeName": "Run", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "legacyEventTypeID": 1, "agentTypeID": 1, "eventTypeName": "Run", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/file": { "post": { "tags": [ "File" ], "summary": "Creates a file record.", "description": "Request body: JSON object. Accepts either\r\n`deviceSerial` or `deviceName`. On success, it returns the created file\r\nwith a signed upload URL in `fileLocation`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateFile" }, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "filename": "clip.mp4", "fileSize": 1, "sHA256Hash": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/File" }, "example": { "key": 1, "deviceID": 201, "filename": "clip.mp4", "fileGUID": "11111111-2222-3333-4444-555555555555", "sHA256Hash": "Example value", "fileLocation": "Remote site", "fileExpiration": "2026-03-30T12:00:00.0000000Z", "fileSize": 1, "fileInS3": true, "doNotDelete": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/device/{deviceID}/file/{fileID}": { "delete": { "tags": [ "File" ], "summary": "Deletes a file record.", "description": "Deletes the file record and its backing file content when available.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device that owns the file.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } }, { "name": "fileID", "in": "path", "description": "The ID of the file to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/file/temp": { "post": { "tags": [ "File" ], "summary": "Creates a temporary file record and signed upload URL.", "description": "Request body: JSON object. This endpoint does not create a database file record.\r\nIt returns a signed upload URL, and the response payload is shaped like\r\nresponse with `fileID = 0`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateFile" }, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "filename": "clip.mp4", "fileSize": 1, "sHA256Hash": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SignedURLWithID" }, "example": { "signedURL": "https://api.actionstreamer.com/example", "fileID": 1 } } } } } } }, "/v1/file/{fileID}": { "get": { "tags": [ "File" ], "summary": "Gets a file by ID.", "description": "Returns the file with a download location. Download behavior may vary by environment.", "parameters": [ { "name": "fileID", "in": "path", "description": "The ID of the file to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/File" }, "example": { "key": 1, "deviceID": 201, "filename": "clip.mp4", "fileGUID": "11111111-2222-3333-4444-555555555555", "sHA256Hash": "Example value", "fileLocation": "Remote site", "fileExpiration": "2026-03-30T12:00:00.0000000Z", "fileSize": 1, "fileInS3": true, "doNotDelete": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/file/success/{fileID}": { "post": { "tags": [ "File" ], "summary": "Marks a file upload as successful.", "description": "Marks the file upload as successful.", "parameters": [ { "name": "fileID", "in": "path", "description": "The ID of the uploaded file.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/image/{imageID}": { "get": { "tags": [ "Image" ], "summary": "Gets an image by ID.", "parameters": [ { "name": "imageID", "in": "path", "description": "The image ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Image" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "Image" ], "summary": "Updates an image.", "description": "Request body: JSON object.", "parameters": [ { "name": "imageID", "in": "path", "description": "The image ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Image" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "Image" ], "summary": "Applies a patch to an image.", "description": "Request body: array of patch operations.", "parameters": [ { "name": "imageID", "in": "path", "description": "The image ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": "Patch applied successfully." } } } } }, "delete": { "tags": [ "Image" ], "summary": "Deletes an image.", "parameters": [ { "name": "imageID", "in": "path", "description": "The image ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/image": { "post": { "tags": [ "Image" ], "summary": "Creates an image.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateImage" }, "example": { "deviceID": 201, "deviceName": "WearableDevice", "fileID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "startTime": 1, "startTimeMs": 1, "imageStatus": 1, "imageTypeID": 1 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Image" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/image/{deviceSerial}": { "post": { "tags": [ "Image" ], "summary": "Creates an image for a device identified by serial number.", "parameters": [ { "name": "deviceSerial", "in": "path", "description": "The device serial number from the route.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Image" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Image" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/image/list": { "get": { "tags": [ "Image" ], "summary": "Gets the image list.", "description": "This endpoint returns `501 Not implemented`.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Image" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } }, "post": { "tags": [ "Image" ], "summary": "Gets the filtered image list.", "description": "Request body: JSON object.\r\nSupports an optional `alldevices=true` query parameter.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ImageEpochAndCountFilter" }, "example": { "deviceID": 201, "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "tagList": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ImageWithNames" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "deviceName": "WearableDevice", "tagList": [ { "key": null, "tagName": null, "creationDate": null, "createdBy": null, "lastModifiedDate": null, "lastModifiedBy": null } ] } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "tagList": [ { "key": null, "tagName": null, "creationDate": null } ] } ] } } } } } }, "/v1/image/extract/list": { "post": { "tags": [ "Image" ], "summary": "Gets the extracted image list.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceEpochRange" }, "example": { "deviceSerial": "10001234", "startEpoch": 1711800000, "endEpoch": 1711800000 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Image" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/image/devices/list": { "post": { "tags": [ "Image" ], "summary": "Gets the image list for multiple devices.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DevicesEpochAndCountFilter" }, "example": { "deviceIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Image" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/image/devices/tag/list": { "post": { "tags": [ "Image" ], "summary": "Get a list of Images, ImageTags, and a unique list of Tags based on a start and end epoch.", "description": "Request body: JSON object.\r\nSupports an optional `minutes` query parameter to constrain the tag aggregation window.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetTagListForDeviceList" }, "example": { "deviceIDList": [ 1 ], "tagIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "searchText": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ImageListWithTags" }, "example": { "imageList": [ { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ], "imageTagList": [ { "key": 1, "imageID": 1, "deviceID": 201, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "left": 1, "top": 1, "width": 1, "height": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "tagName": "Example value" } ], "tagList": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } } }, "/v1/image/upload": { "post": { "tags": [ "Image" ], "summary": "Uploads one or more images.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadImages" }, "example": { "deviceID": 201, "imageIDList": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/image/createlist/{deviceSerial}": { "post": { "tags": [ "Image" ], "summary": "Creates one or more image records.", "description": "Request body: JSON array of image objects.", "parameters": [ { "name": "deviceSerial", "in": "path", "description": "The device serial number from the route.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Image" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/logmessage/{logMessageID}": { "get": { "tags": [ "LogMessage" ], "summary": "Gets a log message by ID.", "parameters": [ { "name": "logMessageID", "in": "path", "description": "The log message ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LogMessage" }, "example": { "key": 1, "deviceID": 201, "agentID": 1, "processID": 4321, "version": "1.0.0", "message": "Example value", "messageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/logmessage/list": { "post": { "tags": [ "LogMessage" ], "summary": "Gets the log message list.", "description": "Request body: JSON object with the device and date range to query.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DateAndCountFilter" }, "example": { "deviceID": 201, "startDate": "2026-03-30T12:00:00.0000000Z", "endDate": "2026-03-30T12:00:00.0000000Z", "count": 25, "order": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/LogMessageWithNames" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "agentID": 1, "processID": 4321, "version": "1.0.0", "message": "Example value", "messageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "deviceName": "WearableDevice", "agentType": "Device", "agentIndex": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "agentID": 1, "processID": 4321, "version": "1.0.0", "message": "Example value", "messageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "agentType": "Device", "agentIndex": 1 } ] } } } } } }, "/v1/logmessage": { "post": { "tags": [ "LogMessage" ], "summary": "Creates a log message.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateLogMessage" }, "example": { "deviceName": "WearableDevice", "agentType": "Device", "agentVersion": "1.0.0", "agentIndex": 1, "processID": 4321, "message": "Example value", "logDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LogMessage" }, "example": { "key": 1, "deviceID": 201, "agentID": 1, "processID": 4321, "version": "1.0.0", "message": "Example value", "messageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/mediarouter/auth": { "post": { "tags": [ "MediaRouterAuth" ], "summary": "Authorizes a media router request.", "description": "Request body: JSON object with media router request fields.\r\nRead requests are accepted for the requested path.\r\nOther requests must provide valid media router credentials or token data.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MediaRouterAuthRequest" }, "example": { "user": "Example value", "password": "ExamplePassword123!", "token": "example-token", "action": "publish", "path": "Example value", "protocol": "srt", "ip": "Example value", "id": "Example value", "query": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/multifactorauth/list": { "get": { "tags": [ "MultifactorAuth" ], "summary": "Gets the multifactor authentication list.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/MultifactorAuth" }, "example": [ { "key": 1, "multifactorAuthTypeID": 1, "userID": 101, "mFASource": "testuser@actionstreamer.com", "secretKeyImage": "Example value", "pinCode": 1, "userPinCode": 1, "pinCodeExpirationDate": "2026-03-30T12:00:00.0000000Z", "isValidated": true, "isActive": true, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "multifactorAuthTypeID": 1, "mFASource": "testuser@actionstreamer.com", "secretKeyImage": "Example value", "userPinCode": 1, "pinCodeExpirationDate": "2026-03-30T12:00:00.0000000Z", "isValidated": true, "isActive": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/multifactorauth/{multifactorAuthID}": { "get": { "tags": [ "MultifactorAuth" ], "summary": "Gets a multifactor authentication record by ID.", "parameters": [ { "name": "multifactorAuthID", "in": "path", "description": "The multifactor authentication record ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultifactorAuth" }, "example": { "key": 1, "multifactorAuthTypeID": 1, "mFASource": "testuser@actionstreamer.com", "secretKeyImage": "Example value", "userPinCode": 1, "pinCodeExpirationDate": "2026-03-30T12:00:00.0000000Z", "isValidated": true, "isActive": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "MultifactorAuth" ], "summary": "Updates a multifactor authentication record.", "description": "This endpoint sets the selected multifactor authentication method as the active method.", "parameters": [ { "name": "multifactorAuthID", "in": "path", "description": "The multifactor authentication record ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "MultifactorAuth" ], "summary": "Deletes a multifactor authentication record.", "parameters": [ { "name": "multifactorAuthID", "in": "path", "description": "The multifactor authentication record ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/multifactorauth": { "post": { "tags": [ "MultifactorAuth" ], "summary": "Creates a new multifactor authentication method.", "description": "Request body: JSON object.\r\nTOTP responses can include a QR code image for setup.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/multifactorauth/{multifactorAuthID}/verify": { "put": { "tags": [ "MultifactorAuth" ], "summary": "Validates a multifactor authentication code after creation.", "description": "Request body: JSON object with the verification code in `token`.", "parameters": [ { "name": "multifactorAuthID", "in": "path", "description": "The multifactor authentication record ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int32", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Token" }, "example": { "token": "example-token" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/validatemfa": { "put": { "tags": [ "MultifactorAuth" ], "summary": "Validates a multifactor authentication code during sign-in.", "description": "Request body: JSON object with the verification code in `token`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Token" }, "example": { "token": "example-token" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/multifactorauth/{multifactorAuthID}/resend": { "put": { "tags": [ "MultifactorAuth" ], "summary": "Resends the multifactor authentication code for creation.", "parameters": [ { "name": "multifactorAuthID", "in": "path", "description": "The multifactor authentication record ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/multifactorauth/resend": { "put": { "tags": [ "MultifactorAuth" ], "summary": "Resends the multifactor authentication code for sign-in.", "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "mfaID": 301 } } } } } } }, "/v1/notification/{notificationID}": { "get": { "tags": [ "Notification" ], "summary": "Gets a notification by ID.", "parameters": [ { "name": "notificationID", "in": "path", "description": "The ID of the notification to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Notification" }, "example": { "key": 1, "notificationStatusID": 1, "message": "Example value", "seenInApp": true, "seenDate": "2026-03-30T12:00:00.0000000Z", "sentAsEmail": true, "sentAsEmailDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "Notification" ], "summary": "Updates a notification.", "description": "Request body: JSON object.", "parameters": [ { "name": "notificationID", "in": "path", "description": "The ID of the notification to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Notification" }, "example": { "key": 1, "notificationStatusID": 1, "message": "Example value", "seenInApp": true, "seenDate": "2026-03-30T12:00:00.0000000Z", "sentAsEmail": true, "sentAsEmailDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "Notification" ], "summary": "Deletes a notification.", "parameters": [ { "name": "notificationID", "in": "path", "description": "The ID of the notification to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/notification/list": { "get": { "tags": [ "Notification" ], "summary": "Gets the notification list.", "description": "Supports optional query parameters `seeninapp`, `sentasemail`, and `sinceepoch`.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Notification" }, "example": [ { "key": 1, "notificationStatusID": 1, "userID": 101, "message": "Example value", "seenInApp": true, "seenDate": "2026-03-30T12:00:00.0000000Z", "sentAsEmail": true, "sentAsEmailDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "notificationStatusID": 1, "message": "Example value", "seenInApp": true, "seenDate": "2026-03-30T12:00:00.0000000Z", "sentAsEmail": true, "sentAsEmailDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/notification": { "post": { "tags": [ "Notification" ], "summary": "Creates a notification.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Notification" }, "example": { "key": 1, "notificationStatusID": 1, "message": "Example value", "seenInApp": true, "seenDate": "2026-03-30T12:00:00.0000000Z", "sentAsEmail": true, "sentAsEmailDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/package/{packageID}": { "get": { "tags": [ "Package" ], "summary": "Gets a package by ID.", "parameters": [ { "name": "packageID", "in": "path", "description": "The ID of the package to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Package" }, "example": { "key": 601, "packageTypeID": 1, "fileID": 1, "encrypted": 1, "packageName": "DefaultAdminPackage", "description": "Example description", "uRL": "https://api.actionstreamer.com/example", "version": "1.0.0", "packageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "Package" ], "summary": "Updates a package.", "description": "Request body: JSON object. This endpoint is currently restricted to admin users.", "parameters": [ { "name": "packageID", "in": "path", "description": "The ID of the package to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Package" }, "example": { "key": 601, "packageTypeID": 1, "fileID": 1, "encrypted": 1, "packageName": "DefaultAdminPackage", "description": "Example description", "uRL": "https://api.actionstreamer.com/example", "version": "1.0.0", "packageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "Package" ], "summary": "Deletes a package.", "description": "This endpoint is currently restricted to admin users.", "parameters": [ { "name": "packageID", "in": "path", "description": "The ID of the package to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/package/list": { "get": { "tags": [ "Package" ], "summary": "Gets the package list.", "description": "Returns agent packages.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" }, "example": [ { "key": 601, "packageTypeID": 1, "fileID": 1, "encrypted": 1, "packageName": "DefaultAdminPackage", "description": "Example description", "uRL": "https://api.actionstreamer.com/example", "version": "1.0.0", "packageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 601, "packageTypeID": 1, "fileID": 1, "encrypted": 1, "packageName": "DefaultAdminPackage", "description": "Example description", "uRL": "https://api.actionstreamer.com/example", "version": "1.0.0", "packageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/package/list/uploaded": { "get": { "tags": [ "Package" ], "summary": "Get a list of package items that have been uploaded to S3.", "description": "Returns uploaded agent packages.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" }, "example": [ { "key": 601, "packageTypeID": 1, "fileID": 1, "encrypted": 1, "packageName": "DefaultAdminPackage", "description": "Example description", "uRL": "https://api.actionstreamer.com/example", "version": "1.0.0", "packageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 601, "packageTypeID": 1, "fileID": 1, "encrypted": 1, "packageName": "DefaultAdminPackage", "description": "Example description", "uRL": "https://api.actionstreamer.com/example", "version": "1.0.0", "packageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/package": { "post": { "tags": [ "Package" ], "summary": "Creates a package.", "description": "Request body: JSON object. This endpoint is currently restricted to admin users.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Package" }, "example": { "key": 601, "packageTypeID": 1, "fileID": 1, "encrypted": 1, "packageName": "DefaultAdminPackage", "description": "Example description", "uRL": "https://api.actionstreamer.com/example", "version": "1.0.0", "packageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Package" }, "example": { "key": 601, "packageTypeID": 1, "fileID": 1, "encrypted": 1, "packageName": "DefaultAdminPackage", "description": "Example description", "uRL": "https://api.actionstreamer.com/example", "version": "1.0.0", "packageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/package/{packageID}/updatedevices": { "post": { "tags": [ "Package" ], "summary": "Queues a package update for the specified devices.", "description": "Request body: JSON object containing device IDs in `data`.", "parameters": [ { "name": "packageID", "in": "path", "description": "The ID of the package to queue for installation.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegerArray" }, "example": { "data": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/password": { "post": { "tags": [ "Password" ], "summary": "Changes the authenticated user password.", "description": "Requires an authenticated web session.\r\nRequest body: JSON object with `currentPassword` and `newPassword`.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/forgotpassword": { "post": { "tags": [ "Password" ], "summary": "Starts the forgot-password flow.", "description": "Request body: JSON object with the email address in `value`.\r\nIf an account is found, the endpoint sends a password reset email.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/resetpassword": { "post": { "tags": [ "Password" ], "summary": "Resets a user password.", "description": "Request body: JSON object with `token` and `newPassword`.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/permissiontype/list": { "get": { "tags": [ "PermissionType" ], "summary": "Gets the permission type list.", "description": "Returns the supported permission types.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PermissionType" }, "example": [ { "key": 1, "permissionTypeName": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "permissionTypeName": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/project/{projectID}": { "get": { "tags": [ "Project" ], "summary": "Gets a project by ID.", "parameters": [ { "name": "projectID", "in": "path", "description": "The project ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project" }, "example": { "key": 301, "projectName": "RemoteWorker", "description": "Example description", "userGroupID": 1, "deviceGroupID": 1, "conferenceURL": "https://api.actionstreamer.com/example", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "Project" ], "summary": "Updates a project.", "description": "Request body: JSON object.\r\nThe update path primarily supports changing the project name.", "parameters": [ { "name": "projectID", "in": "path", "description": "The project ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project" }, "example": { "key": 301, "projectName": "RemoteWorker", "description": "Example description", "userGroupID": 1, "deviceGroupID": 1, "conferenceURL": "https://api.actionstreamer.com/example", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "Project" ], "summary": "Deletes a project.", "description": "Deletes a project.", "parameters": [ { "name": "projectID", "in": "path", "description": "The project ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "Project" ], "summary": "Applies a patch to a project.", "description": "Request body: array of patch operations.\r\nSupported patch fields are `description` and `conferenceURL`.", "parameters": [ { "name": "projectID", "in": "path", "description": "The project ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/project/name": { "post": { "tags": [ "Project" ], "summary": "Gets a project by name.", "description": "Request body: JSON object containing the project name in `value`.\r\nThis lookup uses project name.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project" }, "example": { "key": 301, "projectName": "RemoteWorker", "description": "Example description", "userGroupID": 1, "deviceGroupID": 1, "conferenceURL": "https://api.actionstreamer.com/example", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/project/list": { "get": { "tags": [ "Project" ], "summary": "Gets the project list.", "description": "Returns projects associated with the authenticated user.\r\nThe previously intended shared-project query behavior is currently commented out.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Project" }, "example": [ { "key": 301, "projectName": "RemoteWorker", "description": "Example description", "userGroupID": 1, "deviceGroupID": 1, "conferenceURL": "https://api.actionstreamer.com/example", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 301, "projectName": "RemoteWorker", "description": "Example description", "userGroupID": 1, "deviceGroupID": 1, "conferenceURL": "https://api.actionstreamer.com/example", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/project": { "post": { "tags": [ "Project" ], "summary": "Creates a project.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project" }, "example": { "key": 301, "projectName": "RemoteWorker", "description": "Example description", "userGroupID": 1, "deviceGroupID": 1, "conferenceURL": "https://api.actionstreamer.com/example", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Project" }, "example": { "key": 301, "projectName": "RemoteWorker", "description": "Example description", "userGroupID": 1, "deviceGroupID": 1, "conferenceURL": "https://api.actionstreamer.com/example", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/register": { "post": { "tags": [ "Register" ], "summary": "Registers a new user.", "description": "Request body: JSON object with `emailAddress`, `password`, and `invitationCode`.\r\nIn standalone environments, new users are activated immediately.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/session": { "get": { "tags": [ "Session" ], "summary": "Gets the current session information.", "description": "Returns a JSON object where `name` is `MFAType` and\r\n`value` is the current MFA type ID for the session.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NameValuePair" }, "example": { "name": "RemoteWorker", "value": "Example value" } } } } } }, "delete": { "tags": [ "Session" ], "summary": "Deletes the current session.", "description": "Signs out the current session.", "responses": { "200": { "description": "Success. No response body." } } }, "post": { "tags": [ "Session" ], "summary": "Creates a session.", "description": "Expects an HTTP Basic Authorization header containing the username and password. On success, returns a\r\nsession payload containing the session GUID and MFA information.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSessionResult" }, "example": { "sessionGuid": "11111111-2222-3333-4444-555555555555", "mfaTypeId": 1, "browserGUID": "11111111-2222-3333-4444-555555555555" } } } } } } }, "/v1/session/list": { "get": { "tags": [ "Session" ], "summary": "Gets the session list.", "description": "Returns sessions associated with the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Session" }, "example": [ { "key": 1, "sessionGUID": "11111111-2222-3333-4444-555555555555", "expirationDate": "2026-03-30T12:00:00.0000000Z", "iPAddress": "203.0.113.42", "location": "Remote site", "userAgent": "Example value", "deviceDescription": "Example description", "awaitingMFA": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] }, "example": [ { "key": 1, "sessionGUID": "11111111-2222-3333-4444-555555555555", "expirationDate": "2026-03-30T12:00:00.0000000Z", "iPAddress": "203.0.113.42", "location": "Remote site", "userAgent": "Example value", "deviceDescription": "Example description", "awaitingMFA": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/session/{sessionID}": { "delete": { "tags": [ "Session" ], "summary": "Deletes a session by ID.", "parameters": [ { "name": "sessionID", "in": "path", "description": "The ID of the session to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/sessionvariable/list": { "get": { "tags": [ "SessionVariable" ], "summary": "Gets the session variable list for the authenticated user.", "description": "Returns session variables for the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/SessionVariable" }, "example": [ { "key": 1, "sessionVariableTypeID": 1, "userID": 101, "sessionID": 1, "variableName": "Example value", "variableValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "sessionVariableTypeID": 1, "sessionID": 1, "variableName": "Example value", "variableValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/sessionvariable/{variableName}": { "get": { "tags": [ "SessionVariable" ], "summary": "Gets a session variable for the authenticated user.", "parameters": [ { "name": "variableName", "in": "path", "description": "The name of the session variable to retrieve.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SessionVariable" }, "example": { "key": 1, "sessionVariableTypeID": 1, "sessionID": 1, "variableName": "Example value", "variableValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "delete": { "tags": [ "SessionVariable" ], "summary": "Deletes a session variable for the authenticated user.", "parameters": [ { "name": "variableName", "in": "path", "description": "The name of the session variable to delete.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/sessionvariable": { "post": { "tags": [ "SessionVariable" ], "summary": "Creates or updates a session variable for the authenticated user.", "description": "Request body: JSON object with the variable name in `name` and the\r\nvariable value in `value`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NameValuePair" }, "example": { "name": "RemoteWorker", "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SessionVariable" }, "example": { "key": 1, "sessionVariableTypeID": 1, "sessionID": 1, "variableName": "Example value", "variableValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/usersetting/list": { "get": { "tags": [ "Setting" ], "summary": "Gets the user setting list.", "description": "Supports an optional `userid` query parameter. Admins can use it to read another user's settings.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/UserSetting" }, "example": [ { "key": 1, "userID": 101, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/usersetting": { "get": { "tags": [ "Setting" ], "summary": "Gets a user setting.", "description": "Supply the setting name with the `setting_name` query parameter. This endpoint also accepts `settingname`.\r\nSupports an optional `userid` query parameter for admin access to another user's setting.", "responses": { "200": { "description": "Success", "content": { "application/json": { } } } } }, "put": { "tags": [ "Setting" ], "summary": "Creates or updates a user setting.", "description": "Request body: JSON object.\r\nSupports an optional `userid` query parameter for admin updates to another user's setting.", "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "Setting" ], "summary": "Deletes a user setting.", "description": "Supply the setting name with the `setting_name` query parameter. This endpoint also accepts `settingname`.\r\nSupports an optional `userid` query parameter for admin deletion of another user's setting.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/devicesetting/device/{deviceID}/list": { "get": { "tags": [ "Setting" ], "summary": "Gets the device setting list.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The device ID whose settings to return.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/DeviceSetting" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/devicesetting/device/{deviceID}": { "get": { "tags": [ "Setting" ], "summary": "Gets a device setting.", "description": "Supply the setting name with the `setting_name` query parameter. This endpoint also accepts `settingname`.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The device ID that owns the setting.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { } } } } }, "put": { "tags": [ "Setting" ], "summary": "Creates or updates a device setting.", "description": "Request body: JSON object.\r\nSupports an optional `local=true` query parameter to also enqueue a device setting update event.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The device ID that owns the setting.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "Setting" ], "summary": "Deletes a device setting.", "description": "Supply the setting name with the `setting_name` query parameter. This endpoint also accepts `settingname`.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The device ID that owns the setting.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/setting/app/{applicationID}/list": { "get": { "tags": [ "Setting" ], "summary": "Gets the application setting list.", "parameters": [ { "name": "applicationID", "in": "path", "description": "The application ID whose settings to return.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AppSetting" }, "example": [ { "key": 1, "userID": 101, "applicationID": 1, "organizationID": 1, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "applicationID": 1, "organizationID": 1, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/setting/app/{applicationID}/{settingName}": { "get": { "tags": [ "Setting" ], "summary": "Gets an application setting.", "parameters": [ { "name": "applicationID", "in": "path", "description": "The application ID that owns the setting.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } }, { "name": "settingName", "in": "path", "description": "The application setting name.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AppSetting" }, "example": { "key": 1, "applicationID": 1, "organizationID": 1, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/setting/app/{applicationID}": { "put": { "tags": [ "Setting" ], "summary": "Creates or updates an application setting.", "description": "Request body: JSON object. Only admin users can update application settings.", "parameters": [ { "name": "applicationID", "in": "path", "description": "The application ID whose setting should be updated.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/shareditem/{sharedItemID}": { "get": { "tags": [ "SharedItem" ], "summary": "Gets a shared item by ID.", "parameters": [ { "name": "sharedItemID", "in": "path", "description": "The ID of the shared item to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SharedItem" }, "example": { "key": 1, "itemTypeID": 1, "sharedItemObjectID": 1, "collectionTypeID": 1, "fieldName": "Example value", "sharedByID": 1, "sharedWithID": 1, "sharedWithTypeID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "SharedItem" ], "summary": "Updates a shared item.", "description": "Request body: JSON object.", "parameters": [ { "name": "sharedItemID", "in": "path", "description": "The ID of the shared item to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SharedItem" }, "example": { "key": 1, "itemTypeID": 1, "sharedItemObjectID": 1, "collectionTypeID": 1, "fieldName": "Example value", "sharedByID": 1, "sharedWithID": 1, "sharedWithTypeID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "SharedItem" ], "summary": "Applies a patch to a shared item.", "description": "Request body: array of patch operations.", "parameters": [ { "name": "sharedItemID", "in": "path", "description": "The ID of the shared item to patch.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": "Patch applied successfully." } } } } }, "delete": { "tags": [ "SharedItem" ], "summary": "Deletes a shared item.", "parameters": [ { "name": "sharedItemID", "in": "path", "description": "The ID of the shared item to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/shareditem/list": { "get": { "tags": [ "SharedItem" ], "summary": "Gets the shared item list.", "description": "Returns items the authenticated user has shared as well as items shared with the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/SharedItemWithNames" }, "example": [ { "key": 1, "itemTypeID": 1, "sharedItemObjectID": 1, "collectionTypeID": 1, "fieldName": "Example value", "sharedByID": 1, "sharedWithID": 1, "sharedWithTypeID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "itemType": "Example value", "itemName": "Example value", "sharedWith": "Example value", "permissionListNames": "Example value" } ] }, "example": [ { "key": 1, "itemTypeID": 1, "sharedItemObjectID": 1, "collectionTypeID": 1, "fieldName": "Example value", "sharedByID": 1, "sharedWithID": 1, "sharedWithTypeID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z", "itemType": "Example value", "itemName": "Example value", "sharedWith": "Example value", "permissionListNames": "Example value" } ] } } } } } }, "/v1/shareditem": { "post": { "tags": [ "SharedItem" ], "summary": "Creates a shared item.", "description": "Request body: JSON object. Supported `itemType` values currently\r\ninclude `device`, `collection`, and `videoclip`. `sharedWithType` should be\r\n`user` or `group`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSharedItem" }, "example": { "itemType": "Example value", "objectID": 1, "sharedWithType": "Example value", "sharedWith": "Example value", "sharedWithID": 1 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SharedItem" }, "example": { "key": 1, "itemTypeID": 1, "sharedItemObjectID": 1, "collectionTypeID": 1, "fieldName": "Example value", "sharedByID": 1, "sharedWithID": 1, "sharedWithTypeID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/signinhistory/{signInHistoryID}": { "get": { "tags": [ "SignInHistory" ], "summary": "Gets a sign-in history record by ID.", "parameters": [ { "name": "signInHistoryID", "in": "path", "description": "The ID of the sign-in history record to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SignInHistory" }, "example": { "key": 1, "username": "testuser", "remoteIPAddress": "203.0.113.42", "forwardedFor": "Example value", "realIP": "Example value", "userAgent": "Example value", "location": "Remote site", "deviceDescription": "Example description", "referer": "Example value", "successfulSignIn": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/signinhistory/list": { "get": { "tags": [ "SignInHistory" ], "summary": "Gets the sign-in history list.", "description": "Returns sign-in history records for the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/SignInHistory" }, "example": [ { "key": 1, "userID": 101, "username": "testuser", "remoteIPAddress": "203.0.113.42", "forwardedFor": "Example value", "realIP": "Example value", "userAgent": "Example value", "location": "Remote site", "deviceDescription": "Example description", "referer": "Example value", "successfulSignIn": true, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "username": "testuser", "remoteIPAddress": "203.0.113.42", "forwardedFor": "Example value", "realIP": "Example value", "userAgent": "Example value", "location": "Remote site", "deviceDescription": "Example description", "referer": "Example value", "successfulSignIn": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/stream/{streamID}": { "get": { "tags": [ "Stream" ], "summary": "Gets a stream by ID.", "parameters": [ { "name": "streamID", "in": "path", "description": "The ID of the stream to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Stream" }, "example": { "key": 401, "deviceID": 201, "streamTypeID": 1, "eventID": 501, "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "lastActivityDate": "2026-03-30T12:00:00.0000000Z", "actionTypeID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "Stream" ], "summary": "Updates a stream.", "description": "Request body: JSON object.", "parameters": [ { "name": "streamID", "in": "path", "description": "The ID of the stream to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Stream" }, "example": { "key": 401, "deviceID": 201, "streamTypeID": 1, "eventID": 501, "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "lastActivityDate": "2026-03-30T12:00:00.0000000Z", "actionTypeID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "Stream" ], "summary": "Deletes a stream.", "parameters": [ { "name": "streamID", "in": "path", "description": "The ID of the stream to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "Stream" ], "summary": "Applies a patch to a stream.", "description": "Request body: array of patch operations. Allowed patch fields are\r\n`streamName`, `streamDescription`, `publishURL`, `readURL`, and\r\n`lastActivityDate`.", "parameters": [ { "name": "streamID", "in": "path", "description": "The ID of the stream to patch.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/device/{deviceID}/stream/mostrecent": { "get": { "tags": [ "Stream" ], "summary": "Gets the most recent stream for a device.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device whose most recent stream should be returned.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Stream" }, "example": { "key": 401, "deviceID": 201, "streamTypeID": 1, "eventID": 501, "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "lastActivityDate": "2026-03-30T12:00:00.0000000Z", "actionTypeID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/device/{deviceID}/stream/path": { "post": { "tags": [ "Stream" ], "summary": "Gets a stream by stream path.", "description": "Request body: JSON object with the stream path in `value`.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device that owns the stream.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Stream" }, "example": { "key": 401, "deviceID": 201, "streamTypeID": 1, "eventID": 501, "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "lastActivityDate": "2026-03-30T12:00:00.0000000Z", "actionTypeID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/device/{deviceID}/stream/list": { "get": { "tags": [ "Stream" ], "summary": "Gets the stream list.", "description": "Supports an optional `activeonly=true` query parameter.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The ID of the device whose streams should be returned.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Stream" }, "example": [ { "key": 401, "userID": 101, "deviceID": 201, "streamTypeID": 1, "eventID": 501, "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "lastActivityDate": "2026-03-30T12:00:00.0000000Z", "actionTypeID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 401, "deviceID": 201, "streamTypeID": 1, "eventID": 501, "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "lastActivityDate": "2026-03-30T12:00:00.0000000Z", "actionTypeID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/stream": { "post": { "tags": [ "Stream" ], "summary": "Creates a stream.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateStream" }, "example": { "deviceID": 201, "streamType": "Example value", "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "actionType": "Example value", "eventID": 501 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Stream" }, "example": { "key": 401, "deviceID": 201, "streamTypeID": 1, "eventID": 501, "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "lastActivityDate": "2026-03-30T12:00:00.0000000Z", "actionTypeID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/tag/image/{deviceSerial}": { "post": { "tags": [ "Tag" ], "summary": "Generates image tags for an image.", "description": "Request body: JSON object.\r\nSupports optional `maxLabels` and `minConfidence`.", "parameters": [ { "name": "deviceSerial", "in": "path", "description": "The device serial number.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } }, { "name": "mediaType", "in": "query", "description": "The media type that the image came from (image, videoClip)", "style": "form", "schema": { "type": "string", "default": "videoClip", "example": "Example value" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GenerateImageTagList" }, "example": { "deviceID": 201, "mediaID": 1, "epochTime": 1711800000, "epochTimeMs": 1711800000, "objectName": "Example value", "maxLabels": 1, "minConfidence": 98.4 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ImageLabel" }, "example": [ { "label": "Example value", "confidence": 98.4 } ] }, "example": [ { "label": "Example value", "confidence": 98.4 } ] } } } } } }, "/v1/device/{deviceID}/tag/list": { "post": { "tags": [ "Tag" ], "summary": "Get a list of tags for a device based on an epoch range.", "description": "Request body: JSON object with the epoch range to query.", "parameters": [ { "name": "deviceID", "in": "path", "description": "The device ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetTagListForDeviceList" }, "example": { "deviceIDList": [ 1 ], "tagIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "searchText": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Tag" }, "example": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/testauth": { "post": { "tags": [ "Test" ], "summary": "Tests an authenticated API call.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/test": { "get": { "tags": [ "Test" ], "summary": "Tests an anonymous API call.", "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "Message": "Success" } } } } } } }, "/v1/testapicall": { "post": { "tags": [ "Test" ], "summary": "Tests an outbound API call.", "description": "Requires authentication and can return a throttling response when request limits are exceeded.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/timezone/list": { "get": { "tags": [ "TimeZone" ], "summary": "Gets the supported time zone list.", "description": "Requires authentication.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/TimeZone" }, "example": [ { "key": "America/New_York", "displayName": "(UTC-05:00) Eastern Time (New York)" } ] }, "example": [ { "key": "America/New_York", "displayName": "(UTC-05:00) Eastern Time (New York)" } ] } } } } } }, "/v1/timezone/offset": { "get": { "tags": [ "TimeZone" ], "summary": "Gets the authenticated user time zone offset in hours.", "description": "Returns a JSON object with the offset in `value`.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FloatArg" }, "example": { "value": -4 } } } } } } }, "/v1/token/mediarouter/read": { "post": { "tags": [ "Token" ], "summary": "Creates a media router read token.", "description": "Request body: JSON object with `streamPath`.\r\nReturns a token and expiration timestamp for media router read access.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MediaRouterTokenRequest" }, "example": { "streamPath": "sendsrt-wearabledevice" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "token": "example-jwt-token", "expiresUtc": "2026-03-30T12:05:00.0000000Z" } } } } } } }, "/v1/token/mediarouter/publish": { "post": { "tags": [ "Token" ], "summary": "Creates a media router publish token.", "description": "Request body: JSON object with `streamPath`.\r\nReturns a token and expiration timestamp for media router publish access.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MediaRouterTokenRequest" }, "example": { "streamPath": "sendsrt-wearabledevice" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "token": "example-jwt-token", "expiresUtc": "2026-03-30T12:05:00.0000000Z" } } } } } } }, "/v1/user/lastdataupdate": { "get": { "tags": [ "User" ], "summary": "Gets the last user data refresh timestamp.", "description": "Returns the user's last data refresh timestamp.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "string", "format": "date-time", "example": "2026-03-30T12:00:00.0000000Z" }, "example": "2026-03-30T12:00:00.0000000Z" } } } } } }, "/v1/user/list": { "get": { "tags": [ "User" ], "summary": "Gets the user email list for the authenticated user domain.", "description": "Returns only email addresses in the same email domain as the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { } } } } } }, "/v1/user/search": { "get": { "tags": [ "User" ], "summary": "Searches for users who have opted in to be searchable.", "description": "Returns users who have enabled the `AllowUserSearch` user setting.", "parameters": [ { "name": "query", "in": "query", "description": "Exact username or email address to search for.", "style": "form", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/user/detail/list": { "get": { "tags": [ "User" ], "summary": "Gets the detailed user list.", "description": "This endpoint is restricted to admin users.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/User" }, "example": [ { "key": 101, "userTypeID": 1, "username": "testuser", "emailAddress": "testuser@actionstreamer.com", "passwordStrength": 4, "verificationToken": "example-token", "verificationTokenExpiration": "2026-03-30T12:00:00.0000000Z", "refreshData": "2026-03-30T12:00:00.0000000Z", "userStatusID": 1, "passwordResetToken": "example-token", "passwordResetTokenExpiration": "2026-03-30T12:00:00.0000000Z", "lastInvalidLoginAttemptDate": "2026-03-30T12:00:00.0000000Z", "lastLoginAttemptDate": "2026-03-30T12:00:00.0000000Z", "invalidLoginAttempts": 1, "timeZone": "America/New_York", "firstName": "Test", "lastName": "User", "description": "Example description", "availability": "Available", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 101, "userTypeID": 1, "username": "testuser", "emailAddress": "testuser@actionstreamer.com", "passwordStrength": 4, "verificationToken": "example-token", "verificationTokenExpiration": "2026-03-30T12:00:00.0000000Z", "refreshData": "2026-03-30T12:00:00.0000000Z", "userStatusID": 1, "passwordResetToken": "example-token", "passwordResetTokenExpiration": "2026-03-30T12:00:00.0000000Z", "lastInvalidLoginAttemptDate": "2026-03-30T12:00:00.0000000Z", "lastLoginAttemptDate": "2026-03-30T12:00:00.0000000Z", "invalidLoginAttempts": 1, "timeZone": "America/New_York", "firstName": "Test", "lastName": "User", "description": "Example description", "availability": "Available", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/user/timezone": { "get": { "tags": [ "User" ], "summary": "Gets the authenticated user time zone.", "description": "Returns a JSON object with the user's time zone in `value`.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } } } } } }, "/v1/user/features": { "get": { "tags": [ "User" ], "summary": "Gets the feature list available to the authenticated user.", "description": "Returns a string array payload. All users currently receive `default`; admin users also receive\r\n`admin`.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArray" }, "example": { "values": [ "Example value" ] } } } } } } }, "/v1/user": { "patch": { "tags": [ "User" ], "summary": "Applies a patch to the authenticated user.", "description": "Request body: array of patch operations. This endpoint only allows patching the\r\n`timeZone` field on the authenticated user.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/userbrowser/{userBrowserID}": { "get": { "tags": [ "UserBrowser" ], "summary": "Gets a trusted browser record by ID.", "parameters": [ { "name": "userBrowserID", "in": "path", "description": "The ID of the trusted browser record to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserBrowser" }, "example": { "key": 1, "browserName": "Example value", "browserDescription": "Example description", "userAgent": "Example value", "remoteIPAddress": "203.0.113.42", "forwardedFor": "Example value", "realIP": "Example value", "lastSignInDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "browserGUIDHash": "11111111-2222-3333-4444-555555555555", "isTrustedBrowser": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "patch": { "tags": [ "UserBrowser" ], "summary": "Applies a patch to a trusted browser record.", "description": "Request body: array of patch operations.", "parameters": [ { "name": "userBrowserID", "in": "path", "description": "The ID of the trusted browser record to patch.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": "Patch applied successfully." } } } } } }, "/v1/userbrowser/{browserGUID}": { "get": { "tags": [ "UserBrowser" ], "summary": "Gets a trusted browser record by browser GUID.", "parameters": [ { "name": "browserGUID", "in": "path", "description": "The browser GUID to look up.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserBrowser" }, "example": { "key": 1, "browserName": "Example value", "browserDescription": "Example description", "userAgent": "Example value", "remoteIPAddress": "203.0.113.42", "forwardedFor": "Example value", "realIP": "Example value", "lastSignInDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "browserGUIDHash": "11111111-2222-3333-4444-555555555555", "isTrustedBrowser": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/userbrowser/list": { "get": { "tags": [ "UserBrowser" ], "summary": "Gets the trusted browser list.", "description": "Returns trusted browser records for the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/UserBrowser" }, "example": [ { "key": 1, "userID": 101, "browserName": "Example value", "browserDescription": "Example description", "userAgent": "Example value", "remoteIPAddress": "203.0.113.42", "forwardedFor": "Example value", "realIP": "Example value", "lastSignInDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "browserGUIDHash": "11111111-2222-3333-4444-555555555555", "isTrustedBrowser": true, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "browserName": "Example value", "browserDescription": "Example description", "userAgent": "Example value", "remoteIPAddress": "203.0.113.42", "forwardedFor": "Example value", "realIP": "Example value", "lastSignInDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "browserGUIDHash": "11111111-2222-3333-4444-555555555555", "isTrustedBrowser": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/userbrowser/trust/{browserGUID}": { "patch": { "tags": [ "UserBrowser" ], "summary": "Marks a browser as trusted.", "parameters": [ { "name": "browserGUID", "in": "path", "description": "The browser GUID to mark as trusted.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/usergroup/{userGroupID}": { "get": { "tags": [ "UserGroup" ], "summary": "Gets a user group by ID.", "parameters": [ { "name": "userGroupID", "in": "path", "description": "The ID of the user group to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Collection" }, "example": { "key": 1, "collectionName": "Example value", "description": "Example description", "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "UserGroup" ], "summary": "Updates a user group.", "description": "Request body: JSON object. This endpoint updates only the group name after\r\nsanitizing it, truncating it to 100 characters, and checking for conflicts with other user-group names\r\nowned by the same user.", "parameters": [ { "name": "userGroupID", "in": "path", "description": "The ID of the user group to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "delete": { "tags": [ "UserGroup" ], "summary": "Deletes a user group.", "description": "Deletes the user group.", "parameters": [ { "name": "userGroupID", "in": "path", "description": "The ID of the user group to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/usergroup/list": { "get": { "tags": [ "UserGroup" ], "summary": "Gets the user group list.", "description": "Returns user-group collections created by the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Collection" }, "example": [ { "key": 1, "collectionName": "Example value", "description": "Example description", "userID": 101, "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "collectionName": "Example value", "description": "Example description", "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/usergroup/{userGroupID}/list": { "get": { "tags": [ "UserGroup" ], "summary": "Gets the user list for a user group.", "description": "Returns the users in the group with availability details.\r\nThis endpoint is restricted to the group creator.", "parameters": [ { "name": "userGroupID", "in": "path", "description": "The ID of the user group whose users should be returned.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/UserAvailability" }, "example": [ { "key": 101, "emailAddress": "testuser@actionstreamer.com", "firstName": "Test", "lastName": "User", "description": "Example description", "availability": "Available", "timeZone": "America/New_York" } ] }, "example": [ { "key": 101, "emailAddress": "testuser@actionstreamer.com", "firstName": "Test", "lastName": "User", "description": "Example description", "availability": "Available", "timeZone": "America/New_York" } ] } } } } } }, "/v1/usergroup": { "post": { "tags": [ "UserGroup" ], "summary": "Creates a user group.", "description": "Request body: JSON object. This endpoint uses `value` as the group\r\nname, sanitizes it to alphanumeric characters and spaces, truncates it to 100 characters, and rejects\r\nduplicate group names for the same user.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StringArg" }, "example": { "value": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Collection" }, "example": { "key": 1, "collectionName": "Example value", "description": "Example description", "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/verify": { "post": { "tags": [ "Verify" ], "summary": "Verifies a user email address.", "description": "Request body: JSON object with the verification token in `token`.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/reverify": { "post": { "tags": [ "Verify" ], "summary": "Resends a verification email.", "description": "Request body: JSON object with the email address in `value`.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/versionauth": { "post": { "tags": [ "Version" ], "summary": "Checks the version endpoint with authentication.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/version": { "get": { "tags": [ "Version" ], "summary": "Checks the version endpoint without authentication.", "description": "Returns the current API version and build date when available.", "responses": { "200": { "description": "Success", "content": { "application/json": { "example": { "Version": "1.0.0", "BuildDate": "2026-01-01" } } } } } } }, "/v1/versionapicall": { "post": { "tags": [ "Version" ], "summary": "Checks API version call behavior.", "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/videoclip/{videoClipID}": { "get": { "tags": [ "VideoClip" ], "summary": "Gets a video clip by ID.", "parameters": [ { "name": "videoClipID", "in": "path", "description": "The video clip ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VideoClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "VideoClip" ], "summary": "Updates a video clip.", "description": "Request body: JSON object.", "parameters": [ { "name": "videoClipID", "in": "path", "description": "The video clip ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VideoClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "VideoClip" ], "summary": "Applies a patch to a video clip.", "description": "Request body: array of patch operations.\r\nOnly a limited set of fields such as `fileID` and `videoClipStatus` can be patched.", "parameters": [ { "name": "videoClipID", "in": "path", "description": "The video clip ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": "Patch applied successfully." } } } } }, "delete": { "tags": [ "VideoClip" ], "summary": "Deletes a video clip.", "parameters": [ { "name": "videoClipID", "in": "path", "description": "The video clip ID.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/videoclip": { "post": { "tags": [ "VideoClip" ], "summary": "Creates a video clip.", "description": "Request body: JSON object.\r\nThis endpoint is not used by devices.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateVideoClip" }, "example": { "deviceID": 201, "deviceName": "WearableDevice", "fileID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "framesPerSecond": 1, "startTime": 1, "startTimeMs": 1, "clipLengthInSeconds": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VideoClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/videoclip/{deviceSerial}": { "post": { "tags": [ "VideoClip" ], "summary": "Creates a video clip for a device identified by serial number.", "parameters": [ { "name": "deviceSerial", "in": "path", "description": "The device serial number from the route.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VideoClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VideoClip" }, "example": { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/videoclip/createlist/{deviceSerial}": { "post": { "tags": [ "VideoClip" ], "summary": "Creates one or more video clip records.", "description": "Request body: JSON array of video clip objects.", "parameters": [ { "name": "deviceSerial", "in": "path", "description": "The device serial number from the route.", "required": true, "style": "simple", "schema": { "type": "string", "example": "Example value" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VideoClip" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/videoclip/upload": { "post": { "tags": [ "VideoClip" ], "summary": "Uploads one or more video clips.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadVideoClips" }, "example": { "deviceID": 201, "videoClips": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/videoclip/list": { "get": { "tags": [ "VideoClip" ], "summary": "Gets the video clip list.", "description": "This endpoint returns `501 Not implemented`.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VideoClip" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } }, "post": { "tags": [ "VideoClip" ], "summary": "Gets the filtered video clip list.", "description": "Request body: JSON object.\r\nSupports an optional `alldevices=true` query parameter.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VideoClipEpochAndCountFilter" }, "example": { "deviceID": 201, "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "videoClipTypeID": 1, "tagList": [ 1 ] } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VideoClipWithNames" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "deviceName": "WearableDevice", "tagList": [ { "key": null, "tagName": null, "creationDate": null, "createdBy": null, "lastModifiedDate": null, "lastModifiedBy": null } ] } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "tagList": [ { "key": null, "tagName": null, "creationDate": null } ] } ] } } } } } }, "/v1/videoclip/concatenate": { "post": { "tags": [ "VideoClip" ], "summary": "Enqueue a concatenate clips event based on a start time and end time.", "description": "Request body: JSON object.\r\nSupports an optional `usevrs=true` query parameter.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConcatenateClipsArgs" }, "example": { "deviceID": 201, "deviceName": "WearableDevice", "startEpoch": 1711800000, "endEpoch": 1711800000, "uploadURL": "https://api.actionstreamer.com/example", "postbackURL": "https://api.actionstreamer.com/example", "timeout": "Example value", "videoClips": [ { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Event" }, "example": { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } }, "/v1/videoclip/extract/list": { "post": { "tags": [ "VideoClip" ], "summary": "Gets the extracted video clip list.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeviceEpochRange" }, "example": { "deviceSerial": "10001234", "startEpoch": 1711800000, "endEpoch": 1711800000 } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VideoClip" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/videoclip/devices/list": { "post": { "tags": [ "VideoClip" ], "summary": "Gets the video clip list for multiple devices.", "description": "Request body: JSON object.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DevicesEpochAndCountFilter" }, "example": { "deviceIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/VideoClip" }, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/videoclip/devices/tag/list": { "post": { "tags": [ "VideoClip" ], "summary": "Get a list of VideoClips, VideoClipTags, and a unique list of Tags based on a start and end epoch.", "description": "Request body: JSON object.\r\nSupports an optional `minutes` query parameter to constrain the tag aggregation window.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetTagListForDeviceList" }, "example": { "deviceIDList": [ 1 ], "tagIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "searchText": "Example value" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VideoClipListWithTags" }, "example": { "videoClipList": [ { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ], "videoClipTagList": [ { "key": 1, "videoClipID": 1, "deviceID": 201, "containerID": 1, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "creationDate": "2026-03-30T12:00:00.0000000Z", "tagName": "Example value" } ], "tagList": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } } }, "/v1/wificonnection/{wifiConnectionID}": { "get": { "tags": [ "WifiConnection" ], "summary": "Gets a Wi-Fi connection by ID.", "description": "Returns the Wi-Fi connection details for the authenticated user.", "parameters": [ { "name": "wifiConnectionID", "in": "path", "description": "The ID of the Wi-Fi connection to retrieve.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WifiConnection" }, "example": { "key": 1, "securityType": "Example value", "sSID": "Example value", "alias": "Example value", "password": "ExamplePassword123!", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } }, "put": { "tags": [ "WifiConnection" ], "summary": "Updates a Wi-Fi connection.", "description": "Request body: JSON object. Invalid or unsupported `securityType` values are\r\nnormalized to `WPA-PSK`.", "parameters": [ { "name": "wifiConnectionID", "in": "path", "description": "The ID of the Wi-Fi connection to update.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WifiConnection" }, "example": { "key": 1, "securityType": "Example value", "sSID": "Example value", "alias": "Example value", "password": "ExamplePassword123!", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success. No response body." } } }, "patch": { "tags": [ "WifiConnection" ], "summary": "Applies a patch to a Wi-Fi connection.", "description": "Request body: array of patch operations.", "parameters": [ { "name": "wifiConnectionID", "in": "path", "description": "The ID of the Wi-Fi connection to patch.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "example": "Patch applied successfully." } } } } }, "delete": { "tags": [ "WifiConnection" ], "summary": "Deletes a Wi-Fi connection.", "description": "Deletes the Wi-Fi connection.", "parameters": [ { "name": "wifiConnectionID", "in": "path", "description": "The ID of the Wi-Fi connection to delete.", "required": true, "style": "simple", "schema": { "type": "integer", "format": "int64", "example": 1 } } ], "responses": { "200": { "description": "Success. No response body." } } } }, "/v1/wificonnection/list": { "get": { "tags": [ "WifiConnection" ], "summary": "Gets the Wi-Fi connection list.", "description": "Returns Wi-Fi connections associated with the authenticated user.", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/WifiConnection" }, "example": [ { "key": 1, "userID": 101, "securityType": "Example value", "sSID": "Example value", "alias": "Example value", "password": "ExamplePassword123!", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "example": [ { "key": 1, "securityType": "Example value", "sSID": "Example value", "alias": "Example value", "password": "ExamplePassword123!", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } } } } } }, "/v1/wificonnection": { "post": { "tags": [ "WifiConnection" ], "summary": "Creates a Wi-Fi connection.", "description": "Request body: JSON object. If `securityType` is not one of\r\n`WPA-PSK`, `WPA-EAP`, or `WPA-PSK-SHA256`, it defaults to `WPA-PSK`.", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WifiConnection" }, "example": { "key": 1, "securityType": "Example value", "sSID": "Example value", "alias": "Example value", "password": "ExamplePassword123!", "creationDate": "2026-03-30T12:00:00.0000000Z" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WifiConnection" }, "example": { "key": 1, "securityType": "Example value", "sSID": "Example value", "alias": "Example value", "password": "ExamplePassword123!", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } } } } }, "components": { "schemas": { "APIKey": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "appID": { "type": "integer", "format": "int64", "example": 1 }, "aPIKeyDescription": { "type": "string", "nullable": true, "example": "Example value" }, "accessKey": { "type": "string", "nullable": true, "example": "Example value" }, "secretKey": { "type": "string", "nullable": true, "example": "Example value" }, "status": { "type": "integer", "format": "int64", "example": 1 }, "lastAccessDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "appID": 1, "aPIKeyDescription": "Example description", "accessKey": "Example value", "secretKey": "Example value", "status": 1, "lastAccessDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "Agent": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "agentTypeID": { "type": "integer", "format": "int64", "example": 1 }, "agentIndex": { "type": "integer", "format": "int64", "example": 1 }, "currentEventID": { "type": "integer", "format": "int64", "example": 1 }, "processID": { "type": "integer", "format": "int64", "example": 1 }, "version": { "type": "string", "nullable": true, "example": "Example value" }, "agentName": { "type": "string", "nullable": true, "example": "Example value" }, "agentDescription": { "type": "string", "nullable": true, "example": "Example value" }, "recentOutput": { "type": "string", "nullable": true, "example": "Example value" }, "lastHeardFromDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "agentTypeID": 1, "agentIndex": 1, "currentEventID": 501, "processID": 4321, "version": "1.0.0", "agentName": "Example value", "agentDescription": "Example description", "recentOutput": "Agent started successfully.", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "AgentType": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "agentTypeName": { "type": "string", "nullable": true, "example": "Example value" }, "detailedDescription": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "agentTypeName": "Device", "detailedDescription": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "AppSetting": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "applicationID": { "type": "integer", "format": "int64", "example": 1 }, "organizationID": { "type": "integer", "format": "int64", "example": 1 }, "settingName": { "type": "string", "nullable": true, "example": "Example value" }, "settingValue": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "applicationID": 1, "organizationID": 1, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "AudioClip": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "fileID": { "type": "integer", "format": "int64", "example": 1 }, "audioClipStatus": { "type": "integer", "format": "int64", "example": 1 }, "audioClipTypeID": { "type": "integer", "format": "int64", "example": 1 }, "audioClipParameters": { "type": "string", "nullable": true, "example": "Example value" }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "fileSize": { "type": "integer", "format": "int64", "example": 1 }, "bitrate": { "type": "integer", "format": "int64", "example": 1 }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "endTime": { "type": "integer", "format": "int64", "example": 1 }, "endTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "clipLengthInSeconds": { "type": "number", "format": "double", "example": 1 }, "tagListID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "AudioClipEpochAndCountFilter": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "count": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "order": { "type": "string", "nullable": true, "example": "Example value" }, "audioClipTypeID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "tagList": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "example": { "deviceID": 201, "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "audioClipTypeID": 1, "tagList": [ 1 ] } }, "AudioClipListWithTags": { "type": "object", "properties": { "audioClipList": { "type": "array", "items": { "$ref": "#/components/schemas/AudioClipWithCaption" }, "nullable": true, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "captionID": 1, "transcript": "Example value" } ] }, "audioClipTagList": { "type": "array", "items": { "$ref": "#/components/schemas/AudioClipTagWithNames" }, "nullable": true, "example": [ { "key": 1, "audioClipID": 1, "userID": 101, "deviceID": 201, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "tagName": "Example value" } ] }, "tagList": { "type": "array", "items": { "$ref": "#/components/schemas/Tag" }, "nullable": true, "example": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] } }, "additionalProperties": false, "example": { "audioClipList": [ { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "captionID": 1, "transcript": "Example value" } ], "audioClipTagList": [ { "key": 1, "audioClipID": 1, "deviceID": 201, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "creationDate": "2026-03-30T12:00:00.0000000Z", "tagName": "Example value" } ], "tagList": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } }, "AudioClipTagWithNames": { "type": "object", "properties": { "tagName": { "type": "string", "nullable": true, "example": "Example value" }, "key": { "type": "integer", "format": "int64", "example": 1 }, "audioClipID": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "tagID": { "type": "integer", "format": "int64", "example": 1 }, "timestamp": { "type": "integer", "format": "int64", "example": 1 }, "timestampMs": { "type": "integer", "format": "int64", "example": 1 }, "confidence": { "type": "number", "format": "double", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "audioClipID": 1, "deviceID": 201, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "creationDate": "2026-03-30T12:00:00.0000000Z", "tagName": "Example value" } }, "AudioClipWithCaption": { "type": "object", "properties": { "captionID": { "type": "integer", "format": "int64", "example": 1 }, "transcript": { "type": "string", "nullable": true, "example": "Example value" }, "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "fileID": { "type": "integer", "format": "int64", "example": 1 }, "audioClipStatus": { "type": "integer", "format": "int64", "example": 1 }, "audioClipTypeID": { "type": "integer", "format": "int64", "example": 1 }, "audioClipParameters": { "type": "string", "nullable": true, "example": "Example value" }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "fileSize": { "type": "integer", "format": "int64", "example": 1 }, "bitrate": { "type": "integer", "format": "int64", "example": 1 }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "endTime": { "type": "integer", "format": "int64", "example": 1 }, "endTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "clipLengthInSeconds": { "type": "number", "format": "double", "example": 1 }, "tagListID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "captionID": 1, "transcript": "Example value" } }, "AudioClipWithNames": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "tagList": { "type": "array", "items": { "$ref": "#/components/schemas/Tag" }, "nullable": true, "example": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "fileID": { "type": "integer", "format": "int64", "example": 1 }, "audioClipStatus": { "type": "integer", "format": "int64", "example": 1 }, "audioClipTypeID": { "type": "integer", "format": "int64", "example": 1 }, "audioClipParameters": { "type": "string", "nullable": true, "example": "Example value" }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "fileSize": { "type": "integer", "format": "int64", "example": 1 }, "bitrate": { "type": "integer", "format": "int64", "example": 1 }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "endTime": { "type": "integer", "format": "int64", "example": 1 }, "endTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "clipLengthInSeconds": { "type": "number", "format": "double", "example": 1 }, "tagListID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "tagList": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } }, "CaptionSearch": { "type": "object", "properties": { "searchText": { "type": "string", "nullable": true, "example": "Example value" }, "deviceIDList": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "searchText": "Example value", "deviceIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000 } }, "Collection": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "collectionName": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "itemTypeID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "itemID": { "type": "integer", "format": "int64", "example": 1 }, "parentID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "collectionName": "Example value", "description": "Example description", "itemTypeID": 1, "itemID": 1, "parentID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "CollectionItem": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "collectionID": { "type": "integer", "format": "int64", "example": 1 }, "itemTypeID": { "type": "integer", "format": "int64", "example": 1 }, "itemID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "collectionID": 1, "itemTypeID": 1, "itemID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "Comment": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "commentText": { "type": "string", "nullable": true, "example": "Example value" }, "commentDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "commentText": "Example value", "commentDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "CommentWithNames": { "type": "object", "properties": { "username": { "type": "string", "nullable": true, "example": "Example value" }, "key": { "type": "integer", "format": "int64", "example": 1 }, "commentText": { "type": "string", "nullable": true, "example": "Example value" }, "commentDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "commentText": "Example value", "commentDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "username": "testuser" } }, "ConcatenateAudioClipsArgs": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "uploadURL": { "type": "string", "nullable": true, "example": "Example value" }, "postbackURL": { "type": "string", "nullable": true, "example": "Example value" }, "timeout": { "type": "string", "nullable": true, "example": "Example value" }, "audioClips": { "type": "array", "items": { "$ref": "#/components/schemas/AudioClip" }, "nullable": true, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] } }, "additionalProperties": false, "example": { "deviceID": 201, "deviceName": "WearableDevice", "startEpoch": 1711800000, "endEpoch": 1711800000, "uploadURL": "https://api.actionstreamer.com/example", "postbackURL": "https://api.actionstreamer.com/example", "timeout": "Example value", "audioClips": [ { "key": 1, "deviceID": 201, "fileID": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value", "localFilePath": "Example value", "fileSize": 1, "bitrate": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } }, "ConcatenateClipsArgs": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "uploadURL": { "type": "string", "nullable": true, "example": "Example value" }, "postbackURL": { "type": "string", "nullable": true, "example": "Example value" }, "timeout": { "type": "string", "nullable": true, "example": "Example value" }, "videoClips": { "type": "array", "items": { "$ref": "#/components/schemas/VideoClip" }, "nullable": true, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] } }, "additionalProperties": false, "example": { "deviceID": 201, "deviceName": "WearableDevice", "startEpoch": 1711800000, "endEpoch": 1711800000, "uploadURL": "https://api.actionstreamer.com/example", "postbackURL": "https://api.actionstreamer.com/example", "timeout": "Example value", "videoClips": [ { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } }, "CreateAudioClip": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "fileID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "clipLengthInSeconds": { "type": "number", "format": "double", "example": 1 }, "audioClipStatus": { "type": "integer", "format": "int64", "example": 1 }, "audioClipTypeID": { "type": "integer", "format": "int64", "example": 1 }, "audioClipParameters": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceID": 201, "deviceName": "WearableDevice", "fileID": 1, "localFilePath": "Example value", "startTime": 1, "startTimeMs": 1, "clipLengthInSeconds": 1, "audioClipStatus": 1, "audioClipTypeID": 1, "audioClipParameters": "Example value" } }, "CreateCollectionItem": { "type": "object", "properties": { "itemType": { "type": "string", "nullable": true, "example": "Example value" }, "itemID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "itemType": "Example value", "itemID": 1 } }, "CreateDeviceHealth": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "deviceSerial": { "type": "string", "nullable": true, "example": "Example value" }, "healthJSON": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "healthJSON": "Example value" } }, "CreateEvent": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "deviceSerial": { "type": "string", "nullable": true, "example": "Example value" }, "agentType": { "type": "string", "nullable": true, "example": "Example value" }, "eventType": { "type": "string", "nullable": true, "example": "Example value" }, "agentTypeID": { "type": "integer", "format": "int64", "example": 1 }, "eventTypeID": { "type": "integer", "format": "int64", "example": 1 }, "serverEvent": { "type": "integer", "format": "int64", "example": 1 }, "eventParameters": { "type": "string", "nullable": true, "example": "Example value" }, "priority": { "type": "integer", "format": "int64", "example": 1 }, "maxAttempts": { "type": "integer", "format": "int64", "example": 1 }, "expirationEpoch": { "type": "integer", "format": "int64", "example": 1 } }, "additionalProperties": false, "example": { "deviceID": 201, "deviceSerial": "10001234", "agentType": "Device", "eventType": "Run", "agentTypeID": 1, "eventTypeID": 1, "serverEvent": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "priority": 1, "maxAttempts": 3, "expirationEpoch": 1711800000 } }, "CreateEventPreset": { "type": "object", "properties": { "eventPresetName": { "type": "string", "nullable": true, "example": "Example value" }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "deviceGroupID": { "type": "integer", "format": "int64", "example": 1 }, "agentType": { "type": "string", "nullable": true, "example": "Example value" }, "eventType": { "type": "string", "nullable": true, "example": "Example value" }, "eventParameters": { "type": "string", "nullable": true, "example": "Example value" }, "priority": { "type": "integer", "format": "int64", "example": 1 }, "maxAttempts": { "type": "integer", "format": "int64", "example": 1 }, "expirationEpoch": { "type": "integer", "format": "int64", "example": 1 } }, "additionalProperties": false, "example": { "eventPresetName": "Example value", "deviceID": 201, "deviceGroupID": 1, "agentType": "Device", "eventType": "Run", "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "priority": 1, "maxAttempts": 3, "expirationEpoch": 1711800000 } }, "CreateFile": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "deviceSerial": { "type": "string", "nullable": true, "example": "Example value" }, "filename": { "type": "string", "nullable": true, "example": "Example value" }, "fileSize": { "type": "integer", "format": "int64", "example": 1 }, "sHA256Hash": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "filename": "clip.mp4", "fileSize": 1, "sHA256Hash": "Example value" } }, "CreateImage": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "fileID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "height": { "type": "integer", "format": "int64", "example": 1 }, "width": { "type": "integer", "format": "int64", "example": 1 }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "imageStatus": { "type": "integer", "format": "int64", "example": 1 }, "imageTypeID": { "type": "integer", "format": "int64", "example": 1 } }, "additionalProperties": false, "example": { "deviceID": 201, "deviceName": "WearableDevice", "fileID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "startTime": 1, "startTimeMs": 1, "imageStatus": 1, "imageTypeID": 1 } }, "CreateLogMessage": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "agentType": { "type": "string", "nullable": true, "example": "Example value" }, "agentVersion": { "type": "string", "nullable": true, "example": "Example value" }, "agentIndex": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "processID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "message": { "type": "string", "nullable": true, "example": "Example value" }, "logDate": { "type": "string", "format": "date-time", "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "deviceName": "WearableDevice", "agentType": "Device", "agentVersion": "1.0.0", "agentIndex": 1, "processID": 4321, "message": "Example value", "logDate": "2026-03-30T12:00:00.0000000Z" } }, "CreateSessionResult": { "type": "object", "properties": { "sessionGuid": { "type": "string", "nullable": true, "example": "Example value" }, "mfaTypeId": { "type": "integer", "format": "int64", "example": 1 }, "browserGUID": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "sessionGuid": "11111111-2222-3333-4444-555555555555", "mfaTypeId": 1, "browserGUID": "11111111-2222-3333-4444-555555555555" } }, "CreateSharedDevice": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "emailAddress": { "type": "string", "nullable": true, "example": "Example value" }, "permissionList": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceID": 201, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value" } }, "CreateSharedDeviceGroup": { "type": "object", "properties": { "deviceGroupID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "emailAddress": { "type": "string", "nullable": true, "example": "Example value" }, "permissionList": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceGroupID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value" } }, "CreateSharedItem": { "type": "object", "properties": { "itemType": { "type": "string", "nullable": true, "example": "Example value" }, "objectID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "sharedWithType": { "type": "string", "nullable": true, "example": "Example value" }, "sharedWith": { "type": "string", "nullable": true, "example": "Example value" }, "sharedWithID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "itemType": "Example value", "objectID": 1, "sharedWithType": "Example value", "sharedWith": "Example value", "sharedWithID": 1 } }, "CreateStream": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "streamType": { "type": "string", "nullable": true, "example": "Example value" }, "streamName": { "type": "string", "nullable": true, "example": "Example value" }, "streamPath": { "type": "string", "nullable": true, "example": "Example value" }, "streamDescription": { "type": "string", "nullable": true, "example": "Example value" }, "publishURL": { "type": "string", "nullable": true, "example": "Example value" }, "readURL": { "type": "string", "nullable": true, "example": "Example value" }, "actionType": { "type": "string", "nullable": true, "example": "Example value" }, "eventID": { "type": "integer", "format": "int64", "example": 1 } }, "additionalProperties": false, "example": { "deviceID": 201, "streamType": "Example value", "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "actionType": "Example value", "eventID": 501 } }, "CreateVideoClip": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "fileID": { "type": "integer", "format": "int64", "example": 1 }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "height": { "type": "integer", "format": "int64", "example": 1 }, "width": { "type": "integer", "format": "int64", "example": 1 }, "framesPerSecond": { "type": "number", "format": "double", "example": 1 }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "clipLengthInSeconds": { "type": "number", "format": "double", "example": 1 }, "videoClipStatus": { "type": "integer", "format": "int64", "example": 1 }, "videoClipTypeID": { "type": "integer", "format": "int64", "example": 1 }, "videoClipParameters": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceID": 201, "deviceName": "WearableDevice", "fileID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "framesPerSecond": 1, "startTime": 1, "startTimeMs": 1, "clipLengthInSeconds": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value" } }, "DataPoint": { "type": "object", "properties": { "time": { "type": "integer", "format": "int64", "example": 1 }, "value": { "type": "number", "format": "double", "example": 1 } }, "additionalProperties": false, "example": { "time": 1, "value": -4 } }, "Dataset": { "type": "object", "properties": { "label": { "type": "string", "nullable": true, "example": "Example value" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/DataPoint" }, "nullable": true, "example": [ { "time": 1, "value": -4 } ] } }, "additionalProperties": false, "example": { "label": "Example value", "data": [ { "time": 1, "value": -4 } ] } }, "DateAndCountFilter": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "startDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "endDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "count": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "order": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceID": 201, "startDate": "2026-03-30T12:00:00.0000000Z", "endDate": "2026-03-30T12:00:00.0000000Z", "count": 25, "order": "Example value" } }, "DequeueEvent": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "deviceSerial": { "type": "string", "nullable": true, "example": "Example value" }, "agentType": { "type": "string", "nullable": true, "example": "Example value" }, "agentIndex": { "type": "integer", "format": "int64", "example": 1 }, "processID": { "type": "integer", "format": "int64", "example": 1 } }, "additionalProperties": false, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "agentType": "Device", "agentIndex": 1, "processID": 4321 } }, "Device": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceTypeID": { "type": "integer", "format": "int64", "example": 1 }, "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "serialNumber": { "type": "string", "nullable": true, "example": "Example value" }, "deviceDescription": { "type": "string", "nullable": true, "example": "Example value" }, "recentOutput": { "type": "string", "nullable": true, "example": "Example value" }, "cameraStatus": { "type": "string", "nullable": true, "example": "Example value" }, "lastIPAddress": { "type": "string", "nullable": true, "example": "Example value" }, "tunnelIPAddress": { "type": "string", "nullable": true, "example": "Example value" }, "lastHeardFromDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "offlineNotificationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "softwareDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "location": { "type": "string", "nullable": true, "example": "Example value" }, "setupStatus": { "type": "integer", "format": "int64", "example": 1 }, "autoSendFiles": { "type": "integer", "format": "int64", "example": 1 }, "runStartupEvent": { "type": "integer", "format": "int64", "example": 1 }, "deviceReadyEventPresetID": { "type": "integer", "format": "int64", "example": 1 }, "standaloneEventPresetID": { "type": "integer", "format": "int64", "example": 1 }, "logHealth": { "type": "integer", "format": "int64", "example": 1 }, "runAnalytics": { "type": "integer", "format": "int64", "example": 1 }, "audioChannelName": { "type": "string", "nullable": true, "example": "Example value" }, "volume": { "type": "integer", "format": "int64", "example": 1 }, "commentListID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 201, "deviceTypeID": 1, "deviceName": "WearableDevice", "serialNumber": "10001234", "deviceDescription": "Example description", "recentOutput": "Agent started successfully.", "cameraStatus": "online", "lastIPAddress": "203.0.113.42", "tunnelIPAddress": "203.0.113.42", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "offlineNotificationDate": "2026-03-30T12:00:00.0000000Z", "softwareDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "setupStatus": 1, "autoSendFiles": 1, "runStartupEvent": 1, "deviceReadyEventPresetID": 1, "standaloneEventPresetID": 1, "logHealth": 1, "runAnalytics": 1, "audioChannelName": "Example value", "volume": 75, "commentListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "DeviceEpochRange": { "type": "object", "properties": { "deviceSerial": { "type": "string", "nullable": true, "example": "Example value" }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "deviceSerial": "10001234", "startEpoch": 1711800000, "endEpoch": 1711800000 } }, "DeviceHealth": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "healthDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "healthJSON": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "healthDate": "2026-03-30T12:00:00.0000000Z", "healthJSON": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "DeviceHealthRow": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "serialNumber": { "type": "string", "nullable": true, "example": "Example value" }, "batteryStatus": { "type": "string", "nullable": true, "example": "Example value" }, "batteryPercent": { "type": "number", "format": "double", "example": 1 }, "batteryVoltage": { "type": "number", "format": "double", "example": 1 }, "cpuTemp": { "type": "number", "format": "double", "example": 1 }, "gpuTemp": { "type": "number", "format": "double", "example": 1 }, "cpuPercent": { "type": "string", "nullable": true, "example": "Example value" }, "accessPointName": { "type": "string", "nullable": true, "example": "Example value" }, "networkAlias": { "type": "string", "nullable": true, "example": "Example value" }, "frequency": { "type": "number", "format": "double", "example": 1 }, "linkQuality": { "type": "string", "nullable": true, "example": "Example value" }, "signalStrength_dBm": { "type": "number", "format": "double", "example": 1 }, "transferBitrate_Mbps": { "type": "number", "format": "double", "example": 1 }, "deviceStatus": { "type": "string", "nullable": true, "example": "Example value" }, "cameraStatus": { "type": "string", "nullable": true, "example": "Example value" }, "cameraActivity": { "type": "string", "nullable": true, "example": "Example value" }, "tunnelStatus": { "type": "string", "nullable": true, "example": "Example value" }, "softwareVersion": { "type": "string", "nullable": true, "example": "Example value" }, "lastHeardFromDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "lastVideoClipDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "softwareDeployDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 201, "deviceName": "WearableDevice", "serialNumber": "10001234", "batteryStatus": "Example value", "batteryPercent": 42.5, "batteryVoltage": 1, "cpuTemp": 1, "gpuTemp": 1, "cpuPercent": "Example value", "accessPointName": "Example value", "networkAlias": "Example value", "frequency": 1, "linkQuality": "Example value", "signalStrength_dBm": 1, "transferBitrate_Mbps": 1, "deviceStatus": "Example value", "cameraStatus": "online", "cameraActivity": "Example value", "tunnelStatus": "Example value", "softwareVersion": "1.0.0", "lastHeardFromDate": "2026-03-30T12:00:00.0000000Z", "lastVideoClipDate": "2026-03-30T12:00:00.0000000Z", "softwareDeployDate": "2026-03-30T12:00:00.0000000Z" } }, "DeviceNameArg": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceName": "WearableDevice" } }, "DeviceSetting": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "settingName": { "type": "string", "nullable": true, "example": "Example value" }, "settingValue": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "DeviceWifiConnection": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "wifiConnectionID": { "type": "integer", "format": "int64", "example": 1 }, "priority": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "wifiConnectionID": 1, "priority": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "DevicesEpochAndCountFilter": { "type": "object", "properties": { "deviceIDList": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "count": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "order": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value" } }, "EpochAndCountFilter": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "count": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "order": { "type": "string", "nullable": true, "example": "Example value" }, "videoClipTypeID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "deviceID": 201, "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "videoClipTypeID": 1 } }, "Event": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "agentTypeID": { "type": "integer", "format": "int64", "example": 1 }, "agentID": { "type": "integer", "format": "int64", "example": 1 }, "eventTypeID": { "type": "integer", "format": "int64", "example": 1 }, "serverEvent": { "type": "integer", "format": "int64", "example": 1 }, "eventStatus": { "type": "integer", "format": "int64", "example": 1 }, "eventParameters": { "type": "string", "nullable": true, "example": "Example value" }, "processID": { "type": "integer", "format": "int64", "example": 1 }, "result": { "type": "string", "nullable": true, "example": "Example value" }, "percentComplete": { "type": "number", "format": "double", "example": 1 }, "priority": { "type": "integer", "format": "int64", "example": 1 }, "expirationEpoch": { "type": "integer", "format": "int64", "example": 1 }, "attemptNumber": { "type": "integer", "format": "int64", "example": 1 }, "maxAttempts": { "type": "integer", "format": "int64", "example": 1 }, "tagString": { "type": "string", "nullable": true, "example": "Example value" }, "tagNumber": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "EventPreset": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "eventPresetName": { "type": "string", "nullable": true, "example": "Example value" }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "deviceGroupID": { "type": "integer", "format": "int64", "example": 1 }, "agentTypeID": { "type": "integer", "format": "int64", "example": 1 }, "agentID": { "type": "integer", "format": "int64", "example": 1 }, "eventTypeID": { "type": "integer", "format": "int64", "example": 1 }, "eventStatus": { "type": "integer", "format": "int64", "example": 1 }, "eventParameters": { "type": "string", "nullable": true, "example": "Example value" }, "processID": { "type": "integer", "format": "int64", "example": 1 }, "result": { "type": "string", "nullable": true, "example": "Example value" }, "percentComplete": { "type": "number", "format": "double", "example": 1 }, "priority": { "type": "integer", "format": "int64", "example": 1 }, "expirationEpoch": { "type": "integer", "format": "int64", "example": 1 }, "attemptNumber": { "type": "integer", "format": "int64", "example": 1 }, "maxAttempts": { "type": "integer", "format": "int64", "example": 1 }, "tagString": { "type": "string", "nullable": true, "example": "Example value" }, "tagNumber": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "eventPresetName": "Example value", "deviceID": 201, "deviceGroupID": 1, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "EventStatus": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "eventStatusName": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "eventStatusName": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "EventType": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "legacyEventTypeID": { "type": "integer", "format": "int64", "example": 1 }, "agentTypeID": { "type": "integer", "format": "int64", "example": 1 }, "eventTypeName": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "legacyEventTypeID": 1, "agentTypeID": 1, "eventTypeName": "Run", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "EventWithNames": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "eventType": { "type": "string", "nullable": true, "example": "Example value" }, "agentType": { "type": "string", "nullable": true, "example": "Example value" }, "version": { "type": "string", "nullable": true, "example": "Example value" }, "eventStatusName": { "type": "string", "nullable": true, "example": "Example value" }, "eventStatusDescription": { "type": "string", "nullable": true, "example": "Example value" }, "agentIndex": { "type": "integer", "format": "int64", "example": 1 }, "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "agentTypeID": { "type": "integer", "format": "int64", "example": 1 }, "agentID": { "type": "integer", "format": "int64", "example": 1 }, "eventTypeID": { "type": "integer", "format": "int64", "example": 1 }, "serverEvent": { "type": "integer", "format": "int64", "example": 1 }, "eventStatus": { "type": "integer", "format": "int64", "example": 1 }, "eventParameters": { "type": "string", "nullable": true, "example": "Example value" }, "processID": { "type": "integer", "format": "int64", "example": 1 }, "result": { "type": "string", "nullable": true, "example": "Example value" }, "percentComplete": { "type": "number", "format": "double", "example": 1 }, "priority": { "type": "integer", "format": "int64", "example": 1 }, "expirationEpoch": { "type": "integer", "format": "int64", "example": 1 }, "attemptNumber": { "type": "integer", "format": "int64", "example": 1 }, "maxAttempts": { "type": "integer", "format": "int64", "example": 1 }, "tagString": { "type": "string", "nullable": true, "example": "Example value" }, "tagNumber": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 501, "deviceID": 201, "agentTypeID": 1, "agentID": 1, "eventTypeID": 1, "serverEvent": 1, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "processID": 4321, "result": "Example value", "percentComplete": 42.5, "priority": 1, "expirationEpoch": 1711800000, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "eventType": "Run", "agentType": "Device", "version": "1.0.0", "eventStatusName": "Example value", "eventStatusDescription": "Example description", "agentIndex": 1 } }, "File": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "filename": { "type": "string", "nullable": true, "example": "Example value" }, "fileGUID": { "type": "string", "nullable": true, "example": "Example value" }, "sHA256Hash": { "type": "string", "nullable": true, "example": "Example value" }, "fileLocation": { "type": "string", "nullable": true, "example": "Example value" }, "fileExpiration": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "fileSize": { "type": "integer", "format": "int64", "example": 1 }, "fileInS3": { "type": "boolean", "example": true }, "doNotDelete": { "type": "boolean", "example": true }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "filename": "clip.mp4", "fileGUID": "11111111-2222-3333-4444-555555555555", "sHA256Hash": "Example value", "fileLocation": "Remote site", "fileExpiration": "2026-03-30T12:00:00.0000000Z", "fileSize": 1, "fileInS3": true, "doNotDelete": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "FloatArg": { "type": "object", "properties": { "value": { "type": "number", "format": "double", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "value": -4 } }, "GenerateImageTagList": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "mediaID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "epochTime": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "epochTimeMs": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "objectName": { "type": "string", "nullable": true, "example": "Example value" }, "maxLabels": { "type": "integer", "format": "int32", "nullable": true, "example": 1 }, "minConfidence": { "type": "number", "format": "float", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "deviceID": 201, "mediaID": 1, "epochTime": 1711800000, "epochTimeMs": 1711800000, "objectName": "Example value", "maxLabels": 1, "minConfidence": 98.4 } }, "GetEventStatus": { "type": "object", "properties": { "eventID": { "type": "integer", "format": "int64", "example": 1 }, "eventStatus": { "type": "integer", "format": "int64", "example": 1 }, "eventParameters": { "type": "string", "nullable": true, "example": "Example value" }, "result": { "type": "string", "nullable": true, "example": "Example value" }, "percentComplete": { "type": "number", "format": "double", "example": 1 }, "priority": { "type": "integer", "format": "int64", "example": 1 }, "attemptNumber": { "type": "integer", "format": "int64", "example": 1 }, "maxAttempts": { "type": "integer", "format": "int64", "example": 1 }, "tagString": { "type": "string", "nullable": true, "example": "Example value" }, "tagNumber": { "type": "integer", "format": "int64", "example": 1 } }, "additionalProperties": false, "example": { "eventID": 501, "eventStatus": 1, "eventParameters": "{\"presetName\":\"Run Event Preset\"}", "result": "Example value", "percentComplete": 42.5, "priority": 1, "attemptNumber": 1, "maxAttempts": 3, "tagString": "Example value", "tagNumber": 1 } }, "GetEventType": { "type": "object", "properties": { "agentType": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "agentType": "Device" } }, "GetTagListForDeviceList": { "type": "object", "properties": { "deviceIDList": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] }, "tagIDList": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "count": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "order": { "type": "string", "nullable": true, "example": "Example value" }, "searchText": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "deviceIDList": [ 1 ], "tagIDList": [ 1 ], "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "searchText": "Example value" } }, "Image": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "fileID": { "type": "integer", "format": "int64", "example": 1 }, "imageStatus": { "type": "integer", "format": "int64", "example": 1 }, "imageTypeID": { "type": "integer", "format": "int64", "example": 1 }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "height": { "type": "integer", "format": "int64", "example": 1 }, "width": { "type": "integer", "format": "int64", "example": 1 }, "filesize": { "type": "integer", "format": "int64", "example": 1 }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "tagListID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "ImageEpochAndCountFilter": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "count": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "order": { "type": "string", "nullable": true, "example": "Example value" }, "tagList": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "example": { "deviceID": 201, "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "tagList": [ 1 ] } }, "ImageLabel": { "type": "object", "properties": { "label": { "type": "string", "nullable": true, "example": "Example value" }, "confidence": { "type": "number", "format": "float", "example": 1 } }, "additionalProperties": false, "example": { "label": "Example value", "confidence": 98.4 } }, "ImageListWithTags": { "type": "object", "properties": { "imageList": { "type": "array", "items": { "$ref": "#/components/schemas/Image" }, "nullable": true, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "imageTagList": { "type": "array", "items": { "$ref": "#/components/schemas/ImageTagWithNames" }, "nullable": true, "example": [ { "key": 1, "imageID": 1, "userID": 101, "deviceID": 201, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "left": 1, "top": 1, "width": 1, "height": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "tagName": "Example value" } ] }, "tagList": { "type": "array", "items": { "$ref": "#/components/schemas/Tag" }, "nullable": true, "example": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] } }, "additionalProperties": false, "example": { "imageList": [ { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ], "imageTagList": [ { "key": 1, "imageID": 1, "deviceID": 201, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "left": 1, "top": 1, "width": 1, "height": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "tagName": "Example value" } ], "tagList": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } }, "ImageTagWithNames": { "type": "object", "properties": { "tagName": { "type": "string", "nullable": true, "example": "Example value" }, "key": { "type": "integer", "format": "int64", "example": 1 }, "imageID": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "tagID": { "type": "integer", "format": "int64", "example": 1 }, "timestamp": { "type": "integer", "format": "int64", "example": 1 }, "timestampMs": { "type": "integer", "format": "int64", "example": 1 }, "confidence": { "type": "number", "format": "double", "example": 1 }, "left": { "type": "integer", "format": "int64", "example": 1 }, "top": { "type": "integer", "format": "int64", "example": 1 }, "width": { "type": "integer", "format": "int64", "example": 1 }, "height": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "imageID": 1, "deviceID": 201, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "left": 1, "top": 1, "width": 1, "height": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "tagName": "Example value" } }, "ImageWithNames": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "tagList": { "type": "array", "items": { "$ref": "#/components/schemas/Tag" }, "nullable": true, "example": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "fileID": { "type": "integer", "format": "int64", "example": 1 }, "imageStatus": { "type": "integer", "format": "int64", "example": 1 }, "imageTypeID": { "type": "integer", "format": "int64", "example": 1 }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "height": { "type": "integer", "format": "int64", "example": 1 }, "width": { "type": "integer", "format": "int64", "example": 1 }, "filesize": { "type": "integer", "format": "int64", "example": 1 }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "tagListID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "fileID": 1, "imageStatus": 1, "imageTypeID": 1, "localFilePath": "Example value", "height": 1, "width": 1, "filesize": 1, "startTime": 1, "startTimeMs": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "tagList": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } }, "IntegerArray": { "type": "object", "properties": { "data": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "example": { "data": [ 1 ] } }, "LineChartArgs": { "type": "object", "properties": { "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "count": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "variableName": { "type": "string", "nullable": true, "example": "Example value" }, "verticalLineTimestamps": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "example": { "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "variableName": "Example value", "verticalLineTimestamps": [ 1 ] } }, "LineChartResponse": { "type": "object", "properties": { "datasets": { "type": "array", "items": { "$ref": "#/components/schemas/Dataset" }, "nullable": true, "example": [ { "label": "Example value", "data": [ { "time": null, "value": null } ] } ] }, "verticalLines": { "type": "array", "items": { "$ref": "#/components/schemas/VerticalLine" }, "nullable": true, "example": [ { "timestamp": 1, "color": "Example value" } ] } }, "additionalProperties": false, "example": { "datasets": [ { "label": "Example value", "data": [ null ] } ], "verticalLines": [ { "timestamp": 1, "color": "Example value" } ] } }, "LogMessage": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "agentID": { "type": "integer", "format": "int64", "example": 1 }, "processID": { "type": "integer", "format": "int64", "example": 1 }, "version": { "type": "string", "nullable": true, "example": "Example value" }, "message": { "type": "string", "nullable": true, "example": "Example value" }, "messageDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "agentID": 1, "processID": 4321, "version": "1.0.0", "message": "Example value", "messageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "LogMessageWithNames": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "agentType": { "type": "string", "nullable": true, "example": "Example value" }, "agentIndex": { "type": "integer", "format": "int64", "example": 1 }, "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "agentID": { "type": "integer", "format": "int64", "example": 1 }, "processID": { "type": "integer", "format": "int64", "example": 1 }, "version": { "type": "string", "nullable": true, "example": "Example value" }, "message": { "type": "string", "nullable": true, "example": "Example value" }, "messageDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "agentID": 1, "processID": 4321, "version": "1.0.0", "message": "Example value", "messageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "agentType": "Device", "agentIndex": 1 } }, "MediaRouterAuthRequest": { "type": "object", "properties": { "user": { "type": "string", "nullable": true, "example": "Example value" }, "password": { "type": "string", "nullable": true, "example": "Example value" }, "token": { "type": "string", "nullable": true, "example": "Example value" }, "action": { "type": "string", "nullable": true, "example": "Example value" }, "path": { "type": "string", "nullable": true, "example": "Example value" }, "protocol": { "type": "string", "nullable": true, "example": "Example value" }, "ip": { "type": "string", "nullable": true, "example": "Example value" }, "id": { "type": "string", "nullable": true, "example": "Example value" }, "query": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "user": "Example value", "password": "ExamplePassword123!", "token": "example-token", "action": "publish", "path": "Example value", "protocol": "srt", "ip": "Example value", "id": "Example value", "query": "Example value" } }, "MediaRouterTokenRequest": { "type": "object", "properties": { "streamPath": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "streamPath": "sendsrt-wearabledevice" } }, "MultifactorAuth": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "multifactorAuthTypeID": { "type": "integer", "format": "int64", "example": 1 }, "mFASource": { "type": "string", "nullable": true, "example": "Example value" }, "secretKeyImage": { "type": "string", "nullable": true, "example": "Example value" }, "userPinCode": { "type": "integer", "format": "int64", "example": 1 }, "pinCodeExpirationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "isValidated": { "type": "boolean", "example": true }, "isActive": { "type": "boolean", "example": true }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "multifactorAuthTypeID": 1, "mFASource": "testuser@actionstreamer.com", "secretKeyImage": "Example value", "userPinCode": 1, "pinCodeExpirationDate": "2026-03-30T12:00:00.0000000Z", "isValidated": true, "isActive": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "NameValuePair": { "type": "object", "properties": { "name": { "type": "string", "nullable": true, "example": "Example value" }, "value": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "name": "RemoteWorker", "value": "Example value" } }, "Notification": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "notificationStatusID": { "type": "integer", "format": "int64", "example": 1 }, "message": { "type": "string", "nullable": true, "example": "Example value" }, "seenInApp": { "type": "boolean", "example": true }, "seenDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "sentAsEmail": { "type": "boolean", "example": true }, "sentAsEmailDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "notificationStatusID": 1, "message": "Example value", "seenInApp": true, "seenDate": "2026-03-30T12:00:00.0000000Z", "sentAsEmail": true, "sentAsEmailDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "Package": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "packageTypeID": { "type": "integer", "format": "int64", "example": 1 }, "fileID": { "type": "integer", "format": "int64", "example": 1 }, "encrypted": { "type": "integer", "format": "int64", "example": 1 }, "packageName": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "uRL": { "type": "string", "nullable": true, "example": "Example value" }, "version": { "type": "string", "nullable": true, "example": "Example value" }, "packageDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 601, "packageTypeID": 1, "fileID": 1, "encrypted": 1, "packageName": "DefaultAdminPackage", "description": "Example description", "uRL": "https://api.actionstreamer.com/example", "version": "1.0.0", "packageDate": "2026-03-30T12:00:00.0000000Z", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "PatchEventProgress": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "deviceSerial": { "type": "string", "nullable": true, "example": "Example value" }, "percentComplete": { "type": "number", "format": "double", "example": 1 } }, "additionalProperties": false, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "percentComplete": 42.5 } }, "PatchEventStatus": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "eventStatus": { "type": "integer", "format": "int64", "example": 1 }, "events": { "type": "array", "items": { "type": "integer", "format": "int32", "example": 1 }, "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "example": { "deviceID": 201, "deviceName": "WearableDevice", "eventStatus": 1, "events": [ 1 ] } }, "PermissionType": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "permissionTypeName": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "permissionTypeName": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "Project": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "projectName": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "userGroupID": { "type": "integer", "format": "int64", "example": 1 }, "deviceGroupID": { "type": "integer", "format": "int64", "example": 1 }, "conferenceURL": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 301, "projectName": "RemoteWorker", "description": "Example description", "userGroupID": 1, "deviceGroupID": 1, "conferenceURL": "https://api.actionstreamer.com/example", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "RegisterAgent": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "deviceSerial": { "type": "string", "nullable": true, "example": "Example value" }, "agentType": { "type": "string", "nullable": true, "example": "Example value" }, "agentVersion": { "type": "string", "nullable": true, "example": "Example value" }, "agentIndex": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "processID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "deviceName": "WearableDevice", "deviceSerial": "10001234", "agentType": "Device", "agentVersion": "1.0.0", "agentIndex": 1, "processID": 4321 } }, "Session": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "sessionGUID": { "type": "string", "nullable": true, "example": "Example value" }, "expirationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "iPAddress": { "type": "string", "nullable": true, "example": "Example value" }, "location": { "type": "string", "nullable": true, "example": "Example value" }, "userAgent": { "type": "string", "nullable": true, "example": "Example value" }, "deviceDescription": { "type": "string", "nullable": true, "example": "Example value" }, "awaitingMFA": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "sessionGUID": "11111111-2222-3333-4444-555555555555", "expirationDate": "2026-03-30T12:00:00.0000000Z", "iPAddress": "203.0.113.42", "location": "Remote site", "userAgent": "Example value", "deviceDescription": "Example description", "awaitingMFA": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "SessionVariable": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "sessionVariableTypeID": { "type": "integer", "format": "int64", "example": 1 }, "sessionID": { "type": "integer", "format": "int64", "example": 1 }, "variableName": { "type": "string", "nullable": true, "example": "Example value" }, "variableValue": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "sessionVariableTypeID": 1, "sessionID": 1, "variableName": "Example value", "variableValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "SharedItem": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "itemTypeID": { "type": "integer", "format": "int64", "example": 1 }, "sharedItemObjectID": { "type": "integer", "format": "int64", "example": 1 }, "collectionTypeID": { "type": "integer", "format": "int64", "example": 1 }, "fieldName": { "type": "string", "nullable": true, "example": "Example value" }, "sharedByID": { "type": "integer", "format": "int64", "example": 1 }, "sharedWithID": { "type": "integer", "format": "int64", "example": 1 }, "sharedWithTypeID": { "type": "integer", "format": "int64", "example": 1 }, "emailAddress": { "type": "string", "nullable": true, "example": "Example value" }, "permissionList": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "itemTypeID": 1, "sharedItemObjectID": 1, "collectionTypeID": 1, "fieldName": "Example value", "sharedByID": 1, "sharedWithID": 1, "sharedWithTypeID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "SharedItemWithNames": { "type": "object", "properties": { "itemType": { "type": "string", "nullable": true, "example": "Example value" }, "itemName": { "type": "string", "nullable": true, "example": "Example value" }, "sharedWith": { "type": "string", "nullable": true, "example": "Example value" }, "permissionListNames": { "type": "string", "nullable": true, "example": "Example value" }, "key": { "type": "integer", "format": "int64", "example": 1 }, "itemTypeID": { "type": "integer", "format": "int64", "example": 1 }, "sharedItemObjectID": { "type": "integer", "format": "int64", "example": 1 }, "collectionTypeID": { "type": "integer", "format": "int64", "example": 1 }, "fieldName": { "type": "string", "nullable": true, "example": "Example value" }, "sharedByID": { "type": "integer", "format": "int64", "example": 1 }, "sharedWithID": { "type": "integer", "format": "int64", "example": 1 }, "sharedWithTypeID": { "type": "integer", "format": "int64", "example": 1 }, "emailAddress": { "type": "string", "nullable": true, "example": "Example value" }, "permissionList": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "itemTypeID": 1, "sharedItemObjectID": 1, "collectionTypeID": 1, "fieldName": "Example value", "sharedByID": 1, "sharedWithID": 1, "sharedWithTypeID": 1, "emailAddress": "testuser@actionstreamer.com", "permissionList": "Example value", "description": "Example description", "creationDate": "2026-03-30T12:00:00.0000000Z", "itemType": "Example value", "itemName": "Example value", "sharedWith": "Example value", "permissionListNames": "Example value" } }, "SignInHistory": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "username": { "type": "string", "nullable": true, "example": "Example value" }, "remoteIPAddress": { "type": "string", "nullable": true, "example": "Example value" }, "forwardedFor": { "type": "string", "nullable": true, "example": "Example value" }, "realIP": { "type": "string", "nullable": true, "example": "Example value" }, "userAgent": { "type": "string", "nullable": true, "example": "Example value" }, "location": { "type": "string", "nullable": true, "example": "Example value" }, "deviceDescription": { "type": "string", "nullable": true, "example": "Example value" }, "referer": { "type": "string", "nullable": true, "example": "Example value" }, "successfulSignIn": { "type": "boolean", "example": true }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "username": "testuser", "remoteIPAddress": "203.0.113.42", "forwardedFor": "Example value", "realIP": "Example value", "userAgent": "Example value", "location": "Remote site", "deviceDescription": "Example description", "referer": "Example value", "successfulSignIn": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "SignedURLWithID": { "type": "object", "properties": { "signedURL": { "type": "string", "nullable": true, "example": "Example value" }, "fileID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "signedURL": "https://api.actionstreamer.com/example", "fileID": 1 } }, "StandardResult": { "type": "object", "properties": { "code": { "type": "integer", "format": "int64", "example": 1 }, "description": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "code": 1, "description": "Example description" } }, "Stream": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "streamTypeID": { "type": "integer", "format": "int64", "example": 1 }, "eventID": { "type": "integer", "format": "int64", "example": 1 }, "streamName": { "type": "string", "nullable": true, "example": "Example value" }, "streamPath": { "type": "string", "nullable": true, "example": "Example value" }, "streamDescription": { "type": "string", "nullable": true, "example": "Example value" }, "publishURL": { "type": "string", "nullable": true, "example": "Example value" }, "readURL": { "type": "string", "nullable": true, "example": "Example value" }, "lastActivityDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "actionTypeID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 401, "deviceID": 201, "streamTypeID": 1, "eventID": 501, "streamName": "SendSRT", "streamPath": "sendsrt-wearabledevice", "streamDescription": "Example description", "publishURL": "srt://media.actionstreamer.com:8890?streamid=publish:sendsrt-wearabledevice", "readURL": "https://media.actionstreamer.com/webrtc/sendsrt-wearabledevice", "lastActivityDate": "2026-03-30T12:00:00.0000000Z", "actionTypeID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "StringArg": { "type": "object", "properties": { "value": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "value": "Example value" } }, "StringArray": { "type": "object", "properties": { "values": { "type": "array", "items": { "type": "string", "example": "Example value" }, "nullable": true, "example": [ "Example value" ] } }, "additionalProperties": false, "example": { "values": [ "Example value" ] } }, "Tag": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "tagName": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "TimeZone": { "type": "object", "properties": { "key": { "type": "string", "nullable": true, "example": "Example value" }, "displayName": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "key": "America/New_York", "displayName": "(UTC-05:00) Eastern Time (New York)" } }, "Token": { "type": "object", "properties": { "token": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "token": "example-token" } }, "TransferDeviceArgs": { "type": "object", "properties": { "newAPIKey": { "type": "string", "nullable": true, "example": "Example value" }, "newSecretKey": { "type": "string", "nullable": true, "example": "Example value" }, "environment": { "type": "string", "nullable": true, "example": "Example value" }, "webServiceBaseUrl": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "newAPIKey": "Example value", "newSecretKey": "Example value", "environment": "Example value", "webServiceBaseUrl": "https://api.actionstreamer.com/example" } }, "TreeNode": { "type": "object", "properties": { "title": { "type": "string", "nullable": true, "example": "Example value" }, "key": { "type": "string", "nullable": true, "example": "Example value" }, "isLeaf": { "type": "boolean", "example": true }, "selectable": { "type": "boolean", "example": true }, "children": { "type": "array", "items": { "$ref": "#/components/schemas/TreeNode" }, "nullable": true, "example": [ { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ { "title": null, "key": null, "isLeaf": null, "selectable": null, "children": null } ] } ] } }, "additionalProperties": false, "example": { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ { "title": "Example value", "key": "Example value", "isLeaf": true, "selectable": true, "children": [ null ] } ] } }, "UpdateEvent": { "type": "object", "properties": { "eventStatus": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "attemptNumber": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "result": { "type": "string", "nullable": true, "example": "Example value" }, "processID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "percentComplete": { "type": "number", "format": "double", "nullable": true, "example": 1 }, "tagString": { "type": "string", "nullable": true, "example": "Example value" }, "tagNumber": { "type": "integer", "format": "int64", "nullable": true, "example": 1 } }, "additionalProperties": false, "example": { "eventStatus": 1, "attemptNumber": 1, "result": "Example value", "processID": 4321, "percentComplete": 42.5, "tagString": "Example value", "tagNumber": 1 } }, "UploadAudioClips": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "audioClips": { "type": "array", "items": { "type": "integer", "format": "int32", "example": 1 }, "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "example": { "deviceID": 201, "audioClips": [ 1 ] } }, "UploadImages": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "imageIDList": { "type": "array", "items": { "type": "integer", "format": "int32", "example": 1 }, "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "example": { "deviceID": 201, "imageIDList": [ 1 ] } }, "UploadVideoClips": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "videoClips": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "example": { "deviceID": 201, "videoClips": [ 1 ] } }, "User": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "userTypeID": { "type": "integer", "format": "int64", "example": 1 }, "username": { "type": "string", "nullable": true, "example": "Example value" }, "emailAddress": { "type": "string", "nullable": true, "example": "Example value" }, "passwordStrength": { "type": "integer", "format": "int64", "example": 1 }, "verificationToken": { "type": "string", "nullable": true, "example": "Example value" }, "verificationTokenExpiration": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "refreshData": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "userStatusID": { "type": "integer", "format": "int64", "example": 1 }, "passwordResetToken": { "type": "string", "nullable": true, "example": "Example value" }, "passwordResetTokenExpiration": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "lastInvalidLoginAttemptDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "lastLoginAttemptDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "invalidLoginAttempts": { "type": "integer", "format": "int64", "example": 1 }, "timeZone": { "type": "string", "nullable": true, "example": "Example value" }, "firstName": { "type": "string", "nullable": true, "example": "Example value" }, "lastName": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "availability": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 101, "userTypeID": 1, "username": "testuser", "emailAddress": "testuser@actionstreamer.com", "passwordStrength": 4, "verificationToken": "example-token", "verificationTokenExpiration": "2026-03-30T12:00:00.0000000Z", "refreshData": "2026-03-30T12:00:00.0000000Z", "userStatusID": 1, "passwordResetToken": "example-token", "passwordResetTokenExpiration": "2026-03-30T12:00:00.0000000Z", "lastInvalidLoginAttemptDate": "2026-03-30T12:00:00.0000000Z", "lastLoginAttemptDate": "2026-03-30T12:00:00.0000000Z", "invalidLoginAttempts": 1, "timeZone": "America/New_York", "firstName": "Test", "lastName": "User", "description": "Example description", "availability": "Available", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "UserAvailability": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "emailAddress": { "type": "string", "nullable": true, "example": "Example value" }, "firstName": { "type": "string", "nullable": true, "example": "Example value" }, "lastName": { "type": "string", "nullable": true, "example": "Example value" }, "description": { "type": "string", "nullable": true, "example": "Example value" }, "availability": { "type": "string", "nullable": true, "example": "Example value" }, "timeZone": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "key": 101, "emailAddress": "testuser@actionstreamer.com", "firstName": "Test", "lastName": "User", "description": "Example description", "availability": "Available", "timeZone": "America/New_York" } }, "UserBrowser": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "browserName": { "type": "string", "nullable": true, "example": "Example value" }, "browserDescription": { "type": "string", "nullable": true, "example": "Example value" }, "userAgent": { "type": "string", "nullable": true, "example": "Example value" }, "remoteIPAddress": { "type": "string", "nullable": true, "example": "Example value" }, "forwardedFor": { "type": "string", "nullable": true, "example": "Example value" }, "realIP": { "type": "string", "nullable": true, "example": "Example value" }, "lastSignInDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" }, "location": { "type": "string", "nullable": true, "example": "Example value" }, "browserGUIDHash": { "type": "string", "nullable": true, "example": "Example value" }, "isTrustedBrowser": { "type": "boolean", "example": true }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "browserName": "Example value", "browserDescription": "Example description", "userAgent": "Example value", "remoteIPAddress": "203.0.113.42", "forwardedFor": "Example value", "realIP": "Example value", "lastSignInDate": "2026-03-30T12:00:00.0000000Z", "location": "Remote site", "browserGUIDHash": "11111111-2222-3333-4444-555555555555", "isTrustedBrowser": true, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "UserSetting": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "settingName": { "type": "string", "nullable": true, "example": "Example value" }, "settingValue": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "settingName": "Example value", "settingValue": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "VerticalLine": { "type": "object", "properties": { "timestamp": { "type": "integer", "format": "int64", "example": 1 }, "color": { "type": "string", "nullable": true, "example": "Example value" } }, "additionalProperties": false, "example": { "timestamp": 1, "color": "Example value" } }, "VideoClip": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "fileID": { "type": "integer", "format": "int64", "example": 1 }, "tSFileID": { "type": "integer", "format": "int64", "example": 1 }, "videoClipStatus": { "type": "integer", "format": "int64", "example": 1 }, "videoClipTypeID": { "type": "integer", "format": "int64", "example": 1 }, "videoClipParameters": { "type": "string", "nullable": true, "example": "Example value" }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "height": { "type": "integer", "format": "int64", "example": 1 }, "width": { "type": "integer", "format": "int64", "example": 1 }, "fileSize": { "type": "integer", "format": "int64", "example": 1 }, "framesPerSecond": { "type": "number", "format": "double", "example": 1 }, "bitrate": { "type": "integer", "format": "int64", "example": 1 }, "audioStatus": { "type": "integer", "format": "int64", "example": 1 }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "endTime": { "type": "integer", "format": "int64", "example": 1 }, "endTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "clipLengthInSeconds": { "type": "number", "format": "double", "example": 1 }, "tagListID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } }, "VideoClipEpochAndCountFilter": { "type": "object", "properties": { "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "startEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "endEpoch": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "count": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "order": { "type": "string", "nullable": true, "example": "Example value" }, "videoClipTypeID": { "type": "integer", "format": "int64", "nullable": true, "example": 1 }, "tagList": { "type": "array", "items": { "type": "integer", "format": "int64", "example": 1 }, "nullable": true, "example": [ 1 ] } }, "additionalProperties": false, "example": { "deviceID": 201, "startEpoch": 1711800000, "endEpoch": 1711800000, "count": 25, "order": "Example value", "videoClipTypeID": 1, "tagList": [ 1 ] } }, "VideoClipListWithTags": { "type": "object", "properties": { "videoClipList": { "type": "array", "items": { "$ref": "#/components/schemas/VideoClip" }, "nullable": true, "example": [ { "key": 1, "userID": 101, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "videoClipTagList": { "type": "array", "items": { "$ref": "#/components/schemas/VideoClipTagWithNames" }, "nullable": true, "example": [ { "key": 1, "videoClipID": 1, "userID": 101, "deviceID": 201, "containerID": 1, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1, "tagName": "Example value" } ] }, "tagList": { "type": "array", "items": { "$ref": "#/components/schemas/Tag" }, "nullable": true, "example": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] } }, "additionalProperties": false, "example": { "videoClipList": [ { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z" } ], "videoClipTagList": [ { "key": 1, "videoClipID": 1, "deviceID": 201, "containerID": 1, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "creationDate": "2026-03-30T12:00:00.0000000Z", "tagName": "Example value" } ], "tagList": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } }, "VideoClipTagWithNames": { "type": "object", "properties": { "tagName": { "type": "string", "nullable": true, "example": "Example value" }, "key": { "type": "integer", "format": "int64", "example": 1 }, "videoClipID": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "containerID": { "type": "integer", "format": "int64", "example": 1 }, "tagID": { "type": "integer", "format": "int64", "example": 1 }, "timestamp": { "type": "integer", "format": "int64", "example": 1 }, "timestampMs": { "type": "integer", "format": "int64", "example": 1 }, "confidence": { "type": "number", "format": "double", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "videoClipID": 1, "deviceID": 201, "containerID": 1, "tagID": 1, "timestamp": 1, "timestampMs": 1, "confidence": 98.4, "creationDate": "2026-03-30T12:00:00.0000000Z", "tagName": "Example value" } }, "VideoClipWithNames": { "type": "object", "properties": { "deviceName": { "type": "string", "nullable": true, "example": "Example value" }, "tagList": { "type": "array", "items": { "$ref": "#/components/schemas/Tag" }, "nullable": true, "example": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z", "createdBy": 1, "lastModifiedDate": "2026-03-30T12:00:00.0000000Z", "lastModifiedBy": 1 } ] }, "key": { "type": "integer", "format": "int64", "example": 1 }, "deviceID": { "type": "integer", "format": "int64", "example": 1 }, "fileID": { "type": "integer", "format": "int64", "example": 1 }, "tSFileID": { "type": "integer", "format": "int64", "example": 1 }, "videoClipStatus": { "type": "integer", "format": "int64", "example": 1 }, "videoClipTypeID": { "type": "integer", "format": "int64", "example": 1 }, "videoClipParameters": { "type": "string", "nullable": true, "example": "Example value" }, "localFilePath": { "type": "string", "nullable": true, "example": "Example value" }, "height": { "type": "integer", "format": "int64", "example": 1 }, "width": { "type": "integer", "format": "int64", "example": 1 }, "fileSize": { "type": "integer", "format": "int64", "example": 1 }, "framesPerSecond": { "type": "number", "format": "double", "example": 1 }, "bitrate": { "type": "integer", "format": "int64", "example": 1 }, "audioStatus": { "type": "integer", "format": "int64", "example": 1 }, "startTime": { "type": "integer", "format": "int64", "example": 1 }, "startTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "endTime": { "type": "integer", "format": "int64", "example": 1 }, "endTimeMs": { "type": "integer", "format": "int64", "example": 1 }, "clipLengthInSeconds": { "type": "number", "format": "double", "example": 1 }, "tagListID": { "type": "integer", "format": "int64", "example": 1 }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "deviceID": 201, "fileID": 1, "tSFileID": 1, "videoClipStatus": 1, "videoClipTypeID": 1, "videoClipParameters": "Example value", "localFilePath": "Example value", "height": 1, "width": 1, "fileSize": 1, "framesPerSecond": 1, "bitrate": 1, "audioStatus": 1, "startTime": 1, "startTimeMs": 1, "endTime": 1, "endTimeMs": 1, "clipLengthInSeconds": 1, "tagListID": 1, "creationDate": "2026-03-30T12:00:00.0000000Z", "deviceName": "WearableDevice", "tagList": [ { "key": 1, "tagName": "Example value", "creationDate": "2026-03-30T12:00:00.0000000Z" } ] } }, "WifiConnection": { "type": "object", "properties": { "key": { "type": "integer", "format": "int64", "example": 1 }, "securityType": { "type": "string", "nullable": true, "example": "Example value" }, "sSID": { "type": "string", "nullable": true, "example": "Example value" }, "alias": { "type": "string", "nullable": true, "example": "Example value" }, "password": { "type": "string", "nullable": true, "example": "Example value" }, "creationDate": { "type": "string", "format": "date-time", "nullable": true, "example": "2026-03-30T12:00:00.0000000Z" } }, "additionalProperties": false, "example": { "key": 1, "securityType": "Example value", "sSID": "Example value", "alias": "Example value", "password": "ExamplePassword123!", "creationDate": "2026-03-30T12:00:00.0000000Z" } } } } }