Accept order
Call when an order has been accepted. An order can only be accepted if it hasn't previously been accepted, rejected, cancelled or ignored
Call when an order has been accepted. An order can only be accepted if it hasn't previously been accepted, rejected, cancelled or ignored
This webhook will be invoked whenever acceptance has been requested for the order.
Add reason and optional comments in case of rejection of order claim
Add additional restaurants to a delivery pool
This webhook will be invoked whenever an attempted delivery query has been resolved.
Call when an order has been cancelled by Ops. Cancelling an order overrides any previous accept/reject calls. This should not be used for restaurant rejection but only from Ops involvement
Call when an order is complete. An order can only be marked as complete if it hasn't already been marked as cancelled or complete.
A delivery pool is a named group of drivers which deliver food for a set of restaurants.
When an order is cancelled the restaurant might be eligible for compensation, this endpoint allows a request for compensation to be created.
Creates a consumer for the given tenant.
Creates an event for the specified restaurants that indicates a reason for those restaurants to be offline.
This will begin an asynchronous process that will lead to that menu becoming live on the Just Eat platform
Creates or Updates the fees for a restaurant in a particular tenant
Creates or updates the service times (the weekly times at which a restaurant is in service for delivery or collection) for a restaurant
Create order
This webhook will be invoked whenever the customer responds to the attempted delivery notification.
The restaurants will no longer be associated with the pool.
Removes specified restaurant from offline events. If role header is `System` or `Operations` only events created by the specified role will be affected. If role header is `Restaurant` then all events that have `allowRestaurantOverride=true` will be affected.
If the customer hasn't answered the door to collect the order, then an attempted delivery event can be created using this endpoint.
This webhook will be invoked whenever an attempted delivery event is created from the device.
Driver Assigned to Delivery
Driver at delivery address
Driver at restaurant
Driver has delivered order
Driver Location
Driver on their way to delivery address
Get all availabilities on the restaurant's menu
Get all categories on the restaurant's menu
Get all item IDs which are assigned to the specified category
Get all deal groups for the menu item with the provided ID
Get all modifier groups for the menu item with the provided ID
Get all variations for the menu item with the provided ID
Get all menu items on the restaurant's menu
A delivery pool is a named group of drivers which deliver food for a set of restaurants.
Provides auto-completed search terms for restaurants, cuisines and products available in a given location.
Get the current amount of time it will take a driver to collect a new order from a restaurant in the pool.
Gets a collection of times for when an order can be fulfilled.
Get channel subscriptions for a given consumer's communication preference type
Get the details required to fulfil an order, which includes: - The restaurant selling the items to be purchased - The customer making the purchase - How, where and when the items will be received by the customer - Instructions about the order
Provides claims for a given restaurant with optional filtering
Get all communication preferences for a given consumer.
Currently this operation only supports retrieving a count of consumer accounts given an email address.
Get delivery estimate
Get information about a order claim
Get details of the restaurant's product catalogue
Retrieve delivery fees for many restaurants. Returns fees and minimum order values required for delivery orders.
Get the fees currently applied to a restaurant in a particular tenant
Provides details of all restaurants that deliver to the specified location
Provides details of restaurants that deliver to the specified postcode
Gets the service times (the weekly times at which a restaurant is in service for delivery or collection) for a restaurant
Get list of the delivery and collection lead times supplied by the restaurant
A delivery pool is a named group of drivers which deliver food for a set of restaurants.
Call when an order has been ignored by restaurant. An order can only be ignored if it hasn't previously been accepted, rejected, cancelled or ignored
This webhook will be invoked when a late order compensation query has been raised and a restaurant response is required.
This webhook will be invoked when a late order query has been raised and a restaurant response is required.
Call when a collection order is ready to be collected by the customer. An order can only be marked as ready for collection if it is a collection order in the accepted state.
Callback to confirm that an attempt to ingest a menu has completed either successfully or unsuccessfully
Modify a delivery pool, changing its name, restaurants or both
This webhook will be invoked whenever the order was accepted.
This webhook will be invoked whenever the order was cancelled.
This webhook will be invoked for every cancelled order and it will inform if the order is eligible for compensation.
<p>The "Ready for pickup" event lets the delivery partner know that the food has been cooked and is now ready for collection up from the restaurant.</p><p>When this event is received, it is important that you let your driver know that the order should now be collected from inside the restaurant. For example, this driver notification could take the form of an in-app notification or an SMS message.</p><p>This communication is needed to support restaurants who are unable to accommodate drivers inside their premises, as it allows restaurants to notify drivers waiting outside that they should come inside to collect their order.</p><p>NB; This event can be sent by the restaurant at any point after the order is accepted by the restaurant (for instance, this event may be sent before the driver has arrived at the restaurant).</p>
This webhook will be invoked when we have determined that an order is ready for preparation. Upon receiving the request, you should perform any preparation-related activities, such as sending the order to the POS system / kitchen screen. **NOTE:** This version of the webhook is asynchronous, and we expect a response in two parts: 1. We expect an immediate `202` response from this webhook to denote that you have received the request; 2. Following that, we expect an [async callback](#section/Async-Webhooks) - indicating either success or failure of the operation. The body for the async callbacks are as below: **Success callback** ``` { "status": "Success", "message": "Order successfully sent to POS", "data": {} } ``` **Failure callback** ``` { "status": "Failure", "message": "{errorMessage}", // e.g. "The POS is currently in use" "data": {} } ```
This webhook will be invoked when we have determined that an order is ready for preparation. Upon receiving the request, you should perform any preparation-related activities, such as sending the order to the POS system / kitchen screen.
This webhook will be invoked whenever the order was rejected.
This webhook will be invoked when we have determined that an order is required acceptance for delivery. Upon receiving the request, the order should be scheduled for pickup by a courier/driver. We expect an immediate `201` response from this webhook to denote that you have received the request.
Callback to notify recipients that there has been a change to the restaurant order times for a given day and service type
Call when an order has been rejected. An order can only be rejected if it hasn't previously been accepted, rejected, cancelled or ignored
Remove restaurants from a delivery pool
Remove subscription of a specific communication preference channel.
Replace an existing delivery pool changing all of its properties
If the customer responds, then you can trigger the redelivery of an order through this endpoint
If a customer has requested an update on the status of a late order, a response can be given by calling this endpoint.
Callback to notify that a restaurant has been taken offline through an active Restaurant Event or there's been a change in whether the restaurant can override a previous offline status.
Callback to notify that a restaurant is now able to come back online as there are no longer any active offline Restaurant Events
Get restaurants available in a given lat-long which match a search term. Matches can be found against the name, a cuisine or a product.
This webhook will be invoked if we experience an error or timeout in sending an order to the underlying POS / kitchen screen. When notified via this webhook, typically you will perform some form of alerting or backup flow (e.g. ask the operator to enter the order manually into the POS). NOTE: This message contains the `OrderId`, but not the full order. It is assumed that you have stored/cached the full order details earlier in the flow - e.g. via the [/order-ready-for-preparation](#/paths/~1order-ready-for-preparation-sync/post) webhook.
Set the average amount of time it will take a driver to collect a new order from a restaurant in the pool.
Set the average amount of time it will take a driver to collect a new order from a restaurant.
Set only the channel subscriptions for a given consumer's communication preference type. E.g., An empty list of subscribed Channels implies unsubscribe from all channels.
Set the daily start and end times for a pool or set closed flag if the pool does not operate on that day. Start and end times for all days must be provided. Though the API accepts array of start and end times for each day, multiple start and end time for a day are not accepted. If the end time for a day is equal to or before start time, end time will be considered as time for the next day.
Submit a restaurant response for the claim, where the restaurant can tell us if they accept or reject the claim
Subscribe to a specific communication preference channel.
Update the details required to fulfil an order, which includes: - The customer making the purchase - Where and when the items will be received by the customer - Instructions about the order
If a customer has requested compensation for a late order, a restaurant response is given by calling this endpoint.
Use this to update the estimated time of arrival for an order (i.e. when you expect the customer to receive the food). NOTE: An initial estimate is given [upon acceptance](#/paths/~1orders~1{orderId}~1accept/put). This endpoint can be used to update that estimate.
The _delivered_ callback should be sent when the driver has handed the food to the customer and completed the order.
The _driver assigned_ callback should be sent when a driver is assigned to the order. It should communicate important details about the driver - and also an estimated time for the driver to arrive at the restaurant and delivery address.
<p>The _at delivery address_ callback should be sent when the driver thinks that they have arrived at the specified delivery address.</p><p>NB; This callback should be distinct from the delivered callback, as Just Eat use this callback to understand how much time is spent locating the customer's address.</p>
The _at restaurant_ callback should be sent when the driver arrives at the restaurant and is ready to collect the order.
The _on its way_ callback should be sent when the driver departs the restaurant with the customer's order. It should contain an ETA that records when the driver expects to arrive at the customer's address.
The _driver unassigned_ callback should be sent when a driver is unassigned from the order. It may details about the reason for cancelling the assignment, the driver details, and any newer at restaurant and customer estimations.
<p>Just Eat requires all delivery partners to send regular driver location callbacks, that record the GPS location of the drivers assigned to each order</p><p>Partners should aim to supply this callback approximately every 10 seconds.</p><p>Please provide an up-to-date ETA for when the driver will reach the restaurant in this request - this value is significant since it informs when a restaurant is instructed to start preparing food - when the time remaining between current time and the estimated time of arrival becomes less than the restaurant's configured preparation time, food preparation is initiated</p><p>Note that at restaurant Eta provided in this request will NOT override any ETA set in the Driver At Restaurant Eta request</p>
<p>In the UK, this endpoint updates the estimated arrival time at the restaurant. This value can be overridden from other endpoints like <a href="https://uk.api.just-eat.io/docs#tag/Order-Delivery-API/paths/~1orders~1{orderId}~1deliverystate~1driverlocation/put">Driver Locations</a> </p> <p> This endpoint should be used to set initial at restaurant ETAs prior to driver assignment where available. The earlier a delivery partner is able to provide an estimate of when the driver will arrive at the restaurant the more likely it is that driver arrival and order preparation will be aligned. </p> <p> In other tenants (Not UK):Note that if set for a given order, this Eta will NOT be overridden by any other at restaurant ETAs provided in `DriverAssigned` or `DriverLocation` requests</p> <p>This value is significant since it informs when a restaurant is instructed to start preparing food. When the time remaining between current time and the estimated time of arrival becomes less than the restaurant's configured preparation time, food preparation is initiated</p>
Update the restaurant's delivery and collection lead times
Tell us which provider you need, and we will ship it in the registry.
Point swirls add at an OpenAPI or GraphQL spec. Typed actions for any API you hold credentials for, today.