<!-- Generated from the canonical Teloring documentation source. Do not edit this file. -->

Canonical page: https://docs.teloring.com/api/start-object-import
Last modified: 2026-10-15T07:55:15.000Z

# Upload an import file

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";
import Translate from "@docusaurus/Translate";

<Heading
  as={"h1"}
  className={"openapi__heading"}
  children={"Upload an import file"}
>
</Heading>

<MethodEndpoint
  method={"post"}
  path={"/objects/{object_id}/imports"}
  context={"endpoint"}
>
  
</MethodEndpoint>



Upload a CSV or XLSX (`multipart/form-data` with a `file` part) and get an import
job at its **mapping** stage: the file's headers, a five-row preview and a
`suggested_mapping` matched by header name.

Three steps, like the console:
1. **Upload** (this call).
2. **Dry run** — `POST …/imports/{job_id}/dry-run` with the mapping you want.
   Poll `GET …/imports/{job_id}` until `status` is `ready`; `dry_run` holds the
   create / update counts and `errors` the first row problems.
3. **Confirm** — `POST …/imports/{job_id}/confirm`. Poll until `completed`;
   `error_report_url` lists every row that was skipped.

Needs this credential to be allowed to create records of the object (and to
update them, when the mapping names an `upsert_field_id`). Customers and the
records of your own objects count against the plan's limits.

<Heading
  id={"request"}
  as={"h2"}
  className={"openapi-tabs__heading"}
>
  <Translate id="theme.openapi.request.title">Request</Translate>
</Heading>

<ParamsDetails
  {...require("./start-object-import.ParamsDetails.json")}
>
  
</ParamsDetails>

<RequestSchema
  {...require("./start-object-import.RequestSchema.json")}
>
  
</RequestSchema>

<StatusCodes
  {...require("./start-object-import.StatusCodes.json")}
>
  
</StatusCodes>
