This API processes input files asynchronously using a multi-step workflow as below:
- Use the
Upload URL APIto get the presigned URL to upload the file to AWS S3. The upload URL will be valid only for next 10 minutes. - Then upload the file using the presigned URL.
- Then take the file ID, returned by
Upload URL APIand use theBulk Operations APIto submit the job. It will return the URL forStatus API. - Using the
Status API, you can check the current status of the processing. Status can be as follows:- Scheduled: Job is scheduled and waiting to be picked.
- Running: Job is running.
- Completed: Job is completed.
- Failed: Job is failed.
- When job gets completed,
Status APIreturns the download URL of the output file. This download URL is valid for next 10 minutes. If you want to access the file again after 10 minutes, then you need to hit the status API again and it will return the new download URL which again will be valid for next 10 minutes. Output file is available for 30 days before it is deleted. - You can use
List Uploaded Files APIto get the list of uploaded files andDelete File APIto delete any of the uploaded files from S3.
Note:
- Processing can be completed in any order. It is recommended to provide a static ID column in the input file for each record that can be used to associate the results with the input.
- The output file is always in CSV format and will include the corresponding routing results, including geometry, cost, and associated properties.
Workflow Execution Limits
- A maximum of three concurrent workflows for each tenant is allowed.
- Additional workflows are placed in a queue and automatically picked up as running workflows complete.
File Processing Information
Below are some key points for Bulk file processing:
- Input File Requirements
- Format: CSV with pipe ( | ) delimiter
- Mandatory Fields:
InputId,contours_metersorcontours_minutes,coordinates(theInputIdcolumn will be returned in the response and can be used to associate the response records with the input records)Note: Thecontours_metersandcontours_minutesfields are mutually exclusive. You must specify only one of these fields in the input file. - Uniqueness:
fileIdmust be unique for accurate results
-
Processing Behavior
- Partial Processing: Successful even if some records fail
- Output Fields: Output includes only the Input ID from the input file and the results chosen as part of the routing operation. Any additional fields in the CSV are not returned as part of the output file.
- Output File Specifications
- Format: CSV with pipe ( | ) delimiter
- Fields: Input fields along with defined output fields