ovidens
API reference

One staged import's status and outcome, with a fresh upload URL while staging

GET/v1/apps/{app}/datasets/{node}/imports/{id}

One import's status, its resolved dialect and, once it has finished, how many rows parsed, applied and were rejected plus a grouped summary of the failures. Requires the workspace:read scope, so a monitoring job can watch an integration without being able to feed it. While the import is still awaiting_upload, a caller that ALSO holds data:write receives a freshly minted uploadUrl - that is how an expired upload signature is recovered from, and a read-only caller simply gets nulls there. Poll until status is no longer validating.

Authorization

bearerAuth
AuthorizationBearer <token>

Obtain a token from https://id.ovidens.com/oauth/token using the client_credentials grant.

In: header

Path Parameters

app*string

The app's stable technicalId, as reported by listApps. It is a snake_case identifier, never a numeric id, and it survives a rename of the app.

Length1 <= length <= 64
node*string

The dataset node's stable technicalId, as reported by listDatasets.

Length1 <= length <= 64
id*string

The import identifier createImport returned in importId.

Length1 <= length <= 32
curl -X GET "https://example.com/v1/apps/string/datasets/string/imports/string"
{  "importId": "imp_8c2f4a1d9e63",  "status": "applied",  "mode": "replace",  "csv": {    "delimiter": ";",    "quote": "\"",    "escape": "\"",    "encoding": "utf-8",    "hasHeader": true,    "decimalSeparator": ",",    "thousandsSeparator": "",    "dateFormat": "%d.%m.%Y",    "timestampFormat": "%Y-%m-%dT%H:%M:%SZ",    "columns": {}  },  "filename": "customers-2026-08-01.csv",  "createdAt": "2026-08-01T02:00:04.000Z",  "finishedAt": "2026-08-01T02:00:41.000Z",  "rowsParsed": 18420,  "rowsApplied": 18420,  "rowsRejected": 0,  "errorCode": null,  "errorGroups": [],  "likelyCause": null,  "structure": null,  "errorReportTruncated": false,  "auditId": 90233,  "expiresAt": "2026-08-08T02:00:03.000Z",  "uploadUrl": null,  "uploadUrlExpiresAt": null}

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

Was this page helpful?