Copy PageCreate a materialpost https://api.katanamrp.com/v1/materialsCreates a material object.Recent RequestsLog in to see full request historyTimeStatusUser Agent Retrieving recent requests…LoadingLoading…Body Paramsnew material detailsnamestringrequireduomstringlength ≤ 7category_namestringdefault_supplier_idinteger≤ 2147483647additional_infostringbatch_trackedbooleantruefalseis_sellablebooleantruefalsepurchase_uomstringlength ≤ 7purchase_uom_conversion_ratenumber≤ 1000000000000configsarray of objectslength ≥ 1configs objectnamestringrequiredvaluesarray of stringsrequiredvalues*ADD stringADD objectcustom_field_collection_idinteger | null≤ 2147483647Custom fields collection the item draws its legacy {field_name, field_value} custom fields from. Belongs to the legacy representation only — sending it together with object-form custom_fields is rejected with a 422. See the X-Custom-Fields-Format header.variantsarray of objectsrequiredlength ≥ 1variants* objectskustringpurchase_pricenumber | null0 to 100000000000internal_barcodestringlength between 3 and 40registered_barcodestringlength between 3 and 40supplier_item_codesarray of stringssupplier_item_codesADD stringlead_timenumber | null0 to 999minimum_order_quantitynumber | null0 to 999999999config_attributesarray of objectslength ≥ 1config_attributes objectconfig_namestringrequiredconfig_valuestringrequiredADD objectcustom_fieldsCustom field values on the variant. Served in one of two representations depending on the account — the legacy {field_name, field_value} array, or an object keyed by custom field definition id. See the X-Custom-Fields-Format header for how the representation is chosen, and note that a single request must not mix the two.objectarraycustom_fields objectADD objectHeadersX-Custom-Fields-FormatstringenumSelects the representation of custom_fields on items, for both the request body and the response. default — object keyed by custom field definition id (UUID). legacy — the {field_name, field_value} array tied to custom fields collections. Most accounts do not need this header: an account that has not moved to item custom fields always gets legacy, and an account that has moved and no longer uses collections always gets the object representation. The header matters only while both are available for the account, where legacy is the default and default opts into the object representation. Requesting a representation the account does not have returns 422, as does sending a custom_fields body whose shape does not match the representation in force, mixing both shapes in one request, or combining custom_field_collection_id with the object representation — that field belongs to the legacy representation and is left out of responses entirely under the object one. Responses vary on this header.defaultlegacyAllowed:defaultlegacyResponses 200New material created 401Make sure you've entered your API token correctly. 422Check the details property for a specific error message. 429The rate limit has been reached. Please try again later. 500The server encountered an error. If this persists, please contact supportUpdated 5 months ago The material objectList all materialsDid this page help you?YesNo