generate run reads
whatever’s been uploaded. Uploading is a two-step handshake: ask for a signed URL,
then PUT the bytes straight to storage.
{migration_id} is the id from
creating a migration.
Authentication
Requires anx-api-key header. See Authentication.
Mint signed upload URLs
A non-empty array of files to upload. Each entry is
{ "name": "contacts.csv", "content_type": "text/csv" }. name is required;
content_type is optional but recommended.201 Created — one signed upload per requested file:
The display name you requested, preserved for the round trip.
Where the object will land in storage once uploaded.
The single-use URL to
PUT the file’s bytes to. The upload token is embedded in
the URL.The raw upload token, if you prefer a storage SDK’s
uploadToSignedUrl helper
over a plain PUT.Upload the bytes
PUT each file’s raw bytes to its signed_url, with a Content-Type matching
what you declared:
generate run.
List uploaded files
Errors
| Status | Meaning |
|---|---|
400 | files missing or empty, or an entry is missing name. |
401 | API key missing or invalid. |
404 | No migration with that {migration_id} in your account. |
429 | Rate limit hit — back off and retry. |
500 | Server error (including a failure to mint the signed URL). |
Next
- Start a run — generate a preview from the uploaded files.
- Poll a run — track the run to completion.