ActionStreamer Web API
The ActionStreamer HTTP Web API — 186 paths and 247 operations across 43 resource areas — for managing devices, device health telemetry, device groups, Wi-Fi connections, events and event presets, live streams, video clips, audio clips, images, files, projects, users, user groups, sessions, notifications, tags and API keys on the ActionStreamer platform. Authenticated with HMAC-SHA256 request signing using an access key and secret created in the ActionStreamer portal.
Operations 247
GET
/v1/agent/{agentID}
Retrieves an individual agent based on the provided agentID.
PUT
/v1/agent/{agentID}
Updates an agent.
PATCH
/v1/agent/{agentID}
Applies a patch to an agent.
DELETE
/v1/agent/{agentID}
Deletes an agent.
POST
/v1/agent/list
Retrieves a list of agents with additional name details based on the provided filter criteria.
POST
/v1/agent
Creates a new agent or updates an existing agent.
GET
/v1/agenttype/list
Gets the agent type list.
GET
/v1/apikey/{apiKeyID}
Gets an API key by ID.
PUT
/v1/apikey/{apiKeyID}
Updates an API key.
DELETE
/v1/apikey/{apiKeyID}
Deletes an API key.
GET
/v1/apikey/list
Gets the API key list.
POST
/v1/apikey
Creates an API key.
GET
/v1/audioclip/{audioClipID}
Gets an audio clip by ID.
PUT
/v1/audioclip/{audioClipID}
Updates an audio clip.
PATCH
/v1/audioclip/{audioClipID}
Applies a patch to an audio clip.
DELETE
/v1/audioclip/{audioClipID}
Deletes an audio clip.
POST
/v1/audioclip
Creates an audio clip.
POST
/v1/audioclip/{deviceSerial}
Creates an audio clip for a device identified by serial number.
POST
/v1/audioclip/createlist/{deviceSerial}
Creates one or more audio clip records.
POST
/v1/audioclip/upload
Uploads one or more audio clips.
GET
/v1/audioclip/list
Gets the audio clip list.
POST
/v1/audioclip/list
Gets the filtered audio clip list.
POST
/v1/audioclip/concatenate
Enqueue a concatenate clips event based on a start time and end time.
POST
/v1/audioclip/extract/list
Gets the extracted audio clip list.
POST
/v1/audioclip/devices/list
Gets the audio clip list for multiple devices.
POST
/v1/audioclip/devices/tag/list
Get a list of AudioClips, AudioClipTags, and a unique list of Tags based on a start and end epoch.
POST
/v1/audioclip/list/search/caption
Get a list of AudioClips based on if their captions contain a search word/phrase
POST
/v1/caption/audio/{deviceSerial}
Generates image tags for an image.
GET
/v1/caption/words/{captionID}
Generates image tags for an image.
GET
/v1/collectionitem/{collectionItemID}
Gets a collection item by ID.
DELETE
/v1/collectionitem/{collectionItemID}
Deletes a collection item.
GET
/v1/collectionitem/list
Gets the collection item list.
POST
/v1/collectionitem/{collectionID}
Creates a collection item.
GET
/v1/device/{deviceID}
Gets a device by ID.
PUT
/v1/device/{deviceID}
Updates a device.
DELETE
/v1/device/{deviceID}
Deletes a device.
PATCH
/v1/device/{deviceID}
Applies a patch to a device.
POST
/v1/device/name
Gets a device by name or serial number.
GET
/v1/device/list
Gets the device list.
GET
/v1/device/sharedwithme/list
Get a list of devices shared with the logged in user.
GET
/v1/device/sharedbyme/list
Get a list of devices shared by the logged in user.
POST
/v1/device
Creates a device.
POST
/v1/device/share
Creates a shared-device permission entry.
POST
/v1/device/ready
Marks a device as ready and returns the current device record.
POST
/v1/device/{deviceID}/transfer
Transfers a device to another user.
POST
/v1/device/{deviceID}/runanalytics/{runAnalytics}
Sets the device analytics state and queues any required event.
GET
/v1/device/list/all
Gets the full device list available to the authenticated user.
GET
/v1/device/{deviceID}/comment/{commentID}
Gets a device comment by ID.
PUT
/v1/device/{deviceID}/comment/{commentID}
Updates a device comment.
DELETE
/v1/device/{deviceID}/comment/{commentID}
Deletes a device comment.
GET
/v1/device/{deviceID}/comment/list
Gets the device comment list.
POST
/v1/device/{deviceID}/comment
Creates a device comment.
GET
/v1/devicegroup/{deviceGroupID}
Gets a device group by ID.
PUT
/v1/devicegroup/{deviceGroupID}
Updates a device group.
DELETE
/v1/devicegroup/{deviceGroupID}
Deletes a device group.
GET
/v1/devicegroup
Gets a device group by name.
POST
/v1/devicegroup
Creates a device group.
GET
/v1/devicegroup/list
Gets the device group list.
GET
/v1/devicegroup/{deviceGroupID}/device/list
Get a list of devices in a device group.
GET
/v1/shareddevicegroup/list
Get a flat list of root device groups the user has been added to.
GET
/v1/devicegroup/treenode/list
Get a list of device groups the user has created and all devices and device groups under them, recursively.
GET
/v1/devicegroup/tree
Gets the device group tree.
GET
/v1/shareddevicegroup/tree
Get a list of device groups the user has been added to by other users and all devices and device groups under them, recursively.
GET
/v1/shareddevicegroup/treenode/list
Get a list of device groups the user has been added to by other users and all devices and device groups under them, recursively.
POST
/v1/devicegroup/{deviceGroupID}/device/{deviceID}
Adds a device to a device group.
POST
/v1/devicegroup/share
Creates a shared-device-group permission entry.
GET
/v1/devicehealth/{deviceHealthID}
Gets a device health record by ID.
PUT
/v1/devicehealth/{deviceHealthID}
Updates a device health record.
GET
/v1/devicehealth/getlatest/{deviceID}
Gets the latest device health record for a device.
POST
/v1/devicehealth/list
Gets the device health list.
GET
/v1/device/list/health
Gets device health rows for the authenticated user's devices.
POST
/v1/device/{deviceID}/health/linechart
Gets line chart data for a device health variable.
POST
/v1/devicehealth
Creates a device health record.
POST
/v1/devicehealth/updatelatest
Updates the latest device health record for a device.
GET
/v1/devicewificonnection/{deviceWifiConnectionID}
Gets a device Wi-Fi connection by ID.
PUT
/v1/devicewificonnection/{deviceWifiConnectionID}
Updates a device Wi-Fi connection.
PATCH
/v1/devicewificonnection/{deviceWifiConnectionID}
Applies a patch to a device Wi-Fi connection.
DELETE
/v1/devicewificonnection/{deviceWifiConnectionID}
Deletes a device Wi-Fi connection.
GET
/v1/devicewificonnection/list/{deviceID}
Gets the device Wi-Fi connection list.
GET
/v1/devicewificonnection/list/{deviceID}/config
Gets the device Wi-Fi configuration list.
POST
/v1/devicewificonnection
Creates a device Wi-Fi connection.
POST
/v1/event/dequeue
Dequeues the next pending event for a device agent.
POST
/v1/event
Creates an event.
GET
/v1/event/{eventID}
Gets an event by ID.
PUT
/v1/event/{eventID}
Updates an event.
PATCH
/v1/event/status
Updates event status fields.
PATCH
/v1/event/{eventID}/progress
Updates event progress fields.
POST
/v1/event/list
Gets the event list.
POST
/v1/event/lastevent/agenttype/{agentTypeID}
Gets the last event for a device based on agent type.
POST
/v1/event/list/pending
Get a list of pending events.
POST
/v1/event/list/pending/longpoll
Long-polls for pending events for a device.
DELETE
/v1/event/list/pending/{deviceID}
Clears pending events for a device.
POST
/v1/event/endprocess/{eventID}
Queues an event to end the process associated with an event.
GET
/v1/eventpreset/{eventPresetID}
Gets an event preset by ID.
PUT
/v1/eventpreset/{eventPresetID}
Updates an event preset.
DELETE
/v1/eventpreset/{eventPresetID}
Deletes an event preset.
GET
/v1/eventpreset/list/device/{deviceID}
Gets the event preset list.
POST
/v1/eventpreset/run/{eventPresetID}
This endpoint runs a preset.
POST
/v1/eventpreset/startupevent/{deviceState}/{eventPresetID}
Sets the device startup event preset.
DELETE
/v1/eventpreset/startupevent/{deviceState}/device/{deviceID}
Deletes the device startup event preset.
POST
/v1/eventpreset
Creates an event preset.
POST
/v1/eventpreset/{eventPresetID}/copy/{newDeviceID}
Copies an event preset to another device.
GET
/v1/eventstatus/list
Gets the event status list.
POST
/v1/eventtype/list
Gets the event type list.
POST
/v1/file
Creates a file record.
DELETE
/v1/device/{deviceID}/file/{fileID}
Deletes a file record.
POST
/v1/file/temp
Creates a temporary file record and signed upload URL.
GET
/v1/file/{fileID}
Gets a file by ID.
POST
/v1/file/success/{fileID}
Marks a file upload as successful.
GET
/v1/image/{imageID}
Gets an image by ID.
PUT
/v1/image/{imageID}
Updates an image.
PATCH
/v1/image/{imageID}
Applies a patch to an image.
DELETE
/v1/image/{imageID}
Deletes an image.
POST
/v1/image
Creates an image.
POST
/v1/image/{deviceSerial}
Creates an image for a device identified by serial number.
GET
/v1/image/list
Gets the image list.
POST
/v1/image/list
Gets the filtered image list.
POST
/v1/image/extract/list
Gets the extracted image list.
POST
/v1/image/devices/list
Gets the image list for multiple devices.
POST
/v1/image/devices/tag/list
Get a list of Images, ImageTags, and a unique list of Tags based on a start and end epoch.
POST
/v1/image/upload
Uploads one or more images.
POST
/v1/image/createlist/{deviceSerial}
Creates one or more image records.
GET
/v1/logmessage/{logMessageID}
Gets a log message by ID.
POST
/v1/logmessage/list
Gets the log message list.
POST
/v1/logmessage
Creates a log message.
POST
/v1/mediarouter/auth
Authorizes a media router request.
GET
/v1/multifactorauth/list
Gets the multifactor authentication list.
GET
/v1/multifactorauth/{multifactorAuthID}
Gets a multifactor authentication record by ID.
PUT
/v1/multifactorauth/{multifactorAuthID}
Updates a multifactor authentication record.
DELETE
/v1/multifactorauth/{multifactorAuthID}
Deletes a multifactor authentication record.
POST
/v1/multifactorauth
Creates a new multifactor authentication method.
PUT
/v1/multifactorauth/{multifactorAuthID}/verify
Validates a multifactor authentication code after creation.
PUT
/v1/validatemfa
Validates a multifactor authentication code during sign-in.
PUT
/v1/multifactorauth/{multifactorAuthID}/resend
Resends the multifactor authentication code for creation.
PUT
/v1/multifactorauth/resend
Resends the multifactor authentication code for sign-in.
GET
/v1/notification/{notificationID}
Gets a notification by ID.
PUT
/v1/notification/{notificationID}
Updates a notification.
DELETE
/v1/notification/{notificationID}
Deletes a notification.
GET
/v1/notification/list
Gets the notification list.
POST
/v1/notification
Creates a notification.
GET
/v1/package/{packageID}
Gets a package by ID.
PUT
/v1/package/{packageID}
Updates a package.
DELETE
/v1/package/{packageID}
Deletes a package.
GET
/v1/package/list
Gets the package list.
GET
/v1/package/list/uploaded
Get a list of package items that have been uploaded to S3.
POST
/v1/package
Creates a package.
POST
/v1/package/{packageID}/updatedevices
Queues a package update for the specified devices.
POST
/v1/password
Changes the authenticated user password.
POST
/v1/forgotpassword
Starts the forgot-password flow.
POST
/v1/resetpassword
Resets a user password.
GET
/v1/permissiontype/list
Gets the permission type list.
GET
/v1/project/{projectID}
Gets a project by ID.
PUT
/v1/project/{projectID}
Updates a project.
DELETE
/v1/project/{projectID}
Deletes a project.
PATCH
/v1/project/{projectID}
Applies a patch to a project.
POST
/v1/project/name
Gets a project by name.
GET
/v1/project/list
Gets the project list.
POST
/v1/project
Creates a project.
POST
/v1/register
Registers a new user.
GET
/v1/session
Gets the current session information.
DELETE
/v1/session
Deletes the current session.
POST
/v1/session
Creates a session.
GET
/v1/session/list
Gets the session list.
DELETE
/v1/session/{sessionID}
Deletes a session by ID.
GET
/v1/sessionvariable/list
Gets the session variable list for the authenticated user.
GET
/v1/sessionvariable/{variableName}
Gets a session variable for the authenticated user.
DELETE
/v1/sessionvariable/{variableName}
Deletes a session variable for the authenticated user.
POST
/v1/sessionvariable
Creates or updates a session variable for the authenticated user.
GET
/v1/usersetting/list
Gets the user setting list.
GET
/v1/usersetting
Gets a user setting.
PUT
/v1/usersetting
Creates or updates a user setting.
DELETE
/v1/usersetting
Deletes a user setting.
GET
/v1/devicesetting/device/{deviceID}/list
Gets the device setting list.
GET
/v1/devicesetting/device/{deviceID}
Gets a device setting.
PUT
/v1/devicesetting/device/{deviceID}
Creates or updates a device setting.
DELETE
/v1/devicesetting/device/{deviceID}
Deletes a device setting.
GET
/v1/setting/app/{applicationID}/list
Gets the application setting list.
GET
/v1/setting/app/{applicationID}/{settingName}
Gets an application setting.
PUT
/v1/setting/app/{applicationID}
Creates or updates an application setting.
GET
/v1/shareditem/{sharedItemID}
Gets a shared item by ID.
PUT
/v1/shareditem/{sharedItemID}
Updates a shared item.
PATCH
/v1/shareditem/{sharedItemID}
Applies a patch to a shared item.
DELETE
/v1/shareditem/{sharedItemID}
Deletes a shared item.
GET
/v1/shareditem/list
Gets the shared item list.
POST
/v1/shareditem
Creates a shared item.
GET
/v1/signinhistory/{signInHistoryID}
Gets a sign-in history record by ID.
GET
/v1/signinhistory/list
Gets the sign-in history list.
GET
/v1/stream/{streamID}
Gets a stream by ID.
PUT
/v1/stream/{streamID}
Updates a stream.
DELETE
/v1/stream/{streamID}
Deletes a stream.
PATCH
/v1/stream/{streamID}
Applies a patch to a stream.
GET
/v1/device/{deviceID}/stream/mostrecent
Gets the most recent stream for a device.
POST
/v1/device/{deviceID}/stream/path
Gets a stream by stream path.
GET
/v1/device/{deviceID}/stream/list
Gets the stream list.
POST
/v1/stream
Creates a stream.
POST
/v1/tag/image/{deviceSerial}
Generates image tags for an image.
POST
/v1/device/{deviceID}/tag/list
Get a list of tags for a device based on an epoch range.
POST
/v1/testauth
Tests an authenticated API call.
GET
/v1/test
Tests an anonymous API call.
POST
/v1/testapicall
Tests an outbound API call.
GET
/v1/timezone/list
Gets the supported time zone list.
GET
/v1/timezone/offset
Gets the authenticated user time zone offset in hours.
POST
/v1/token/mediarouter/read
Creates a media router read token.
POST
/v1/token/mediarouter/publish
Creates a media router publish token.
GET
/v1/user/lastdataupdate
Gets the last user data refresh timestamp.
GET
/v1/user/list
Gets the user email list for the authenticated user domain.
GET
/v1/user/search
Searches for users who have opted in to be searchable.
GET
/v1/user/detail/list
Gets the detailed user list.
GET
/v1/user/timezone
Gets the authenticated user time zone.
GET
/v1/user/features
Gets the feature list available to the authenticated user.
PATCH
/v1/user
Applies a patch to the authenticated user.
GET
/v1/userbrowser/{userBrowserID}
Gets a trusted browser record by ID.
PATCH
/v1/userbrowser/{userBrowserID}
Applies a patch to a trusted browser record.
GET
/v1/userbrowser/{browserGUID}
Gets a trusted browser record by browser GUID.
GET
/v1/userbrowser/list
Gets the trusted browser list.
PATCH
/v1/userbrowser/trust/{browserGUID}
Marks a browser as trusted.
GET
/v1/usergroup/{userGroupID}
Gets a user group by ID.
PUT
/v1/usergroup/{userGroupID}
Updates a user group.
DELETE
/v1/usergroup/{userGroupID}
Deletes a user group.
GET
/v1/usergroup/list
Gets the user group list.
GET
/v1/usergroup/{userGroupID}/list
Gets the user list for a user group.
POST
/v1/usergroup
Creates a user group.
POST
/v1/verify
Verifies a user email address.
POST
/v1/reverify
Resends a verification email.
POST
/v1/versionauth
Checks the version endpoint with authentication.
GET
/v1/version
Checks the version endpoint without authentication.
POST
/v1/versionapicall
Checks API version call behavior.
GET
/v1/videoclip/{videoClipID}
Gets a video clip by ID.
PUT
/v1/videoclip/{videoClipID}
Updates a video clip.
PATCH
/v1/videoclip/{videoClipID}
Applies a patch to a video clip.
DELETE
/v1/videoclip/{videoClipID}
Deletes a video clip.
POST
/v1/videoclip
Creates a video clip.
POST
/v1/videoclip/{deviceSerial}
Creates a video clip for a device identified by serial number.
POST
/v1/videoclip/createlist/{deviceSerial}
Creates one or more video clip records.
POST
/v1/videoclip/upload
Uploads one or more video clips.
GET
/v1/videoclip/list
Gets the video clip list.
POST
/v1/videoclip/list
Gets the filtered video clip list.
POST
/v1/videoclip/concatenate
Enqueue a concatenate clips event based on a start time and end time.
POST
/v1/videoclip/extract/list
Gets the extracted video clip list.
POST
/v1/videoclip/devices/list
Gets the video clip list for multiple devices.
POST
/v1/videoclip/devices/tag/list
Get a list of VideoClips, VideoClipTags, and a unique list of Tags based on a start and end epoch.
GET
/v1/wificonnection/{wifiConnectionID}
Gets a Wi-Fi connection by ID.
PUT
/v1/wificonnection/{wifiConnectionID}
Updates a Wi-Fi connection.
PATCH
/v1/wificonnection/{wifiConnectionID}
Applies a patch to a Wi-Fi connection.
DELETE
/v1/wificonnection/{wifiConnectionID}
Deletes a Wi-Fi connection.
GET
/v1/wificonnection/list
Gets the Wi-Fi connection list.
POST
/v1/wificonnection
Creates a Wi-Fi connection.
Documentation
📖
Authentication
https://raw.githubusercontent.com/api-evangelist/actionstreamer/refs/heads/main/authentication/actionstreamer-authentication.yml
📖
RateLimits
https://raw.githubusercontent.com/api-evangelist/actionstreamer/refs/heads/main/rate-limits/actionstreamer-rate-limits.yml
📖
Documentation
https://developer.actionstreamer.com/docs/intro
📖
APIReference
https://developer.actionstreamer.com/docs/category/api-reference
Specifications
Other Resources
🔗
Overlay
https://raw.githubusercontent.com/api-evangelist/actionstreamer/refs/heads/main/overlays/actionstreamer-web-api-overlay.yaml
🔗
ErrorCatalog
https://raw.githubusercontent.com/api-evangelist/actionstreamer/refs/heads/main/errors/actionstreamer-problem-types.yml
🔗
Conventions
https://raw.githubusercontent.com/api-evangelist/actionstreamer/refs/heads/main/conventions/actionstreamer-conventions.yml
🔗
DataModel
https://raw.githubusercontent.com/api-evangelist/actionstreamer/refs/heads/main/data-model/actionstreamer-data-model.yml
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/actionstreamer/refs/heads/main/examples/actionstreamer-examples.yml
🔗
APIsJSON
https://raw.githubusercontent.com/api-evangelist/actionstreamer/refs/heads/main/apis.yml