Printago API
POST /v1/skus

Create a new SKU

Requires: sku.create

Request Body

The SKU data including name, price, and linked parts

SkuInsert
descriptionrequired
string
externalIdrequired
string
externalProviderrequired
any
folderIdoptional
string
inputsoptional
object[]
connectedPropertyIdoptional
string
idoptional
string
namerequired
string
typerequired
any
linkedPartsrequired
object[]
exposedParametersrequired
string[]
extensionsoptional
object
labelrequired
string
materialAssignmentsoptional
Record<string, object[]>
parameterBindingsoptional
Record<string, string>
parametersrequired
object[]
namerequired
string
typerequired
any
valueoptional
number | string | boolean
partIdrequired
string
pattern: ^[a-z0-9]{24}$
plateQuantitiesBindingoptional
string
quantityrequired
number
min: 0max: 500
skuIdoptional
string
pattern: ^[a-z0-9]{24}$
optionBindingsoptional
string[]
skurequired
string
titlerequired
string

Example Request

application/json
{
  "linkedParts": [
    {
      "skuId": "string",
      "parameters": [
        {
          "name": "string"
        }
      ],
      "partId": "string",
      "quantity": 0,
      "label": "string",
      "exposedParameters": [
        "string"
      ]
    }
  ],
  "inputs": [
    {
      "id": "string",
      "name": "string"
    }
  ],
  "optionBindings": [
    "string"
  ],
  "description": "string",
  "sku": "string",
  "title": "string"
}

Response Schema

SkuLinkedPartsRelation
createdAtrequired
string
format: date-time
descriptionrequired
string
externalIdrequired
string
externalProviderrequired
any
folderIdoptional
string
idrequired
string
pattern: ^[a-z0-9]{24}$
linkedPartsrequired
object[]
createdAtrequired
string
format: date-time
exposedParametersrequired
string[]
extensionsoptional
object
idrequired
string
pattern: ^[a-z0-9]{24}$
labelrequired
string
materialAssignmentsoptional
Record<string, object[]>
parameterBindingsoptional
Record<string, string>
parametersrequired
object[]
namerequired
string
typerequired
any
valueoptional
number | string | boolean
partIdrequired
string
pattern: ^[a-z0-9]{24}$
plateQuantitiesBindingoptional
string
quantityrequired
number
min: 0max: 500
skuIdrequired
string
pattern: ^[a-z0-9]{24}$
storeIdrequired
string
pattern: ^[a-z0-9]{24}$
updatedAtrequired
string
format: date-time
skurequired
string
storeIdrequired
string
pattern: ^[a-z0-9]{24}$
titlerequired
string
totalCogsrequired
number
updatedAtrequired
string
format: date-time

Example Response

201 OK — application/json
{
  "sku": "string",
  "title": "string",
  "description": "string",
  "totalCogs": 1,
  "id": "string",
  "storeId": "string",
  "createdAt": "2026-08-24T03:58:56.144Z",
  "updatedAt": "2026-08-24T03:58:56.144Z",
  "linkedParts": [
    {
      "skuId": "string",
      "partId": "string",
      "parameters": [
        {
          "name": "string"
        }
      ],
      "quantity": 0,
      "label": "string",
      "exposedParameters": [
        "string"
      ],
      "id": "string",
      "storeId": "string",
      "createdAt": "2026-08-24T03:58:56.144Z",
      "updatedAt": "2026-08-24T03:58:56.144Z"
    }
  ]
}