Skip to navigation

Update Material

Updates one or more fields on an existing material. Only fields included in the request body are modified; omitted fields are left unchanged.

costForBusiness and costForClient are applied to the material’s default variation — costs are stored per variation, and this is the same variation the material’s cost fields are read from, so the value reads back on the next GET. That makes it the simplest way to reprice a material that has only one variation.

To price a specific variation, or several at once, use PUT /materials/{materialId}/variations.

Requires scope: materials:write

Authentication

API_KEYstring
API Key authentication via header

Path parameters

idUUIDRequired
Material ID.

Request

This endpoint expects an object.
namestringOptional
Updated display name. Maximum 500 characters.
itemNumberstringOptional

Updated item/SKU number. Maximum 255 characters.

brandstringOptional
Updated brand name. Maximum 255 characters.
manufacturerstringOptional
Updated manufacturer name. Maximum 255 characters.
descriptionstringOptional

Updated description. Omitted or null leaves the current value unchanged.

serializedbooleanOptional
Updated serialization flag.
activebooleanOptional

Set to false to deactivate the material.

costForBusinessdoubleOptional

Cost to your business. Applied to the material’s default variation — the same one this resource reports a cost for — so the value reads back on the next GET. Must not be negative. To price a specific variation, use PUT /materials/{materialId}/variations instead.

costForClientdoubleOptional

Price charged to the client. Applied to the material’s default variation, as costForBusiness is. Must not be negative.

Response

This endpoint returns an object.
idUUID
Unique identifier for the material.
namestring
Display name of the material.
activeboolean
Whether the material is currently active in the catalog.
serializedboolean
Whether individual units of this material are tracked by serial number.
categorieslist of strings
List of category names assigned to this material.
tagslist of strings
List of tag names assigned to this material.
createdAtdatetime
ISO 8601 timestamp when the record was created.
updatedAtdatetime
ISO 8601 timestamp when the record was last updated.
itemNumberstringOptional

Item/SKU number for the material.

brandstringOptional
Brand of the material.
manufacturerstringOptional
Manufacturer of the material.
descriptionstringOptional
Detailed description of the material.
materialTypeenumOptional
Classification of the material.
Allowed values:
measurementUnitstringOptional

Unit of measurement (e.g. EA, FT, LB).

costForBusinessdoubleOptional

Internal business cost price in USD, taken from the material’s default variation (“Single”/“Standard”), or its oldest variation when no default exists. Null when the material has no variations.

costForClientdoubleOptional

Client-facing cost price in USD, taken from the material’s default variation (“Single”/“Standard”), or its oldest variation when no default exists. Null when the material has no variations.

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
429
Rate Limit Error