Preview. Part of the Migration API — in active design and not yet generally
available. Endpoints and payloads may change. See the
overview.
source field, so later import and export calls already know which logic to
replay.
Authentication
Requires anx-api-key header. The key is scoped to your account, and can
address every company in it. See Authentication.
Request body
Display name for the company. Typically your customer’s organization name.
The UUID of the source this company belongs to. This binds the company
to your published import plan.
List your sources to find it, or read it from
Settings → Sources.
Your own identifier for this customer (e.g. their ID in your database). Echoed
back so you can match the company to your records. Max 255 characters;
alphanumeric, hyphens, and underscores only. Must be unique — reusing one
returns
409.Which templates to create sheets from — the objects this customer will import.
List your templates to choose. If omitted,
every template in your account is used.
Connection details for writing to a customer’s system: a
destination
connection used by export to a destination,
shaped { "base_url": "...", "auth": { } }. Credentials are stored write-only
and never returned. Omit this for the import-and-download flow. (A source
connection for pulling data in arrives later with the Reader engine — not part
of this preview.)Response
201 Created
company.id, workbook_id, sheets[].id, template_id —
is a UUID. The company.id is the ID you’ll pass to every import and export call.
The workbook’s creator is taken from the API key that made the request. The magic
link is optional — ignore it for a fully headless flow.
Errors
| Status | Meaning |
|---|---|
400 | name or source missing; source not a UUID; external_id malformed; template_ids not an array of UUIDs or not in your account; a company with that name already exists for the source. |
401 | API key missing or invalid. |
404 | The source UUID isn’t a source in your account. |
409 | external_id already used by another company. |
429 | Rate limit hit — back off and retry. |
500 | Server error. |
Example
Next
- Import files — push the customer’s data into the company.