Bronnen

Importen

Elk Importen-endpoint, met de scope die het afdwingt, het lichaam dat het aanneemt, een leesbaar antwoord en de weigeringen die het kan teruggeven.

Een asynchrone bulkimport starten.

post/organizations/{organization}/imports
Scope
passports:write
Idempotency-Key
Wordt geaccepteerd
Levert
202

Padparameters

organizationstringVerplicht

De organisatie waarvoor dit verzoek handelt. De sleutel moet daarvoor zijn vrijgegeven.

Verzoeklichaam

rowsarray of objectsVerplicht

Tussen 1 en 500 rijen. Boven dat plafond wordt het verzoek geweigerd met een eigen max_rows-regel — de weigering waarop een lus die in batches werkt vertakt. Een onbekende sleutel ergens in een rij is een fout, geen veld dat stilzwijgend wordt weggelaten.

categorystringVerplicht

Een categorie-id uit GET /categories.

dataobjectVerplicht

Het paspoortdocument, precies zoals POST /passports het aanneemt.

external_idstringOptioneel

Uw eigen identificatie voor de rij. Komt terug op het resultaat per rij — zo wordt een mislukte rij afgestemd.

Fouten

Elke weigering die dit endpoint kan teruggeven, met de status waarmee die binnenkomt.

Verzoek
curl "https://passportcraft.com/api/v1/organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/imports" \
  -X POST \
  -H "Authorization: Bearer $PASSPORTCRAFT_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "rows": [
    {
      "external_id": "SKU-4471-BLK",
      "category": "textile",
      "data": {
        "product_name": "Merino Crew Neck",
        "manufacturer_country": "FR"
      }
    },
    {
      "external_id": "SKU-4471-NVY",
      "category": "textile",
      "data": {
        "product_name": "Merino Crew Neck Navy",
        "manufacturer_country": "FR"
      }
    }
  ]
}'
Antwoord · 202
{
  "object": "import_job",
  "id": "7b52909a-8f2c-4e1d-9b3a-6d5f4e3c2b1a",
  "name": "organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/imports/7b52909a-8f2c-4e1d-9b3a-6d5f4e3c2b1a",
  "organization_id": "8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2",
  "livemode": true,
  "status": "queued",
  "total_rows": 2,
  "succeeded_rows": 0,
  "failed_rows": 0,
  "pending_rows": 2,
  "attempts": 0,
  "created_at": "2026-08-02T09:50:00.114Z",
  "started_at": null,
  "completed_at": null
}

POST /organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/imports

Importtaken opsommen.

get/organizations/{organization}/imports
Scope
passports:read
Idempotency-Key
Wordt niet geaccepteerd
Levert
200

Padparameters

organizationstringVerplicht

De organisatie waarvoor dit verzoek handelt. De sleutel moet daarvoor zijn vrijgegeven.

Queryparameters

limitstringOptioneel

Hoeveel records worden teruggegeven. De server mag er minder teruggeven.

cursorstringOptioneel

De next_cursor van de vorige pagina. Een cursor codeert de filters waaronder hij is uitgegeven; meesturen met andere filters wordt geweigerd met cursor_invalid.

statusstringOptioneel

Geeft alleen taken met deze status terug.

Fouten

Elke weigering die dit endpoint kan teruggeven, met de status waarmee die binnenkomt.

Verzoek
curl "https://passportcraft.com/api/v1/organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/imports?status=completed" \
  -H "Authorization: Bearer $PASSPORTCRAFT_API_KEY"
Antwoord · 200
{
  "object": "list",
  "data": [
    {
      "object": "import_job",
      "id": "7b52909a-8f2c-4e1d-9b3a-6d5f4e3c2b1a",
      "name": "organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/imports/7b52909a-8f2c-4e1d-9b3a-6d5f4e3c2b1a",
      "organization_id": "8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2",
      "livemode": true,
      "status": "completed",
      "total_rows": 2,
      "succeeded_rows": 1,
      "failed_rows": 1,
      "pending_rows": 0,
      "attempts": 1,
      "created_at": "2026-08-02T09:50:00.114Z",
      "started_at": "2026-08-02T09:50:03.902Z",
      "completed_at": "2026-08-02T09:50:05.441Z"
    }
  ],
  "has_more": false,
  "next_cursor": null
}

GET /organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/imports?status=completed

Eén importtaak en de voortgang ervan ophalen.

get/organizations/{organization}/imports/{id}
Scope
passports:read
Idempotency-Key
Wordt niet geaccepteerd
Levert
200

Padparameters

organizationstringVerplicht

De organisatie waarvoor dit verzoek handelt. De sleutel moet daarvoor zijn vrijgegeven.

idstringVerplicht

De identificatie van de bron. Behandel die als een ondoorzichtige tekenreeks.

Queryparameters

row_limitstringOptioneel

Hoeveel resultaten per rij bij de taak worden meegegeven.

after_row_indexstringOptioneel

Geeft de resultaten per rij terug die na deze rij-index komen, zodat een grote taak in stappen kan worden doorlopen.

Fouten

Elke weigering die dit endpoint kan teruggeven, met de status waarmee die binnenkomt.

Verzoek
curl "https://passportcraft.com/api/v1/organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/imports/7b52909a-8f2c-4e1d-9b3a-6d5f4e3c2b1a?row_limit=50" \
  -H "Authorization: Bearer $PASSPORTCRAFT_API_KEY"
Antwoord · 200
{
  "object": "import_job",
  "id": "7b52909a-8f2c-4e1d-9b3a-6d5f4e3c2b1a",
  "name": "organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/imports/7b52909a-8f2c-4e1d-9b3a-6d5f4e3c2b1a",
  "organization_id": "8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2",
  "livemode": true,
  "status": "completed",
  "total_rows": 2,
  "succeeded_rows": 1,
  "failed_rows": 1,
  "pending_rows": 0,
  "attempts": 1,
  "created_at": "2026-08-02T09:50:00.114Z",
  "started_at": "2026-08-02T09:50:03.902Z",
  "completed_at": "2026-08-02T09:50:05.441Z",
  "rows": {
    "object": "list",
    "data": [
      {
        "object": "import_row",
        "row_index": 0,
        "external_id": "SKU-4471-BLK",
        "status": "succeeded",
        "passport_id": "2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41",
        "passport_name": "organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/passports/2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41",
        "error": null,
        "processed_at": "2026-08-02T09:50:04.771Z"
      },
      {
        "object": "import_row",
        "row_index": 1,
        "external_id": "SKU-4471-NVY",
        "status": "failed",
        "passport_id": null,
        "passport_name": null,
        "error": {
          "code": "unknown_category",
          "detail": null
        },
        "processed_at": "2026-08-02T09:50:05.180Z"
      }
    ],
    "has_more": false,
    "next_after_row_index": null
  }
}

GET /organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/imports/7b52909a-8f2c-4e1d-9b3a-6d5f4e3c2b1a?row_limit=50

Importen — referentie van de PassportCraft-API | PassportCraft