---
title: "createErpImport"
method: POST
path: "/v2/erp/imports"
tags: ["erp-imports"]
---

# createErpImport

`POST /v2/erp/imports`

Register an already-uploaded file (S3 ref) as a pricing-file import job and return its id. Nothing runs yet: no use case is chosen and no validation starts here. Rank the candidates with POST /v2/erp/imports/{importId}:suggest-use-cases, then start the validate phase with POST /v2/erp/imports/{importId}:validate.

## Request body

- CreateErpImportRequest — Register an already-uploaded file as an import. The use case is chosen later, via `:validate` — upload and interpretation are separate decisions.
  - `s3_reference` S3Reference, required
    - `bucket` string, required
    - `key` string, required

## Response `202`

Import job accepted

- CreateErpImportResponse
  - `import_id` string, required — `imp_{ULID}` — time-ordered, also used as the job's correlation_id.

## Other responses

- `400` — Bad request
- `403` — Forbidden - insufficient permissions
- `500` — Internal Server Error

---

[API](https://skmtc.net/epilot/apis/integration-toolkit-api.md) · [All operations](https://skmtc.net/epilot/apis/integration-toolkit-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/epilot/integration-toolkit-api/revisions/68961a011db0/schema)
