Products
Create a product
Create a product in your organisation, optionally with nested prices, contributors, collections, and collateral.
POST
Creates a product scoped to the authenticated organisation. You can include
related records in the same request.
Required:
title
Optional nested arrays on create:
product_form_id is accepted on write but stored on the linked format (when
format_id is set), not on the product row itself. license_id must belong
to the same organisation.Headers
string
required
Organisation API key.
string
default:"1.0"
API version. Use
1.0.string
required
Must be
application/json.Body
string
required
Product title.
string
Subtitle.
string
ISBN-13.
string
ISBN-10.
integer
Positive page count.
string
Publication date string (nullable).
string
Format UUID.
string
Parent title UUID (nullable).
string
Publishing status UUID (ONIX List 64). Pass
null to clear on update.string
Product availability UUID (ONIX List 65).
string
Lifecycle status UUID.
string
Organisation license UUID. Must belong to the authenticated organisation.
Omit to create without a license.
string
Season UUID.
string
Publisher UUID.
string
Division UUID.
string
Imprint UUID.
string
Series collection UUID. Must be one of the product’s attached collections when
set.
string
Product form UUID. Synced to the linked format when
format_id is present.string
One of
normal, kit, kit_part, indent, charge, special,
trade_only.string
Absolute URL for the cover image.
object[]
Nested price rows. Each entry requires
currency_code. Optional fields
include retail_price, retail_price_inc_tax, list_price, tax_rate,
is_default, valid_from, and valid_to (YYYY-MM-DD).object[]
Nested packing rows. Each entry requires
unit_of_measure: inner, outer,
or pallet.object[]
Nested contributor links with
contributor_id and contributor_role_id.object[]
Nested collection membership with
collection_id.object[]
Nested collateral items. Discriminated by
collateral_type: text_content,
cited_content, or award.object[]
Custom field values. Each entry has
field_id and field_value
(string, number, boolean, or null). Duplicate field_id values are rejected.Response
Returns 201 with the enriched product indata.
boolean
required
true when the product is created.object
required
Created product, including enriched display fields such as
license_name.Errors
Last modified on July 22, 2026