Skip to content

Product

Allowed query parameters

Filters

FilterTypeDescription
searchStringFull-text search (name, sku)
tagStringFilter by tag ID
unitStringFilter by unit ID
vat_rateStringFilter by VAT Rate ID

Sorting

name, price, sku, vat_rate

Includes

tag, unit, account, vatRate

Create a product

post
/product
Attribute (* required)TypeDescription
name *StringProduct name (max: 255 characters)
priceFloat?Product price (max: 999999)
descriptionString?Product description
remarkString?Product remark/notes
skuString?Product SKU (max: 255 characters)
unit_idString?A Unit ID
tag_idString?A Tag ID
vat_rate_idString?A VAT Rate ID
revenue_account_noString?Revenue account number for accounting

Example response

json
// HTTP 201 Created
{
    // a product object
}

Update a product

put
/product/{id}
AttributeTypeDescription
nameStringProduct name (max: 255 characters)
priceFloat?Product price (max: 999999)
descriptionString?Product description
remarkString?Product remark/notes
skuString?Product SKU (max: 255 characters)
unit_idString?A Unit ID
tag_idString?A Tag ID
vat_rate_idString?A VAT Rate ID
revenue_account_noString?Revenue account number for accounting

Example response

json
// HTTP 200 OK
{
    // a product object
}

Retrieve a product

get
/product/{id}

Example response

json
// HTTP 200 OK
{
	"id": "6k2KpJY3By",
	"name": "Analyse der aktuellen Webseite",
	"price": 1675,
	"vat_rate": 7.7,
	"vat_rate_id": "xyz123def",
	"sku": "ART-840",
	"description": "<p>Mittels Heatmap &amp; User Flow Analysen sowie Real-Time Verhaltensanalysen (mittels Screen-Recordings) werden zusammen mit bereits vorliegenden historischen Messdaten Rückschlüsse auf das Nutzerverhalten geschlossen.</p>",
	"remark": null,
	"is_percentage": false,
	"is_excluded_from_budget": false,
	"revenue_account_no": "3200",
	"vat": {
		"id": "xyz123def",
		"name": "7.7%",
		"rate": 7.7
	},
	"rate": null,
	"tag": null,
	"unit": null,
	"account": {
		"number": "3200",
		"name": "Produkterlöse"
	}
}

Delete a product

delete
/product/{id}

Example response

json
// HTTP 204 No Content

List products

get
/product

The list endpoint accepts the same parameters as in Retrieve a product and returns a paginated array of the same product object in the data property.

Read more about Pagination, Filtering, Sorting and Includes on the Introduction page.