{ "created": 42, "error_count": 2, "errors": [ { "column": "gtin", "line": 12, "message": "Invalid GTIN: must be 8, 12, 13, or 14 digits." }, { "line": 37, "message": "Row is empty." } ], "skipped": 1, "total_rows": 50, "updated": 5}
{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}
{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}
{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}
{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}
{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}
{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}
{
"detail": "The requested resource was not found.",
"error_code": "not_found",
"retryable": false,
"status": 404,
"timestamp": "2026-03-31T12:00:00+00:00",
"title": "Not Found",
"type": "https://closient.com/docs/errors/not_found"
}
Import
Bulk import lots
Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: gtin (also barcode / upc / ean) and lot_identifier (also lot / lot_number / batch / batch_number). Optional columns: production_date, expiration_date (also expiry_date / use_by), best_before_date, quantity, unit_of_measure (a GS1 / UN/ECE Rec 20 code such as EA or KGM), harvest_date, harvest_end_date, resolver_enabled. Dates are YYYY-MM-DD.
Each row’s GTIN must already be a product in the authenticated organization’s catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history.
Accepts CSV, TSV and XLSX — the uploaded filename’s extension selects the parser, so a tab-separated file must be named .tsv (a .csv name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.
Outcome of a single upload to any of the POST /import/* endpoints.
Shared by the product, lot and serial imports so one response shape
covers all three. The four counters (created / updated /
skipped / error_count) sum to total_rows for any successful
request. The endpoint returns 200 even when individual rows fail —
per-row failures are reported in errors rather than aborting the
whole upload. A non-empty errors list is therefore expected on
partial success and is not itself an error condition.
Set when a lot or serial import stopped creating new records at the free plan's allowance: the plan chooser, where the organization can upgrade to Business. The refused rows are listed in errors.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Closient","colors":{"primary":"#1d4ed8","light":"#3b82f6","dark":"#1d4ed8"},"logo":{"light":"https://mintcdn.com/closientsearchinc/vrxkrkGbKE0bLCPC/logo/light.svg?fit=max\u0026auto=format\u0026n=vrxkrkGbKE0bLCPC\u0026q=85\u0026s=478b3e4ffc42465d52691098e52c119e","dark":"https://mintcdn.com/closientsearchinc/vrxkrkGbKE0bLCPC/logo/dark.svg?fit=max\u0026auto=format\u0026n=vrxkrkGbKE0bLCPC\u0026q=85\u0026s=31b8f2e0afab280f892c55885c14d989"},"favicon":"https://mintcdn.com/closientsearchinc/mF5Tsz1392RlgjjR/favicon.svg?fit=max\u0026auto=format\u0026n=mF5Tsz1392RlgjjR\u0026q=85\u0026s=0475d24a8d69ca9d543431c5fad12adb","api":{"playground":{}},"appearance":{"default":"system"},"background":{"decoration":"grid"},"footer":{"links":[{"header":"Privacy","items":[{"label":"Cookie preferences","href":"#cookie-preferences"}]}]},"fonts":{"heading":{"family":"Geist","weight":600},"body":{"family":"Geist","weight":400}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"closientsearchinc","hasAudioNarration":false,"actualSubdomain":"closientsearchinc","customDomains":["docs.closient.com"],"gitSource":{"type":"github","owner":"closient","repo":"closient","deployBranch":"main","contentDirectory":"docs/public","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae1664b41a8cb9d72ae7333","collectionId":"2d6f4795-e5b9-456e-9548-fbfc1baeb1b9","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae1664b41a8cb9d72ae7333"},"entitlements":{},"buildId":"6ae1664b41a8cb9d72ae7333","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API Reference","count":618},{"language":"default","tag":"Products","count":193},{"language":"default","tag":"Documentation","count":110},{"language":"default","tag":"EPCIS 2.0","count":88},{"language":"default","tag":"GS1 Digital Link","count":70},{"language":"default","tag":"Agent Skills","count":55},{"language":"default","tag":"Brands","count":55},{"language":"default","tag":"Retailers","count":46},{"language":"default","tag":"Dashboard","count":42},{"language":"default","tag":"Account","count":39}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"api-reference/products/import/bulk-import-lots","slug":"/api-reference/products/import/bulk-import-lots","pageMetadata":{"title":"Bulk import lots","description":"Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: ``gtin`` (also ``barcode`` / ``upc`` / ``ean``) and ``lot_identifier`` (also ``lot`` / ``lot_number`` / ``batch`` / ``batch_number``). Optional columns: ``production_date``, ``expiration_date`` (also ``expiry_date`` / ``use_by``), ``best_before_date``, ``quantity``, ``unit_of_measure`` (a GS1 / UN/ECE Rec 20 code such as ``EA`` or ``KGM``), ``harvest_date``, ``harvest_end_date``, ``resolver_enabled``. Dates are ``YYYY-MM-DD``. \n\nEach row's GTIN must already be a product in the authenticated organization's catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history.\n\nAccepts CSV, TSV and XLSX — the uploaded filename's extension selects the parser, so a tab-separated file must be named ``.tsv`` (a ``.csv`` name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/import/lots","href":"/api-reference/products/import/bulk-import-lots","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: \", _jsx(_components.code, {\n children: \"gtin\"\n }), \" (also \", _jsx(_components.code, {\n children: \"barcode\"\n }), \" / \", _jsx(_components.code, {\n children: \"upc\"\n }), \" / \", _jsx(_components.code, {\n children: \"ean\"\n }), \") and \", _jsx(_components.code, {\n children: \"lot_identifier\"\n }), \" (also \", _jsx(_components.code, {\n children: \"lot\"\n }), \" / \", _jsx(_components.code, {\n children: \"lot_number\"\n }), \" / \", _jsx(_components.code, {\n children: \"batch\"\n }), \" / \", _jsx(_components.code, {\n children: \"batch_number\"\n }), \"). Optional columns: \", _jsx(_components.code, {\n children: \"production_date\"\n }), \", \", _jsx(_components.code, {\n children: \"expiration_date\"\n }), \" (also \", _jsx(_components.code, {\n children: \"expiry_date\"\n }), \" / \", _jsx(_components.code, {\n children: \"use_by\"\n }), \"), \", _jsx(_components.code, {\n children: \"best_before_date\"\n }), \", \", _jsx(_components.code, {\n children: \"quantity\"\n }), \", \", _jsx(_components.code, {\n children: \"unit_of_measure\"\n }), \" (a GS1 / UN/ECE Rec 20 code such as \", _jsx(_components.code, {\n children: \"EA\"\n }), \" or \", _jsx(_components.code, {\n children: \"KGM\"\n }), \"), \", _jsx(_components.code, {\n children: \"harvest_date\"\n }), \", \", _jsx(_components.code, {\n children: \"harvest_end_date\"\n }), \", \", _jsx(_components.code, {\n children: \"resolver_enabled\"\n }), \". Dates are \", _jsx(_components.code, {\n children: \"YYYY-MM-DD\"\n }), \".\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Each row’s GTIN must already be a product in the authenticated organization’s catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Accepts CSV, TSV and XLSX — the uploaded filename’s extension selects the parser, so a tab-separated file must be named \", _jsx(_components.code, {\n children: \".tsv\"\n }), \" (a \", _jsx(_components.code, {\n children: \".csv\"\n }), \" name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Bulk import lots","description":"Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: ``gtin`` (also ``barcode`` / ``upc`` / ``ean``) and ``lot_identifier`` (also ``lot`` / ``lot_number`` / ``batch`` / ``batch_number``). Optional columns: ``production_date``, ``expiration_date`` (also ``expiry_date`` / ``use_by``), ``best_before_date``, ``quantity``, ``unit_of_measure`` (a GS1 / UN/ECE Rec 20 code such as ``EA`` or ``KGM``), ``harvest_date``, ``harvest_end_date``, ``resolver_enabled``. Dates are ``YYYY-MM-DD``. \n\nEach row's GTIN must already be a product in the authenticated organization's catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history.\n\nAccepts CSV, TSV and XLSX — the uploaded filename's extension selects the parser, so a tab-separated file must be named ``.tsv`` (a ``.csv`` name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/import/lots","href":"/api-reference/products/import/bulk-import-lots","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/closientsearchinc/072815180d3a8434/qa-feedback-loader.js","/_mintlify/custom/closientsearchinc/2fb7a84e1c07edb0/docs-consent.js"],"openApiReferenceData":{"operation":{"operationId":"lot_import","summary":"Bulk import lots","parameters":[],"responses":{"200":"cd9084b9-3334-4372-a50f-da0a879c814d","400":"d4a94730-f2d9-4914-935f-24c8a52ea5c3","401":"ab350b6d-fcc6-4592-84a1-ba45e285c6dc","403":"688c805c-7265-4432-b367-f4b343b118f0","404":"49dd8d88-3154-4814-8d02-6ac6a2cc110b","405":"c043f853-0fe8-49f5-b307-8731fb2e54d9","422":"6dd0cbd8-c766-40f8-8523-0c8cf65c3ff4","429":"5d9ca036-2871-46da-bfd6-891f15df196a"},"description":"Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: ``gtin`` (also ``barcode`` / ``upc`` / ``ean``) and ``lot_identifier`` (also ``lot`` / ``lot_number`` / ``batch`` / ``batch_number``). Optional columns: ``production_date``, ``expiration_date`` (also ``expiry_date`` / ``use_by``), ``best_before_date``, ``quantity``, ``unit_of_measure`` (a GS1 / UN/ECE Rec 20 code such as ``EA`` or ``KGM``), ``harvest_date``, ``harvest_end_date``, ``resolver_enabled``. Dates are ``YYYY-MM-DD``. \n\nEach row's GTIN must already be a product in the authenticated organization's catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history.\n\nAccepts CSV, TSV and XLSX — the uploaded filename's extension selects the parser, so a tab-separated file must be named ``.tsv`` (a ``.csv`` name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.","tags":["Import"],"requestBody":"a5cd2d1c-554c-48ec-9fe4-7aca4d8eb437","security":["4ed012d4-6886-4052-8f65-245fe6f60456","ff0cbfbe-e118-4836-bd8d-f4c6aa029712","a49c3e39-ce00-4e43-b3b1-0eeadb3e1bb2"],"method":"post","type":"path","servers":["6cfbd7dc-48db-4618-a72d-ef298afcabc5"],"path":"/products/api/v1/import/lots","baseUrlOptions":["https://www.closient.com"],"title":"Bulk import lots","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"content":{"multipart/form-data":{"schema":{"properties":{"file":{"description":"Data file to import. One of .csv, .tsv, .xlsx.","format":"binary","title":"File","type":"string","isRequired":true,"uniqueKey":"file","typeLabel":"file"}},"required":["file"],"title":"FileParams","type":"object","uniqueKey":"","typeLabel":"FileParams · object"},"examples":{"Example":{"title":"Example","value":{"file":"\u003cstring>"}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"cd9084b9-3334-4372-a50f-da0a879c814d":{"description":"OK","content":{"application/json":{"schema":{"description":"Outcome of a single upload to any of the ``POST /import/*`` endpoints.\n\nShared by the product, lot and serial imports so one response shape\ncovers all three. The four counters (``created`` / ``updated`` /\n``skipped`` / ``error_count``) sum to ``total_rows`` for any successful\nrequest. The endpoint returns 200 even when individual rows fail —\nper-row failures are reported in ``errors`` rather than aborting the\nwhole upload. A non-empty ``errors`` list is therefore expected on\npartial success and is not itself an error condition.","examples":[{"created":42,"error_count":2,"errors":[{"column":"gtin","line":12,"message":"Invalid GTIN: must be 8, 12, 13, or 14 digits."},{"line":37,"message":"Row is empty."}],"skipped":1,"total_rows":50,"updated":5},{"created":25,"error_count":0,"errors":[],"skipped":0,"total_rows":25,"updated":0}],"properties":{"total_rows":{"description":"Total number of data rows processed (excluding the header row).","minimum":0,"title":"Total Rows","type":"integer","isRequired":true,"uniqueKey":"total_rows","typeLabel":"integer"},"created":{"description":"Number of new records created from the upload.","minimum":0,"title":"Created","type":"integer","isRequired":true,"uniqueKey":"created","typeLabel":"integer"},"updated":{"description":"Number of existing records updated. Matched on GTIN for a product import, on (GTIN, lot_identifier) for a lot, and on (GTIN, serial) for a serial.","minimum":0,"title":"Updated","type":"integer","isRequired":true,"uniqueKey":"updated","typeLabel":"integer"},"skipped":{"description":"Number of rows that wrote nothing: a row whose values already match the stored record, or a row that failed validation (those also appear in ``errors``).","minimum":0,"title":"Skipped","type":"integer","isRequired":true,"uniqueKey":"skipped","typeLabel":"integer"},"error_count":{"description":"Number of rows that failed validation. Equals the length of ``errors``.","minimum":0,"title":"Error Count","type":"integer","isRequired":true,"uniqueKey":"error_count","typeLabel":"integer"},"errors":{"description":"Per-row validation failures. Empty when every row imported cleanly.","items":{"description":"Validation failure for a single row of an uploaded file.\n\nReturned inside ``CSVImportResultOut.errors``. ``line`` is the\n1-indexed source row number (the header row is line 1, so the first\ndata row is line 2) — for a spreadsheet it is the row number Excel\nshows. ``column`` is set when the failure can be attributed to a\nspecific column; it is null for row-level failures such as an empty\nrow or a malformed line.","examples":[{"column":"gtin","line":12,"message":"Invalid GTIN: must be 8, 12, 13, or 14 digits."},{"line":37,"message":"Row is empty."}],"properties":{"line":{"description":"1-indexed source row number where the error occurred. The header counts as line 1, so the first data row is line 2. For a spreadsheet upload this is the row number shown in Excel.","minimum":1,"title":"Line","type":"integer","isRequired":true,"uniqueKey":"errors.items.[INDEX].line","typeLabel":"integer"},"message":{"description":"Human-readable error description suitable for surfacing to the uploader.","title":"Message","type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"column":{"oneOf":[{"type":"string","title":"Column","description":"Name of the column that caused the error. Null for row-level failures (empty row, unparsable line) where no single column is at fault.","uniqueKey":"errors.items.[INDEX].column.oneOf.0","typeLabel":"string"},{"type":"null","title":"Column","description":"Name of the column that caused the error. Null for row-level failures (empty row, unparsable line) where no single column is at fault.","uniqueKey":"errors.items.[INDEX].column.oneOf.1","typeLabel":"null"}],"uniqueKey":"errors.items.[INDEX].column","typeLabel":"string | null"}},"required":["line","message"],"title":"RowErrorOut","type":"object","uniqueKey":"errors.items.[INDEX]","typeLabel":"RowErrorOut · object"},"title":"Errors","type":"array","uniqueKey":"errors","typeLabel":"RowErrorOut · object[]"},"upgrade_url":{"oneOf":[{"type":"string","title":"Upgrade Url","description":"Set when a lot or serial import stopped creating new records at the free plan's allowance: the plan chooser, where the organization can upgrade to Business. The refused rows are listed in ``errors``.","uniqueKey":"upgrade_url.oneOf.0","typeLabel":"string"},{"type":"null","title":"Upgrade Url","description":"Set when a lot or serial import stopped creating new records at the free plan's allowance: the plan chooser, where the organization can upgrade to Business. The refused rows are listed in ``errors``.","uniqueKey":"upgrade_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"upgrade_url","typeLabel":"string | null"}},"required":["total_rows","created","updated","skipped","error_count"],"title":"CSVImportResultOut","type":"object","uniqueKey":"","typeLabel":"CSVImportResultOut · object"},"examples":{"Example":{"title":"Example","value":{"created":42,"error_count":2,"errors":[{"column":"gtin","line":12,"message":"Invalid GTIN: must be 8, 12, 13, or 14 digits."},{"line":37,"message":"Row is empty."}],"skipped":1,"total_rows":50,"updated":5}}},"exampleType":"generated"}},"exampleType":"generated"},"d4a94730-f2d9-4914-935f-24c8a52ea5c3":{"description":"Bad Request","content":{"application/problem+json":{"schema":{"description":"RFC 9457 Problem Details response.\n\nAll API errors are returned in this format with Content-Type:\napplication/problem+json.","examples":[{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"},{"detail":"Validation error.","details":[{"loc":["body","name"],"msg":"Field required","type":"missing"}],"error_code":"validation_error","retryable":false,"status":422,"timestamp":"2026-03-31T12:00:00+00:00","title":"Validation Error","type":"https://closient.com/docs/errors/validation_error"},{"detail":"Rate limit exceeded. Please try again later.","error_code":"rate_limited","retry_after":31,"retryable":true,"status":429,"timestamp":"2026-03-31T12:00:00+00:00","title":"Rate Limited","type":"https://closient.com/docs/errors/rate_limited"}],"properties":{"type":{"description":"URI reference identifying the error type.","title":"Type","type":"string","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"description":"Short human-readable summary of the error.","title":"Title","type":"string","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"description":"HTTP status code.","title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"detail":{"description":"Human-readable explanation of this specific occurrence.","title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"description":"Machine-readable error code (e.g. not_found, unauthorized).","title":"Error Code","type":"string","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"timestamp":{"description":"ISO 8601 timestamp of when the error occurred.","title":"Timestamp","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"retryable":{"default":false,"description":"Whether retrying the same request can succeed.","title":"Retryable","type":"boolean","uniqueKey":"retryable","typeLabel":"boolean"},"retry_after":{"oneOf":[{"type":"integer","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.1","typeLabel":"null"}],"uniqueKey":"retry_after","typeLabel":"integer | null"},"owner_action_required":{"oneOf":[{"type":"boolean","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.1","typeLabel":"null"}],"uniqueKey":"owner_action_required","typeLabel":"boolean | null"},"details":{"description":"Additional context (validation errors, etc.).","title":"Details","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","error_code","timestamp"],"title":"ErrorOut","type":"object","uniqueKey":"","typeLabel":"ErrorOut · object"},"examples":{"Example":{"title":"Example","value":{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"}}},"exampleType":"generated"}},"exampleType":"generated"},"ab350b6d-fcc6-4592-84a1-ba45e285c6dc":{"description":"Unauthorized","content":{"application/problem+json":{"schema":{"description":"RFC 9457 Problem Details response.\n\nAll API errors are returned in this format with Content-Type:\napplication/problem+json.","examples":[{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"},{"detail":"Validation error.","details":[{"loc":["body","name"],"msg":"Field required","type":"missing"}],"error_code":"validation_error","retryable":false,"status":422,"timestamp":"2026-03-31T12:00:00+00:00","title":"Validation Error","type":"https://closient.com/docs/errors/validation_error"},{"detail":"Rate limit exceeded. Please try again later.","error_code":"rate_limited","retry_after":31,"retryable":true,"status":429,"timestamp":"2026-03-31T12:00:00+00:00","title":"Rate Limited","type":"https://closient.com/docs/errors/rate_limited"}],"properties":{"type":{"description":"URI reference identifying the error type.","title":"Type","type":"string","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"description":"Short human-readable summary of the error.","title":"Title","type":"string","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"description":"HTTP status code.","title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"detail":{"description":"Human-readable explanation of this specific occurrence.","title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"description":"Machine-readable error code (e.g. not_found, unauthorized).","title":"Error Code","type":"string","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"timestamp":{"description":"ISO 8601 timestamp of when the error occurred.","title":"Timestamp","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"retryable":{"default":false,"description":"Whether retrying the same request can succeed.","title":"Retryable","type":"boolean","uniqueKey":"retryable","typeLabel":"boolean"},"retry_after":{"oneOf":[{"type":"integer","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.1","typeLabel":"null"}],"uniqueKey":"retry_after","typeLabel":"integer | null"},"owner_action_required":{"oneOf":[{"type":"boolean","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.1","typeLabel":"null"}],"uniqueKey":"owner_action_required","typeLabel":"boolean | null"},"details":{"description":"Additional context (validation errors, etc.).","title":"Details","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","error_code","timestamp"],"title":"ErrorOut","type":"object","uniqueKey":"","typeLabel":"ErrorOut · object"},"examples":{"Example":{"title":"Example","value":{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"}}},"exampleType":"generated"}},"exampleType":"generated"},"688c805c-7265-4432-b367-f4b343b118f0":{"description":"Forbidden","content":{"application/problem+json":{"schema":{"description":"RFC 9457 Problem Details response.\n\nAll API errors are returned in this format with Content-Type:\napplication/problem+json.","examples":[{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"},{"detail":"Validation error.","details":[{"loc":["body","name"],"msg":"Field required","type":"missing"}],"error_code":"validation_error","retryable":false,"status":422,"timestamp":"2026-03-31T12:00:00+00:00","title":"Validation Error","type":"https://closient.com/docs/errors/validation_error"},{"detail":"Rate limit exceeded. Please try again later.","error_code":"rate_limited","retry_after":31,"retryable":true,"status":429,"timestamp":"2026-03-31T12:00:00+00:00","title":"Rate Limited","type":"https://closient.com/docs/errors/rate_limited"}],"properties":{"type":{"description":"URI reference identifying the error type.","title":"Type","type":"string","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"description":"Short human-readable summary of the error.","title":"Title","type":"string","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"description":"HTTP status code.","title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"detail":{"description":"Human-readable explanation of this specific occurrence.","title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"description":"Machine-readable error code (e.g. not_found, unauthorized).","title":"Error Code","type":"string","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"timestamp":{"description":"ISO 8601 timestamp of when the error occurred.","title":"Timestamp","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"retryable":{"default":false,"description":"Whether retrying the same request can succeed.","title":"Retryable","type":"boolean","uniqueKey":"retryable","typeLabel":"boolean"},"retry_after":{"oneOf":[{"type":"integer","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.1","typeLabel":"null"}],"uniqueKey":"retry_after","typeLabel":"integer | null"},"owner_action_required":{"oneOf":[{"type":"boolean","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.1","typeLabel":"null"}],"uniqueKey":"owner_action_required","typeLabel":"boolean | null"},"details":{"description":"Additional context (validation errors, etc.).","title":"Details","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","error_code","timestamp"],"title":"ErrorOut","type":"object","uniqueKey":"","typeLabel":"ErrorOut · object"},"examples":{"Example":{"title":"Example","value":{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"}}},"exampleType":"generated"}},"exampleType":"generated"},"49dd8d88-3154-4814-8d02-6ac6a2cc110b":{"description":"Not Found","content":{"application/problem+json":{"schema":{"description":"RFC 9457 Problem Details response.\n\nAll API errors are returned in this format with Content-Type:\napplication/problem+json.","examples":[{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"},{"detail":"Validation error.","details":[{"loc":["body","name"],"msg":"Field required","type":"missing"}],"error_code":"validation_error","retryable":false,"status":422,"timestamp":"2026-03-31T12:00:00+00:00","title":"Validation Error","type":"https://closient.com/docs/errors/validation_error"},{"detail":"Rate limit exceeded. Please try again later.","error_code":"rate_limited","retry_after":31,"retryable":true,"status":429,"timestamp":"2026-03-31T12:00:00+00:00","title":"Rate Limited","type":"https://closient.com/docs/errors/rate_limited"}],"properties":{"type":{"description":"URI reference identifying the error type.","title":"Type","type":"string","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"description":"Short human-readable summary of the error.","title":"Title","type":"string","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"description":"HTTP status code.","title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"detail":{"description":"Human-readable explanation of this specific occurrence.","title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"description":"Machine-readable error code (e.g. not_found, unauthorized).","title":"Error Code","type":"string","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"timestamp":{"description":"ISO 8601 timestamp of when the error occurred.","title":"Timestamp","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"retryable":{"default":false,"description":"Whether retrying the same request can succeed.","title":"Retryable","type":"boolean","uniqueKey":"retryable","typeLabel":"boolean"},"retry_after":{"oneOf":[{"type":"integer","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.1","typeLabel":"null"}],"uniqueKey":"retry_after","typeLabel":"integer | null"},"owner_action_required":{"oneOf":[{"type":"boolean","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.1","typeLabel":"null"}],"uniqueKey":"owner_action_required","typeLabel":"boolean | null"},"details":{"description":"Additional context (validation errors, etc.).","title":"Details","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","error_code","timestamp"],"title":"ErrorOut","type":"object","uniqueKey":"","typeLabel":"ErrorOut · object"},"examples":{"Example":{"title":"Example","value":{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"}}},"exampleType":"generated"}},"exampleType":"generated"},"c043f853-0fe8-49f5-b307-8731fb2e54d9":{"description":"Method Not Allowed","content":{"application/problem+json":{"schema":{"description":"RFC 9457 Problem Details response.\n\nAll API errors are returned in this format with Content-Type:\napplication/problem+json.","examples":[{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"},{"detail":"Validation error.","details":[{"loc":["body","name"],"msg":"Field required","type":"missing"}],"error_code":"validation_error","retryable":false,"status":422,"timestamp":"2026-03-31T12:00:00+00:00","title":"Validation Error","type":"https://closient.com/docs/errors/validation_error"},{"detail":"Rate limit exceeded. Please try again later.","error_code":"rate_limited","retry_after":31,"retryable":true,"status":429,"timestamp":"2026-03-31T12:00:00+00:00","title":"Rate Limited","type":"https://closient.com/docs/errors/rate_limited"}],"properties":{"type":{"description":"URI reference identifying the error type.","title":"Type","type":"string","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"description":"Short human-readable summary of the error.","title":"Title","type":"string","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"description":"HTTP status code.","title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"detail":{"description":"Human-readable explanation of this specific occurrence.","title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"description":"Machine-readable error code (e.g. not_found, unauthorized).","title":"Error Code","type":"string","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"timestamp":{"description":"ISO 8601 timestamp of when the error occurred.","title":"Timestamp","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"retryable":{"default":false,"description":"Whether retrying the same request can succeed.","title":"Retryable","type":"boolean","uniqueKey":"retryable","typeLabel":"boolean"},"retry_after":{"oneOf":[{"type":"integer","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.1","typeLabel":"null"}],"uniqueKey":"retry_after","typeLabel":"integer | null"},"owner_action_required":{"oneOf":[{"type":"boolean","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.1","typeLabel":"null"}],"uniqueKey":"owner_action_required","typeLabel":"boolean | null"},"details":{"description":"Additional context (validation errors, etc.).","title":"Details","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","error_code","timestamp"],"title":"ErrorOut","type":"object","uniqueKey":"","typeLabel":"ErrorOut · object"},"examples":{"Example":{"title":"Example","value":{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"}}},"exampleType":"generated"}},"exampleType":"generated"},"6dd0cbd8-c766-40f8-8523-0c8cf65c3ff4":{"description":"Unprocessable Content","content":{"application/problem+json":{"schema":{"description":"RFC 9457 Problem Details response.\n\nAll API errors are returned in this format with Content-Type:\napplication/problem+json.","examples":[{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"},{"detail":"Validation error.","details":[{"loc":["body","name"],"msg":"Field required","type":"missing"}],"error_code":"validation_error","retryable":false,"status":422,"timestamp":"2026-03-31T12:00:00+00:00","title":"Validation Error","type":"https://closient.com/docs/errors/validation_error"},{"detail":"Rate limit exceeded. Please try again later.","error_code":"rate_limited","retry_after":31,"retryable":true,"status":429,"timestamp":"2026-03-31T12:00:00+00:00","title":"Rate Limited","type":"https://closient.com/docs/errors/rate_limited"}],"properties":{"type":{"description":"URI reference identifying the error type.","title":"Type","type":"string","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"description":"Short human-readable summary of the error.","title":"Title","type":"string","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"description":"HTTP status code.","title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"detail":{"description":"Human-readable explanation of this specific occurrence.","title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"description":"Machine-readable error code (e.g. not_found, unauthorized).","title":"Error Code","type":"string","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"timestamp":{"description":"ISO 8601 timestamp of when the error occurred.","title":"Timestamp","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"retryable":{"default":false,"description":"Whether retrying the same request can succeed.","title":"Retryable","type":"boolean","uniqueKey":"retryable","typeLabel":"boolean"},"retry_after":{"oneOf":[{"type":"integer","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.1","typeLabel":"null"}],"uniqueKey":"retry_after","typeLabel":"integer | null"},"owner_action_required":{"oneOf":[{"type":"boolean","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.1","typeLabel":"null"}],"uniqueKey":"owner_action_required","typeLabel":"boolean | null"},"details":{"description":"Additional context (validation errors, etc.).","title":"Details","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","error_code","timestamp"],"title":"ErrorOut","type":"object","uniqueKey":"","typeLabel":"ErrorOut · object"},"examples":{"Example":{"title":"Example","value":{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"}}},"exampleType":"generated"}},"exampleType":"generated"},"5d9ca036-2871-46da-bfd6-891f15df196a":{"description":"Too Many Requests","content":{"application/problem+json":{"schema":{"description":"RFC 9457 Problem Details response.\n\nAll API errors are returned in this format with Content-Type:\napplication/problem+json.","examples":[{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"},{"detail":"Validation error.","details":[{"loc":["body","name"],"msg":"Field required","type":"missing"}],"error_code":"validation_error","retryable":false,"status":422,"timestamp":"2026-03-31T12:00:00+00:00","title":"Validation Error","type":"https://closient.com/docs/errors/validation_error"},{"detail":"Rate limit exceeded. Please try again later.","error_code":"rate_limited","retry_after":31,"retryable":true,"status":429,"timestamp":"2026-03-31T12:00:00+00:00","title":"Rate Limited","type":"https://closient.com/docs/errors/rate_limited"}],"properties":{"type":{"description":"URI reference identifying the error type.","title":"Type","type":"string","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"title":{"description":"Short human-readable summary of the error.","title":"Title","type":"string","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"description":"HTTP status code.","title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"detail":{"description":"Human-readable explanation of this specific occurrence.","title":"Detail","type":"string","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"description":"Machine-readable error code (e.g. not_found, unauthorized).","title":"Error Code","type":"string","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"timestamp":{"description":"ISO 8601 timestamp of when the error occurred.","title":"Timestamp","type":"string","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string"},"retryable":{"default":false,"description":"Whether retrying the same request can succeed.","title":"Retryable","type":"boolean","uniqueKey":"retryable","typeLabel":"boolean"},"retry_after":{"oneOf":[{"type":"integer","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Retry After","description":"Seconds to wait before retrying (when applicable).","uniqueKey":"retry_after.oneOf.1","typeLabel":"null"}],"uniqueKey":"retry_after","typeLabel":"integer | null"},"owner_action_required":{"oneOf":[{"type":"boolean","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Owner Action Required","description":"Whether the error requires account owner intervention.","uniqueKey":"owner_action_required.oneOf.1","typeLabel":"null"}],"uniqueKey":"owner_action_required","typeLabel":"boolean | null"},"details":{"description":"Additional context (validation errors, etc.).","title":"Details","uniqueKey":"details","typeLabel":"any"}},"required":["type","title","status","detail","error_code","timestamp"],"title":"ErrorOut","type":"object","uniqueKey":"","typeLabel":"ErrorOut · object"},"examples":{"Example":{"title":"Example","value":{"detail":"The requested resource was not found.","error_code":"not_found","retryable":false,"status":404,"timestamp":"2026-03-31T12:00:00+00:00","title":"Not Found","type":"https://closient.com/docs/errors/not_found"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"4ed012d4-6886-4052-8f65-245fe6f60456":{"APIKeyHeaderAuth":{"type":"apiKey","in":"header","name":"X-API-Key","scopes":[],"schemeName":"APIKeyHeaderAuth"}},"ff0cbfbe-e118-4836-bd8d-f4c6aa029712":{"OAuthTokenAuth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"OAuthTokenAuth"}},"a49c3e39-ce00-4e43-b3b1-0eeadb3e1bb2":{"CookieGatedSessionAuth":{"type":"apiKey","in":"cookie","name":"sessionid","scopes":[],"schemeName":"CookieGatedSessionAuth"}}},"servers":{"6cfbd7dc-48db-4618-a72d-ef298afcabc5":{"url":"https://www.closient.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-API-Key","scopes":[],"schemeName":"APIKeyHeaderAuth"},"schema":{"title":"X-API-Key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"APIKeyHeaderAuth","name":"X-API-Key"}],"title":"APIKeyHeaderAuth"},{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"OAuthTokenAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"OAuthTokenAuth","name":"Authorization"}],"title":"OAuthTokenAuth"},{"schemes":[{"scheme":{"type":"apiKey","in":"cookie","name":"sessionid","scopes":[],"schemeName":"CookieGatedSessionAuth"},"schema":{"title":"sessionid","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"CookieGatedSessionAuth","name":"sessionid"}],"title":"CookieGatedSessionAuth"}]},"originalFileLocation":"openapi/openapi-products.json"},"subdomain":"closientsearchinc","siteName":"Closient","title":"Bulk import lots - Closient","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-25T23:29:58.819Z","originalFileLocation":"api-reference/products/import/bulk-import-lots.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: gtin (also barcode / upc / ean) and lot_identifier (also lot / lot_number / batch / batch_number). Optional columns: production_date, expiration_date (also expiry_date / use_by), best_before_date, quantity, unit_of_measure (a GS1 / UN/ECE Rec 20 code such as EA or KGM), harvest_date, harvest_end_date, resolver_enabled. Dates are YYYY-MM-DD. Each row\u0026#x27;s GTIN must already be a product in the authenticated organization\u0026#x27;s catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history. Accepts CSV, TSV and XLSX — the uploaded filename\u0026#x27;s extension selects the parser, so a tab-separated file must be named .tsv (a .csv name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Closient\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Bulk import lots - Closient\">\u003cmeta data-mint-head property=\"og:description\" content=\"Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: gtin (also barcode / upc / ean) and lot_identifier (also lot / lot_number / batch / batch_number). Optional columns: production_date, expiration_date (also expiry_date / use_by), best_before_date, quantity, unit_of_measure (a GS1 / UN/ECE Rec 20 code such as EA or KGM), harvest_date, harvest_end_date, resolver_enabled. Dates are YYYY-MM-DD. Each row\u0026#x27;s GTIN must already be a product in the authenticated organization\u0026#x27;s catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history. Accepts CSV, TSV and XLSX — the uploaded filename\u0026#x27;s extension selects the parser, so a tab-separated file must be named .tsv (a .csv name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Closient\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.closient.com/api-reference/products/import/bulk-import-lots\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://closientsearchinc.mintlify.app/_mintlify/api/og/v2?division=Import\u0026amp;title=Bulk+import+lots\u0026amp;description=Upload+a+file+to+create+or+update+batch%2Flot+records+%28GS1+AI+10%29+in+bulk.+Required+columns%3A+%60%60gtin%60%60+%28also+%60%60barcode%60%60+%2F+%60%60upc%60%60+%2F+%60%60ean%60%60%29+and+%60%60lot_identifier%60\u0026amp;theme=b3c3c57337311a3ef6eeba51\u0026amp;signature=bc5659e6ff40dd3153b799d6875f6512e60656894eaa9707c467aecc673997db\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Bulk import lots - Closient\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: gtin (also barcode / upc / ean) and lot_identifier (also lot / lot_number / batch / batch_number). Optional columns: production_date, expiration_date (also expiry_date / use_by), best_before_date, quantity, unit_of_measure (a GS1 / UN/ECE Rec 20 code such as EA or KGM), harvest_date, harvest_end_date, resolver_enabled. Dates are YYYY-MM-DD. Each row\u0026#x27;s GTIN must already be a product in the authenticated organization\u0026#x27;s catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history. Accepts CSV, TSV and XLSX — the uploaded filename\u0026#x27;s extension selects the parser, so a tab-separated file must be named .tsv (a .csv name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://closientsearchinc.mintlify.app/_mintlify/api/og/v2?division=Import\u0026amp;title=Bulk+import+lots\u0026amp;description=Upload+a+file+to+create+or+update+batch%2Flot+records+%28GS1+AI+10%29+in+bulk.+Required+columns%3A+%60%60gtin%60%60+%28also+%60%60barcode%60%60+%2F+%60%60upc%60%60+%2F+%60%60ean%60%60%29+and+%60%60lot_identifier%60\u0026amp;theme=b3c3c57337311a3ef6eeba51\u0026amp;signature=bc5659e6ff40dd3153b799d6875f6512e60656894eaa9707c467aecc673997db\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/closientsearchinc/vtexSWpuGidbNkX_/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Closient\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1d4ed8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.closient.com/api-reference/products/import/bulk-import-lots\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/products/import/bulk-import-lots.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.closient.com/#organization\",\"name\":\"Closient\",\"url\":\"https://docs.closient.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/closientsearchinc/vrxkrkGbKE0bLCPC/logo/light.svg?fit=max\u0026auto=format\u0026n=vrxkrkGbKE0bLCPC\u0026q=85\u0026s=478b3e4ffc42465d52691098e52c119e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.closient.com#website\",\"name\":\"Closient\",\"url\":\"https://docs.closient.com\",\"publisher\":{\"@id\":\"https://docs.closient.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.closient.com/api-reference/products/import/bulk-import-lots#webpage\",\"url\":\"https://docs.closient.com/api-reference/products/import/bulk-import-lots\",\"name\":\"Bulk import lots\",\"description\":\"Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: gtin (also barcode / upc / ean) and lot_identifier (also lot / lot_number / batch / batch_number). Optional columns: production_date, expiration_date (also expiry_date / use_by), best_before_date, quantity, unit_of_measure (a GS1 / UN/ECE Rec 20 code such as EA or KGM), harvest_date, harvest_end_date, resolver_enabled. Dates are YYYY-MM-DD. Each row's GTIN must already be a product in the authenticated organization's catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history. Accepts CSV, TSV and XLSX — the uploaded filename's extension selects the parser, so a tab-separated file must be named .tsv (a .csv name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.\",\"dateModified\":\"2026-10-25T23:29:58.819Z\",\"isPartOf\":{\"@id\":\"https://docs.closient.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.closient.com/api-reference/products/import/bulk-import-lots#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.closient.com/api-reference/products/import/bulk-import-lots#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Products\",\"item\":\"https://docs.closient.com/api-reference/products/products/create-or-update-up-to-1000-products-in-one-call\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Import\",\"item\":\"https://docs.closient.com/api-reference/products/import/bulk-import-products-from-csv\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Bulk import lots\",\"item\":\"https://docs.closient.com/api-reference/products/import/bulk-import-lots\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.closient.com/api-reference/products/import/bulk-import-lots#apireference\",\"headline\":\"Bulk import lots\",\"name\":\"Bulk import lots\",\"description\":\"Upload a file to create or update batch/lot records (GS1 AI 10) in bulk. Required columns: gtin (also barcode / upc / ean) and lot_identifier (also lot / lot_number / batch / batch_number). Optional columns: production_date, expiration_date (also expiry_date / use_by), best_before_date, quantity, unit_of_measure (a GS1 / UN/ECE Rec 20 code such as EA or KGM), harvest_date, harvest_end_date, resolver_enabled. Dates are YYYY-MM-DD. Each row's GTIN must already be a product in the authenticated organization's catalog — a lot import never creates products, so a GTIN you do not own is reported as a row error. Re-importing is idempotent: a row for an existing lot updates it, a blank cell leaves the stored value unchanged rather than clearing it, and an unchanged row is counted as skipped. Once a lot is referenced by a Critical Tracking Event its identifier and harvest key data elements are locked (FSMA 204 / 21 CFR 1.1320) and an import that changes them is rejected per row rather than silently rewriting traceability history. Accepts CSV, TSV and XLSX — the uploaded filename's extension selects the parser, so a tab-separated file must be named .tsv (a .csv name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.\",\"url\":\"https://docs.closient.com/api-reference/products/import/bulk-import-lots\",\"mainEntityOfPage\":{\"@id\":\"https://docs.closient.com/api-reference/products/import/bulk-import-lots#webpage\"},\"dateModified\":\"2026-10-25T23:29:58.819Z\",\"publisher\":{\"@id\":\"https://docs.closient.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.closient.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Closient\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Closient","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API Reference","href":"/api-reference/overview"}]},{"group":"Account","pages":[{"group":"Organizations","pages":[{"title":"List all organizations","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/organizations","href":"/api-reference/account/organizations/list-all-organizations"},{"title":"Create organization","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/organizations","href":"/api-reference/account/organizations/create-organization"},{"title":"Get organization","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/organizations/{id}","href":"/api-reference/account/organizations/get-organization"},{"title":"Update organization","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json put /account/api/v1/organizations/{id}","href":"/api-reference/account/organizations/update-organization"},{"title":"Delete organization","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json delete /account/api/v1/organizations/{id}","href":"/api-reference/account/organizations/delete-organization"},{"title":"Fast-purge organization","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/organizations/{id}/fast-purge","href":"/api-reference/account/organizations/fast-purge-organization"}]},{"group":"API Keys","pages":[{"title":"List API keys","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/organizations/{organization_id}/api-keys","href":"/api-reference/account/api-keys/list-api-keys"},{"title":"Create API key","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/organizations/{organization_id}/api-keys","href":"/api-reference/account/api-keys/create-api-key"},{"title":"Get API key","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/organizations/{organization_id}/api-keys/{key_id}","href":"/api-reference/account/api-keys/get-api-key"},{"title":"Delete API key","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json delete /account/api/v1/organizations/{organization_id}/api-keys/{key_id}","href":"/api-reference/account/api-keys/delete-api-key"},{"title":"Update API key","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json patch /account/api/v1/organizations/{organization_id}/api-keys/{key_id}","href":"/api-reference/account/api-keys/update-api-key"}]},{"group":"Members","pages":[{"title":"List organization members","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/organizations/{org_id}/members","href":"/api-reference/account/members/list-organization-members"},{"title":"Invite a member","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/organizations/{org_id}/members","href":"/api-reference/account/members/invite-a-member"},{"title":"Get organization member","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/organizations/{org_id}/members/{member_id}","href":"/api-reference/account/members/get-organization-member"},{"title":"Update member role","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json put /account/api/v1/organizations/{org_id}/members/{member_id}","href":"/api-reference/account/members/update-member-role"},{"title":"Remove a member","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json delete /account/api/v1/organizations/{org_id}/members/{member_id}","href":"/api-reference/account/members/remove-a-member"}]},{"group":"Preferences","pages":[{"title":"List the caller's stored trait preferences","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/preferences","href":"/api-reference/account/preferences/list-the-callers-stored-trait-preferences"},{"title":"Create a trait preference","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/preferences","href":"/api-reference/account/preferences/create-a-trait-preference"},{"title":"Delete a trait preference","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json delete /account/api/v1/preferences/{preference_id}","href":"/api-reference/account/preferences/delete-a-trait-preference"},{"title":"Update a trait preference","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json patch /account/api/v1/preferences/{preference_id}","href":"/api-reference/account/preferences/update-a-trait-preference"}]},{"group":"Account","pages":[{"title":"Identify the authenticated caller","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/whoami","href":"/api-reference/account/account/identify-the-authenticated-caller"}]},{"group":"Scan History","pages":[{"title":"List scan history","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/history/scans","href":"/api-reference/account/scan-history/list-scan-history"},{"title":"Capture an anonymous scan","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/history/scans/capture","href":"/api-reference/account/scan-history/capture-an-anonymous-scan"},{"title":"List recently viewed products","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/history/viewed","href":"/api-reference/account/scan-history/list-recently-viewed-products"}]},{"group":"Enrollment Codes","pages":[{"title":"List enrollment codes","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/enrollment-codes","href":"/api-reference/account/enrollment-codes/list-enrollment-codes"},{"title":"Mint enrollment code","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/enrollment-codes","href":"/api-reference/account/enrollment-codes/mint-enrollment-code"},{"title":"Get live enrollment code","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/enrollment-codes/live/{retailer_id}","href":"/api-reference/account/enrollment-codes/get-live-enrollment-code"},{"title":"Get enrollment code","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/enrollment-codes/{enrollment_code_id}","href":"/api-reference/account/enrollment-codes/get-enrollment-code"},{"title":"Revoke enrollment code","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json delete /account/api/v1/enrollment-codes/{enrollment_code_id}","href":"/api-reference/account/enrollment-codes/revoke-enrollment-code"}]},{"group":"Retailer Links","pages":[{"title":"List retailer links","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/retailer-links","href":"/api-reference/account/retailer-links/list-retailer-links"},{"title":"Get retailer link detail","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/retailer-links/{link_id}","href":"/api-reference/account/retailer-links/get-retailer-link-detail"},{"title":"Unlink retailer","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/retailer-links/{link_id}/unlink","href":"/api-reference/account/retailer-links/unlink-retailer"},{"title":"Delete purchase history","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/retailer-links/{link_id}/delete-history","href":"/api-reference/account/retailer-links/delete-purchase-history"}]},{"group":"Retailer Enrollment","pages":[{"title":"Redeem enrollment code","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/retailer/enrollment-codes/redeem","href":"/api-reference/account/retailer-enrollment/redeem-enrollment-code"}]},{"group":"Retailer Clients","pages":[{"title":"List retailer clients","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json get /account/api/v1/organizations/{organization_id}/retailer-clients","href":"/api-reference/account/retailer-clients/list-retailer-clients"},{"title":"Register retailer client","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/organizations/{organization_id}/retailer-clients","href":"/api-reference/account/retailer-clients/register-retailer-client"},{"title":"Rotate retailer client secret","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json post /account/api/v1/organizations/{organization_id}/retailer-clients/{client_id}/rotate-secret","href":"/api-reference/account/retailer-clients/rotate-retailer-client-secret"},{"title":"Update retailer client","deprecated":null,"version":null,"openapi":"/openapi/openapi-account.json patch /account/api/v1/organizations/{organization_id}/retailer-clients/{client_id}","href":"/api-reference/account/retailer-clients/update-retailer-client"}]}]},{"group":"Products","pages":[{"group":"Products","pages":[{"title":"Create or update up to 1,000 products in one call","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/batch","href":"/api-reference/products/products/create-or-update-up-to-1000-products-in-one-call"},{"title":"Create a product","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products","href":"/api-reference/products/products/create-a-product"},{"title":"List claimed products","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/","href":"/api-reference/products/products/list-claimed-products"},{"title":"Look up a product","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}","href":"/api-reference/products/products/look-up-a-product"},{"title":"Delete (unclaim) a product","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/products/{gtin}","href":"/api-reference/products/products/delete-unclaim-a-product"},{"title":"Update a product","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/products/{gtin}","href":"/api-reference/products/products/update-a-product"},{"title":"Read per-field provenance","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/provenance","href":"/api-reference/products/products/read-per-field-provenance"},{"title":"Claim a product","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/claim","href":"/api-reference/products/products/claim-a-product"},{"title":"Unclaim a product","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/unclaim","href":"/api-reference/products/products/unclaim-a-product"},{"title":"Report a suspicious GTIN ownership claim","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/report-claim","href":"/api-reference/products/products/report-a-suspicious-gtin-ownership-claim"},{"title":"List product hierarchy","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/hierarchy","href":"/api-reference/products/products/list-product-hierarchy"},{"title":"List products","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/browse/products","href":"/api-reference/products/products/list-products"},{"title":"Get product detail","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/browse/products/{id}","href":"/api-reference/products/products/get-product-detail"},{"title":"List product categories","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/browse/categories","href":"/api-reference/products/products/list-product-categories"},{"title":"List catalog products","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/catalog/products","href":"/api-reference/products/products/list-catalog-products"},{"title":"Get catalog product detail","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/catalog/products/{gtin}","href":"/api-reference/products/products/get-catalog-product-detail"},{"title":"Get product content","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/content","href":"/api-reference/products/products/get-product-content"},{"title":"List product ingredients","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/ingredients","href":"/api-reference/products/products/list-product-ingredients"},{"title":"Read product ingredient","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/ingredients/{ingredient_id}","href":"/api-reference/products/products/read-product-ingredient"},{"title":"Get product nutrition facts","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/nutrition","href":"/api-reference/products/products/get-product-nutrition-facts"},{"title":"List product certifications","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/certifications","href":"/api-reference/products/products/list-product-certifications"},{"title":"List product claims","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/claims","href":"/api-reference/products/products/list-product-claims"},{"title":"List product recalls","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/recalls","href":"/api-reference/products/products/list-product-recalls"},{"title":"Render a product's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/barcode","href":"/api-reference/products/products/render-a-products-barcode"},{"title":"Render barcodes for many lots and serials","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/barcodes/bulk","href":"/api-reference/products/products/render-barcodes-for-many-lots-and-serials"},{"title":"Poll a bulk barcode job","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/barcodes/bulk/{job}","href":"/api-reference/products/products/poll-a-bulk-barcode-job"},{"title":"List product images","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/images","href":"/api-reference/products/products/list-product-images"},{"title":"Upload a product image file","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/images","href":"/api-reference/products/products/upload-a-product-image-file"},{"title":"Attach a product image from a vendor-supplied URL","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/images/from-url","href":"/api-reference/products/products/attach-a-product-image-from-a-vendor-supplied-url"},{"title":"List and filter a product's documents","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/documents","href":"/api-reference/products/products/list-and-filter-a-products-documents"},{"title":"Create a document","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/documents","href":"/api-reference/products/products/create-a-document"},{"title":"Read a single document","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/documents/{document_id}","href":"/api-reference/products/products/read-a-single-document"},{"title":"Delete a document","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/products/{gtin}/documents/{document_id}","href":"/api-reference/products/products/delete-a-document"},{"title":"Update a document's facets and metadata","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/products/{gtin}/documents/{document_id}","href":"/api-reference/products/products/update-a-documents-facets-and-metadata"},{"title":"Redirect to the document's current file location","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/documents/{document_id}/download","href":"/api-reference/products/products/redirect-to-the-documents-current-file-location"},{"title":"Get a claim's verification status","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/verification","href":"/api-reference/products/products/get-a-claims-verification-status"},{"title":"Submit claim evidence for review","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/verification/evidence","href":"/api-reference/products/products/submit-claim-evidence-for-review"},{"title":"Check the brand domain's DNS TXT record","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/verification/dns-check","href":"/api-reference/products/products/check-the-brand-domains-dns-txt-record"},{"title":"Check the brand domain's .well-known file","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/verification/http-check","href":"/api-reference/products/products/check-the-brand-domains-well-known-file"}]},{"group":"Product Group","pages":[{"title":"Add hierarchy link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/hierarchy","href":"/api-reference/products/product-group/add-hierarchy-link"},{"title":"Read hierarchy link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/hierarchy/{hierarchy_id}","href":"/api-reference/products/product-group/read-hierarchy-link"},{"title":"Remove hierarchy link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/products/hierarchy/{hierarchy_id}","href":"/api-reference/products/product-group/remove-hierarchy-link"},{"title":"Update hierarchy link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/products/hierarchy/{hierarchy_id}","href":"/api-reference/products/product-group/update-hierarchy-link"}]},{"group":"Import","pages":[{"title":"Bulk import products from CSV","description":"Upload a file to create or update products in bulk. The CSV must include a GTIN column (also accepts ``barcode``, ``upc``, ``ean``, or ``gtin-8`` / ``gtin-12`` / ``gtin-13`` / ``gtin-14``). Optional columns: ``product_name`` (also ``name`` / ``title``), ``brand``, ``manufacturer``, ``description``, ``image_url`` (also ``image`` / ``photo_url``), ``country_of_origin`` (also ``country`` / ``origin``), ``net_content`` (also ``size`` / ``weight`` / ``volume``). Imported products are claimed for the authenticated user's organization and get a claim tier exactly as a single-product claim does: ``PREFIX_MATCHED`` when the GTIN falls under one of the organization's GS1 Company Prefixes, ``UNVERIFIED`` otherwise. A row whose GTIN another organization already owns, or that is under an open ownership dispute, is reported as a row error and leaves the product unchanged. Claims made by imports count against a per-organization hourly allowance; rows past it are reported as row errors. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.\n\nAccepts CSV, TSV and XLSX — the uploaded filename's extension selects the parser, so a tab-separated file must be named ``.tsv`` (a ``.csv`` name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text.","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/import/csv","href":"/api-reference/products/import/bulk-import-products-from-csv"},{"title":"Bulk import lots","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/import/lots","href":"/api-reference/products/import/bulk-import-lots"},{"title":"Bulk import serial numbers","description":"Upload a file to create or update serialized-unit records (GS1 AI 21) in bulk. Required columns: ``gtin`` (also ``barcode`` / ``upc`` / ``ean``) and ``serial`` (also ``serial_number`` / ``sn``). Optional columns: ``lot_identifier``, ``production_date``, ``expiration_date``, ``best_before_date``, ``resolver_enabled``. Dates are ``YYYY-MM-DD``.\n\nEach row's GTIN must already be a product in the authenticated organization's catalog. ``lot_identifier`` is optional — under GS1 a unit's identity is its SGTIN (GTIN + serial) and the batch is an attribute, so a serial with no lot is a legitimate unbatched unit — but when supplied it must name a lot that is already registered on that product. A serial import never creates lots: a mistyped lot code would split one physical batch into two, and a batch is the FSMA 204 recall unit. Re-importing is idempotent, and a blank cell leaves the stored value unchanged rather than clearing it.\n\nAccepts CSV, TSV and XLSX — the uploaded filename's extension selects the parser, so a tab-separated file must be named ``.tsv`` (a ``.csv`` name is parsed with a comma delimiter and will fail with a missing-column error rather than misparse silently). Text uploads must be UTF-8. Maximum upload size is 10 MiB; maximum 10,000 data rows per upload. Excel stores every cell as a number unless the column is formatted as Text, which strips leading zeros from identifiers — format identifier columns as Text. The endpoint returns 200 with a per-row error report even on partial success — only request-level failures (auth, file type, file size, no brand membership) produce 4xx responses.","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/import/serials","href":"/api-reference/products/import/bulk-import-serial-numbers"},{"title":"Download CSV import template","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/import/template","href":"/api-reference/products/import/download-csv-import-template"},{"title":"Download lot import template","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/import/lots/template","href":"/api-reference/products/import/download-lot-import-template"},{"title":"Download serial import template","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/import/serials/template","href":"/api-reference/products/import/download-serial-import-template"}]},{"group":"Digital Link","pages":[{"title":"Parse a GS1 Digital Link URL into structured AIs","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/digital-link/parse","href":"/api-reference/products/digital-link/parse-a-gs1-digital-link-url-into-structured-ais"}]},{"group":"Labels","pages":[{"title":"Submit a bulk label-export job","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/labels/export/","href":"/api-reference/products/labels/submit-a-bulk-label-export-job"},{"title":"Poll a bulk label-export job","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/labels/export/{job_id}/","href":"/api-reference/products/labels/poll-a-bulk-label-export-job"},{"title":"List label sheet templates","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/labels/templates/","href":"/api-reference/products/labels/list-label-sheet-templates"}]},{"group":"Lots","pages":[{"title":"List lot templates","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/lots/templates/","href":"/api-reference/products/lots/list-lot-templates"},{"title":"Create a lot template","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/lots/templates/","href":"/api-reference/products/lots/create-a-lot-template"},{"title":"Read a lot template","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/lots/templates/{template_id}/","href":"/api-reference/products/lots/read-a-lot-template"},{"title":"Update a lot template","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/lots/templates/{template_id}/","href":"/api-reference/products/lots/update-a-lot-template"},{"title":"List a template's versions","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/lots/templates/{template_id}/versions/","href":"/api-reference/products/lots/list-a-templates-versions"},{"title":"Archive a lot template","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/lots/templates/{template_id}/archive/","href":"/api-reference/products/lots/archive-a-lot-template"},{"title":"Preview a template without persisting","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/lots/templates/{template_id}/preview/","href":"/api-reference/products/lots/preview-a-template-without-persisting"},{"title":"List lot runs","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/lots/runs/","href":"/api-reference/products/lots/list-lot-runs"},{"title":"Generate a lot or serial run","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/lots/runs/","href":"/api-reference/products/lots/generate-a-lot-or-serial-run"},{"title":"Read a lot run","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/lots/runs/{run_id}/","href":"/api-reference/products/lots/read-a-lot-run"},{"title":"Stream a run's status transitions (SSE)","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/lots/runs/{run_id}/events/","href":"/api-reference/products/lots/stream-a-runs-status-transitions-sse"},{"title":"Stream a serial run's serials as CSV","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/lots/runs/{run_id}/serials.csv","href":"/api-reference/products/lots/stream-a-serial-runs-serials-as-csv"},{"title":"Stream a serial run's serials as JSON Lines","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/lots/runs/{run_id}/serials.jsonl","href":"/api-reference/products/lots/stream-a-serial-runs-serials-as-json-lines"},{"title":"Commit a reserved run","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/lots/runs/{run_id}/commit/","href":"/api-reference/products/lots/commit-a-reserved-run"},{"title":"Discard a reserved run","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/lots/runs/{run_id}/discard/","href":"/api-reference/products/lots/discard-a-reserved-run"},{"title":"Latest committed run for a product","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/last-run/","href":"/api-reference/products/lots/latest-committed-run-for-a-product"},{"title":"Generate a PTI-compliant case label","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/lots/{lot_id}/pti-case-label/","href":"/api-reference/products/lots/generate-a-pti-compliant-case-label"},{"title":"Render a lot's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/lots/{lot_id}/barcode","href":"/api-reference/products/lots/render-a-lots-barcode"}]},{"group":"Lots and serials","pages":[{"title":"List a product's lots","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/lots","href":"/api-reference/products/lots-and-serials/list-a-products-lots"},{"title":"Create a lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/lots","href":"/api-reference/products/lots-and-serials/create-a-lot"},{"title":"Register an observed lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/lots/register-observed","href":"/api-reference/products/lots-and-serials/register-an-observed-lot"},{"title":"Get a lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/lots/{lot_id}","href":"/api-reference/products/lots-and-serials/get-a-lot"},{"title":"Delete a lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/products/{gtin}/lots/{lot_id}","href":"/api-reference/products/lots-and-serials/delete-a-lot"},{"title":"Update a lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/products/{gtin}/lots/{lot_id}","href":"/api-reference/products/lots-and-serials/update-a-lot"},{"title":"List a product's serials","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/serials","href":"/api-reference/products/lots-and-serials/list-a-products-serials"},{"title":"Create a serial","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/serials","href":"/api-reference/products/lots-and-serials/create-a-serial"},{"title":"Register an observed serial","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/serials/register-observed","href":"/api-reference/products/lots-and-serials/register-an-observed-serial"},{"title":"Get a serial","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/serials/{serial_id}","href":"/api-reference/products/lots-and-serials/get-a-serial"},{"title":"Delete a serial","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/products/{gtin}/serials/{serial_id}","href":"/api-reference/products/lots-and-serials/delete-a-serial"},{"title":"Update a serial","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/products/{gtin}/serials/{serial_id}","href":"/api-reference/products/lots-and-serials/update-a-serial"}]},{"group":"Serials","pages":[{"title":"Render a serial's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/serials/{serial_id}/barcode","href":"/api-reference/products/serials/render-a-serials-barcode"}]},{"group":"Logistic units","pages":[{"title":"Render an SSCC's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/logistic-units/{sscc}/barcode","href":"/api-reference/products/logistic-units/render-an-ssccs-barcode"}]},{"group":"Returnable assets","pages":[{"title":"Render a returnable asset's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/returnable-assets/{grai}/barcode","href":"/api-reference/products/returnable-assets/render-a-returnable-assets-barcode"}]},{"group":"Individual assets","pages":[{"title":"Render an individual asset's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/individual-assets/{giai}/barcode","href":"/api-reference/products/individual-assets/render-an-individual-assets-barcode"}]},{"group":"Product models","pages":[{"title":"Render a product model's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/product-models/{gmn}/barcode","href":"/api-reference/products/product-models/render-a-product-models-barcode"}]},{"group":"HRI Presets","pages":[{"title":"List HRI presets","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/hri-presets/","href":"/api-reference/products/hri-presets/list-hri-presets"},{"title":"Create an HRI preset","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/hri-presets/","href":"/api-reference/products/hri-presets/create-an-hri-preset"},{"title":"Read an HRI preset","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/hri-presets/{preset_id}/","href":"/api-reference/products/hri-presets/read-an-hri-preset"},{"title":"Update an HRI preset","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/hri-presets/{preset_id}/","href":"/api-reference/products/hri-presets/update-an-hri-preset"},{"title":"Archive an HRI preset","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/hri-presets/{preset_id}/archive/","href":"/api-reference/products/hri-presets/archive-an-hri-preset"}]},{"group":"Retailer Catalog Import","pages":[{"title":"Open a retailer catalog import job","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/import/retailer-catalog/jobs","href":"/api-reference/products/retailer-catalog-import/open-a-retailer-catalog-import-job"},{"title":"Stage rows onto a catalog import job","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/import/retailer-catalog/jobs/{job_id}/rows","href":"/api-reference/products/retailer-catalog-import/stage-rows-onto-a-catalog-import-job"},{"title":"Start or resume a catalog import job","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/import/retailer-catalog/jobs/{job_id}/start","href":"/api-reference/products/retailer-catalog-import/start-or-resume-a-catalog-import-job"},{"title":"Poll a catalog import job","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/import/retailer-catalog/jobs/{job_id}","href":"/api-reference/products/retailer-catalog-import/poll-a-catalog-import-job"}]},{"group":"Product Links","pages":[{"title":"List product links","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/product-links","href":"/api-reference/products/product-links/list-product-links"},{"title":"Create product link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/product-links","href":"/api-reference/products/product-links/create-product-link"},{"title":"Reorder product links","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/product-links/reorder","href":"/api-reference/products/product-links/reorder-product-links"},{"title":"Get product link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/product-links/{link_id}","href":"/api-reference/products/product-links/get-product-link"},{"title":"Update product link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json put /products/api/v1/product-links/{link_id}","href":"/api-reference/products/product-links/update-product-link"},{"title":"Delete product link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/product-links/{link_id}","href":"/api-reference/products/product-links/delete-product-link"}]},{"group":"PIP Embed (Public)","pages":[{"title":"Product compliance panel for the embeddable PIP widget","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/public/pip/{gtin}","href":"/api-reference/products/pip-embed-public/product-compliance-panel-for-the-embeddable-pip-widget"}]},{"group":"Product Families","pages":[{"title":"List product families","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/families","href":"/api-reference/products/product-families/list-product-families"},{"title":"Create product family","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/families","href":"/api-reference/products/product-families/create-product-family"},{"title":"Get product family","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/families/{family_id}","href":"/api-reference/products/product-families/get-product-family"},{"title":"Delete product family","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/families/{family_id}","href":"/api-reference/products/product-families/delete-product-family"},{"title":"Update product family","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/families/{family_id}","href":"/api-reference/products/product-families/update-product-family"},{"title":"List product family members","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/families/{family_id}/members","href":"/api-reference/products/product-families/list-product-family-members"},{"title":"Add product family member","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/families/{family_id}/members","href":"/api-reference/products/product-families/add-product-family-member"},{"title":"Reorder product family members","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/families/{family_id}/members/reorder","href":"/api-reference/products/product-families/reorder-product-family-members"},{"title":"Get product family member","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/families/{family_id}/members/{member_id}","href":"/api-reference/products/product-families/get-product-family-member"},{"title":"Remove product family member","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/families/{family_id}/members/{member_id}","href":"/api-reference/products/product-families/remove-product-family-member"},{"title":"Update product family member","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/families/{family_id}/members/{member_id}","href":"/api-reference/products/product-families/update-product-family-member"}]},{"group":"Recipes","pages":[{"title":"List recipes","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/recipes","href":"/api-reference/products/recipes/list-recipes"},{"title":"Create recipe","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/recipes","href":"/api-reference/products/recipes/create-recipe"},{"title":"Get recipe","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/recipes/{recipe_id}","href":"/api-reference/products/recipes/get-recipe"},{"title":"Delete recipe","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/recipes/{recipe_id}","href":"/api-reference/products/recipes/delete-recipe"},{"title":"Update recipe","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/recipes/{recipe_id}","href":"/api-reference/products/recipes/update-recipe"}]},{"group":"Accessories","pages":[{"title":"List accessories","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/accessories","href":"/api-reference/products/accessories/list-accessories"},{"title":"Create accessory","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/accessories","href":"/api-reference/products/accessories/create-accessory"},{"title":"Get accessory","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/accessories/{accessory_id}","href":"/api-reference/products/accessories/get-accessory"},{"title":"Delete accessory","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/accessories/{accessory_id}","href":"/api-reference/products/accessories/delete-accessory"},{"title":"Update accessory","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/accessories/{accessory_id}","href":"/api-reference/products/accessories/update-accessory"}]},{"group":"Consumables","pages":[{"title":"List consumables","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/consumables","href":"/api-reference/products/consumables/list-consumables"},{"title":"Create consumable","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/consumables","href":"/api-reference/products/consumables/create-consumable"},{"title":"Get consumable","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/consumables/{consumable_id}","href":"/api-reference/products/consumables/get-consumable"},{"title":"Delete consumable","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/consumables/{consumable_id}","href":"/api-reference/products/consumables/delete-consumable"},{"title":"Update consumable","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/consumables/{consumable_id}","href":"/api-reference/products/consumables/update-consumable"}]},{"group":"App Links","pages":[{"title":"List app links","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/app-links","href":"/api-reference/products/app-links/list-app-links"},{"title":"Create app link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/app-links","href":"/api-reference/products/app-links/create-app-link"},{"title":"Get app link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/app-links/{link_id}","href":"/api-reference/products/app-links/get-app-link"},{"title":"Delete app link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/app-links/{link_id}","href":"/api-reference/products/app-links/delete-app-link"},{"title":"Update app link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/app-links/{link_id}","href":"/api-reference/products/app-links/update-app-link"}]},{"group":"Merchant Links","pages":[{"title":"List merchant links","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/merchant-links","href":"/api-reference/products/merchant-links/list-merchant-links"},{"title":"Create merchant link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/merchant-links","href":"/api-reference/products/merchant-links/create-merchant-link"},{"title":"Get merchant link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/merchant-links/{link_id}","href":"/api-reference/products/merchant-links/get-merchant-link"},{"title":"Delete merchant link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/merchant-links/{link_id}","href":"/api-reference/products/merchant-links/delete-merchant-link"},{"title":"Update merchant link","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/merchant-links/{link_id}","href":"/api-reference/products/merchant-links/update-merchant-link"}]},{"group":"Replacement Parts","pages":[{"title":"List replacement parts","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/replacement-parts","href":"/api-reference/products/replacement-parts/list-replacement-parts"},{"title":"Create replacement part","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/replacement-parts","href":"/api-reference/products/replacement-parts/create-replacement-part"},{"title":"Get replacement part","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/replacement-parts/{part_id}","href":"/api-reference/products/replacement-parts/get-replacement-part"},{"title":"Delete replacement part","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/replacement-parts/{part_id}","href":"/api-reference/products/replacement-parts/delete-replacement-part"},{"title":"Update replacement part","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/replacement-parts/{part_id}","href":"/api-reference/products/replacement-parts/update-replacement-part"}]},{"group":"Product Traits","pages":[{"title":"List product traits","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/products/{gtin}/traits","href":"/api-reference/products/product-traits/list-product-traits"},{"title":"Add product trait","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/products/{gtin}/traits","href":"/api-reference/products/product-traits/add-product-trait"},{"title":"Remove product trait","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/products/{gtin}/traits/{trait_id}","href":"/api-reference/products/product-traits/remove-product-trait"}]},{"group":"Firmware","pages":[{"title":"List firmware","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/firmware","href":"/api-reference/products/firmware/list-firmware"},{"title":"Create firmware","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json post /products/api/v1/firmware","href":"/api-reference/products/firmware/create-firmware"},{"title":"Get firmware","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json get /products/api/v1/firmware/{firmware_id}","href":"/api-reference/products/firmware/get-firmware"},{"title":"Delete firmware","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json delete /products/api/v1/firmware/{firmware_id}","href":"/api-reference/products/firmware/delete-firmware"},{"title":"Update firmware","deprecated":null,"version":null,"openapi":"/openapi/openapi-products.json patch /products/api/v1/firmware/{firmware_id}","href":"/api-reference/products/firmware/update-firmware"}]}]},{"group":"Brands","pages":[{"group":"Brands","pages":[{"title":"List brands","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands","href":"/api-reference/brands/brands/list-brands"},{"title":"Create brand","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands","href":"/api-reference/brands/brands/create-brand"},{"title":"Get brand detail","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}","href":"/api-reference/brands/brands/get-brand-detail"},{"title":"Delete brand","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json delete /brands/api/v1/brands/{id}","href":"/api-reference/brands/brands/delete-brand"},{"title":"Update brand","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json patch /brands/api/v1/brands/{id}","href":"/api-reference/brands/brands/update-brand"},{"title":"Claim brand for organization","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/claim","href":"/api-reference/brands/brands/claim-brand-for-organization"},{"title":"Upload brand logo","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/logo","href":"/api-reference/brands/brands/upload-brand-logo"}]},{"group":"Brand GLNs","pages":[{"title":"List brand GLNs","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/glns","href":"/api-reference/brands/brand-glns/list-brand-glns"},{"title":"Link a GLN to a brand","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/glns","href":"/api-reference/brands/brand-glns/link-a-gln-to-a-brand"},{"title":"Get a brand GLN","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/glns/{gln_id}","href":"/api-reference/brands/brand-glns/get-a-brand-gln"},{"title":"Unlink a GLN from a brand","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json delete /brands/api/v1/brands/{id}/glns/{gln_id}","href":"/api-reference/brands/brand-glns/unlink-a-gln-from-a-brand"},{"title":"Render a brand GLN's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/glns/{gln_id}/barcode","href":"/api-reference/brands/brand-glns/render-a-brand-glns-barcode"},{"title":"Make a GLN the brand's primary","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/glns/{gln_id}/primary","href":"/api-reference/brands/brand-glns/make-a-gln-the-brands-primary"}]},{"group":"Brand locations","pages":[{"title":"List brand locations","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/locations","href":"/api-reference/brands/brand-locations/list-brand-locations"},{"title":"Add a brand location","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/locations","href":"/api-reference/brands/brand-locations/add-a-brand-location"},{"title":"Get a brand location","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/locations/{location_id}","href":"/api-reference/brands/brand-locations/get-a-brand-location"},{"title":"Delete a brand location","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json delete /brands/api/v1/brands/{id}/locations/{location_id}","href":"/api-reference/brands/brand-locations/delete-a-brand-location"},{"title":"Update a brand location","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json patch /brands/api/v1/brands/{id}/locations/{location_id}","href":"/api-reference/brands/brand-locations/update-a-brand-location"}]},{"group":"Brand editors","pages":[{"title":"List brand editors","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/editors","href":"/api-reference/brands/brand-editors/list-brand-editors"},{"title":"Grant brand editor access","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/editors","href":"/api-reference/brands/brand-editors/grant-brand-editor-access"},{"title":"Revoke brand editor access","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json delete /brands/api/v1/brands/{id}/editors/{grant_id}","href":"/api-reference/brands/brand-editors/revoke-brand-editor-access"}]},{"group":"Brand media intake","pages":[{"title":"Get the brand's media intake address","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/media-intake-email","href":"/api-reference/brands/brand-media-intake/get-the-brands-media-intake-address"},{"title":"Set or clear the brand's media intake address","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json put /brands/api/v1/brands/{id}/media-intake-email","href":"/api-reference/brands/brand-media-intake/set-or-clear-the-brands-media-intake-address"}]},{"group":"Brand assets","pages":[{"title":"List brand assets","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/assets","href":"/api-reference/brands/brand-assets/list-brand-assets"},{"title":"Upload a brand asset","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/assets","href":"/api-reference/brands/brand-assets/upload-a-brand-asset"},{"title":"Get a brand asset","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/assets/{asset_id}","href":"/api-reference/brands/brand-assets/get-a-brand-asset"},{"title":"Delete a brand asset","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json delete /brands/api/v1/brands/{id}/assets/{asset_id}","href":"/api-reference/brands/brand-assets/delete-a-brand-asset"},{"title":"Update a brand asset","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json patch /brands/api/v1/brands/{id}/assets/{asset_id}","href":"/api-reference/brands/brand-assets/update-a-brand-asset"}]},{"group":"Brand video pages","pages":[{"title":"List brand video pages","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/video-pages","href":"/api-reference/brands/brand-video-pages/list-brand-video-pages"},{"title":"Create a brand video page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/video-pages","href":"/api-reference/brands/brand-video-pages/create-a-brand-video-page"},{"title":"Get a brand video page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/video-pages/{page_id}","href":"/api-reference/brands/brand-video-pages/get-a-brand-video-page"},{"title":"Delete a brand video page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json delete /brands/api/v1/brands/{id}/video-pages/{page_id}","href":"/api-reference/brands/brand-video-pages/delete-a-brand-video-page"},{"title":"Update a brand video page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json patch /brands/api/v1/brands/{id}/video-pages/{page_id}","href":"/api-reference/brands/brand-video-pages/update-a-brand-video-page"}]},{"group":"Brand story pages","pages":[{"title":"List brand story pages","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/story-pages","href":"/api-reference/brands/brand-story-pages/list-brand-story-pages"},{"title":"Create a brand story page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/story-pages","href":"/api-reference/brands/brand-story-pages/create-a-brand-story-page"},{"title":"Get a brand story page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/story-pages/{page_id}","href":"/api-reference/brands/brand-story-pages/get-a-brand-story-page"},{"title":"Delete a brand story page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json delete /brands/api/v1/brands/{id}/story-pages/{page_id}","href":"/api-reference/brands/brand-story-pages/delete-a-brand-story-page"},{"title":"Update a brand story page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json patch /brands/api/v1/brands/{id}/story-pages/{page_id}","href":"/api-reference/brands/brand-story-pages/update-a-brand-story-page"}]},{"group":"Brand link pages","pages":[{"title":"List brand link pages","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/link-pages","href":"/api-reference/brands/brand-link-pages/list-brand-link-pages"},{"title":"Create a brand link page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/brands/{id}/link-pages","href":"/api-reference/brands/brand-link-pages/create-a-brand-link-page"},{"title":"Get a brand link page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/brands/{id}/link-pages/{page_id}","href":"/api-reference/brands/brand-link-pages/get-a-brand-link-page"},{"title":"Delete a brand link page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json delete /brands/api/v1/brands/{id}/link-pages/{page_id}","href":"/api-reference/brands/brand-link-pages/delete-a-brand-link-page"},{"title":"Update a brand link page","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json patch /brands/api/v1/brands/{id}/link-pages/{page_id}","href":"/api-reference/brands/brand-link-pages/update-a-brand-link-page"}]},{"group":"Brand Locator (Public)","pages":[{"title":"Find stores carrying a brand","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/public/brands/{brand_id}/locator","href":"/api-reference/brands/brand-locator-public/find-stores-carrying-a-brand"},{"title":"List a brand's products (locator catalog)","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/public/brands/{brand_id}/catalog","href":"/api-reference/brands/brand-locator-public/list-a-brands-products-locator-catalog"},{"title":"Approximate caller location","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/public/geo","href":"/api-reference/brands/brand-locator-public/approximate-caller-location"},{"title":"Geocode a free-text address","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json get /brands/api/v1/public/geocode","href":"/api-reference/brands/brand-locator-public/geocode-a-free-text-address"},{"title":"Track brand locator widget events","deprecated":null,"version":null,"openapi":"/openapi/openapi-brands.json post /brands/api/v1/public/widget-events","href":"/api-reference/brands/brand-locator-public/track-brand-locator-widget-events"}]}]},{"group":"Locations","pages":[{"group":"Store Locator (Public)","pages":[{"title":"Find nearby locations","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json get /locations/api/v1/public/locations","href":"/api-reference/locations/store-locator-public/find-nearby-locations"},{"title":"Approximate caller location","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json get /locations/api/v1/public/geo","href":"/api-reference/locations/store-locator-public/approximate-caller-location"},{"title":"Geocode a free-text address","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json get /locations/api/v1/public/geocode","href":"/api-reference/locations/store-locator-public/geocode-a-free-text-address"},{"title":"Track widget analytics events","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json post /locations/api/v1/public/widget-events","href":"/api-reference/locations/store-locator-public/track-widget-analytics-events"}]},{"group":"Countries","pages":[{"title":"Resolve a coordinate to a country","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json get /locations/api/v1/countries/resolve","href":"/api-reference/locations/countries/resolve-a-coordinate-to-a-country"}]},{"group":"Locations","pages":[{"title":"List places","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json get /locations/api/v1/organizations/{organization_id}/places","href":"/api-reference/locations/locations/list-places"},{"title":"Add a place","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json post /locations/api/v1/organizations/{organization_id}/places","href":"/api-reference/locations/locations/add-a-place"},{"title":"Get a place","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json get /locations/api/v1/organizations/{organization_id}/places/{place_id}","href":"/api-reference/locations/locations/get-a-place"},{"title":"Delete a place","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json delete /locations/api/v1/organizations/{organization_id}/places/{place_id}","href":"/api-reference/locations/locations/delete-a-place"},{"title":"Update a place","deprecated":null,"version":null,"openapi":"/openapi/openapi-locations.json patch /locations/api/v1/organizations/{organization_id}/places/{place_id}","href":"/api-reference/locations/locations/update-a-place"}]}]},{"group":"Retailers","pages":[{"group":"Retailers","pages":[{"title":"List retailers","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/retailers","href":"/api-reference/retailers/retailers/list-retailers"},{"title":"Create retailer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/organizations/{organization_id}/retailers","href":"/api-reference/retailers/retailers/create-retailer"},{"title":"Get retailer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/retailers/{retailer_id}","href":"/api-reference/retailers/retailers/get-retailer"},{"title":"Delete retailer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json delete /retailers/api/v1/retailers/{retailer_id}","href":"/api-reference/retailers/retailers/delete-retailer"},{"title":"Update retailer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json patch /retailers/api/v1/retailers/{retailer_id}","href":"/api-reference/retailers/retailers/update-retailer"}]},{"group":"In-store Offers","pages":[{"title":"List in-store offers","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/organizations/{organization_id}/in-store-offers","href":"/api-reference/retailers/in-store-offers/list-in-store-offers"},{"title":"Create in-store offer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/organizations/{organization_id}/in-store-offers","href":"/api-reference/retailers/in-store-offers/create-in-store-offer"},{"title":"Get in-store offer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/in-store-offers/{offer_id}","href":"/api-reference/retailers/in-store-offers/get-in-store-offer"},{"title":"Update in-store offer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json put /retailers/api/v1/in-store-offers/{offer_id}","href":"/api-reference/retailers/in-store-offers/update-in-store-offer"},{"title":"Delete in-store offer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json delete /retailers/api/v1/in-store-offers/{offer_id}","href":"/api-reference/retailers/in-store-offers/delete-in-store-offer"}]},{"group":"Online Offers","pages":[{"title":"List online offers","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/organizations/{organization_id}/online-offers","href":"/api-reference/retailers/online-offers/list-online-offers"},{"title":"Create online offer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/organizations/{organization_id}/online-offers","href":"/api-reference/retailers/online-offers/create-online-offer"},{"title":"Get online offer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/online-offers/{offer_id}","href":"/api-reference/retailers/online-offers/get-online-offer"},{"title":"Update online offer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json put /retailers/api/v1/online-offers/{offer_id}","href":"/api-reference/retailers/online-offers/update-online-offer"},{"title":"Delete online offer","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json delete /retailers/api/v1/online-offers/{offer_id}","href":"/api-reference/retailers/online-offers/delete-online-offer"}]},{"group":"In-store Offer Promotions","pages":[{"title":"List in-store offer promotions","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/in-store-offers/{offer_id}/promotions","href":"/api-reference/retailers/in-store-offer-promotions/list-in-store-offer-promotions"},{"title":"Get in-store promotion","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/in-store-promotions/{promotion_id}","href":"/api-reference/retailers/in-store-offer-promotions/get-in-store-promotion"},{"title":"Update in-store offer promotion","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json put /retailers/api/v1/in-store-promotions/{promotion_id}","href":"/api-reference/retailers/in-store-offer-promotions/update-in-store-offer-promotion"},{"title":"Delete in-store offer promotion","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json delete /retailers/api/v1/in-store-promotions/{promotion_id}","href":"/api-reference/retailers/in-store-offer-promotions/delete-in-store-offer-promotion"},{"title":"Create in-store offer promotion","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/in-store-promotions","href":"/api-reference/retailers/in-store-offer-promotions/create-in-store-offer-promotion"}]},{"group":"Online Offer Promotions","pages":[{"title":"List online offer promotions","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/online-offers/{offer_id}/promotions","href":"/api-reference/retailers/online-offer-promotions/list-online-offer-promotions"},{"title":"Get online promotion","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/online-promotions/{promotion_id}","href":"/api-reference/retailers/online-offer-promotions/get-online-promotion"},{"title":"Update online offer promotion","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json put /retailers/api/v1/online-promotions/{promotion_id}","href":"/api-reference/retailers/online-offer-promotions/update-online-offer-promotion"},{"title":"Delete online offer promotion","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json delete /retailers/api/v1/online-promotions/{promotion_id}","href":"/api-reference/retailers/online-offer-promotions/delete-online-offer-promotion"},{"title":"Create online offer promotion","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/online-promotions","href":"/api-reference/retailers/online-offer-promotions/create-online-offer-promotion"}]},{"group":"Retailer Stores","pages":[{"title":"Upsert physical stores in bulk","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/retailers/{retailer_id}/stores/batch","href":"/api-reference/retailers/retailer-stores/upsert-physical-stores-in-bulk"},{"title":"List a retailer's physical stores","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/retailers/{retailer_id}/stores","href":"/api-reference/retailers/retailer-stores/list-a-retailers-physical-stores"},{"title":"Upsert one physical store","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/retailers/{retailer_id}/stores","href":"/api-reference/retailers/retailer-stores/upsert-one-physical-store"},{"title":"Get one physical store","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/retailers/{retailer_id}/stores/{store_id}","href":"/api-reference/retailers/retailer-stores/get-one-physical-store"},{"title":"Retire one physical store","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json delete /retailers/api/v1/retailers/{retailer_id}/stores/{store_id}","href":"/api-reference/retailers/retailer-stores/retire-one-physical-store"},{"title":"Update one physical store","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json patch /retailers/api/v1/retailers/{retailer_id}/stores/{store_id}","href":"/api-reference/retailers/retailer-stores/update-one-physical-store"}]},{"group":"Retailer Listings","pages":[{"title":"Upsert retailer product listings in bulk","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/retailers/{retailer_id}/listings/batch","href":"/api-reference/retailers/retailer-listings/upsert-retailer-product-listings-in-bulk"},{"title":"List a retailer's product listings","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/retailers/{retailer_id}/listings","href":"/api-reference/retailers/retailer-listings/list-a-retailers-product-listings"},{"title":"Upsert one retailer product listing","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/retailers/{retailer_id}/listings","href":"/api-reference/retailers/retailer-listings/upsert-one-retailer-product-listing"},{"title":"List a retailer's online storefronts","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/retailers/{retailer_id}/storefronts","href":"/api-reference/retailers/retailer-listings/list-a-retailers-online-storefronts"},{"title":"Declare a retailer web property","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json post /retailers/api/v1/retailers/{retailer_id}/storefronts","href":"/api-reference/retailers/retailer-listings/declare-a-retailer-web-property"},{"title":"Get one retailer product listing","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/retailers/{retailer_id}/listings/{listing_id}","href":"/api-reference/retailers/retailer-listings/get-one-retailer-product-listing"},{"title":"Drop one product from a retailer's catalog","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json delete /retailers/api/v1/retailers/{retailer_id}/listings/{listing_id}","href":"/api-reference/retailers/retailer-listings/drop-one-product-from-a-retailers-catalog"},{"title":"Update one retailer product listing","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json patch /retailers/api/v1/retailers/{retailer_id}/listings/{listing_id}","href":"/api-reference/retailers/retailer-listings/update-one-retailer-product-listing"},{"title":"Get one online storefront","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json get /retailers/api/v1/retailers/{retailer_id}/storefronts/{storefront_id}","href":"/api-reference/retailers/retailer-listings/get-one-online-storefront"},{"title":"Retire one online storefront","deprecated":null,"version":null,"openapi":"/openapi/openapi-retailers.json delete /retailers/api/v1/retailers/{retailer_id}/storefronts/{storefront_id}","href":"/api-reference/retailers/retailer-listings/retire-one-online-storefront"}]}]},{"group":"Search","pages":[{"group":"Search","pages":[{"title":"Search the catalog","deprecated":null,"version":null,"openapi":"/openapi/openapi-search.json get /search/api/v1/search","href":"/api-reference/search/search/search-the-catalog"},{"title":"Search for a product and where to buy it nearby","deprecated":null,"version":null,"openapi":"/openapi/openapi-search.json get /search/api/v1/search/products","href":"/api-reference/search/search/search-for-a-product-and-where-to-buy-it-nearby"},{"title":"Report a post-search interaction (click, radius expand, etc.) for CTR-by-position measurement","deprecated":null,"version":null,"openapi":"/openapi/openapi-search.json post /search/api/v1/search/click","href":"/api-reference/search/search/report-a-post-search-interaction-click-radius-expand-etc-for-ctr-by-position-measurement"},{"title":"Open a conversational search session","deprecated":null,"version":null,"openapi":"/openapi/openapi-search.json post /search/api/v1/search/session","href":"/api-reference/search/search/open-a-conversational-search-session"},{"title":"Submit a follow-up query within a session","deprecated":null,"version":null,"openapi":"/openapi/openapi-search.json post /search/api/v1/search/session/{session_id}/query","href":"/api-reference/search/search/submit-a-follow-up-query-within-a-session"},{"title":"Remove a constraint from the session","deprecated":null,"version":null,"openapi":"/openapi/openapi-search.json delete /search/api/v1/search/session/{session_id}/constraints/{key}","href":"/api-reference/search/search/remove-a-constraint-from-the-session"},{"title":"Clear a search session","deprecated":null,"version":null,"openapi":"/openapi/openapi-search.json delete /search/api/v1/search/session/{session_id}","href":"/api-reference/search/search/clear-a-search-session"}]}]},{"group":"GS1 Digital Link","pages":[{"group":"Resolver","pages":[{"title":"List resolution rules","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/resolution-rules","href":"/api-reference/resolver/resolver/list-resolution-rules"},{"title":"Create resolution rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/resolution-rules","href":"/api-reference/resolver/resolver/create-resolution-rule"},{"title":"Get the default resolution rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/resolution-rules/default","href":"/api-reference/resolver/resolver/get-the-default-resolution-rule"},{"title":"Reorder resolution rules","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/resolution-rules/reorder","href":"/api-reference/resolver/resolver/reorder-resolution-rules"},{"title":"Get resolution rule summary","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/resolution-rules/summary","href":"/api-reference/resolver/resolver/get-resolution-rule-summary"},{"title":"Get resolution rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/resolution-rules/{rule_id}","href":"/api-reference/resolver/resolver/get-resolution-rule"},{"title":"Update resolution rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json put /resolver/api/v1/resolution-rules/{rule_id}","href":"/api-reference/resolver/resolver/update-resolution-rule"},{"title":"Delete resolution rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json delete /resolver/api/v1/resolution-rules/{rule_id}","href":"/api-reference/resolver/resolver/delete-resolution-rule"}]},{"group":"Verification","pages":[{"title":"Verify a serialized GTIN (gs1:verificationService)","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/verify/01/{gtin}/21/{serial_number}","href":"/api-reference/resolver/verification/verify-a-serialized-gtin-gs1:verificationservice"}]},{"group":"Custom URLs","pages":[{"title":"List custom URLs","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/custom-urls","href":"/api-reference/resolver/custom-urls/list-custom-urls"},{"title":"Create custom URL","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/custom-urls","href":"/api-reference/resolver/custom-urls/create-custom-url"},{"title":"Get custom URL","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/custom-urls/{custom_url_id}","href":"/api-reference/resolver/custom-urls/get-custom-url"},{"title":"Update custom URL","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json put /resolver/api/v1/custom-urls/{custom_url_id}","href":"/api-reference/resolver/custom-urls/update-custom-url"},{"title":"Delete custom URL","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json delete /resolver/api/v1/custom-urls/{custom_url_id}","href":"/api-reference/resolver/custom-urls/delete-custom-url"},{"title":"Retry custom-URL health check","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/custom-urls/{custom_url_id}/retry","href":"/api-reference/resolver/custom-urls/retry-custom-url-health-check"}]},{"group":"Resolver Configuration","pages":[{"title":"Get resolver settings","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/resolver-settings","href":"/api-reference/resolver/resolver-configuration/get-resolver-settings"},{"title":"Update resolver settings","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json put /resolver/api/v1/resolver-settings","href":"/api-reference/resolver/resolver-configuration/update-resolver-settings"},{"title":"Get product resolver behavior","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/products/{gtin}/resolver-behavior","href":"/api-reference/resolver/resolver-configuration/get-product-resolver-behavior"},{"title":"Update product resolver behavior","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json patch /resolver/api/v1/products/{gtin}/resolver-behavior","href":"/api-reference/resolver/resolver-configuration/update-product-resolver-behavior"},{"title":"Set product resolver status","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json put /resolver/api/v1/products/{gtin}/resolver-enabled","href":"/api-reference/resolver/resolver-configuration/set-product-resolver-status"}]},{"group":"Link-type sections","pages":[{"title":"List link-type documents","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/link-type-documents","href":"/api-reference/resolver/link-type-sections/list-link-type-documents"},{"title":"Create link-type document","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/link-type-documents","href":"/api-reference/resolver/link-type-sections/create-link-type-document"},{"title":"Get link-type document","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/link-type-documents/{document_id}","href":"/api-reference/resolver/link-type-sections/get-link-type-document"},{"title":"Delete link-type document","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json delete /resolver/api/v1/link-type-documents/{document_id}","href":"/api-reference/resolver/link-type-sections/delete-link-type-document"},{"title":"Update link-type document","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json patch /resolver/api/v1/link-type-documents/{document_id}","href":"/api-reference/resolver/link-type-sections/update-link-type-document"},{"title":"List link-type coupons","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/link-type-coupons","href":"/api-reference/resolver/link-type-sections/list-link-type-coupons"},{"title":"Create link-type coupon","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/link-type-coupons","href":"/api-reference/resolver/link-type-sections/create-link-type-coupon"},{"title":"Get link-type coupon","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/link-type-coupons/{coupon_id}","href":"/api-reference/resolver/link-type-sections/get-link-type-coupon"},{"title":"Delete link-type coupon","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json delete /resolver/api/v1/link-type-coupons/{coupon_id}","href":"/api-reference/resolver/link-type-sections/delete-link-type-coupon"},{"title":"Update link-type coupon","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json patch /resolver/api/v1/link-type-coupons/{coupon_id}","href":"/api-reference/resolver/link-type-sections/update-link-type-coupon"},{"title":"List link-type service relations","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/link-type-service-relations","href":"/api-reference/resolver/link-type-sections/list-link-type-service-relations"},{"title":"Create link-type service relation","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/link-type-service-relations","href":"/api-reference/resolver/link-type-sections/create-link-type-service-relation"},{"title":"Get link-type service relation","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/link-type-service-relations/{service_relation_id}","href":"/api-reference/resolver/link-type-sections/get-link-type-service-relation"},{"title":"Delete link-type service relation","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json delete /resolver/api/v1/link-type-service-relations/{service_relation_id}","href":"/api-reference/resolver/link-type-sections/delete-link-type-service-relation"},{"title":"Update link-type service relation","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json patch /resolver/api/v1/link-type-service-relations/{service_relation_id}","href":"/api-reference/resolver/link-type-sections/update-link-type-service-relation"}]},{"group":"Link-type documents","pages":[{"title":"Render a GS1 document's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/link-type-documents/{document_id}/barcode","href":"/api-reference/resolver/link-type-documents/render-a-gs1-documents-barcode"}]},{"group":"Link-type coupons","pages":[{"title":"Render a GS1 coupon's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/link-type-coupons/{coupon_id}/barcode","href":"/api-reference/resolver/link-type-coupons/render-a-gs1-coupons-barcode"}]},{"group":"Link-type service relations","pages":[{"title":"Render a GS1 service relation's barcode","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/link-type-service-relations/{service_relation_id}/barcode","href":"/api-reference/resolver/link-type-service-relations/render-a-gs1-service-relations-barcode"}]},{"group":"Routing rules","pages":[{"title":"List routing rules","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/routing-rules","href":"/api-reference/resolver/routing-rules/list-routing-rules"},{"title":"Create routing rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/routing-rules","href":"/api-reference/resolver/routing-rules/create-routing-rule"},{"title":"Get routing rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/routing-rules/{rule_id}","href":"/api-reference/resolver/routing-rules/get-routing-rule"},{"title":"Update routing rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json patch /resolver/api/v1/routing-rules/{rule_id}","href":"/api-reference/resolver/routing-rules/update-routing-rule"},{"title":"Activate routing rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/routing-rules/{rule_id}/activate","href":"/api-reference/resolver/routing-rules/activate-routing-rule"},{"title":"Deactivate routing rule","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/routing-rules/{rule_id}/deactivate","href":"/api-reference/resolver/routing-rules/deactivate-routing-rule"}]},{"group":"Lot groups","pages":[{"title":"List lot groups","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/lot-groups","href":"/api-reference/resolver/lot-groups/list-lot-groups"},{"title":"Create lot group","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/lot-groups","href":"/api-reference/resolver/lot-groups/create-lot-group"},{"title":"Get lot group","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/lot-groups/{group_id}","href":"/api-reference/resolver/lot-groups/get-lot-group"},{"title":"List a lot group's lots","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/lot-groups/{group_id}/members","href":"/api-reference/resolver/lot-groups/list-a-lot-groups-lots"},{"title":"Add lots to a lot group","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/lot-groups/{group_id}/members","href":"/api-reference/resolver/lot-groups/add-lots-to-a-lot-group"},{"title":"Remove a lot from a lot group","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json delete /resolver/api/v1/lot-groups/{group_id}/members/{lot_id}","href":"/api-reference/resolver/lot-groups/remove-a-lot-from-a-lot-group"}]},{"group":"Serial groups","pages":[{"title":"List serial groups","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/serial-groups","href":"/api-reference/resolver/serial-groups/list-serial-groups"},{"title":"Create serial group","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/serial-groups","href":"/api-reference/resolver/serial-groups/create-serial-group"},{"title":"Get serial group","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/serial-groups/{group_id}","href":"/api-reference/resolver/serial-groups/get-serial-group"},{"title":"List a serial group's serials","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/serial-groups/{group_id}/members","href":"/api-reference/resolver/serial-groups/list-a-serial-groups-serials"},{"title":"Add serials to a serial group","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/serial-groups/{group_id}/members","href":"/api-reference/resolver/serial-groups/add-serials-to-a-serial-group"},{"title":"Remove a serial from a serial group","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json delete /resolver/api/v1/serial-groups/{group_id}/members/{serial_id}","href":"/api-reference/resolver/serial-groups/remove-a-serial-from-a-serial-group"}]},{"group":"Resolver Custom Hostnames","pages":[{"title":"List custom resolver hostnames","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/custom-hostnames","href":"/api-reference/resolver/resolver-custom-hostnames/list-custom-resolver-hostnames"},{"title":"Register a custom resolver hostname","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/custom-hostnames","href":"/api-reference/resolver/resolver-custom-hostnames/register-a-custom-resolver-hostname"},{"title":"Verify a custom resolver hostname","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/custom-hostnames/verify","href":"/api-reference/resolver/resolver-custom-hostnames/verify-a-custom-resolver-hostname"},{"title":"Disable a custom resolver hostname","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/custom-hostnames/disable","href":"/api-reference/resolver/resolver-custom-hostnames/disable-a-custom-resolver-hostname"},{"title":"Set a custom resolver hostname's unresolved-scan fallback policy","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json post /resolver/api/v1/custom-hostnames/fallback-policy","href":"/api-reference/resolver/resolver-custom-hostnames/set-a-custom-resolver-hostnames-unresolved-scan-fallback-policy"},{"title":"Get a custom resolver hostname","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/custom-hostnames/{hostname}","href":"/api-reference/resolver/resolver-custom-hostnames/get-a-custom-resolver-hostname"},{"title":"Custom-hostname onboarding nudge","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/custom-hostname-nudge","href":"/api-reference/resolver/resolver-custom-hostnames/custom-hostname-onboarding-nudge"}]},{"group":"GS1 Primitives (Public)","pages":[{"title":"Validate a GS1 Digital Link URI against the specification","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/public/gs1/validate","href":"/api-reference/resolver/gs1-primitives-public/validate-a-gs1-digital-link-uri-against-the-specification"},{"title":"Parse a GS1 Digital Link URI into its Application Identifiers","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/public/gs1/parse","href":"/api-reference/resolver/gs1-primitives-public/parse-a-gs1-digital-link-uri-into-its-application-identifiers"},{"title":"Compose a GS1 Digital Link URI from Application Identifiers","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/public/gs1/build","href":"/api-reference/resolver/gs1-primitives-public/compose-a-gs1-digital-link-uri-from-application-identifiers"},{"title":"Compress Application Identifiers into a GS1 Digital Link path segment","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/public/gs1/compress","href":"/api-reference/resolver/gs1-primitives-public/compress-application-identifiers-into-a-gs1-digital-link-path-segment"},{"title":"Decode a GS1-compressed Digital Link path segment","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/public/gs1/decompress","href":"/api-reference/resolver/gs1-primitives-public/decode-a-gs1-compressed-digital-link-path-segment"},{"title":"Verify a GS1 key's check digit and identify its prefix","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/public/gs1/analyze","href":"/api-reference/resolver/gs1-primitives-public/verify-a-gs1-keys-check-digit-and-identify-its-prefix"},{"title":"Which Application Identifiers belong on the pack, per scan context","deprecated":null,"version":null,"openapi":"/openapi/openapi-resolver.json get /resolver/api/v1/public/gs1/placement","href":"/api-reference/resolver/gs1-primitives-public/which-application-identifiers-belong-on-the-pack-per-scan-context"}]}]},{"group":"EPCIS 2.0","pages":[{"group":"EPCIS 2.0","pages":[{"title":"List capture jobs","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/capture","href":"/api-reference/epcis/epcis-20/list-capture-jobs"},{"title":"Capture EPCIS events","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json post /epcis/api/2.0/capture","href":"/api-reference/epcis/epcis-20/capture-epcis-events"},{"title":"Discover /capture capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/capture","href":"/api-reference/epcis/epcis-20/discover-capture-capabilities"},{"title":"Get capture job","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/capture/{capture_id}","href":"/api-reference/epcis/epcis-20/get-capture-job"},{"title":"Discover /capture/{captureID} capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/capture/{capture_id}","href":"/api-reference/epcis/epcis-20/discover-capture-capabilities-1"},{"title":"Query EPCIS events","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/events","href":"/api-reference/epcis/epcis-20/query-epcis-events"},{"title":"Discover /events capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/events","href":"/api-reference/epcis/epcis-20/discover-events-capabilities"},{"title":"Get EPCIS event by ID","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/events/{event_id}","href":"/api-reference/epcis/epcis-20/get-epcis-event-by-id"},{"title":"Discover /events/{eventID} capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/events/{event_id}","href":"/api-reference/epcis/epcis-20/discover-events-capabilities-1"},{"title":"List supported event types","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/eventTypes","href":"/api-reference/epcis/epcis-20/list-supported-event-types"},{"title":"Discover /eventTypes capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/eventTypes","href":"/api-reference/epcis/epcis-20/discover-eventtypes-capabilities"},{"title":"Discover service-root capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/","href":"/api-reference/epcis/epcis-20/discover-service-root-capabilities"},{"title":"Capability declaration","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/capability","href":"/api-reference/epcis/epcis-20/capability-declaration"},{"title":"Enqueue an FSMA 204 traceability export for one lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/traceability/lots/{lot_id}/fda-export","href":"/api-reference/epcis/epcis-20/enqueue-an-fsma-204-traceability-export-for-one-lot"},{"title":"Quantified downstream footprint for one lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/traceability/lots/{lot_id}/blast-radius","href":"/api-reference/epcis/epcis-20/quantified-downstream-footprint-for-one-lot"},{"title":"Historical KDE/CTE snapshot for one lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/traceability/lots/{lot_id}/as-of","href":"/api-reference/epcis/epcis-20/historical-kdecte-snapshot-for-one-lot"},{"title":"One-click FSMA 204 readiness score for one lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/traceability/lots/{lot_id}/fsma-204-readiness","href":"/api-reference/epcis/epcis-20/one-click-fsma-204-readiness-score-for-one-lot"},{"title":"List named queries","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/queries","href":"/api-reference/epcis/epcis-20/list-named-queries"},{"title":"Create a named query","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json post /epcis/api/2.0/queries","href":"/api-reference/epcis/epcis-20/create-a-named-query"},{"title":"Discover /queries capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/queries","href":"/api-reference/epcis/epcis-20/discover-queries-capabilities"},{"title":"Get a named query","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/queries/{query_name}","href":"/api-reference/epcis/epcis-20/get-a-named-query"},{"title":"Delete a named query","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json delete /epcis/api/2.0/queries/{query_name}","href":"/api-reference/epcis/epcis-20/delete-a-named-query"},{"title":"Discover /queries/{queryName} capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/queries/{query_name}","href":"/api-reference/epcis/epcis-20/discover-queries-capabilities-1"},{"title":"Run a named query","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/queries/{query_name}/events","href":"/api-reference/epcis/epcis-20/run-a-named-query"},{"title":"Discover /queries/{queryName}/events capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/queries/{query_name}/events","href":"/api-reference/epcis/epcis-20/discover-queries-events-capabilities"},{"title":"List a named query's subscriptions","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/queries/{query_name}/subscriptions","href":"/api-reference/epcis/epcis-20/list-a-named-querys-subscriptions"},{"title":"Subscribe to a named query","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json post /epcis/api/2.0/queries/{query_name}/subscriptions","href":"/api-reference/epcis/epcis-20/subscribe-to-a-named-query"},{"title":"Discover /queries/{queryName}/subscriptions capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/queries/{query_name}/subscriptions","href":"/api-reference/epcis/epcis-20/discover-queries-subscriptions-capabilities"},{"title":"Get a subscription","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/queries/{query_name}/subscriptions/{subscription_id}","href":"/api-reference/epcis/epcis-20/get-a-subscription"},{"title":"Delete a subscription","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json delete /epcis/api/2.0/queries/{query_name}/subscriptions/{subscription_id}","href":"/api-reference/epcis/epcis-20/delete-a-subscription"},{"title":"Discover /queries/{queryName}/subscriptions/{subscriptionID} capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/queries/{query_name}/subscriptions/{subscription_id}","href":"/api-reference/epcis/epcis-20/discover-queries-subscriptions-capabilities-1"},{"title":"Query EPCIS events of one event type","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/eventTypes/{eventType}/events","href":"/api-reference/epcis/epcis-20/query-epcis-events-of-one-event-type"},{"title":"Discover /eventTypes/{eventType}/events capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/eventTypes/{eventType}/events","href":"/api-reference/epcis/epcis-20/discover-eventtypes-events-capabilities"},{"title":"Get the sub-resources of an event type","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/eventTypes/{eventType}","href":"/api-reference/epcis/epcis-20/get-the-sub-resources-of-an-event-type"},{"title":"Discover /eventTypes/{eventType} capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/eventTypes/{eventType}","href":"/api-reference/epcis/epcis-20/discover-eventtypes-capabilities-1"},{"title":"List EPCs","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/epcs","href":"/api-reference/epcis/epcis-20/list-epcs"},{"title":"Discover /epcs capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/epcs","href":"/api-reference/epcis/epcis-20/discover-epcs-capabilities"},{"title":"Query EPCIS events naming one EPC","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/epcs/{epc}/events","href":"/api-reference/epcis/epcis-20/query-epcis-events-naming-one-epc"},{"title":"Discover /epcs/{epc}/events capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/epcs/{epc}/events","href":"/api-reference/epcis/epcis-20/discover-epcs-events-capabilities"},{"title":"Get the sub-resources of an EPC","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/epcs/{epc}","href":"/api-reference/epcis/epcis-20/get-the-sub-resources-of-an-epc"},{"title":"Discover /epcs/{epc} capabilities","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json options /epcis/api/2.0/epcs/{epc}","href":"/api-reference/epcis/epcis-20/discover-epcs-capabilities-1"},{"title":"Verify a serialized unit for returns","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/verification/serial","href":"/api-reference/epcis/epcis-20/verify-a-serialized-unit-for-returns"},{"title":"Record an accepted return of a serialized unit","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json post /epcis/api/2.0/verification/returns","href":"/api-reference/epcis/epcis-20/record-an-accepted-return-of-a-serialized-unit"},{"title":"Fraud-blocked returns report","deprecated":null,"version":null,"openapi":"/openapi/openapi-epcis.json get /epcis/api/2.0/verification/report","href":"/api-reference/epcis/epcis-20/fraud-blocked-returns-report"}]}]},{"group":"Integrations","pages":[{"group":"Webhook Endpoints","pages":[{"title":"List webhook endpoints","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json get /integrations/api/v1/webhooks/endpoints/","href":"/api-reference/integrations/webhook-endpoints/list-webhook-endpoints"},{"title":"Create a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json post /integrations/api/v1/webhooks/endpoints/","href":"/api-reference/integrations/webhook-endpoints/create-a-webhook-endpoint"},{"title":"Get a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json get /integrations/api/v1/webhooks/endpoints/{endpoint_id}/","href":"/api-reference/integrations/webhook-endpoints/get-a-webhook-endpoint"},{"title":"Delete a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json delete /integrations/api/v1/webhooks/endpoints/{endpoint_id}/","href":"/api-reference/integrations/webhook-endpoints/delete-a-webhook-endpoint"},{"title":"Update a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json patch /integrations/api/v1/webhooks/endpoints/{endpoint_id}/","href":"/api-reference/integrations/webhook-endpoints/update-a-webhook-endpoint"},{"title":"Rotate signing secret","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json post /integrations/api/v1/webhooks/endpoints/{endpoint_id}/rotate-secret/","href":"/api-reference/integrations/webhook-endpoints/rotate-signing-secret"},{"title":"Send test event","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json post /integrations/api/v1/webhooks/endpoints/{endpoint_id}/test/","href":"/api-reference/integrations/webhook-endpoints/send-test-event"},{"title":"Pause a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json post /integrations/api/v1/webhooks/endpoints/{endpoint_id}/pause/","href":"/api-reference/integrations/webhook-endpoints/pause-a-webhook-endpoint"},{"title":"Resume a paused webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json post /integrations/api/v1/webhooks/endpoints/{endpoint_id}/resume/","href":"/api-reference/integrations/webhook-endpoints/resume-a-paused-webhook-endpoint"},{"title":"Verify endpoint ownership","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json post /integrations/api/v1/webhooks/endpoints/{endpoint_id}/verify/","href":"/api-reference/integrations/webhook-endpoints/verify-endpoint-ownership"}]},{"group":"Webhook Event Catalog","pages":[{"title":"List subscribable event types","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json get /integrations/api/v1/webhooks/event-types/","href":"/api-reference/integrations/webhook-event-catalog/list-subscribable-event-types"}]},{"group":"Webhook Deliveries","pages":[{"title":"List webhook deliveries","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json get /integrations/api/v1/webhooks/deliveries/","href":"/api-reference/integrations/webhook-deliveries/list-webhook-deliveries"},{"title":"Replay a dead-lettered delivery","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json post /integrations/api/v1/webhooks/deliveries/{delivery_id}/replay/","href":"/api-reference/integrations/webhook-deliveries/replay-a-dead-lettered-delivery"}]},{"group":"Webhook Events","pages":[{"title":"Replay events from a cursor (gap-fill on reconnect)","deprecated":null,"version":null,"openapi":"/openapi/openapi-integrations.json get /integrations/api/v1/webhooks/events/","href":"/api-reference/integrations/webhook-events/replay-events-from-a-cursor-gap-fill-on-reconnect"}]}]},{"group":"Billing","pages":[{"group":"Billing","pages":[{"title":"Stripe webhook","deprecated":null,"version":null,"openapi":"/openapi/openapi-billing.json post /billing/api/v1/billing/webhook","href":"/api-reference/billing/billing/stripe-webhook"},{"title":"Create resolver subscription checkout","deprecated":null,"version":null,"openapi":"/openapi/openapi-billing.json post /billing/api/v1/billing/resolver/checkout","href":"/api-reference/billing/billing/create-resolver-subscription-checkout"},{"title":"Cancel resolver subscription","deprecated":null,"version":null,"openapi":"/openapi/openapi-billing.json post /billing/api/v1/billing/resolver/{organization_id}/cancel","href":"/api-reference/billing/billing/cancel-resolver-subscription"},{"title":"Create billing portal session","deprecated":null,"version":null,"openapi":"/openapi/openapi-billing.json post /billing/api/v1/billing/resolver/{organization_id}/portal","href":"/api-reference/billing/billing/create-billing-portal-session"},{"title":"Get resolver billing summary","deprecated":null,"version":null,"openapi":"/openapi/openapi-billing.json get /billing/api/v1/billing/resolver/{organization_id}","href":"/api-reference/billing/billing/get-resolver-billing-summary"},{"title":"List issued invoices","deprecated":null,"version":null,"openapi":"/openapi/openapi-billing.json get /billing/api/v1/billing/resolver/{organization_id}/invoices","href":"/api-reference/billing/billing/list-issued-invoices"}]}]},{"group":"Scanner","pages":[{"group":"Scanner Sessions","pages":[{"title":"List scan sessions","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/sessions","href":"/api-reference/scanner/scanner-sessions/list-scan-sessions"},{"title":"Create a scan session","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/sessions","href":"/api-reference/scanner/scanner-sessions/create-a-scan-session"},{"title":"Get session details","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/sessions/{id}","href":"/api-reference/scanner/scanner-sessions/get-session-details"},{"title":"Poll session status","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/sessions/{id}/status","href":"/api-reference/scanner/scanner-sessions/poll-session-status"},{"title":"End a scan session","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/sessions/{id}/end","href":"/api-reference/scanner/scanner-sessions/end-a-scan-session"}]},{"group":"Scanner Captures","pages":[{"title":"List scan captures","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/captures","href":"/api-reference/scanner/scanner-captures/list-scan-captures"},{"title":"Submit a barcode or QR scan","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/captures","href":"/api-reference/scanner/scanner-captures/submit-a-barcode-or-qr-scan"},{"title":"Get capture status","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/captures/{id}","href":"/api-reference/scanner/scanner-captures/get-capture-status"},{"title":"Retry a failed capture","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/captures/{id}/retry","href":"/api-reference/scanner/scanner-captures/retry-a-failed-capture"}]},{"group":"Scanner Enrichment","pages":[{"title":"List enrichment proposals","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/captures/{id}/proposals","href":"/api-reference/scanner/scanner-enrichment/list-enrichment-proposals"},{"title":"Review an enrichment proposal","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json patch /scanner/api/v1/proposals/{proposal_id}","href":"/api-reference/scanner/scanner-enrichment/review-an-enrichment-proposal"},{"title":"Apply accepted proposals","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/captures/{id}/apply","href":"/api-reference/scanner/scanner-enrichment/apply-accepted-proposals"}]},{"group":"Scanner Photos","pages":[{"title":"Get presigned upload URL","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/sessions/{session_id}/presigned-upload-url","href":"/api-reference/scanner/scanner-photos/get-presigned-upload-url"},{"title":"Reorder product photos","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/sessions/{session_id}/photos/reorder","href":"/api-reference/scanner/scanner-photos/reorder-product-photos"},{"title":"Link unlinked photos to a capture","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/sessions/{session_id}/photos/link-capture","href":"/api-reference/scanner/scanner-photos/link-unlinked-photos-to-a-capture"},{"title":"List product photos","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/sessions/{session_id}/photos","href":"/api-reference/scanner/scanner-photos/list-product-photos"},{"title":"Register a product photo","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/sessions/{session_id}/photos","href":"/api-reference/scanner/scanner-photos/register-a-product-photo"},{"title":"Get a product photo","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/sessions/{session_id}/photos/{photo_id}","href":"/api-reference/scanner/scanner-photos/get-a-product-photo"},{"title":"Delete a product photo","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json delete /scanner/api/v1/sessions/{session_id}/photos/{photo_id}","href":"/api-reference/scanner/scanner-photos/delete-a-product-photo"},{"title":"Update photo classification","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json patch /scanner/api/v1/sessions/{session_id}/photos/{photo_id}","href":"/api-reference/scanner/scanner-photos/update-photo-classification"}]},{"group":"Scanner Upload","pages":[{"title":"Upload a product image","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/captures/upload-image","href":"/api-reference/scanner/scanner-upload/upload-a-product-image"}]},{"group":"Scanner Resolve","pages":[{"title":"Resolve a QR code URL","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/resolve-url","href":"/api-reference/scanner/scanner-resolve/resolve-a-qr-code-url"},{"title":"Save a QR-resolved URL as a product redirect","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json post /scanner/api/v1/captures/{short_id}/save-redirect","href":"/api-reference/scanner/scanner-resolve/save-a-qr-resolved-url-as-a-product-redirect"}]},{"group":"Scanner Freshness","pages":[{"title":"Resolve freshness chip thresholds for a scanned GTIN","deprecated":null,"version":null,"openapi":"/openapi/openapi-scanner.json get /scanner/api/v1/freshness-thresholds","href":"/api-reference/scanner/scanner-freshness/resolve-freshness-chip-thresholds-for-a-scanned-gtin"}]}]},{"group":"Compliance","pages":[{"group":"Compliance","pages":[{"title":"List product recalls","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/products/{gtin}/recalls","href":"/api-reference/compliance/compliance/list-product-recalls"},{"title":"List recalls affecting a specific batch/lot","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/products/{gtin}/batches/{batch}/recalls","href":"/api-reference/compliance/compliance/list-recalls-affecting-a-specific-batchlot"},{"title":"List your brand-issued recalls","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/recalls","href":"/api-reference/compliance/compliance/list-your-brand-issued-recalls"},{"title":"Issue a brand recall","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json post /compliance/api/v1/recalls","href":"/api-reference/compliance/compliance/issue-a-brand-recall"},{"title":"Withdraw a brand recall","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json post /compliance/api/v1/recalls/{recall_id}/withdraw","href":"/api-reference/compliance/compliance/withdraw-a-brand-recall"},{"title":"Recall coverage","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/recalls/coverage","href":"/api-reference/compliance/compliance/recall-coverage"},{"title":"Get a brand-issued recall","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/recalls/{recall_id}","href":"/api-reference/compliance/compliance/get-a-brand-issued-recall"}]},{"group":"FSMA configuration","pages":[{"title":"Get FSMA settings","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/organizations/{organization_id}/fsma-settings","href":"/api-reference/compliance/fsma-configuration/get-fsma-settings"},{"title":"Update FSMA settings","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json patch /compliance/api/v1/organizations/{organization_id}/fsma-settings","href":"/api-reference/compliance/fsma-configuration/update-fsma-settings"},{"title":"Get the retention policy","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/organizations/{organization_id}/retention-policy","href":"/api-reference/compliance/fsma-configuration/get-the-retention-policy"},{"title":"Update the retention policy","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json patch /compliance/api/v1/organizations/{organization_id}/retention-policy","href":"/api-reference/compliance/fsma-configuration/update-the-retention-policy"}]},{"group":"EPCIS capture configuration","pages":[{"title":"List EPCIS capture keys","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/organizations/{organization_id}/capture-keys","href":"/api-reference/compliance/epcis-capture-configuration/list-epcis-capture-keys"},{"title":"Create an EPCIS capture key","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json post /compliance/api/v1/organizations/{organization_id}/capture-keys","href":"/api-reference/compliance/epcis-capture-configuration/create-an-epcis-capture-key"},{"title":"Revoke an EPCIS capture key","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json post /compliance/api/v1/organizations/{organization_id}/capture-keys/{key_id}/revoke","href":"/api-reference/compliance/epcis-capture-configuration/revoke-an-epcis-capture-key"},{"title":"List serialization pools","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/organizations/{organization_id}/serial-pools","href":"/api-reference/compliance/epcis-capture-configuration/list-serialization-pools"},{"title":"Create a serialization pool","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json post /compliance/api/v1/organizations/{organization_id}/serial-pools","href":"/api-reference/compliance/epcis-capture-configuration/create-a-serialization-pool"},{"title":"Activate a serialization pool","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json post /compliance/api/v1/organizations/{organization_id}/serial-pools/{pool_id}/activate","href":"/api-reference/compliance/epcis-capture-configuration/activate-a-serialization-pool"},{"title":"Get the public-page visibility","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json get /compliance/api/v1/organizations/{organization_id}/visibility-config","href":"/api-reference/compliance/epcis-capture-configuration/get-the-public-page-visibility"},{"title":"Update the public-page visibility","deprecated":null,"version":null,"openapi":"/openapi/openapi-compliance.json patch /compliance/api/v1/organizations/{organization_id}/visibility-config","href":"/api-reference/compliance/epcis-capture-configuration/update-the-public-page-visibility"}]}]},{"group":"Certifications","pages":[{"group":"Certification Bodies","pages":[{"title":"List certification bodies","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/certification-bodies","href":"/api-reference/certifications/certification-bodies/list-certification-bodies"},{"title":"Get certification body","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/certification-bodies/{id}","href":"/api-reference/certifications/certification-bodies/get-certification-body"}]},{"group":"Certifications","pages":[{"title":"List certifications","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/certifications","href":"/api-reference/certifications/certifications/list-certifications"},{"title":"Get certification","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/certifications/{id}","href":"/api-reference/certifications/certifications/get-certification"}]},{"group":"Claims","pages":[{"title":"List claims","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/claims","href":"/api-reference/certifications/claims/list-claims"},{"title":"Get claim","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/claims/{id}","href":"/api-reference/certifications/claims/get-claim"}]},{"group":"Assignments","pages":[{"title":"List product certifications","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/products/{gtin}/certifications","href":"/api-reference/certifications/assignments/list-product-certifications"},{"title":"Assign certification to product","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json post /certifications/api/v1/products/{gtin}/certifications","href":"/api-reference/certifications/assignments/assign-certification-to-product"},{"title":"Get a product certification","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/products/{gtin}/certifications/{certification_id}","href":"/api-reference/certifications/assignments/get-a-product-certification"},{"title":"Remove certification from product","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json delete /certifications/api/v1/products/{gtin}/certifications/{certification_id}","href":"/api-reference/certifications/assignments/remove-certification-from-product"},{"title":"Update certification assignment","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json patch /certifications/api/v1/products/{gtin}/certifications/{certification_id}","href":"/api-reference/certifications/assignments/update-certification-assignment"},{"title":"List product claims","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/products/{gtin}/claims","href":"/api-reference/certifications/assignments/list-product-claims"},{"title":"Assign claim to product","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json post /certifications/api/v1/products/{gtin}/claims","href":"/api-reference/certifications/assignments/assign-claim-to-product"},{"title":"Get a product claim","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json get /certifications/api/v1/products/{gtin}/claims/{claim_id}","href":"/api-reference/certifications/assignments/get-a-product-claim"},{"title":"Remove claim from product","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json delete /certifications/api/v1/products/{gtin}/claims/{claim_id}","href":"/api-reference/certifications/assignments/remove-claim-from-product"},{"title":"Update claim assignment","deprecated":null,"version":null,"openapi":"/openapi/openapi-certifications.json patch /certifications/api/v1/products/{gtin}/claims/{claim_id}","href":"/api-reference/certifications/assignments/update-claim-assignment"}]}]},{"group":"Sustainability","pages":[{"group":"Sustainability","pages":[{"title":"Get product sustainability data","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/products/{gtin}/sustainability","href":"/api-reference/sustainability/sustainability/get-product-sustainability-data"}]},{"group":"Packaging","pages":[{"title":"List packaging elements","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/packaging","href":"/api-reference/sustainability/packaging/list-packaging-elements"},{"title":"Create packaging element","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json post /sustainability/api/v1/packaging","href":"/api-reference/sustainability/packaging/create-packaging-element"},{"title":"Get packaging element","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/packaging/{record_id}","href":"/api-reference/sustainability/packaging/get-packaging-element"},{"title":"Delete packaging element","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json delete /sustainability/api/v1/packaging/{record_id}","href":"/api-reference/sustainability/packaging/delete-packaging-element"},{"title":"Update packaging element","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json patch /sustainability/api/v1/packaging/{record_id}","href":"/api-reference/sustainability/packaging/update-packaging-element"}]},{"group":"Recyclability","pages":[{"title":"List recyclability assessments","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/recyclability","href":"/api-reference/sustainability/recyclability/list-recyclability-assessments"},{"title":"Create recyclability assessment","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json post /sustainability/api/v1/recyclability","href":"/api-reference/sustainability/recyclability/create-recyclability-assessment"},{"title":"Get recyclability assessment","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/recyclability/{record_id}","href":"/api-reference/sustainability/recyclability/get-recyclability-assessment"},{"title":"Delete recyclability assessment","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json delete /sustainability/api/v1/recyclability/{record_id}","href":"/api-reference/sustainability/recyclability/delete-recyclability-assessment"},{"title":"Update recyclability assessment","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json patch /sustainability/api/v1/recyclability/{record_id}","href":"/api-reference/sustainability/recyclability/update-recyclability-assessment"}]},{"group":"End-of-life instructions","pages":[{"title":"List end-of-life instructions","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/end-of-life-instructions","href":"/api-reference/sustainability/end-of-life-instructions/list-end-of-life-instructions"},{"title":"Create end-of-life instruction","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json post /sustainability/api/v1/end-of-life-instructions","href":"/api-reference/sustainability/end-of-life-instructions/create-end-of-life-instruction"},{"title":"Get end-of-life instruction","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/end-of-life-instructions/{record_id}","href":"/api-reference/sustainability/end-of-life-instructions/get-end-of-life-instruction"},{"title":"Delete end-of-life instruction","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json delete /sustainability/api/v1/end-of-life-instructions/{record_id}","href":"/api-reference/sustainability/end-of-life-instructions/delete-end-of-life-instruction"},{"title":"Update end-of-life instruction","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json patch /sustainability/api/v1/end-of-life-instructions/{record_id}","href":"/api-reference/sustainability/end-of-life-instructions/update-end-of-life-instruction"}]},{"group":"Environmental impacts","pages":[{"title":"List environmental impacts","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/environmental-impacts","href":"/api-reference/sustainability/environmental-impacts/list-environmental-impacts"},{"title":"Create environmental impact","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json post /sustainability/api/v1/environmental-impacts","href":"/api-reference/sustainability/environmental-impacts/create-environmental-impact"},{"title":"Get environmental impact","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/environmental-impacts/{record_id}","href":"/api-reference/sustainability/environmental-impacts/get-environmental-impact"},{"title":"Delete environmental impact","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json delete /sustainability/api/v1/environmental-impacts/{record_id}","href":"/api-reference/sustainability/environmental-impacts/delete-environmental-impact"},{"title":"Update environmental impact","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json patch /sustainability/api/v1/environmental-impacts/{record_id}","href":"/api-reference/sustainability/environmental-impacts/update-environmental-impact"}]},{"group":"Production processes","pages":[{"title":"List production processes","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/production-processes","href":"/api-reference/sustainability/production-processes/list-production-processes"},{"title":"Create production process","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json post /sustainability/api/v1/production-processes","href":"/api-reference/sustainability/production-processes/create-production-process"},{"title":"Get production process","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/production-processes/{record_id}","href":"/api-reference/sustainability/production-processes/get-production-process"},{"title":"Delete production process","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json delete /sustainability/api/v1/production-processes/{record_id}","href":"/api-reference/sustainability/production-processes/delete-production-process"},{"title":"Update production process","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json patch /sustainability/api/v1/production-processes/{record_id}","href":"/api-reference/sustainability/production-processes/update-production-process"},{"title":"List process types","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/process-types","href":"/api-reference/sustainability/production-processes/list-process-types"}]},{"group":"Transport impacts","pages":[{"title":"List transport impacts","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/transport-impacts","href":"/api-reference/sustainability/transport-impacts/list-transport-impacts"},{"title":"Create transport impact","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json post /sustainability/api/v1/transport-impacts","href":"/api-reference/sustainability/transport-impacts/create-transport-impact"},{"title":"Get transport impact","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/transport-impacts/{record_id}","href":"/api-reference/sustainability/transport-impacts/get-transport-impact"},{"title":"Delete transport impact","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json delete /sustainability/api/v1/transport-impacts/{record_id}","href":"/api-reference/sustainability/transport-impacts/delete-transport-impact"},{"title":"Update transport impact","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json patch /sustainability/api/v1/transport-impacts/{record_id}","href":"/api-reference/sustainability/transport-impacts/update-transport-impact"}]},{"group":"Substances of concern","pages":[{"title":"List substances of concern","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/substances-of-concern","href":"/api-reference/sustainability/substances-of-concern/list-substances-of-concern"},{"title":"Create substance of concern","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json post /sustainability/api/v1/substances-of-concern","href":"/api-reference/sustainability/substances-of-concern/create-substance-of-concern"},{"title":"Get substance of concern","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json get /sustainability/api/v1/substances-of-concern/{record_id}","href":"/api-reference/sustainability/substances-of-concern/get-substance-of-concern"},{"title":"Delete substance of concern","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json delete /sustainability/api/v1/substances-of-concern/{record_id}","href":"/api-reference/sustainability/substances-of-concern/delete-substance-of-concern"},{"title":"Update substance of concern","deprecated":null,"version":null,"openapi":"/openapi/openapi-sustainability.json patch /sustainability/api/v1/substances-of-concern/{record_id}","href":"/api-reference/sustainability/substances-of-concern/update-substance-of-concern"}]}]},{"group":"Notifications","pages":[{"group":"Notifications","pages":[{"title":"List notification channels","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json get /notifications/api/v1/notifications/channels","href":"/api-reference/notifications/notifications/list-notification-channels"},{"title":"Create a notification channel","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json post /notifications/api/v1/notifications/channels","href":"/api-reference/notifications/notifications/create-a-notification-channel"},{"title":"Get a notification channel","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json get /notifications/api/v1/notifications/channels/{channel_id}","href":"/api-reference/notifications/notifications/get-a-notification-channel"},{"title":"Delete a notification channel","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json delete /notifications/api/v1/notifications/channels/{channel_id}","href":"/api-reference/notifications/notifications/delete-a-notification-channel"},{"title":"Update a notification channel","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json patch /notifications/api/v1/notifications/channels/{channel_id}","href":"/api-reference/notifications/notifications/update-a-notification-channel"},{"title":"List in-app notifications","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json get /notifications/api/v1/notifications/in-app","href":"/api-reference/notifications/notifications/list-in-app-notifications"},{"title":"Mark a notification as read","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json post /notifications/api/v1/notifications/in-app/{notification_id}/read","href":"/api-reference/notifications/notifications/mark-a-notification-as-read"},{"title":"Mark all notifications as read","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json post /notifications/api/v1/notifications/in-app/read-all","href":"/api-reference/notifications/notifications/mark-all-notifications-as-read"},{"title":"Notification system health","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json get /notifications/api/v1/notifications/health","href":"/api-reference/notifications/notifications/notification-system-health"}]},{"group":"SMS Webhooks","pages":[{"title":"Carrier inbound-SMS callback","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json post /notifications/api/v1/sms/webhooks/inbound/","href":"/api-reference/notifications/sms-webhooks/carrier-inbound-sms-callback"},{"title":"Carrier delivery-receipt (DLR) callback","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json post /notifications/api/v1/sms/webhooks/status/","href":"/api-reference/notifications/sms-webhooks/carrier-delivery-receipt-dlr-callback"},{"title":"Unified Telnyx webhook (inbound + delivery-receipt)","deprecated":null,"version":null,"openapi":"/openapi/openapi-notifications.json post /notifications/api/v1/sms/webhooks/telnyx/","href":"/api-reference/notifications/sms-webhooks/unified-telnyx-webhook-inbound-+-delivery-receipt"}]}]},{"group":"Dashboard","pages":[{"group":"Stats","pages":[{"title":"Get dashboard statistics","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/stats/{organization_id}","href":"/api-reference/dashboard/stats/get-dashboard-statistics"}]},{"group":"Completeness","pages":[{"title":"Get product completeness score","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/completeness","href":"/api-reference/dashboard/completeness/get-product-completeness-score"}]},{"group":"Images","pages":[{"title":"List product images","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/images","href":"/api-reference/dashboard/images/list-product-images"},{"title":"Upload product image","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json post /dashboard/api/v1/products/{organization_id}/{gtin}/images","href":"/api-reference/dashboard/images/upload-product-image"},{"title":"Get product image","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/images/{image_id}","href":"/api-reference/dashboard/images/get-product-image"},{"title":"Delete product image","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json delete /dashboard/api/v1/products/{organization_id}/{gtin}/images/{image_id}","href":"/api-reference/dashboard/images/delete-product-image"},{"title":"Update product image","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json patch /dashboard/api/v1/products/{organization_id}/{gtin}/images/{image_id}","href":"/api-reference/dashboard/images/update-product-image"}]},{"group":"Nutrition","pages":[{"title":"Get product nutrition facts","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/nutrition","href":"/api-reference/dashboard/nutrition/get-product-nutrition-facts"},{"title":"Create or replace product nutrition header","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json put /dashboard/api/v1/products/{organization_id}/{gtin}/nutrition","href":"/api-reference/dashboard/nutrition/create-or-replace-product-nutrition-header"},{"title":"Delete product nutrition facts","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json delete /dashboard/api/v1/products/{organization_id}/{gtin}/nutrition","href":"/api-reference/dashboard/nutrition/delete-product-nutrition-facts"},{"title":"Add a product nutrient row","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json post /dashboard/api/v1/products/{organization_id}/{gtin}/nutrition/nutrients","href":"/api-reference/dashboard/nutrition/add-a-product-nutrient-row"},{"title":"Delete a product nutrient row","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json delete /dashboard/api/v1/products/{organization_id}/{gtin}/nutrition/nutrients/{nutrient_id}","href":"/api-reference/dashboard/nutrition/delete-a-product-nutrient-row"},{"title":"Update a product nutrient row","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json patch /dashboard/api/v1/products/{organization_id}/{gtin}/nutrition/nutrients/{nutrient_id}","href":"/api-reference/dashboard/nutrition/update-a-product-nutrient-row"}]},{"group":"Documents","pages":[{"title":"List product documents","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/documents","href":"/api-reference/dashboard/documents/list-product-documents"},{"title":"Upload product document","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json post /dashboard/api/v1/products/{organization_id}/{gtin}/documents","href":"/api-reference/dashboard/documents/upload-product-document"},{"title":"Suggest document labels","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/document-labels","href":"/api-reference/dashboard/documents/suggest-document-labels"},{"title":"Get product document","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/documents/{document_id}","href":"/api-reference/dashboard/documents/get-product-document"},{"title":"Delete product document","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json delete /dashboard/api/v1/products/{organization_id}/{gtin}/documents/{document_id}","href":"/api-reference/dashboard/documents/delete-product-document"},{"title":"Update product document metadata","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json patch /dashboard/api/v1/products/{organization_id}/{gtin}/documents/{document_id}","href":"/api-reference/dashboard/documents/update-product-document-metadata"}]},{"group":"Videos","pages":[{"title":"List product videos","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/videos","href":"/api-reference/dashboard/videos/list-product-videos"},{"title":"Add product video","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json post /dashboard/api/v1/products/{organization_id}/{gtin}/videos","href":"/api-reference/dashboard/videos/add-product-video"},{"title":"Get product video","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/videos/{video_id}","href":"/api-reference/dashboard/videos/get-product-video"},{"title":"Delete product video","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json delete /dashboard/api/v1/products/{organization_id}/{gtin}/videos/{video_id}","href":"/api-reference/dashboard/videos/delete-product-video"},{"title":"Update product video","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json patch /dashboard/api/v1/products/{organization_id}/{gtin}/videos/{video_id}","href":"/api-reference/dashboard/videos/update-product-video"}]},{"group":"Warranty Link","pages":[{"title":"Get product warranty link","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/warranty-link","href":"/api-reference/dashboard/warranty-link/get-product-warranty-link"},{"title":"Create or replace product warranty link","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json put /dashboard/api/v1/products/{organization_id}/{gtin}/warranty-link","href":"/api-reference/dashboard/warranty-link/create-or-replace-product-warranty-link"},{"title":"Delete product warranty link","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json delete /dashboard/api/v1/products/{organization_id}/{gtin}/warranty-link","href":"/api-reference/dashboard/warranty-link/delete-product-warranty-link"}]},{"group":"Register Product","pages":[{"title":"Get product registration link","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/products/{organization_id}/{gtin}/register-product","href":"/api-reference/dashboard/register-product/get-product-registration-link"},{"title":"Create or replace product registration link","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json put /dashboard/api/v1/products/{organization_id}/{gtin}/register-product","href":"/api-reference/dashboard/register-product/create-or-replace-product-registration-link"},{"title":"Delete product registration link","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json delete /dashboard/api/v1/products/{organization_id}/{gtin}/register-product","href":"/api-reference/dashboard/register-product/delete-product-registration-link"}]},{"group":"Brand Analytics","pages":[{"title":"Brand search demand — where are people searching for my products?","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/brand-analytics/search-demand","href":"/api-reference/dashboard/brand-analytics/brand-search-demand-—-where-are-people-searching-for-my-products?"},{"title":"Brand retail footprint — where are my products being sold?","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/brand-analytics/retail-footprint","href":"/api-reference/dashboard/brand-analytics/brand-retail-footprint-—-where-are-my-products-being-sold?"},{"title":"Brand scan summary — which of my products are being scanned the most?","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/brand-analytics/scans","href":"/api-reference/dashboard/brand-analytics/brand-scan-summary-—-which-of-my-products-are-being-scanned-the-most?"}]},{"group":"Data Export","pages":[{"title":"Request an organization data export","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json post /dashboard/api/v1/data-export/{organization_id}","href":"/api-reference/dashboard/data-export/request-an-organization-data-export"},{"title":"Poll an organization data export","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/data-export/{organization_id}/{job_id}","href":"/api-reference/dashboard/data-export/poll-an-organization-data-export"}]},{"group":"GS1 Company Prefixes","pages":[{"title":"List the organization's GS1 Company Prefixes","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/company-prefixes/{organization_id}","href":"/api-reference/dashboard/gs1-company-prefixes/list-the-organizations-gs1-company-prefixes"},{"title":"Add a GS1 Company Prefix","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json post /dashboard/api/v1/company-prefixes/{organization_id}","href":"/api-reference/dashboard/gs1-company-prefixes/add-a-gs1-company-prefix"},{"title":"Get a GS1 Company Prefix","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json get /dashboard/api/v1/company-prefixes/{organization_id}/{company_prefix_id}","href":"/api-reference/dashboard/gs1-company-prefixes/get-a-gs1-company-prefix"},{"title":"Remove a GS1 Company Prefix","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json delete /dashboard/api/v1/company-prefixes/{organization_id}/{company_prefix_id}","href":"/api-reference/dashboard/gs1-company-prefixes/remove-a-gs1-company-prefix"},{"title":"Recheck a prefix's GS1 Verified / licence status","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json post /dashboard/api/v1/company-prefixes/{organization_id}/{company_prefix_id}/verify","href":"/api-reference/dashboard/gs1-company-prefixes/recheck-a-prefixs-gs1-verified-licence-status"},{"title":"Mint a GIAI from one of the organization's prefixes","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json post /dashboard/api/v1/company-prefixes/{organization_id}/{company_prefix_id}/giai","href":"/api-reference/dashboard/gs1-company-prefixes/mint-a-giai-from-one-of-the-organizations-prefixes"}]},{"group":"Agent Handoff Capsules","pages":[{"title":"Record a 'Copy for your AI agent' button click","deprecated":null,"version":null,"openapi":"/openapi/openapi-dashboard.json post /dashboard/api/v1/capsules/{capsule_id}/copied","href":"/api-reference/dashboard/agent-handoff-capsules/record-a-copy-for-your-ai-agent-button-click"}]}]},{"group":"Analytics","pages":[{"group":"Traffic","pages":[{"title":"Hierarchical traffic time series for a scope","deprecated":null,"version":null,"openapi":"/openapi/openapi-analytics.json get /analytics/api/v1/traffic","href":"/api-reference/analytics/traffic/hierarchical-traffic-time-series-for-a-scope"}]},{"group":"Exports","pages":[{"title":"Period summary for BI integration","deprecated":null,"version":null,"openapi":"/openapi/openapi-analytics.json get /analytics/api/v1/exports/overview","href":"/api-reference/analytics/exports/period-summary-for-bi-integration"},{"title":"Paginated raw scan events for BI integration","deprecated":null,"version":null,"openapi":"/openapi/openapi-analytics.json get /analytics/api/v1/exports/scan-events","href":"/api-reference/analytics/exports/paginated-raw-scan-events-for-bi-integration"}]}]},{"group":"Agent","pages":[{"group":"Resolve","pages":[{"title":"Resolve product query to nearby store availability","deprecated":null,"version":null,"openapi":"/openapi/openapi-agent.json post /agent/api/v1/resolve","href":"/api-reference/agent/resolve/resolve-product-query-to-nearby-store-availability"}]},{"group":"Products","pages":[{"title":"Get full product detail by GTIN","deprecated":null,"version":null,"openapi":"/openapi/openapi-agent.json get /agent/api/v1/products/{gtin}","href":"/api-reference/agent/products/get-full-product-detail-by-gtin"}]},{"group":"Availability","pages":[{"title":"Check store availability for a product","deprecated":null,"version":null,"openapi":"/openapi/openapi-agent.json get /agent/api/v1/products/{gtin}/availability","href":"/api-reference/agent/availability/check-store-availability-for-a-product"}]}]},{"group":"Substances","pages":[{"group":"Substances","pages":[{"title":"Search substances","deprecated":null,"version":null,"openapi":"/openapi/openapi-substances.json get /substances/api/v1/substances","href":"/api-reference/substances/substances/search-substances"},{"title":"Get substance by ID","deprecated":null,"version":null,"openapi":"/openapi/openapi-substances.json get /substances/api/v1/substances/{substance_id}","href":"/api-reference/substances/substances/get-substance-by-id"}]}]},{"group":"BYOS","pages":[{"group":"byos-trmnl","pages":[{"title":"TRMNL device setup","deprecated":null,"version":null,"openapi":"/openapi/openapi-byos.json get /byos/api/setup/","href":"/api-reference/byos/byos-trmnl/trmnl-device-setup"},{"title":"TRMNL display poll","deprecated":null,"version":null,"openapi":"/openapi/openapi-byos.json get /byos/api/display","href":"/api-reference/byos/byos-trmnl/trmnl-display-poll"},{"title":"TRMNL device log","deprecated":null,"version":null,"openapi":"/openapi/openapi-byos.json post /byos/api/log/","href":"/api-reference/byos/byos-trmnl/trmnl-device-log"}]}]},{"group":"Content","pages":[{"group":"Content","pages":[{"title":"Check product data readiness","deprecated":null,"version":null,"openapi":"/openapi/openapi-content.json post /content/api/v1/learn/readiness-check","href":"/api-reference/content/content/check-product-data-readiness"}]}]},{"group":"Signals","pages":[{"group":"Signals","pages":[{"title":"Submit a signal","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json post /signals/api/v1/signals/","href":"/api-reference/signals/signals/submit-a-signal"},{"title":"Capture a voice note (transcription only)","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json post /signals/api/v1/voice-sessions/","href":"/api-reference/signals/signals/capture-a-voice-note-transcription-only"},{"title":"List my signals","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/signals/mine/","href":"/api-reference/signals/signals/list-my-signals"},{"title":"List my verified contact addresses","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/signals/contact-emails/","href":"/api-reference/signals/signals/list-my-verified-contact-addresses"},{"title":"Get my signal","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/signals/{signal_id}/","href":"/api-reference/signals/signals/get-my-signal"},{"title":"Erase my signal","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json delete /signals/api/v1/signals/{signal_id}/","href":"/api-reference/signals/signals/erase-my-signal"},{"title":"Edit my signal","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json patch /signals/api/v1/signals/{signal_id}/","href":"/api-reference/signals/signals/edit-my-signal"},{"title":"Revoke my signal","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json post /signals/api/v1/signals/{signal_id}/revoke/","href":"/api-reference/signals/signals/revoke-my-signal"}]},{"group":"Brand Signals","pages":[{"title":"List brand signals","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/brand/signals/","href":"/api-reference/signals/brand-signals/list-brand-signals"},{"title":"Get brand signal","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/brand/signals/{signal_id}/","href":"/api-reference/signals/brand-signals/get-brand-signal"},{"title":"Report a signal as abusive","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json post /signals/api/v1/brand/signals/{signal_id}/report/","href":"/api-reference/signals/brand-signals/report-a-signal-as-abusive"}]},{"group":"Signal Review","pages":[{"title":"List flagged signals (review queue)","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/internal/signals/flagged/","href":"/api-reference/signals/signal-review/list-flagged-signals-review-queue"},{"title":"List reported signals (review queue)","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/internal/signals/reported/","href":"/api-reference/signals/signal-review/list-reported-signals-review-queue"},{"title":"Suppress a signal","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json post /signals/api/v1/internal/signals/{signal_id}/suppress/","href":"/api-reference/signals/signal-review/suppress-a-signal"},{"title":"Restore a suppressed signal","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json post /signals/api/v1/internal/signals/{signal_id}/unsuppress/","href":"/api-reference/signals/signal-review/restore-a-suppressed-signal"},{"title":"Ban a submitter identity","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json post /signals/api/v1/internal/bans/","href":"/api-reference/signals/signal-review/ban-a-submitter-identity"},{"title":"Lift a submitter ban","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json delete /signals/api/v1/internal/bans/{user_id}/","href":"/api-reference/signals/signal-review/lift-a-submitter-ban"}]},{"group":"Adverse Reports","pages":[{"title":"File an adverse report","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json post /signals/api/v1/adverse-reports/","href":"/api-reference/signals/adverse-reports/file-an-adverse-report"},{"title":"List my adverse reports","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/adverse-reports/mine/","href":"/api-reference/signals/adverse-reports/list-my-adverse-reports"},{"title":"Get my adverse report","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/adverse-reports/{reference_id}/","href":"/api-reference/signals/adverse-reports/get-my-adverse-report"},{"title":"List lot-level adverse alerts","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/brand/adverse-report-alerts/","href":"/api-reference/signals/adverse-reports/list-lot-level-adverse-alerts"},{"title":"List brand adverse reports","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/brand/adverse-reports/","href":"/api-reference/signals/adverse-reports/list-brand-adverse-reports"},{"title":"Get brand adverse report","deprecated":null,"version":null,"openapi":"/openapi/openapi-signals.json get /signals/api/v1/brand/adverse-reports/{report_id}/","href":"/api-reference/signals/adverse-reports/get-brand-adverse-report"}]}]}]}]},"basePath":"","title":"Bulk import lots - Closient","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","Page-m07pfKpT.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","clsx-xpJZXxdP.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BTZUMDnx.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DqdKa2R4.js"]}