{
"type": "https://api.neuraldraft.io/errors/bad_request",
"title": "Bad request",
"status": 400,
"detail": "Request body could not be parsed.",
"code": "bad_request",
"instance": "req_2Nh4PqRsTuVw"
}
{
"type": "https://api.neuraldraft.io/errors/bad_request",
"title": "Bad request",
"status": 400,
"detail": "Request body could not be parsed.",
"code": "bad_request",
"instance": "req_2Nh4PqRsTuVw"
}
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Neural Draft","description":"Hosting, CMS, blog, bookings, forms and a shop for sites built with Claude, ChatGPT, Codex or your own code: hosted connector, developer MCP, REST API and TypeScript SDK.","colors":{"primary":"#7C3AED","light":"#A78BFA","dark":"#5B21B6"},"logo":{"light":"https://mintcdn.com/neuraldraftltd/tMEL4V96iTS6cZl7/logo/light.svg?fit=max\u0026auto=format\u0026n=tMEL4V96iTS6cZl7\u0026q=85\u0026s=55f7c7f9e12950f2c9776c2300528e63","dark":"https://mintcdn.com/neuraldraftltd/tMEL4V96iTS6cZl7/logo/dark.svg?fit=max\u0026auto=format\u0026n=tMEL4V96iTS6cZl7\u0026q=85\u0026s=76e3840b6c1572fffa1e9a2a69ae76b5","href":"https://neuraldraft.io"},"favicon":"https://mintcdn.com/neuraldraftltd/tMEL4V96iTS6cZl7/favicon.svg?fit=max\u0026auto=format\u0026n=tMEL4V96iTS6cZl7\u0026q=85\u0026s=49cdd0673d68aede93d5ef9e82ef8050","api":{"openapi":["openapi.yaml"],"playground":{"display":"interactive"},"examples":{"languages":["curl","node","python","php"]}},"appearance":{"default":"system","strict":false},"background":{"decoration":"gradient","color":{"light":"#FFFFFF","dark":"#0B0712"}},"navbar":{"links":[{"href":"/changelog","label":"Changelog"},{"href":"https://neuraldraft.io/pricing","label":"Pricing"},{"href":"https://neuraldraft.io/developers","label":"For developers"}],"primary":{"type":"button","label":"Get API key","href":"https://app.neuraldraft.io/register"}},"footer":{"socials":{"github":"https://github.com/vbalagovic/neuraldraft-sdk","discord":"https://discord.gg/XCQftzvBQX","x":"https://x.com/neuraldraft"},"links":[{"header":"Product","items":[{"label":"Pricing","href":"https://neuraldraft.io/pricing"},{"label":"Changelog","href":"/changelog"},{"label":"Status","href":"https://status.neuraldraft.io"}]},{"header":"Resources","items":[{"label":"SDK on GitHub","href":"https://github.com/vbalagovic/neuraldraft-sdk"},{"label":"MCP on npm","href":"https://www.npmjs.com/package/@neuraldraft/mcp"},{"label":"API reference","href":"/api-reference"},{"label":"Quickstart","href":"/quickstart"}]},{"header":"Community","items":[{"label":"Discord","href":"https://discord.gg/XCQftzvBQX"},{"label":"GitHub issues","href":"https://github.com/vbalagovic/neuraldraft-sdk/issues"}]},{"header":"Company","items":[{"label":"Contact","href":"mailto:info@neuraldraft.io"},{"label":"Terms","href":"https://neuraldraft.io/legal/terms"},{"label":"Privacy","href":"https://neuraldraft.io/legal/privacy"}]}]},"search":{"prompt":"Search the docs, MCP setup, errors, anything"},"seo":{"metatags":{"og:image":"/images/og.png","twitter:card":"summary_large_image"},"indexing":"all"},"fonts":{"family":"Inter"},"errors":{"404":{"redirect":false}},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"SDK","icon":"github","href":"https://github.com/vbalagovic/neuraldraft-sdk"},{"anchor":"Discord","icon":"discord","href":"https://discord.gg/XCQftzvBQX"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"neuraldraftltd","hasAudioNarration":false,"actualSubdomain":"neuraldraftltd","customDomains":["docs.neuraldraft.io"],"gitSource":{"type":"github","owner":"vbalagovic","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ad1c9f672cac692d335a3d9","collectionId":"ae9909c6-2a65-4b47-ab32-e125e4dc9bde","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad1c9f672cac692d335a3d9"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ad1c9f672cac692d335a3d9","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"default","tag":"API Reference","count":111},{"language":"default","tag":"Documentation","count":34},{"language":"default","tag":"Commerce","count":20},{"language":"default","tag":"Blog","count":15},{"language":"default","tag":"Booking","count":14},{"language":"default","tag":"Social","count":10},{"language":"default","tag":"Sites","count":7},{"language":"default","tag":"Features","count":7},{"language":"default","tag":"Snippets","count":6},{"language":"default","tag":"Content","count":6}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/commerce/create-a-product","slug":"/api-reference/commerce/create-a-product","pageMetadata":{"title":"Create a product","description":null,"deprecated":null,"version":null,"openapi":"/openapi.yaml post /products","href":"/api-reference/commerce/create-a-product","autogeneratedByOpenApi":true},"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":"Create a product","description":null,"deprecated":null,"version":null,"openapi":"/openapi.yaml post /products","href":"/api-reference/commerce/create-a-product","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Commerce"],"summary":"Create a product","operationId":"createProduct","requestBody":"884f4614-93e7-4d98-a8f9-5d380fa71905","responses":{"201":"f5873da4-3e67-496d-9ad0-bf91598c660b","400":"55f210ed-0659-4ad3-8c2c-cdaa057bbe29","401":"8ff3a0da-4a67-4a2a-a074-69d4f65e098a","402":"39373e52-394b-4256-b336-dd89b81b1e7f","409":"fa37d743-b1c0-4bf6-ae35-7488d1f6bfb5"},"x-codeSamples":[{"lang":"curl","label":"cURL","source":"curl -X POST https://api.neuraldraft.io/v1/products \\\n -H \"Authorization: Bearer ndsk_live_yourkey\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"name\":\"Cork yoga block (pair)\",\"price\":2999,\"currency\":\"gbp\",\"type\":\"physical\",\"status\":\"active\"}'\n"},{"lang":"node","label":"Node (SDK)","source":"await nd.products.create({ name:\"Cork yoga block (pair)\", price:2999, currency:\"gbp\", type:\"physical\", status:\"active\" });\n"},{"lang":"python","label":"Python","source":"requests.post(\"https://api.neuraldraft.io/v1/products\",\n headers={\"Authorization\": f\"Bearer {key}\"},\n json={\"name\":\"Cork yoga block (pair)\",\"price\":2999,\"currency\":\"gbp\",\"type\":\"physical\",\"status\":\"active\"})\n"},{"lang":"php","label":"PHP","source":"\u003c?php\n$client->post('products', [\n 'headers' => ['Authorization' => 'Bearer '.$key],\n 'json' => ['name'=>'Cork yoga block (pair)','price'=>2999,'currency'=>'gbp','type'=>'physical','status'=>'active'],\n]);\n"}],"method":"post","type":"path","servers":["cf9a8e84-7625-44ea-85d9-7fbebbf681b3","991b008b-a935-475a-bfb5-9324cea3f67a"],"security":["d89a6f08-8c8e-4204-8df4-6d6e14a697c1"],"path":"/products","baseUrlOptions":["https://api.neuraldraft.io/v1","https://api.staging.neuraldraft.io/v1"],"title":"Create a product","description":"","codeSamples":[{"label":"cURL","lang":"curl","source":"curl -X POST https://api.neuraldraft.io/v1/products \\\n -H \"Authorization: Bearer ndsk_live_yourkey\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"name\":\"Cork yoga block (pair)\",\"price\":2999,\"currency\":\"gbp\",\"type\":\"physical\",\"status\":\"active\"}'\n"},{"label":"Node (SDK)","lang":"node","source":"await nd.products.create({ name:\"Cork yoga block (pair)\", price:2999, currency:\"gbp\", type:\"physical\", status:\"active\" });\n"},{"label":"Python","lang":"python","source":"requests.post(\"https://api.neuraldraft.io/v1/products\",\n headers={\"Authorization\": f\"Bearer {key}\"},\n json={\"name\":\"Cork yoga block (pair)\",\"price\":2999,\"currency\":\"gbp\",\"type\":\"physical\",\"status\":\"active\"})\n"},{"label":"PHP","lang":"php","source":"\u003c?php\n$client->post('products', [\n 'headers' => ['Authorization' => 'Bearer '.$key],\n 'json' => ['name'=>'Cork yoga block (pair)','price'=>2999,'currency'=>'gbp','type'=>'physical','status'=>'active'],\n]);\n"}],"requestExampleLanguages":["bash","node","python","php"],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"name","typeLabel":"string"},"slug":{"type":"string","uniqueKey":"slug","typeLabel":"string"},"description":{"type":"string","uniqueKey":"description","typeLabel":"string"},"short_description":{"type":"string","maxLength":500,"uniqueKey":"short_description","typeLabel":"string"},"price":{"type":"integer","uniqueKey":"price","typeLabel":"integer"},"compare_at_price":{"oneOf":[{"type":"integer","uniqueKey":"compare_at_price.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"compare_at_price.oneOf.1","typeLabel":"null"}],"uniqueKey":"compare_at_price","typeLabel":"integer | null"},"currency":{"type":"string","uniqueKey":"currency","typeLabel":"string"},"type":{"type":"string","enum":["physical","digital","service"],"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"status":{"type":"string","enum":["draft","active","archived"],"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"sku":{"type":"string","uniqueKey":"sku","typeLabel":"string"},"stock_quantity":{"oneOf":[{"type":"integer","uniqueKey":"stock_quantity.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"stock_quantity.oneOf.1","typeLabel":"null"}],"uniqueKey":"stock_quantity","typeLabel":"integer | null"},"track_inventory":{"type":"boolean","uniqueKey":"track_inventory","typeLabel":"boolean"},"weight":{"oneOf":[{"type":"number","format":"float","uniqueKey":"weight.oneOf.0","typeLabel":"number\u003cfloat>"},{"type":"null","format":"float","uniqueKey":"weight.oneOf.1","typeLabel":"null"}],"uniqueKey":"weight","typeLabel":"number\u003cfloat> | null"},"images":{"type":"array","items":{"type":"string","format":"uri","uniqueKey":"images.items.[INDEX]","typeLabel":"string\u003curi>"},"uniqueKey":"images","typeLabel":"string\u003curi>[]"},"category_id":{"oneOf":[{"type":"integer","uniqueKey":"category_id.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"category_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"category_id","typeLabel":"integer | null"},"featured":{"type":"boolean","uniqueKey":"featured","typeLabel":"boolean"},"published_at":{"type":"string","format":"date-time","uniqueKey":"published_at","typeLabel":"string\u003cdate-time>"},"metadata":{"type":"object","additionalProperties":true,"uniqueKey":"metadata","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"cork_block":{"title":"cork_block","value":{"name":"Cork yoga block (pair)","short_description":"Sustainably-harvested cork blocks. Sold as a pair.","description":"\u003cp>Sourced from Portuguese cork oak forests…\u003c/p>","price":2999,"compare_at_price":3999,"currency":"gbp","type":"physical","status":"active","sku":"ND-CORK-PAIR","stock_quantity":24,"track_inventory":true,"weight":0.6,"category_id":4,"featured":true,"images":["https://cdn.neuraldraft.io/prj_2NfQmBcKpXY8/products/cork-block.jpg"]}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"f5873da4-3e67-496d-9ad0-bf91598c660b":{"description":"Created.","content":{"application/json":{"schema":{"type":"object","required":["id","name","slug","price","currency","status"],"properties":{"id":{"type":"integer","example":32,"isRequired":true,"uniqueKey":"id","typeLabel":"integer"},"name":{"type":"string","example":"Cork yoga block (pair)","isRequired":true,"uniqueKey":"name","typeLabel":"string"},"slug":{"type":"string","example":"cork-yoga-block-pair","isRequired":true,"uniqueKey":"slug","typeLabel":"string"},"price":{"type":"integer","example":2999,"isRequired":true,"uniqueKey":"price","typeLabel":"integer"},"currency":{"type":"string","example":"gbp","isRequired":true,"uniqueKey":"currency","typeLabel":"string"},"status":{"type":"string","enum":["draft","active","archived"],"example":"active","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"description":{"oneOf":[{"type":"string","uniqueKey":"description.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"description.oneOf.1","typeLabel":"null"}],"uniqueKey":"description","typeLabel":"string | null"},"short_description":{"oneOf":[{"type":"string","maxLength":500,"uniqueKey":"short_description.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":500,"uniqueKey":"short_description.oneOf.1","typeLabel":"null"}],"uniqueKey":"short_description","typeLabel":"string | null"},"compare_at_price":{"oneOf":[{"type":"integer","example":3999,"uniqueKey":"compare_at_price.oneOf.0","typeLabel":"integer"},{"type":"null","example":3999,"uniqueKey":"compare_at_price.oneOf.1","typeLabel":"null"}],"uniqueKey":"compare_at_price","typeLabel":"integer | null"},"type":{"type":"string","enum":["physical","digital","service"],"example":"physical","uniqueKey":"type","typeLabel":"enum\u003cstring>"},"sku":{"oneOf":[{"type":"string","example":"ND-CORK-PAIR","uniqueKey":"sku.oneOf.0","typeLabel":"string"},{"type":"null","example":"ND-CORK-PAIR","uniqueKey":"sku.oneOf.1","typeLabel":"null"}],"uniqueKey":"sku","typeLabel":"string | null"},"stock_quantity":{"oneOf":[{"type":"integer","example":24,"uniqueKey":"stock_quantity.oneOf.0","typeLabel":"integer"},{"type":"null","example":24,"uniqueKey":"stock_quantity.oneOf.1","typeLabel":"null"}],"uniqueKey":"stock_quantity","typeLabel":"integer | null"},"track_inventory":{"type":"boolean","default":false,"uniqueKey":"track_inventory","typeLabel":"boolean"},"weight":{"oneOf":[{"type":"number","format":"float","example":0.6,"uniqueKey":"weight.oneOf.0","typeLabel":"number\u003cfloat>"},{"type":"null","format":"float","example":0.6,"uniqueKey":"weight.oneOf.1","typeLabel":"null"}],"uniqueKey":"weight","typeLabel":"number\u003cfloat> | null"},"images":{"type":"array","items":{"type":"string","format":"uri","uniqueKey":"images.items.[INDEX]","typeLabel":"string\u003curi>"},"uniqueKey":"images","typeLabel":"string\u003curi>[]"},"metadata":{"type":"object","additionalProperties":true,"uniqueKey":"metadata","typeLabel":"object"},"category_id":{"oneOf":[{"type":"integer","example":4,"uniqueKey":"category_id.oneOf.0","typeLabel":"integer"},{"type":"null","example":4,"uniqueKey":"category_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"category_id","typeLabel":"integer | null"},"featured":{"type":"boolean","default":false,"uniqueKey":"featured","typeLabel":"boolean"},"published_at":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"published_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"published_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"published_at","typeLabel":"string\u003cdate-time> | null"},"variants":{"type":"array","items":{"type":"object","required":["id","product_id","name","price"],"properties":{"id":{"type":"integer","example":71,"isRequired":true,"uniqueKey":"variants.items.[INDEX].id","typeLabel":"integer"},"product_id":{"type":"integer","example":32,"isRequired":true,"uniqueKey":"variants.items.[INDEX].product_id","typeLabel":"integer"},"name":{"type":"string","example":"Natural cork","isRequired":true,"uniqueKey":"variants.items.[INDEX].name","typeLabel":"string"},"price":{"type":"integer","example":2999,"isRequired":true,"uniqueKey":"variants.items.[INDEX].price","typeLabel":"integer"},"sku":{"oneOf":[{"type":"string","example":"ND-CORK-PAIR-N","uniqueKey":"variants.items.[INDEX].sku.oneOf.0","typeLabel":"string"},{"type":"null","example":"ND-CORK-PAIR-N","uniqueKey":"variants.items.[INDEX].sku.oneOf.1","typeLabel":"null"}],"uniqueKey":"variants.items.[INDEX].sku","typeLabel":"string | null"},"stock_quantity":{"oneOf":[{"type":"integer","uniqueKey":"variants.items.[INDEX].stock_quantity.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"variants.items.[INDEX].stock_quantity.oneOf.1","typeLabel":"null"}],"uniqueKey":"variants.items.[INDEX].stock_quantity","typeLabel":"integer | null"},"options":{"type":"object","description":"Free-form variant options (size, color, etc.).","additionalProperties":{"type":"string","uniqueKey":"variants.items.[INDEX].options.additionalProperties","typeLabel":"string"},"example":{"color":"natural"},"uniqueKey":"variants.items.[INDEX].options","typeLabel":"object"},"sort_order":{"type":"integer","default":0,"uniqueKey":"variants.items.[INDEX].sort_order","typeLabel":"integer"},"is_active":{"type":"boolean","default":true,"uniqueKey":"variants.items.[INDEX].is_active","typeLabel":"boolean"}},"uniqueKey":"variants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"variants","typeLabel":"object[]"},"created_at":{"type":"string","format":"date-time","uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":32,"name":"Cork yoga block (pair)","slug":"cork-yoga-block-pair","price":2999,"currency":"gbp","status":"active","description":"\u003cstring>","short_description":"\u003cstring>","compare_at_price":3999,"type":"physical","sku":"ND-CORK-PAIR","stock_quantity":24,"track_inventory":false,"weight":0.6,"images":["\u003cstring>"],"metadata":{},"category_id":4,"featured":false,"published_at":"2023-11-07T05:31:56Z","variants":[{"id":71,"product_id":32,"name":"Natural cork","price":2999,"sku":"ND-CORK-PAIR-N","stock_quantity":123,"options":{"color":"natural"},"sort_order":0,"is_active":true}],"created_at":"2023-11-07T05:31:56Z","updated_at":"2023-11-07T05:31:56Z"}}},"exampleType":"generated"}},"exampleType":"generated"},"55f210ed-0659-4ad3-8c2c-cdaa057bbe29":{"description":"Malformed request — missing required field, invalid JSON, etc.","headers":{"X-Request-Id":{"schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"RFC 7807 problem+json error. The `code` is a stable machine\nidentifier; clients should branch on `code`, never on `title`.\n","required":["type","title","status","code"],"properties":{"type":{"type":"string","format":"uri","example":"https://api.neuraldraft.io/errors/validation_failed","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","example":"Validation failed","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","example":422,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Stable machine error code. Standard values:\n`bad_request`, `unauthorized`, `insufficient_credits`,\n`forbidden`, `not_found`, `conflict`, `validation_failed`,\n`rate_limited`, `internal_error`, `service_unavailable`,\n`slot_unavailable`, `connect_not_ready`, `upstream_unavailable`,\n`idempotency_conflict`.\n","example":"validation_failed","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","example":"One or more fields failed validation.","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"Request id (also returned as `X-Request-Id` header).","example":"req_2Nh4PqRsTuVw","uniqueKey":"instance","typeLabel":"string"},"cost":{"type":"integer","description":"Credits the operation requires. Only present on\n`402 insufficient_credits` responses.\n","example":1,"uniqueKey":"cost","typeLabel":"integer"},"balance":{"type":"integer","description":"Credits the project had on hand at the time of the request.\nOnly present on `402 insufficient_credits` responses.\n","example":0,"uniqueKey":"balance","typeLabel":"integer"},"errors":{"type":"object","description":"Field-level validation errors (only on 422).","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"errors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"errors.additionalProperties","typeLabel":"string[]"},"example":{"customer_email":["The customer email field must be a valid email."],"starts_at":["The starts at field must be a valid ISO 8601 date."]},"uniqueKey":"errors","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"bad":{"title":"bad","value":{"type":"https://api.neuraldraft.io/errors/bad_request","title":"Bad request","status":400,"detail":"Request body could not be parsed.","code":"bad_request","instance":"req_2Nh4PqRsTuVw"}}},"exampleType":"examples"}},"exampleType":"examples"},"8ff3a0da-4a67-4a2a-a074-69d4f65e098a":{"description":"Missing or invalid API key.","headers":{"WWW-Authenticate":{"schema":{"type":"string"},"description":"`Bearer realm=\"Neural Draft\"`."},"X-Request-Id":{"schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"RFC 7807 problem+json error. The `code` is a stable machine\nidentifier; clients should branch on `code`, never on `title`.\n","required":["type","title","status","code"],"properties":{"type":{"type":"string","format":"uri","example":"https://api.neuraldraft.io/errors/validation_failed","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","example":"Validation failed","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","example":422,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Stable machine error code. Standard values:\n`bad_request`, `unauthorized`, `insufficient_credits`,\n`forbidden`, `not_found`, `conflict`, `validation_failed`,\n`rate_limited`, `internal_error`, `service_unavailable`,\n`slot_unavailable`, `connect_not_ready`, `upstream_unavailable`,\n`idempotency_conflict`.\n","example":"validation_failed","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","example":"One or more fields failed validation.","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"Request id (also returned as `X-Request-Id` header).","example":"req_2Nh4PqRsTuVw","uniqueKey":"instance","typeLabel":"string"},"cost":{"type":"integer","description":"Credits the operation requires. Only present on\n`402 insufficient_credits` responses.\n","example":1,"uniqueKey":"cost","typeLabel":"integer"},"balance":{"type":"integer","description":"Credits the project had on hand at the time of the request.\nOnly present on `402 insufficient_credits` responses.\n","example":0,"uniqueKey":"balance","typeLabel":"integer"},"errors":{"type":"object","description":"Field-level validation errors (only on 422).","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"errors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"errors.additionalProperties","typeLabel":"string[]"},"example":{"customer_email":["The customer email field must be a valid email."],"starts_at":["The starts at field must be a valid ISO 8601 date."]},"uniqueKey":"errors","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"missing":{"title":"missing","value":{"type":"https://api.neuraldraft.io/errors/unauthorized","title":"Unauthorized","status":401,"detail":"API key missing or invalid.","code":"unauthorized","instance":"req_2Nh4PqRsTuVw"}}},"exampleType":"examples"}},"exampleType":"examples"},"39373e52-394b-4256-b336-dd89b81b1e7f":{"description":"Insufficient credits. The project does not have enough credits to\ncover the operation. The body includes `cost` (credits the operation\nneeds) and `balance` (credits the project had on hand) so clients\ncan render an exact top-up prompt. Top up at `/projects/me/usage`\nor wait for the next period to start.\n","headers":{"X-Request-Id":{"schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"RFC 7807 problem+json error. The `code` is a stable machine\nidentifier; clients should branch on `code`, never on `title`.\n","required":["type","title","status","code"],"properties":{"type":{"type":"string","format":"uri","example":"https://api.neuraldraft.io/errors/validation_failed","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","example":"Validation failed","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","example":422,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Stable machine error code. Standard values:\n`bad_request`, `unauthorized`, `insufficient_credits`,\n`forbidden`, `not_found`, `conflict`, `validation_failed`,\n`rate_limited`, `internal_error`, `service_unavailable`,\n`slot_unavailable`, `connect_not_ready`, `upstream_unavailable`,\n`idempotency_conflict`.\n","example":"validation_failed","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","example":"One or more fields failed validation.","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"Request id (also returned as `X-Request-Id` header).","example":"req_2Nh4PqRsTuVw","uniqueKey":"instance","typeLabel":"string"},"cost":{"type":"integer","description":"Credits the operation requires. Only present on\n`402 insufficient_credits` responses.\n","example":1,"uniqueKey":"cost","typeLabel":"integer"},"balance":{"type":"integer","description":"Credits the project had on hand at the time of the request.\nOnly present on `402 insufficient_credits` responses.\n","example":0,"uniqueKey":"balance","typeLabel":"integer"},"errors":{"type":"object","description":"Field-level validation errors (only on 422).","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"errors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"errors.additionalProperties","typeLabel":"string[]"},"example":{"customer_email":["The customer email field must be a valid email."],"starts_at":["The starts at field must be a valid ISO 8601 date."]},"uniqueKey":"errors","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"broke":{"title":"broke","value":{"type":"https://neuraldraft.com/errors/payment-required","title":"Payment Required","status":402,"detail":"This project has no credits remaining for the current period.","code":"insufficient_credits","cost":1,"balance":0,"instance":"req_2Nh4PqRsTuVw"}}},"exampleType":"examples"}},"exampleType":"examples"},"fa37d743-b1c0-4bf6-ae35-7488d1f6bfb5":{"description":"Conflicting state — duplicate slug, race condition, etc.","headers":{"X-Request-Id":{"schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"RFC 7807 problem+json error. The `code` is a stable machine\nidentifier; clients should branch on `code`, never on `title`.\n","required":["type","title","status","code"],"properties":{"type":{"type":"string","format":"uri","example":"https://api.neuraldraft.io/errors/validation_failed","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","example":"Validation failed","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","example":422,"isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Stable machine error code. Standard values:\n`bad_request`, `unauthorized`, `insufficient_credits`,\n`forbidden`, `not_found`, `conflict`, `validation_failed`,\n`rate_limited`, `internal_error`, `service_unavailable`,\n`slot_unavailable`, `connect_not_ready`, `upstream_unavailable`,\n`idempotency_conflict`.\n","example":"validation_failed","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","example":"One or more fields failed validation.","uniqueKey":"detail","typeLabel":"string"},"instance":{"type":"string","description":"Request id (also returned as `X-Request-Id` header).","example":"req_2Nh4PqRsTuVw","uniqueKey":"instance","typeLabel":"string"},"cost":{"type":"integer","description":"Credits the operation requires. Only present on\n`402 insufficient_credits` responses.\n","example":1,"uniqueKey":"cost","typeLabel":"integer"},"balance":{"type":"integer","description":"Credits the project had on hand at the time of the request.\nOnly present on `402 insufficient_credits` responses.\n","example":0,"uniqueKey":"balance","typeLabel":"integer"},"errors":{"type":"object","description":"Field-level validation errors (only on 422).","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"errors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"errors.additionalProperties","typeLabel":"string[]"},"example":{"customer_email":["The customer email field must be a valid email."],"starts_at":["The starts at field must be a valid ISO 8601 date."]},"uniqueKey":"errors","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"slug":{"title":"slug","value":{"type":"https://api.neuraldraft.io/errors/conflict","title":"Conflict","status":409,"detail":"A resource with this slug already exists.","code":"conflict","instance":"req_2Nh4PqRsTuVw"}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"d89a6f08-8c8e-4204-8df4-6d6e14a697c1":{"apiKeyAuth":{"type":"http","scheme":"bearer","bearerFormat":"API Key","description":"Project API key. Pass as `Authorization: Bearer ndsk_live_...`. Manage\nkeys via [`/projects/me/api-keys`](#tag/Projects). Test-mode keys use\nthe `ndsk_test_` prefix.\n","scopes":[],"schemeName":"apiKeyAuth"}}},"servers":{"cf9a8e84-7625-44ea-85d9-7fbebbf681b3":{"url":"https://api.neuraldraft.io/v1","description":"Production"},"991b008b-a935-475a-bfb5-9324cea3f67a":{"url":"https://api.staging.neuraldraft.io/v1","description":"Staging"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"API Key","description":"Project API key. Pass as `Authorization: Bearer ndsk_live_...`. Manage\nkeys via [`/projects/me/api-keys`](#tag/Projects). Test-mode keys use\nthe `ndsk_test_` prefix.\n","scopes":[],"schemeName":"apiKeyAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Project API key. Pass as `Authorization: Bearer ndsk_live_...`. Manage\nkeys via [`/projects/me/api-keys`](#tag/Projects). Test-mode keys use\nthe `ndsk_test_` prefix.\n","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"apiKeyAuth","name":"Authorization"}],"title":"apiKeyAuth"}]},"originalFileLocation":"openapi.yaml"},"subdomain":"neuraldraftltd","siteName":"Neural Draft","title":"Create a product - Neural Draft","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-16T06:53:46.903Z","originalFileLocation":"api-reference/commerce/create-a-product.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=\"application-name\" content=\"Neural Draft\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/neuraldraftltd/BwjzmUGYBo9_BrKS/_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/neuraldraftltd/BwjzmUGYBo9_BrKS/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/neuraldraftltd/BwjzmUGYBo9_BrKS/_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/neuraldraftltd/BwjzmUGYBo9_BrKS/_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/neuraldraftltd/BwjzmUGYBo9_BrKS/_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/neuraldraftltd/BwjzmUGYBo9_BrKS/_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/neuraldraftltd/BwjzmUGYBo9_BrKS/_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/neuraldraftltd/BwjzmUGYBo9_BrKS/_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/neuraldraftltd/BwjzmUGYBo9_BrKS/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create a product - Neural Draft\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Neural Draft\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://neuraldraftltd.mintlify.app/images/og.png\">\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=\"Create a product - Neural Draft\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://neuraldraftltd.mintlify.app/images/og.png\">\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/neuraldraftltd/BwjzmUGYBo9_BrKS/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Neural Draft\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7C3AED\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/commerce/create-a-product.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.neuraldraft.io/#organization\",\"name\":\"Neural Draft\",\"url\":\"https://docs.neuraldraft.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/neuraldraftltd/tMEL4V96iTS6cZl7/logo/light.svg?fit=max\u0026auto=format\u0026n=tMEL4V96iTS6cZl7\u0026q=85\u0026s=55f7c7f9e12950f2c9776c2300528e63\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.neuraldraft.io#website\",\"name\":\"Neural Draft\",\"url\":\"https://docs.neuraldraft.io\",\"publisher\":{\"@id\":\"https://docs.neuraldraft.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product#webpage\",\"url\":\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product\",\"name\":\"Create a product\",\"dateModified\":\"2026-10-16T06:53:46.903Z\",\"isPartOf\":{\"@id\":\"https://docs.neuraldraft.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Commerce\",\"item\":\"https://docs.neuraldraft.io/api-reference/commerce/list-products\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create a product\",\"item\":\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product#apireference\",\"headline\":\"Create a product\",\"name\":\"Create a product\",\"url\":\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product\",\"mainEntityOfPage\":{\"@id\":\"https://docs.neuraldraft.io/api-reference/commerce/create-a-product#webpage\"},\"image\":\"https://docs.neuraldraft.io/images/og.png\",\"dateModified\":\"2026-10-16T06:53:46.903Z\",\"publisher\":{\"@id\":\"https://docs.neuraldraft.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.neuraldraft.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Neural Draft\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Neural Draft","nav":{"global":{"anchors":[{"anchor":"SDK","icon":"github","href":"https://github.com/vbalagovic/neuraldraft-sdk"},{"anchor":"Discord","icon":"discord","href":"https://discord.gg/XCQftzvBQX"}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Health","pages":[{"title":"Liveness probe","deprecated":null,"version":null,"openapi":"/openapi.yaml get /health","href":"/api-reference/health/liveness-probe"},{"title":"Serve this OpenAPI document","deprecated":null,"version":null,"openapi":"/openapi.yaml get /openapi.json","href":"/api-reference/health/serve-this-openapi-document"}]},{"group":"Projects","pages":[{"title":"Get the current project","deprecated":null,"version":null,"openapi":"/openapi.yaml get /projects/me","href":"/api-reference/projects/get-the-current-project"},{"title":"Update the current project","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /projects/me","href":"/api-reference/projects/update-the-current-project"},{"title":"Get credit usage for the current period","deprecated":null,"version":null,"openapi":"/openapi.yaml get /projects/me/usage","href":"/api-reference/projects/get-credit-usage-for-the-current-period"},{"title":"List API keys","deprecated":null,"version":null,"openapi":"/openapi.yaml get /projects/me/api-keys","href":"/api-reference/projects/list-api-keys"},{"title":"Create an API key","deprecated":null,"version":null,"openapi":"/openapi.yaml post /projects/me/api-keys","href":"/api-reference/projects/create-an-api-key"},{"title":"Revoke an API key","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /projects/me/api-keys/{key_id}","href":"/api-reference/projects/revoke-an-api-key"}]},{"group":"Brand","pages":[{"title":"Get the brand context","deprecated":null,"version":null,"openapi":"/openapi.yaml get /brand","href":"/api-reference/brand/get-the-brand-context"},{"title":"Update the brand context","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /brand","href":"/api-reference/brand/update-the-brand-context"}]},{"group":"Content","pages":[{"title":"List content keys","deprecated":null,"version":null,"openapi":"/openapi.yaml get /content","href":"/api-reference/content/list-content-keys"},{"title":"Bulk read content keys","deprecated":null,"version":null,"openapi":"/openapi.yaml get /content/bulk","href":"/api-reference/content/bulk-read-content-keys"},{"title":"Read a single content value","deprecated":null,"version":null,"openapi":"/openapi.yaml get /content/{key}","href":"/api-reference/content/read-a-single-content-value"},{"title":"Set a content value","deprecated":null,"version":null,"openapi":"/openapi.yaml put /content/{key}","href":"/api-reference/content/set-a-content-value"},{"title":"Delete a content key","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /content/{key}","href":"/api-reference/content/delete-a-content-key"},{"title":"Translate a content key","deprecated":null,"version":null,"openapi":"/openapi.yaml post /content/{key}/translate","href":"/api-reference/content/translate-a-content-key"}]},{"group":"Components","pages":[{"title":"Register an editable HTML component","deprecated":null,"version":null,"openapi":"/openapi.yaml post /components/register","href":"/api-reference/components/register-an-editable-html-component"},{"title":"List components","deprecated":null,"version":null,"openapi":"/openapi.yaml get /components","href":"/api-reference/components/list-components"},{"title":"Get a component","deprecated":null,"version":null,"openapi":"/openapi.yaml get /components/{id}","href":"/api-reference/components/get-a-component"},{"title":"Update component HTML","deprecated":null,"version":null,"openapi":"/openapi.yaml put /components/{id}","href":"/api-reference/components/update-component-html"},{"title":"Delete a component","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /components/{id}","href":"/api-reference/components/delete-a-component"}]},{"group":"Pages","pages":[{"title":"List pages","deprecated":null,"version":null,"openapi":"/openapi.yaml get /pages","href":"/api-reference/pages/list-pages"},{"title":"Create a page","deprecated":null,"version":null,"openapi":"/openapi.yaml post /pages","href":"/api-reference/pages/create-a-page"},{"title":"Fetch a page by id or slug","deprecated":null,"version":null,"openapi":"/openapi.yaml get /pages/{id_or_slug}","href":"/api-reference/pages/fetch-a-page-by-id-or-slug"},{"title":"Soft-retire (default) or hard-delete (force=1) a page","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /pages/{id_or_slug}","href":"/api-reference/pages/soft-retire-default-or-hard-delete-force=1-a-page"},{"title":"Update a page (merge semantics on meta)","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /pages/{id_or_slug}","href":"/api-reference/pages/update-a-page-merge-semantics-on-meta"}]},{"group":"Images","pages":[{"title":"Video generation (retired)","deprecated":true,"version":null,"openapi":"/openapi.yaml post /videos","href":"/api-reference/images/video-generation-retired"},{"title":"List registered images","deprecated":null,"version":null,"openapi":"/openapi.yaml get /images","href":"/api-reference/images/list-registered-images"},{"title":"Generate or upload an image","deprecated":null,"version":null,"openapi":"/openapi.yaml post /images","href":"/api-reference/images/generate-or-upload-an-image"},{"title":"Resolve an image by key","deprecated":null,"version":null,"openapi":"/openapi.yaml get /images/{key}","href":"/api-reference/images/resolve-an-image-by-key"},{"title":"Replace an image","deprecated":null,"version":null,"openapi":"/openapi.yaml put /images/{key}","href":"/api-reference/images/replace-an-image"},{"title":"Delete an image","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /images/{key}","href":"/api-reference/images/delete-an-image"}]},{"group":"Galleries","pages":[{"title":"List galleries","deprecated":null,"version":null,"openapi":"/openapi.yaml get /galleries","href":"/api-reference/galleries/list-galleries"},{"title":"Create a gallery","deprecated":null,"version":null,"openapi":"/openapi.yaml post /galleries","href":"/api-reference/galleries/create-a-gallery"},{"title":"Get a gallery","deprecated":null,"version":null,"openapi":"/openapi.yaml get /galleries/{slug}","href":"/api-reference/galleries/get-a-gallery"},{"title":"Delete a gallery","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /galleries/{slug}","href":"/api-reference/galleries/delete-a-gallery"},{"title":"Update a gallery","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /galleries/{slug}","href":"/api-reference/galleries/update-a-gallery"}]},{"group":"Blog","pages":[{"title":"List blog posts","deprecated":null,"version":null,"openapi":"/openapi.yaml get /blog-posts","href":"/api-reference/blog/list-blog-posts"},{"title":"Create a blog post","deprecated":null,"version":null,"openapi":"/openapi.yaml post /blog-posts","href":"/api-reference/blog/create-a-blog-post"},{"title":"Get a blog post","deprecated":null,"version":null,"openapi":"/openapi.yaml get /blog-posts/{id_or_slug}","href":"/api-reference/blog/get-a-blog-post"},{"title":"Delete a blog post","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /blog-posts/{id_or_slug}","href":"/api-reference/blog/delete-a-blog-post"},{"title":"Update a blog post","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /blog-posts/{id_or_slug}","href":"/api-reference/blog/update-a-blog-post"},{"title":"Publish a blog post","deprecated":null,"version":null,"openapi":"/openapi.yaml post /blog-posts/{id}/publish","href":"/api-reference/blog/publish-a-blog-post"},{"title":"Schedule a blog post","deprecated":null,"version":null,"openapi":"/openapi.yaml post /blog-posts/{id}/schedule","href":"/api-reference/blog/schedule-a-blog-post"},{"title":"Translate a blog post","deprecated":null,"version":null,"openapi":"/openapi.yaml post /blog-posts/{id}/translate","href":"/api-reference/blog/translate-a-blog-post"},{"title":"List blog categories","deprecated":null,"version":null,"openapi":"/openapi.yaml get /blog-posts/categories","href":"/api-reference/blog/list-blog-categories"},{"title":"Create a category","deprecated":null,"version":null,"openapi":"/openapi.yaml post /blog-posts/categories","href":"/api-reference/blog/create-a-category"},{"title":"Delete a category","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /blog-posts/categories/{id}","href":"/api-reference/blog/delete-a-category"},{"title":"Update a category","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /blog-posts/categories/{id}","href":"/api-reference/blog/update-a-category"},{"title":"List tags","deprecated":null,"version":null,"openapi":"/openapi.yaml get /blog-posts/tags","href":"/api-reference/blog/list-tags"},{"title":"Create a tag","deprecated":null,"version":null,"openapi":"/openapi.yaml post /blog-posts/tags","href":"/api-reference/blog/create-a-tag"},{"title":"Delete a tag","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /blog-posts/tags/{id}","href":"/api-reference/blog/delete-a-tag"}]},{"group":"Social","pages":[{"title":"List social posts","deprecated":null,"version":null,"openapi":"/openapi.yaml get /social-posts","href":"/api-reference/social/list-social-posts"},{"title":"Create a social post","deprecated":null,"version":null,"openapi":"/openapi.yaml post /social-posts","href":"/api-reference/social/create-a-social-post"},{"title":"Get a social post","deprecated":null,"version":null,"openapi":"/openapi.yaml get /social-posts/{id}","href":"/api-reference/social/get-a-social-post"},{"title":"Delete a social post","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /social-posts/{id}","href":"/api-reference/social/delete-a-social-post"},{"title":"Update a social post","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /social-posts/{id}","href":"/api-reference/social/update-a-social-post"},{"title":"Schedule a social post","deprecated":null,"version":null,"openapi":"/openapi.yaml post /social-posts/{id}/schedule","href":"/api-reference/social/schedule-a-social-post"},{"title":"Publish a social post immediately","deprecated":null,"version":null,"openapi":"/openapi.yaml post /social-posts/{id}/publish","href":"/api-reference/social/publish-a-social-post-immediately"},{"title":"List connected social accounts","deprecated":null,"version":null,"openapi":"/openapi.yaml get /social-accounts","href":"/api-reference/social/list-connected-social-accounts"},{"title":"Initiate OAuth connection","deprecated":null,"version":null,"openapi":"/openapi.yaml post /social-accounts/connect/{platform}","href":"/api-reference/social/initiate-oauth-connection"},{"title":"Disconnect a social account","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /social-accounts/{id}","href":"/api-reference/social/disconnect-a-social-account"}]},{"group":"Booking","pages":[{"title":"List bookable services","deprecated":null,"version":null,"openapi":"/openapi.yaml get /bookable-services","href":"/api-reference/booking/list-bookable-services"},{"title":"Create a bookable service","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bookable-services","href":"/api-reference/booking/create-a-bookable-service"},{"title":"Get a bookable service","deprecated":null,"version":null,"openapi":"/openapi.yaml get /bookable-services/{id}","href":"/api-reference/booking/get-a-bookable-service"},{"title":"Delete a bookable service","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /bookable-services/{id}","href":"/api-reference/booking/delete-a-bookable-service"},{"title":"Update a bookable service","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /bookable-services/{id}","href":"/api-reference/booking/update-a-bookable-service"},{"title":"Look up available slots","deprecated":null,"version":null,"openapi":"/openapi.yaml get /availability","href":"/api-reference/booking/look-up-available-slots"},{"title":"Public availability lookup","deprecated":null,"version":null,"openapi":"/openapi.yaml get /public/availability","href":"/api-reference/booking/public-availability-lookup"},{"title":"List bookings","deprecated":null,"version":null,"openapi":"/openapi.yaml get /bookings","href":"/api-reference/booking/list-bookings"},{"title":"Create a booking (admin)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bookings","href":"/api-reference/booking/create-a-booking-admin"},{"title":"Get a booking","deprecated":null,"version":null,"openapi":"/openapi.yaml get /bookings/{id}","href":"/api-reference/booking/get-a-booking"},{"title":"Cancel a booking","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /bookings/{id}","href":"/api-reference/booking/cancel-a-booking"},{"title":"Update a booking","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /bookings/{id}","href":"/api-reference/booking/update-a-booking"},{"title":"Public booking lookup by reference","deprecated":null,"version":null,"openapi":"/openapi.yaml get /public/bookings/{ref}","href":"/api-reference/booking/public-booking-lookup-by-reference"},{"title":"Embeddable booking widget script","deprecated":null,"version":null,"openapi":"/openapi.yaml get /widgets/booking/{tenant_id}/{service_id}.js","href":"/api-reference/booking/embeddable-booking-widget-script"}]},{"group":"Commerce","pages":[{"title":"List products","description":"Read-only.","deprecated":null,"version":null,"openapi":"/openapi.yaml get /products","href":"/api-reference/commerce/list-products"},{"title":"Create a product","deprecated":null,"version":null,"openapi":"/openapi.yaml post /products","href":"/api-reference/commerce/create-a-product"},{"title":"Get a product","description":null,"deprecated":null,"version":null,"openapi":"/openapi.yaml get /products/{id}","href":"/api-reference/commerce/get-a-product"},{"title":"Delete a product","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /products/{id}","href":"/api-reference/commerce/delete-a-product"},{"title":"Update a product","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /products/{id}","href":"/api-reference/commerce/update-a-product"},{"title":"List product variants","deprecated":null,"version":null,"openapi":"/openapi.yaml get /products/{id}/variants","href":"/api-reference/commerce/list-product-variants"},{"title":"Create a product variant","deprecated":null,"version":null,"openapi":"/openapi.yaml post /products/{id}/variants","href":"/api-reference/commerce/create-a-product-variant"},{"title":"Delete a product variant","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /products/{id}/variants/{variant_id}","href":"/api-reference/commerce/delete-a-product-variant"},{"title":"Update a product variant","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /products/{id}/variants/{variant_id}","href":"/api-reference/commerce/update-a-product-variant"},{"title":"List product categories (tree)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /product-categories","href":"/api-reference/commerce/list-product-categories-tree"},{"title":"Create a product category","deprecated":null,"version":null,"openapi":"/openapi.yaml post /product-categories","href":"/api-reference/commerce/create-a-product-category"},{"title":"Delete a product category","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /product-categories/{id}","href":"/api-reference/commerce/delete-a-product-category"},{"title":"Update a product category","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /product-categories/{id}","href":"/api-reference/commerce/update-a-product-category"},{"title":"List orders","deprecated":null,"version":null,"openapi":"/openapi.yaml get /orders","href":"/api-reference/commerce/list-orders"},{"title":"Create a manual order (admin)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /orders","href":"/api-reference/commerce/create-a-manual-order-admin"},{"title":"Get an order","deprecated":null,"version":null,"openapi":"/openapi.yaml get /orders/{id}","href":"/api-reference/commerce/get-an-order"},{"title":"Public order lookup","deprecated":null,"version":null,"openapi":"/openapi.yaml get /public/orders/{order_number}","href":"/api-reference/commerce/public-order-lookup"},{"title":"Create a Stripe Checkout session","deprecated":null,"version":null,"openapi":"/openapi.yaml post /checkout-sessions","href":"/api-reference/commerce/create-a-stripe-checkout-session"},{"title":"Embeddable product card script","deprecated":null,"version":null,"openapi":"/openapi.yaml get /widgets/product-card/{tenant_id}/{product_id}.js","href":"/api-reference/commerce/embeddable-product-card-script"},{"title":"Embeddable buy-button script","deprecated":null,"version":null,"openapi":"/openapi.yaml get /widgets/buy-button/{tenant_id}/{product_id}.js","href":"/api-reference/commerce/embeddable-buy-button-script"}]},{"group":"Jobs","pages":[{"title":"Get job status","deprecated":null,"version":null,"openapi":"/openapi.yaml get /jobs/{id}","href":"/api-reference/jobs/get-job-status"},{"title":"Stream job progress (SSE)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /jobs/{id}/stream","href":"/api-reference/jobs/stream-job-progress-sse"},{"title":"Cancel a job","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/cancel","href":"/api-reference/jobs/cancel-a-job"}]},{"group":"Webhooks","pages":[{"title":"List webhook endpoints","deprecated":null,"version":null,"openapi":"/openapi.yaml get /webhook-endpoints","href":"/api-reference/webhooks/list-webhook-endpoints"},{"title":"Create a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi.yaml post /webhook-endpoints","href":"/api-reference/webhooks/create-a-webhook-endpoint"},{"title":"Delete a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /webhook-endpoints/{id}","href":"/api-reference/webhooks/delete-a-webhook-endpoint"},{"title":"Update a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /webhook-endpoints/{id}","href":"/api-reference/webhooks/update-a-webhook-endpoint"},{"title":"List recent webhook deliveries","deprecated":null,"version":null,"openapi":"/openapi.yaml get /webhook-deliveries","href":"/api-reference/webhooks/list-recent-webhook-deliveries"},{"title":"Retry a webhook delivery","deprecated":null,"version":null,"openapi":"/openapi.yaml post /webhook-deliveries/{id}/retry","href":"/api-reference/webhooks/retry-a-webhook-delivery"}]},{"group":"Forms","pages":[{"title":"Subscribe to a project newsletter","deprecated":null,"version":null,"openapi":"/openapi.yaml post /newsletters/subscribe","href":"/api-reference/forms/subscribe-to-a-project-newsletter"},{"title":"List newsletter subscribers","deprecated":null,"version":null,"openapi":"/openapi.yaml get /newsletters","href":"/api-reference/forms/list-newsletter-subscribers"},{"title":"Delete (unsubscribe) a newsletter subscriber","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /newsletters/{id}","href":"/api-reference/forms/delete-unsubscribe-a-newsletter-subscriber"},{"title":"List contact-form submissions","deprecated":null,"version":null,"openapi":"/openapi.yaml get /contact-forms","href":"/api-reference/forms/list-contact-form-submissions"},{"title":"Submit a contact form","deprecated":null,"version":null,"openapi":"/openapi.yaml post /contact-forms","href":"/api-reference/forms/submit-a-contact-form"},{"title":"Delete a contact-form submission","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /contact-forms/{id}","href":"/api-reference/forms/delete-a-contact-form-submission"}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"Create a product - Neural Draft","buildId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","deploymentId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DX1Meug0.js","utils-B_OMIQVC.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-ChxhRPMa.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CuKvD8Iv.js","snippetPresets-C5d7p2hp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CfHcE8m4.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C1zZV314.js","shallow-CmQhqCJn.js","getApiPlaygroundDisplay-YRo9s1O7.js","CodeSnippet-RN1MTdfk.js","CodeSnippets-DKLPHxJA.js","Page-BAvA99GL.js","getPastedJson-bz0M41mU.js","icon-CsmhpPrv.js","MethodPill-CNGsVE77.js","DuplicateIcon-DilfU_Z2.js","createIcon-BdsYzQck.js","DynamicMarkdown-CbqEDjbV.js","SectionHeading-O6hXpFCN.js","axios-vUo_bRtp.js","Markdown-nKm-uidQ.js","clsx-ClVdStUn.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CIQkMg3R.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ImrFS4Fy.js"]}