Offsys documentatie
Producten
Producten
Lijst
| Veld | Waarde | Verplicht | Omschrijving |
|---|---|---|---|
| group | Getal | Nee | Alleen producten uit deze productgroep |
| website | 1 of 0 | Nee | 1 voor alleen de producten die op de website getoond mogen worden |
| page | Getal | Nee | Zie pagina's |
| per_page | Getal | Nee | Zie pagina's |
Voorbeeld:
curl "https://api.offsys.nl/products?website=1" \-X GET \-H "Authorization: 37d37675-59cd-431c-8d28-9553de7bae4d"Resultaat:
{ "status": "success", "products": [ { "id": "1001", "name": "Partytent 6x3 meter", "description": "Witte partytent met zijwanden", "price_excl": "275.00", "vat": 21, "deposit": "50.00", "options": { "name": "Kleur zijwanden", "labels": ["Kleur"], "values": ["Wit", "Transparant"] }, "image": "https://cdn.offsys.nl/products/partytent.jpg", "group": { "id": 12, "name": "Tenten" }, "show_on_website": true, "variants": [], "pricing_method": "fixed" }, { "id": "1010", "name": "Aanhanger", "description": "", "vat": 21, "deposit": "100.00", "options": [], "image": null, "group": { "id": 14, "name": "Transport" }, "show_on_website": true, "variants": [ { "id": 7, "name": "Met huif", "price_excl": null, "tiers": [ { "amount": 4, "unit": "uur", "price": "40.00" }, { "amount": 1, "unit": "dag", "price": "65.00" } ], "extra_unit": "dag", "extra_price": "45.00" } ], "pricing_method": "period", "tiers": [ { "amount": 4, "unit": "uur", "price": "35.00" }, { "amount": 1, "unit": "dag", "price": "55.00" }, { "amount": 3, "unit": "dag", "price": "140.00" } ], "extra_unit": "dag", "extra_price": "40.00" } ], "meta": { "total": 2, "per_page": 100, "current_page": 1, "last_page": 1 }}| Veld | Omschrijving |
|---|---|
| id | Productnummer. Gebruik dit bij orderregels |
| price_excl | Prijs. Ontbreekt bij een prijs per periode |
| vat | Btw-percentage |
| deposit | Borg |
| options | De productoptie. Per label kiest de klant één van de values |
| image | Link naar de afbeelding |
| group | De productgroep |
| show_on_website | Of het product op de website getoond mag worden |
| variants | De varianten, elk met een eigen id, name en prijs |
| pricing_method | fixed voor een vaste prijs, period voor een prijs per periode |
Prijs per periode
Bij pricing_method period hangt de prijs af van de huurduur. In plaats van price_excl staan er dan deze velden:
| Veld | Omschrijving |
|---|---|
| tiers | De staffel. Elke regel geeft de prijs voor maximaal amount uur of dag |
| extra_unit | uur of dag |
| extra_price | Prijs per extra uur of dag boven de hoogste regel |
Zijn er uur- en dagprijzen, dan gelden de uurprijzen tot en met het hoogste aantal uren. Met de staffel uit het voorbeeld kost de aanhanger 5 dagen 140.00 + 2 × 40.00 = 220.00.
Een variant zonder eigen staffel gebruikt die van het product.
Voor een order hoef je dit niet zelf uit te rekenen: zonder prijs bij een orderregel doet Offsys dat. Zie orders.
Detail
Haal één product op met het productnummer.
Voorbeeld:
curl "https://api.offsys.nl/product/1001" \-X GET \-H "Authorization: 37d37675-59cd-431c-8d28-9553de7bae4d"Resultaat:
{ "status": "success", "product": { "name": "Partytent 6x3 meter", "description": "Witte partytent met zijwanden", "price_excl": "275.00", "vat": 21, "deposit": "50.00", "options": { "name": "Kleur zijwanden", "labels": ["Kleur"], "values": ["Wit", "Transparant"] }, "image": "https://cdn.offsys.nl/products/partytent.jpg", "stock": 4, "group": { "id": 12, "name": "Tenten" }, "show_on_website": true, "pricing_method": "fixed", "reserved_by_date": { "2026-06-12": [ { "type": "order", "amount": 2, "from": "10:00", "till": null, "preparation_from": null, "aftercare_till": null, "buffer_only": false, "expires_at": null } ] }, "variants": [] }}Dezelfde velden als bij Lijst, plus de voorraad en de reserveringen per dag.
Productgroepen
Gebruik het id om producten per groep op te halen: /products?group=12.
Voorbeeld:
curl "https://api.offsys.nl/productgroups" \-X GET \-H "Authorization: 37d37675-59cd-431c-8d28-9553de7bae4d"Resultaat:
{ "status": "success", "productgroups": [ { "id": 12, "name": "Tenten" }, { "id": 14, "name": "Transport" } ], "meta": { "total": 2, "per_page": 100, "current_page": 1, "last_page": 1 }}