Get list of data upload jobs
GET/homes/{homeId}/dataUploads
Base URL: https://api.tinkermode.com
Get all data upload jobs for a home.
Authentication
Send an Authorization header of the form ModeCloud <AUTH_CODE>.
Must contain the API key of a user or service account who has the permission to read data upload jobs of a home, or a Project API Key.
Path parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
homeId | integer | Yes | The unique ID for a specified home. |
Query parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
limit | integer | No | default: 25; min: 1 | Maximum number of data upload jobs to return. |
skip | integer | No | default: 0; min: 0 | Number of data upload jobs to skip over. |
Responses
200 Successful retrieval of data upload jobs.
Content type: application/json
Represents a request to ingest data via file upload.
An array of objects with the following shape:
| Property | Type | Required | Constraints | Description |
|---|---|---|---|---|
catalogId | string | Yes | read-only (server-generated) | Catalog ID of the data source from which the data file originated. |
completedTime | string | No | read-only (server-generated); format: date-time | If the data upload is fully processed, the completion time is included here. |
deviceId | number | No | read-only (server-generated) | ID of the device/gateway from which the data file originated. Optional. |
errorMessage | string | No | read-only (server-generated) | If upload has failed, an error messages will be included here. |
fileName | string | Yes | read-only (server-generated) | Name of data file. |
homeId | number | Yes | read-only (server-generated) | ID of home targeted by the upload. |
id | number | Yes | read-only (server-generated) | Unique ID assigned to upload request. |
importedRecords | number | Yes | read-only (server-generated) | Number of data reocrds imported so far. |
percentageComplete | number | Yes | read-only (server-generated); min: 0; max: 1 | Percentage of the data file that has been imported. |
projectId | number | Yes | read-only (server-generated) | ID of the project associated to this request. |
sourceId | string | Yes | read-only (server-generated) | ID of the data source from which the data file originated. |
state | string | Yes | read-only (server-generated); one of: waiting_for_upload, upload_complete, in_progress, completed, failed_input_error, failed_system_error, cancel_requested, cancel_completed | Current state of the upload request. |
uploadUrl | string | No | read-only (server-generated) | The URL for uploading the data file. |
Response example
[
{
"catalogId": "D201",
"fileName": "humidity_data.csv",
"homeId": 1234,
"id": 50,
"importedRecords": 9942,
"percentageComplete": 0.75,
"projectId": 1234,
"sourceId": "xyzzy-123",
"state": "in_progress"
},
{
"catalogId": "2TFAcceleration",
"completedTime": "2025-08-29T01:02:38.408Z",
"deviceId": 5678,
"fileName": "temperature_data_alpha.csv",
"homeId": 1234,
"id": 46,
"importedRecords": 10200,
"percentageComplete": 1,
"projectId": 1234,
"sourceId": "xyzzy-987",
"state": "completed"
},
{
"catalogId": "2TFAcceleration",
"deviceId": 5678,
"errorMessage": "input error on line 10: input error: failed to read line of data: parse error on line 10, column 23: bare \" in non-quoted-field",
"fileName": "temperature_data_beta.csv",
"homeId": 1234,
"id": 45,
"importedRecords": 0,
"percentageComplete": 0,
"projectId": 1234,
"sourceId": "xyzzy-987",
"state": "failed_input_error"
}
]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 permission to read home data upload sub-resource is missing or invalid data.
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. |