/productsWrite operationCreate a product
Use this operation to create a product. The server validates the complete payload and derives workspace ownership from the authenticated credential. Required scopes, product permissions, sharing rules, workspace locks, and regional cell ownership are enforced for every request. Use a stable Idempotency-Key when retrying so a transport timeout cannot create duplicate work. Finance-protected fields are omitted or rejected unless the credential also has the documented finance scope.
products:writePrepare this request
The builder does not execute requests or persist credentials. Replace the environment-variable placeholder only in your terminal or secret-aware runtime.
Headers
1Idempotency-KeyrequiredUnique request key retained for seven days. Within that window, reuse with different data is rejected.
Request body
application/jsonamountThe amount associated with this product.
annotationThe annotation associated with this product.
costCenterThe cost center associated with this product.
descriptionHuman-readable description of the resource.
disabledWhether this resource is disabled for new use.
financeAccountThe finance account associated with this product.
namerequiredHuman-readable name of the resource.
priceGroupIdsOrdered set of price group identifiers associated with this product.
productGroupIdIdentifier of the product group that contains this product.
productNumberThe product number associated with this product.
purchasePriceRequires products:finance:write when supplied.
retailPriceThe retail price associated with this product.
taxRateThe tax rate associated with this product.
unitThe unit associated with this product.
Responses
9200An idempotent replay of an existing resource.application/json
application/jsonProduct catalog entry. purchasePrice is finance-gated.
The attributes associated with this product.
amountrequiredThe amount associated with this product attributes.
annotationrequiredThe annotation associated with this product attributes.
archivedrequiredWhether this resource is archived.
costCenterrequiredThe cost center associated with this product attributes.
createdAtrequiredTimestamp at which the resource was created.
descriptionrequiredHuman-readable description of the resource.
disabledrequiredWhether this resource is disabled for new use.
financeAccountrequiredThe finance account associated with this product attributes.
namerequiredHuman-readable name of the resource.
priceGroupIdsrequiredOrdered set of price group identifiers associated with this product attributes.
productGroupIdrequiredIdentifier of the product group that contains this product.
productNumberrequiredThe product number associated with this product attributes.
purchasePriceInternal acquisition cost. Present only with products:finance:read.
retailPricerequiredThe retail price associated with this product attributes.
taxRaterequiredThe tax rate associated with this product attributes.
unitrequiredThe unit associated with this product attributes.
updatedAtrequiredTimestamp of the most recent successful update.
idrequiredStable TeamGrid identifier for this resource.
typerequiredCanonical type discriminator for this resource.
Public API representation of meta.
requestIdrequiredUnique identifier assigned to the API request for tracing and support.
201The request to create a product created the resource. The response contains its canonical public representation and request metadata.application/json
application/jsonProduct catalog entry. purchasePrice is finance-gated.
The attributes associated with this product.
amountrequiredThe amount associated with this product attributes.
annotationrequiredThe annotation associated with this product attributes.
archivedrequiredWhether this resource is archived.
costCenterrequiredThe cost center associated with this product attributes.
createdAtrequiredTimestamp at which the resource was created.
descriptionrequiredHuman-readable description of the resource.
disabledrequiredWhether this resource is disabled for new use.
financeAccountrequiredThe finance account associated with this product attributes.
namerequiredHuman-readable name of the resource.
priceGroupIdsrequiredOrdered set of price group identifiers associated with this product attributes.
productGroupIdrequiredIdentifier of the product group that contains this product.
productNumberrequiredThe product number associated with this product attributes.
purchasePriceInternal acquisition cost. Present only with products:finance:read.
retailPricerequiredThe retail price associated with this product attributes.
taxRaterequiredThe tax rate associated with this product attributes.
unitrequiredThe unit associated with this product attributes.
updatedAtrequiredTimestamp of the most recent successful update.
idrequiredStable TeamGrid identifier for this resource.
typerequiredCanonical type discriminator for this resource.
Public API representation of meta.
requestIdrequiredUnique identifier assigned to the API request for tracing and support.
400The request is invalid.application/json
application/jsonThe errors associated with this error.
coderequiredStable machine-readable code for programmatic error or state handling.
detailrequiredThe detail associated with this api error.
sourceThe source associated with this api error.
statusrequiredCanonical status of the resource or operation.
titlerequiredHuman-readable title of the resource.
Request metadata, including the request identifier and pagination state when applicable.
requestIdrequiredUnique identifier assigned to the API request for tracing and support.
401The bearer credential is missing, invalid, expired, or revoked.application/json
application/jsonThe errors associated with this error.
coderequiredStable machine-readable code for programmatic error or state handling.
detailrequiredThe detail associated with this api error.
sourceThe source associated with this api error.
statusrequiredCanonical status of the resource or operation.
titlerequiredHuman-readable title of the resource.
Request metadata, including the request identifier and pagination state when applicable.
requestIdrequiredUnique identifier assigned to the API request for tracing and support.
403The credential has insufficient scope.application/json
application/jsonThe errors associated with this error.
coderequiredStable machine-readable code for programmatic error or state handling.
detailrequiredThe detail associated with this api error.
sourceThe source associated with this api error.
statusrequiredCanonical status of the resource or operation.
titlerequiredHuman-readable title of the resource.
Request metadata, including the request identifier and pagination state when applicable.
requestIdrequiredUnique identifier assigned to the API request for tracing and support.
409The request conflicts with the current resource state.application/json
application/jsonThe errors associated with this error.
coderequiredStable machine-readable code for programmatic error or state handling.
detailrequiredThe detail associated with this api error.
sourceThe source associated with this api error.
statusrequiredCanonical status of the resource or operation.
titlerequiredHuman-readable title of the resource.
Request metadata, including the request identifier and pagination state when applicable.
requestIdrequiredUnique identifier assigned to the API request for tracing and support.
429The credential or source exceeded its rate limit.application/json
application/jsonThe errors associated with this error.
coderequiredStable machine-readable code for programmatic error or state handling.
detailrequiredThe detail associated with this api error.
sourceThe source associated with this api error.
statusrequiredCanonical status of the resource or operation.
titlerequiredHuman-readable title of the resource.
Request metadata, including the request identifier and pagination state when applicable.
requestIdrequiredUnique identifier assigned to the API request for tracing and support.
502The cell-local application returned an invalid response.application/json
application/jsonThe errors associated with this error.
coderequiredStable machine-readable code for programmatic error or state handling.
detailrequiredThe detail associated with this api error.
sourceThe source associated with this api error.
statusrequiredCanonical status of the resource or operation.
titlerequiredHuman-readable title of the resource.
Request metadata, including the request identifier and pagination state when applicable.
requestIdrequiredUnique identifier assigned to the API request for tracing and support.
503A required cell-local dependency is unavailable.application/json
application/jsonThe errors associated with this error.
coderequiredStable machine-readable code for programmatic error or state handling.
detailrequiredThe detail associated with this api error.
sourceThe source associated with this api error.
statusrequiredCanonical status of the resource or operation.
titlerequiredHuman-readable title of the resource.
Request metadata, including the request identifier and pagination state when applicable.
requestIdrequiredUnique identifier assigned to the API request for tracing and support.
Thank you. The rating contains no account or customer data.