Get a video feed file
GET/projects/{projectId}/entities/{entityId}/videoFeeds/{videoFeedId}/files/{fileId}
Base URL: https://api.tinkermode.com
Return a video feed file with the specified ID, including a presigned URL for downloading. The file may be a snapshot image or a video clip captured from the video feed.
Authentication
Send an Authorization header of the form ModeCloud <AUTH_CODE>.
Must contain the key of a user or service account with permissions to read video feeds of the entity or a project API key.
Path parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
projectId | integer | Yes | The unique ID for a specified project. | |
entityId | string | Yes | Entity ID (unique within project) | |
videoFeedId | string | Yes | The unique ID for a specified video feed. | |
fileId | string | Yes | The unique ID of a video feed file. |
Responses
200 Successfully retrieved the video feed file.
Content type: application/json
| Property | Type | Required | Constraints | Description |
|---|---|---|---|---|
begin | string | No | The capture start timestamp. Format conforms to RFC3339. | |
end | string | No | The capture end timestamp. Present for video clips, omitted for images. Format conforms to RFC3339. | |
entityClass | string | No | The entity class of the owning entity. | |
entityId | string | No | The entity that owns this file. | |
fileId | string | No | The unique identifier of the file. | |
fileName | string | No | The name of the file. | |
homeId | integer | No | The home that owns this file. | |
projectId | integer | No | The project that owns this file. | |
status | string | No | The status of the file (e.g. requested, uploaded, external). | |
storageType | string | No | The storage backend for the file (e.g. binstore, external). | |
type | string | No | The MIME type of the file (e.g. image/jpeg, video/mp4). | |
url | string | No | A presigned URL for downloading the file. | |
videoFeedId | string | No | The video feed this file belongs to. |
Response example
{
"begin": "2025-05-10T10:30:00Z",
"entityClass": "warehouse",
"entityId": "camera-1",
"fileId": "683a1b2c3d4e5f0012345678",
"fileName": "snapshot_2025-05-10T10-30-00Z.jpg",
"homeId": 1,
"projectId": 1,
"status": "uploaded",
"storageType": "binstore",
"type": "image/jpeg",
"url": "https://download.tinkermode.com/download/v1.eyJzIjoiZW50aXR5ZmlsZXMiLCJrIjoiQS9lbnRpdGllcy9jYW1lcmEtMS9maWxlcy82ODNhMWIyYzNkNGU1ZjAwMTIzNDU2NzgiLCJmIjoic25hcHNob3QuanBnIn0=.1713178200.a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0",
"videoFeedId": "63ce9a3e9bc89f001b228c80"
}401 Authorization is required to access this resource.
Content type: application/json
| Property | Type | Required | Constraints | Description |
|---|---|---|---|---|
data | object | No | read-only (server-generated) | Any relevant data related to error. |
reason | string | Yes | read-only (server-generated) | Reason of error. |
403 Request failed because of denied permission.
Content type: application/json
| Property | Type | Required | Constraints | Description |
|---|---|---|---|---|
data | object | No | read-only (server-generated) | Any relevant data related to error. |
reason | string | Yes | read-only (server-generated) | Reason of error. |
404 The requested file does not exist or is not accessible.
Content type: application/json
| Property | Type | Required | Constraints | Description |
|---|---|---|---|---|
data | object | No | read-only (server-generated) | Any relevant data related to error. |
reason | string | Yes | read-only (server-generated) | Reason of error. |
429 Request failed because of rate limit.
Content type: application/json
| Property | Type | Required | Constraints | Description |
|---|---|---|---|---|
data | object | No | read-only (server-generated) | Any relevant data related to error. |
reason | string | Yes | read-only (server-generated) | Reason of error. |
500 An unexpected error has occurred.
Content type: application/json
| Property | Type | Required | Constraints | Description |
|---|---|---|---|---|
data | object | No | read-only (server-generated) | Any relevant data related to error. |
reason | string | Yes | read-only (server-generated) | Reason of error. |
503 The service is temporarily unavailable.
Content type: application/json
| Property | Type | Required | Constraints | Description |
|---|---|---|---|---|
data | object | No | read-only (server-generated) | Any relevant data related to error. |
reason | string | Yes | read-only (server-generated) | Reason of error. |