---
description: How to create an import via API
---

# Create an import

To [create](https://docs.commercelayer.io/core/creating-resources) a new import, send a `POST` request to the `/api/imports` endpoint, passing the resource arguments in the request body.

## Request

**POST** https://yourdomain.commercelayer.io/api/imports

### Arguments

| Body Parameter                      | Type     | Required |
| ----------------------------------- | -------- | -------- |
| **type**                            | `string` | Required |
| attributes.**resource\_type**       | `string` | Required |
| attributes.**format**               | `string` | Optional |
| attributes.**parent\_resource\_id** | `string` | Optional |
| attributes.**inputs**               | `array`  | Required |
| attributes.**reference**            | `string` | Optional |
| attributes.**reference\_origin**    | `string` | Optional |
| attributes.**metadata**             | `object` | Optional |

### Example

{% tabs %}
{% tab title="Request" %}
The following request creates a new import:

```shell
curl -g -X POST \
  'https://yourdomain.commercelayer.io/api/imports' \
  -H 'Accept: application/vnd.api+json' \
  -H 'Authorization: Bearer your-access-token' \
  -H 'Content-Type: application/vnd.api+json' \
  -d '{
  "data": {
    "type": "imports",
    "attributes": {
      "resource_type": "skus",
      "inputs": [
        {
          "code": "ABC",
          "name": "Foo"
        },
        {
          "code": "DEF",
          "name": "Bar"
        }
      ]
    }
  }
}'
```
{% endtab %}

{% tab title="Response" %}
On success, the API responds with a `201 Created` status code, returning the created resource object:

```json
{
  "data": {
    "id": "xYZkjABcde",
    "type": "imports",
    "links": {
      "self": "https://yourdomain.commercelayer.io/api/imports/xYZkjABcde"
    },
    "attributes": {
      "resource_type": "skus",
      "format": "json",
      "parent_resource_id": "1234",
      "status": "in_progress",
      "started_at": "2018-01-01T12:00:00.000Z",
      "completed_at": "2018-01-01T12:00:00.000Z",
      "interrupted_at": "2018-01-01T12:00:00.000Z",
      "inputs": [
        {
          "code": "ABC",
          "name": "Foo"
        },
        {
          "code": "DEF",
          "name": "Bar"
        }
      ],
      "inputs_size": 300,
      "errors_count": 30,
      "warnings_count": 1,
      "processed_count": 270,
      "errors_log": {
        "ABC": {
          "name": [
            "has already been taken"
          ]
        }
      },
      "warnings_log": {
        "ABC": [
          "could not be deleted"
        ]
      },
      "attachment_url": "http://cl_imports.s3.amazonaws.com/",
      "created_at": "2018-01-01T12:00:00.000Z",
      "updated_at": "2018-01-01T12:00:00.000Z",
      "reference": "ANY-EXTERNAL-REFEFERNCE",
      "reference_origin": "ANY-EXTERNAL-REFEFERNCE-ORIGIN",
      "metadata": {
        "foo": "bar"
      }
    },
    "relationships": {
      "events": {
        "links": {
          "self": "https://yourdomain.commercelayer.io/api/imports/xYZkjABcde/relationships/events",
          "related": "https://yourdomain.commercelayer.io/api/imports/xYZkjABcde/events"
        }
      }
    },
    "meta": {
      "mode": "test",
      "organization_id": "xRRkjDFafe",
      "trace_id": "69abaa3545913c78132e5578bd26208d44aa9043647d78698fd0021f3958cd74"
    }
  }
}
```
{% endtab %}
{% endtabs %}
