Product: type: object properties: id: type: string description: 'The hashed product ID.' example: eP01N readOnly: true user_id: type: string description: 'The hashed ID of the user that created this product.' example: n30m4 readOnly: true assigned_user_id: type: string description: 'The hashed ID of the user assigned to this product.' example: pR0j3 project_id: type: string description: 'The hashed ID of the project that this product is associated with.' example: pR0j3 vendor_id: type: string description: 'The hashed ID of the vendor that this product is associated with.' example: pR0j3 custom_value1: type: string description: 'Custom value field 1.' example: 'Custom value 1' custom_value2: type: string description: 'Custom value field 2.' example: 'Custom value 2' custom_value3: type: string description: 'Custom value field 3.' example: 'Custom value 3' custom_value4: type: string description: 'Custom value field 4.' example: 'Custom value 4' product_key: type: string description: 'The product key.' example: '1234' notes: type: string description: 'Notes about the product.' example: 'These are some notes about the product.' cost: type: number format: double description: 'The cost of the product. (Your purchase price for this product)' example: 10.0 price: type: number format: double description: 'The price of the product that you are charging.' example: 20.0 quantity: type: number format: double description: 'The quantity of the product. (used as a default)' example: 5.0 tax_name1: type: string description: 'The name of tax 1.' example: 'Tax 1' tax_rate1: type: number format: double description: 'The rate of tax 1.' example: 10.0 tax_name2: type: string description: 'The name of tax 2.' example: 'Tax 2' tax_rate2: type: number format: double description: 'The rate of tax 2.' example: 5.0 tax_name3: type: string description: 'The name of tax 3.' example: 'Tax 3' tax_rate3: type: number format: double description: 'The rate of tax 3.' example: 0.0 archived_at: type: integer format: timestamp description: 'The timestamp when the product was archived.' example: '2022-03-18T15:00:00Z' readOnly: true created_at: type: integer format: timestamp description: 'The timestamp when the product was created.' example: '2022-03-18T15:00:00Z' readOnly: true updated_at: description: Timestamp type: integer format: timestamp example: '2022-03-18T12:34:56.789Z' readOnly: true is_deleted: type: boolean description: 'Boolean flag determining if the product has been deleted' example: false readOnly: true in_stock_quantity: type: integer format: int32 description: The quantity of the product that is currently in stock default: 0 stock_notification: type: boolean description: Indicates whether stock notifications are enabled for this product default: true stock_notification_threshold: type: integer format: int32 description: The minimum quantity threshold for which stock notifications will be triggered default: 0 max_quantity: type: integer format: int32 description: The maximum quantity that can be ordered for this product product_image: type: string description: The URL of the product image format: uri-reference tax_id: type: string default: '1' description: | The tax category id for this product.' The following constants are available (default = '1') ``` PRODUCT_TYPE_PHYSICAL = '1' PRODUCT_TYPE_SERVICE = '2' PRODUCT_TYPE_DIGITAL = '3' PRODUCT_TYPE_SHIPPING = '4' PRODUCT_TYPE_EXEMPT = '5' PRODUCT_TYPE_REDUCED_TAX = '6' PRODUCT_TYPE_OVERRIDE_TAX = '7' PRODUCT_TYPE_ZERO_RATED = '8' PRODUCT_TYPE_REVERSE_TAX = '9' ``` example: '1'