Import Status
Allows you to check the status of an import created by the /import endpoint.
Data imports may take a long time, so the
/import
endpoint returns an importId
and does not wait for it to complete.
This status endpoint allows you to find out if the import has completed,
review validation errors, review changes, etc.
If you use the wait:true
option on the
/import
endpoint then it will wait until the data import has completed and then
it will send the same response as this endpoint. If an import is taking
more than 25 seconds (roughly) then it may redirect to itself and then continue
to wait. Some HTTP libraries such as axios limit redirects to a small number,
so make sure to increase that limit.
REQUEST
The status request is simple - just provide the importId
.
REQUEST OPTIONS
Field | Type | Description | Required |
---|---|---|---|
importId | string | This is the id that you received from the /import endpoint. | true |
RESPONSE
The response will be a JSON object which has the same
format as other API endpoints
but will also include an importStatus
object which describes the current status, etc.
These are the fields on the importStatus
object:
Field | Type | Description | Presence |
---|---|---|---|
importId | string | The same importId that you sent in your request. | Always |
status | string |
A text enum indicating the current state of the import. One of these:
new , validating , invalid , valid , running , error , success , reverting , or reverted | Always |
error | boolean | Will either be true or false. True means an error message will be present. False means there has not yet been any errors, but the import may still be running. | Always |
success | boolean | Will either be true or false. True means the import ran to completion successfully. False means it hasn't succeeded yet, but the import may still be running. | Always |
done | boolean |
Indicates whether the import has finished (either by erroring out or by successfully saving).
This is a convenience - it is logically equivalent to error || success .
| Always |
errorMessage | string | If an error occurred, this will contain the descriptive message. Error messages can be large for large data sets, so this may be truncated. | Optional |
duration | integer | Once the import is "done", this will contain the number of milliseconds that the process took. | Optional |
preview | string | If the import was valid, this field will contain a description of the changes to be made. For large data sets, this may be truncated or summarized, but the complete description can be seen within the control panel. | Optional |
createdDate | Date (string) |
The date that the import was created - formatted as an
ISO 8601 string. (e.g. YYYY-MM-DDTHH:mm:ss.sssZ )
| Always |
ranDate | Date (string) |
Once the import is "done", this will contain the
date that it finished. Formatted as an
ISO 8601 string. (e.g. YYYY-MM-DDTHH:mm:ss.sssZ )
| Option |
SAMPLE RESPONSE
{ "ok": true, "importStatus": { "importId": "dltn8flp0qtjkmuhghnod", "status": "new", "error": false, "success": false, "createdDate": "2023-09-14T16:22:56.170Z", "ranDate": "2023-09-14T16:23:06.170Z", "duration": 2048, "errorMessage": "This is a sample error message.", "preview": "Will create 2 new users and update 6 list items." } }