GET /orders
Return the orders of the user, paged per 15 orders. Sorted from new to old by default. You can filter the results. If you want to poll for new orders, you should use the future property:
next
value from the API, do immediately another call with the next
query parameters when you finished processing the orders in results
next
value and you received a non-null future
property, then there are no new orders available right now but there might be in the future. Store the future
property somewhere persistent (keep it after a reboot).future
property to the backend and then the backend will give us the new orders together with a next
or future
property.The future object will only be available if it is possible that new orders will match your filtering criteria, when you use ascending sorting (not the default!), and if there are no more results left (next
property is null, results
may stil contain some orders).
This endpoint requires authentication.
Header | Value |
---|---|
Authorization | Set the value to Bearer + + access_token |
Append the querystring with following properties to the URL.
A dictionary with fields
Field | Type | Description |
---|---|---|
status | String | Optional. Only return orders with this status |
created_after | Timestamp | Optional. Only return orders that were placed after (including) this timestamp. Do not use this for pagination as multiple orders might share the same created_at timestamp. |
created_before | Timestamp | Optional. Only return orders that were placed before (including) this timestamp. You can use this together with created_after. Do not use this for pagination as multiple orders might share the same created_at timestamp. |
before_id | Int | Optional. Only return orders created before (not including) the order with the given id. Before isn't the same as smaller, it might return IDs that are larger than the given id from orders that are validated before the given order id! Use for pagination. |
after_id | Int | Optional. Only return orders created after (not including) the order with the given id. After isn't the same as larger, it might return IDs that are smaller than the given id from orders that are validated after the given order id! Use for pagination. |
sort | String | Optional. Sort the results in ascending or descending (default) order by creation date (the date an order is paid or validated). Default is ascending. |
company_id | Int | Optional. Only return orders placed in shops of this company. Using this will ignore the platform. |
GET /orders?status=PENDING&created_after=1657086030&created_before=1657086030&before_id=13&after_id=12&sort=ascending&company_id=11 HTTP/1.1
Host: api.bakeronline.be
X-VERSION: 1.5.0
Accept-Language: en-US,en;q=0.5
Field | Type | Description |
---|---|---|
results | [Order.simple] | Array of Order.simple |
next | Dictionary? | Nullable. Set when we have more results at this moment. It contains the query parameters you need to request the following results. Is null when there are no results left |
future | Dictionary? | Nullable. When all the results have been returned (no next set), but there might be more results in the future, future contains the query parameters you should use to request new results in the future (e.g. in 15 minutes) to know if you have extra results without returning the same results again. |
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 8581
{
"results": [
{
"id": 12,
"status": "PENDING",
"valid": false,
"order_nr": 16,
"prices": {
"price": {
"value": 10,
"currency": "EUR"
},
"discount": {
"value": 12,
"currency": "EUR"
},
"warranty": {
"value": 12,
"currency": "EUR"
},
"delivery_cost": {
"value": 19,
"currency": "EUR"
},
"invoice_cost": {
"value": 17,
"currency": "EUR"
},
"sms_cost": {
"value": 14,
"currency": "EUR"
},
"transaction_cost": {
"value": 19,
"currency": "EUR"
},
"price_to_pay": {
"value": 13,
"currency": "EUR"
},
"price_with_discount": {
"value": 13,
"currency": "EUR"
}
},
"payment_method": "point_of_sale",
"checkout": {
"method": "delivery",
"date": "2019-01-31",
"time": "12:00",
"end_time": "12:00",
"address": {
"street": "Sint-Denijslaan",
"nr": "96",
"zipcode": "9000",
"city": "Gent",
"country": "BE"
},
"notes": "...",
"name": "...",
"latch_id": 12
},
"shop": {
"id": 14,
"name": "Ofelia Beatty",
"address": {
"street": "Sint-Denijslaan",
"nr": "96",
"zipcode": "9000",
"city": "Gent",
"country": "BE",
"position": {
"latitude": 1.54361,
"longitude": 0.45645
}
},
"allow_comments": true,
"currency": "EUR"
},
"created_at": 1657086030,
"joyn": {
"points": 17,
"collect_url": "https://example.com",
"qr_code_url": "https://example.com"
},
"payment_status": "pending",
"currency": "EUR"
},
{
"id": 12,
"status": "PENDING",
"valid": true,
"order_nr": 13,
"prices": {
"price": {
"value": 13,
"currency": "EUR"
},
"discount": {
"value": 17,
"currency": "EUR"
},
"warranty": {
"value": 13,
"currency": "EUR"
},
"delivery_cost": {
"value": 18,
"currency": "EUR"
},
"invoice_cost": {
"value": 16,
"currency": "EUR"
},
"sms_cost": {
"value": 17,
"currency": "EUR"
},
"transaction_cost": {
"value": 13,
"currency": "EUR"
},
"price_to_pay": {
"value": 10,
"currency": "EUR"
},
"price_with_discount": {
"value": 12,
"currency": "EUR"
}
},
"payment_method": "point_of_sale",
"checkout": {
"method": "delivery",
"date": "2019-01-31",
"time": "12:00",
"end_time": "12:00",
"address": {
"street": "Sint-Denijslaan",
"nr": "96",
"zipcode": "9000",
"city": "Gent",
"country": "BE"
},
"notes": "...",
"name": "...",
"latch_id": 15
},
"shop": {
"id": 19,
"name": "Ms. Karine Farrell PhD",
"address": {
"street": "Sint-Denijslaan",
"nr": "96",
"zipcode": "9000",
"city": "Gent",
"country": "BE",
"position": {
"latitude": 1.54361,
"longitude": 0.45645
}
},
"allow_comments": true,
"currency": "EUR"
},
"created_at": 1657086030,
"joyn": {
"points": 11,
"collect_url": "https://example.com",
"qr_code_url": "https://example.com"
},
"payment_status": "pending",
"currency": "EUR"
},
{
"id": 19,
"status": "PENDING",
"valid": true,
"order_nr": 14,
"prices": {
"price": {
"value": 17,
"currency": "EUR"
},
"discount": {
"value": 18,
"currency": "EUR"
},
"warranty": {
"value": 15,
"currency": "EUR"
},
"delivery_cost": {
"value": 13,
"currency": "EUR"
},
"invoice_cost": {
"value": 11,
"currency": "EUR"
},
"sms_cost": {
"value": 16,
"currency": "EUR"
},
"transaction_cost": {
"value": 11,
"currency": "EUR"
},
"price_to_pay": {
"value": 11,
"currency": "EUR"
},
"price_with_discount": {
"value": 11,
"currency": "EUR"
}
},
"payment_method": "point_of_sale",
"checkout": {
"method": "delivery",
"date": "2019-01-31",
"time": "12:00",
"end_time": "12:00",
"address": {
"street": "Sint-Denijslaan",
"nr": "96",
"zipcode": "9000",
"city": "Gent",
"country": "BE"
},
"notes": "...",
"name": "...",
"latch_id": 14
},
"shop": {
"id": 11,
"name": "Cordie Weissnat DVM",
"address": {
"street": "Sint-Denijslaan",
"nr": "96",
"zipcode": "9000",
"city": "Gent",
"country": "BE",
"position": {
"latitude": 1.54361,
"longitude": 0.45645
}
},
"allow_comments": true,
"currency": "EUR"
},
"created_at": 1657086030,
"joyn": {
"points": 18,
"collect_url": "https://example.com",
"qr_code_url": "https://example.com"
},
"payment_status": "pending",
"currency": "EUR"
}
],
"next": {
"status": "PENDING",
"created_after": 1657086030,
"created_before": 1657086030,
"before_id": 17,
"after_id": 14,
"sort": "ascending",
"company_id": 18
},
"future": {
"status": "PENDING",
"created_after": 1657086030,
"created_before": 1657086030,
"before_id": 12,
"after_id": 13,
"sort": "ascending",
"company_id": 18
}
}