Note file_id will be included in the initial request to get a presigned_url.
Programmatically check on the status of files and take action should errors occur.
Files uploaded and processed have the following status value with the following definitions:
Customer is programmatically uploading via API, but the file has not landed (or not yet been detected as landed) in S3
Customer manually uploaded to the UI, but has not attempted to process the file yet
File is in a queue waiting to process
File is presently being processed
The File finished successfully. Note that this does not mean all data is processed successfully as referenced by Hard error Handling below
File hit a hard failure case and was unable to process data
Hard errors refer to unprocessable datafiles, aka files that whose status end up FAILED are accompanied by an error code from this list:
File failed to read (i.e. file contents was not actually csv or the contents use a non-traditional delimiter character)
By the stream configuration, the file had unexpected column headers or values present and thus the system did not process the data
This error means that the stream has not yet been configured with all the necessary settings to ingest the data yet. Generally this should only happen if you are testing uploaded datafiles in advance of having defined landing the data in Unit21
This is akin to 500 server error, and Unit21 does not have a specific known cause at this time