Just Eat Order Delivery API
The Order Delivery API API from Just Eat — 10 operation(s) for order delivery api.
The Order Delivery API API from Just Eat — 10 operation(s) for order delivery api.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/just-eat-order-delivery-api-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
contact:
x-twitter: JustEatUK
description: '# Just Eat API
Just Eat offers services for our various business partners and our consumer applications.'
title: Just Eat UK Order Delivery API
version: 1.0.0
x-apisguru-categories:
- ecommerce
x-logo:
url: https://api.apis.guru/v2/cache/logo/https_twitter.com_JustEatUK_profile_image.png
x-origin:
- format: openapi
url: https://uk.api.just-eat.io/docs/openapi.json
version: '3.0'
x-providerName: just-eat.co.uk
servers:
- description: Production URL for the UK API
url: https://uk.api.just-eat.io
- description: Production URL for the DK, ES, IE, IT and NO API
url: https://i18n.api.just-eat.io
- description: Production URL for the AU and NZ API
url: https://aus.api.just-eat.io
tags:
- name: Order Delivery API
paths:
/delivery/estimate:
get:
deprecated: true
parameters:
- description: The reference of the restaurant to estimate the delivery time from.
in: query
name: restaurantReference
required: true
schema:
type: string
- description: The latitude of the position to estimate the delivery time to.
in: query
name: toLat
required: false
schema:
type: string
- description: The longitude of the position to estimate the delivery time to.
in: query
name: toLon
required: false
schema:
type: string
- description: The postcode to estimate the delivery time to.
in: query
name: toPostcode
required: false
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/estimated-delivery-time'
description: OK
summary: Get delivery estimate
tags:
- Order Delivery API
operationId: getDeliveryEstimate
x-operation-id-source: derived
/orders/deliverystate/driverlocation:
put:
description: Current driver location (bulk upload)
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/bulk-delivery-details-list'
required: true
responses:
'200':
description: OK
summary: Update current driver locations (bulk upload)
tags:
- Order Delivery API
operationId: putOrdersDeliverystateDriverlocation
x-operation-id-source: derived
/orders/{orderId}/deliverystate/atdeliveryaddress:
put:
description: 'The _at delivery address_ callback should be sent when the driver thinks that they have arrived at the specified delivery address.
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.'
parameters:
- description: Just Eat order identifier
in: path
name: orderId
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/delivery-details'
required: true
responses:
'200':
description: OK
summary: Update order with driver at delivery address details
tags:
- Order Delivery API
operationId: putOrdersByOrderIdDeliverystateAtdeliveryaddress
x-operation-id-source: derived
/orders/{orderId}/deliverystate/atrestaurant:
put:
description: The _at restaurant_ callback should be sent when the driver arrives at the restaurant and is ready to collect the order.
parameters:
- description: Just Eat order identifier
in: path
name: orderId
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/delivery-driver-details-with-eta'
required: true
responses:
'200':
description: OK
summary: Update order with driver at restaurant details
tags:
- Order Delivery API
operationId: putOrdersByOrderIdDeliverystateAtrestaurant
x-operation-id-source: derived
/orders/{orderId}/deliverystate/atrestauranteta:
put:
description: 'In the UK, this endpoint updates the estimated arrival time at the restaurant. This value can be overridden from other endpoints like Driver Locations
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.
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
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'
parameters:
- description: Just Eat order identifier
in: path
name: orderId
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/eta-estimate'
required: true
responses:
'200':
description: OK
summary: Update the driver's estimated time to arrive at the Restaurant
tags:
- Order Delivery API
operationId: putOrdersByOrderIdDeliverystateAtrestauranteta
x-operation-id-source: derived
/orders/{orderId}/deliverystate/delivered:
put:
description: The _delivered_ callback should be sent when the driver has handed the food to the customer and completed the order.
parameters:
- description: Just Eat order identifier
in: path
name: orderId
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/delivery-details'
required: true
responses:
'200':
description: OK
summary: Update order with delivered details
tags:
- Order Delivery API
operationId: putOrdersByOrderIdDeliverystateDelivered
x-operation-id-source: derived
/orders/{orderId}/deliverystate/driverassigned:
put:
description: 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.
parameters:
- description: Just Eat order identifier
in: path
name: orderId
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/delivery-driver-assigned-details'
required: true
responses:
'200':
description: OK
summary: Update order with driver assigned details
tags:
- Order Delivery API
operationId: putOrdersByOrderIdDeliverystateDriverassigned
x-operation-id-source: derived
/orders/{orderId}/deliverystate/driverlocation:
put:
description: 'Just Eat requires all delivery partners to send regular driver location callbacks, that record the GPS location of the drivers assigned to each order
Partners should aim to supply this callback approximately every 10 seconds.
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
Note that at restaurant Eta provided in this request will NOT override any ETA set in the Driver At Restaurant Eta request'
parameters:
- description: Just Eat order identifier
in: path
name: orderId
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/delivery-driver-location'
required: true
responses:
'200':
description: OK
summary: Update the driver's current location
tags:
- Order Delivery API
operationId: putOrdersByOrderIdDeliverystateDriverlocation
x-operation-id-source: derived
/orders/{orderId}/deliverystate/driverunassigned:
put:
description: 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.
parameters:
- description: Just Eat order identifier
in: path
name: orderId
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/delivery-driver-unassigned-details'
required: true
responses:
'200':
description: OK
'400':
content:
application/json:
example:
partnerId:
- Partner id was not found or could not be parsed
schema:
$ref: '#/components/schemas/extensibleObject'
description: Bad Request.
summary: Update order with driver unassigned details
tags:
- Order Delivery API
operationId: putOrdersByOrderIdDeliverystateDriverunassigned
x-operation-id-source: derived
/orders/{orderId}/deliverystate/onitsway:
put:
description: 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.
parameters:
- in: path
name: orderId
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/on-its-way-details'
required: true
responses:
'200':
description: OK
summary: Update order with driver on its way details
tags:
- Order Delivery API
operationId: putOrdersByOrderIdDeliverystateOnitsway
x-operation-id-source: derived
components:
schemas:
extensibleObject:
additionalProperties: true
type: object
bulk-delivery-details-list:
items:
$ref: '#/components/schemas/bulk-delivery-details'
type: array
estimated-delivery-time:
properties:
DurationInMinutes:
type: string
RestaurantReference:
type: string
type: object
delivery-driver-details-with-eta:
example:
EtaAtDeliveryAddress: '2018-03-10T15:45:28.7537228+00:00'
Location:
Accuracy: 12.814
Heading: 357.10382
Latitude: 51.51641
Longitude: -0.103198
Speed: 8.68
TimeStampWithUtcOffset: '2018-03-10T14:45:28.7537228+00:00'
properties:
EtaAtDeliveryAddress:
description: This should represent the delivery partner's best guess at when the driver will arrive at the delivery address.
format: date-time
type: string
Location:
$ref: '#/components/schemas/location'
TimeStampWithUtcOffset:
description: This should represent the Eta calculated timestamp.
format: date-time
type: string
type: object
bulk-delivery-details:
properties:
EtaAtDeliveryAddress:
description: This should represent the delivery partner's best guess at when the driver will arrive at the delivery address.
example: '2020-12-25T16:45:28.7537228+00:00'
format: date-time
type: string
EtaAtRestaurant:
description: This should represent the delivery partner's best guess at when the driver will arrive at the restaurant.
example: '2020-12-25T16:30:28.7537228+00:00'
format: date-time
type: string
Location:
$ref: '#/components/schemas/location'
OrderId:
description: Just Eat order identifier
type: string
TimeStampWithUtcOffset:
description: This should represent the bulk delivery updated timestamp.
format: date-time
type: string
type: object
vehicle-details:
properties:
Vehicle:
example: Motorbike
type: string
VehicleRegistration:
example: JU51 SAY
type: string
type: object
on-its-way-details:
properties:
EstimatedArrivalTime:
description: This should represent the delivery partner's best guess at when the driver will arrive at the customer's address. In other words, it should not just contain the delivery time initially requested by Just Eat.
example: '2020-12-25T16:45:28.7537228+00:00'
format: date-time
type: string
Location:
$ref: '#/components/schemas/location'
TimeStampWithUtcOffset:
description: This should represent the driver on its ways timestamp.
example: '2020-12-25T15:30:28.7537228+00:00'
format: date-time
type: string
type: object
delivery-driver-unassigned-details:
properties:
Comment:
description: This should represent the comment on the unassignment.
example: Order was not ready
type: string
DriverContactNumber:
description: This should represent the driver's contact number.
example: 07123456789
type: string
DriverName:
description: This should represent the driver's name.
example: David McDriverson
type: string
EtaAtDeliveryAddress:
description: This should represent the delivery partner's best guess at when the driver will arrive at the delivery address.
example: '2020-12-25T16:45:28.7537228+00:00'
format: date-time
type: string
EtaAtRestaurant:
description: This should represent the delivery partner's best guess at when the driver will arrive at the restaurant. In other words, it should not just contain the pick-up time initially requested by Just Eat.
example: '2020-12-25T16:30:28.7537228+00:00'
format: date-time
type: string
'Location:':
$ref: '#/components/schemas/location'
description: This should represent the driver's geographic location (longitude and latitude)
Reason:
description: This should represent the delivery partner's reason for unassigning themselves from the order.
example: package_not_ready
type: string
TimeStampWithUtcOffset:
description: This should represent the driver unassigned timestamp.
example: '2020-12-25T15:30:28.7537228+00:00'
format: date-time
type: string
UnassignedBy:
description: This should represent the actor who triggered unassignment.
example: operation
type: string
type: object
location:
description: GeoLocation object containing latitude and longitude values.
example:
Accuracy: 12.814
Heading: 357.10382
Latitude: 51.51641
Longitude: -0.103198
Speed: 8.68
properties:
Accuracy:
description: This should represent the accuracy of driver's location.
format: double
type: number
Heading:
description: This should represent the degree of heading direction, for example, 0 is north, 90 is east.
format: double
type: number
Latitude:
description: This should represent the latitude of the driver's location.
format: double
type: number
Longitude:
description: This should represent the longitude of the driver's location.
format: double
type: number
Speed:
description: This should represent the travel speed of the driver.
format: double
type: number
required:
- Latitude
- Longitude
type: object
delivery-driver-location:
properties:
EtaAtDeliveryAddress:
description: This should represent the delivery partner's best guess at when the driver will arrive at the delivery address.
example: '2020-12-25T16:45:28.7537228+00:00'
format: date-time
type: string
EtaAtRestaurant:
description: This should represent the delivery partner's best guess at when the driver will arrive at the restaurant.
example: '2020-12-25T16:30:28.7537228+00:00'
format: date-time
type: string
Location:
$ref: '#/components/schemas/location'
example:
Accuracy: 12.814
Heading: 357.10382
Latitude: 51.51641
Longitude: -0.103198
Speed: 8.68
TimeStampWithUtcOffset:
description: This should represent the location updated timestamp.
example: '2020-12-25T15:45:28.7537228+00:00'
format: date-time
type: string
type: object
delivery-details:
example:
TimeStampWithUtcOffset: '2018-03-10T14:45:28.7537228+00:00'
properties:
Location:
$ref: '#/components/schemas/location'
TimeStampWithUtcOffset:
description: This should represent the delivery detailed updated timestamp.
format: date-time
type: string
type: object
delivery-driver-assigned-details:
properties:
DriverContactNumber:
description: This should represent the driver's contact number.
example: 07123456789
type: string
DriverName:
description: This should represent the driver's name.
example: David
type: string
EtaAtDeliveryAddress:
description: This should represent the delivery partner's best guess at when the driver will arrive at the delivery address.
example: '2020-12-25T16:45:28.7537228+00:00'
format: date-time
type: string
EtaAtRestaurant:
description: This should represent the delivery partner's best guess at when the driver will arrive at the restaurant. In other words, it should not just contain the pick-up time initially requested by Just Eat.
example: '2020-12-25T15:30:28.7537228+00:00'
format: date-time
type: string
Location:
$ref: '#/components/schemas/location'
TimeStampWithUtcOffset:
description: This should represent the driver assigned timestamp.
example: '2020-12-25T15:45:28.7537228+00:00'
format: date-time
type: string
VehicleDetails:
$ref: '#/components/schemas/vehicle-details'
type: object
eta-estimate:
properties:
bestGuess:
description: This should represent the delivery partner's best guess at when the driver will arrive at the restaurant.
format: date-time
type: string
estimatedAt:
description: This is the time at which you are doing the estimation
format: date-time
type: string
type: object
securitySchemes:
Bearer:
bearerFormat: JWT
description: Bearer token authentication using a JSON Web Token (JWT).
scheme: bearer
type: http
api_key:
description: APIs for delivery partners require an API key that will have been issued to you.
in: header
name: Authorization
type: apiKey
basic_auth:
description: A few services allow the use of basic authentication when a partner doesn't support OAuth based authentication.
scheme: basic
type: http
justeat_adfs:
description: ADFS authentication provider for internal Just Eat tools.
openIdConnectUrl: https://adfs.just-eat.com/adfs/.well-known/openid-configuration
type: openIdConnect
restaurantsignup_jwt:
bearerFormat: JWT token with payload `RestaurantId` and Role `[RestaurantRead | VerifyEmail | RestaurantWrite | FullAccess | DocumentRead]`
description: Bearer token authentication using a JSON Web Token (JWT), used by the restaurant sign up system
scheme: bearer
type: http
x-tagGroups:
- name: Consumer Experience
tags:
- Authorization
- Consumers
- ConsumerOffers
- ConsumerQueries
- Consumer Queries Webhooks
- ConsumerOrders
- Search
- Basket
- Payments
- Giftcards
- Experiments
- Vouchers
- Promoted Placement
- Menu
- Recommendations
- Location Services
- name: Manage Order Journey
tags:
- Order Acceptance API
- Order Acceptance Webhooks
- Order Delivery API
- Order Delivery Webhooks
- Order API
- Order Webhooks
- Customer Order Details
- DeliveryFee
- Delivery Pools API
- Attempted Delivery API
- Attempted Delivery Webhooks
- Checkout
- Courier Feedback
- name: Restaurant Management
tags:
- Restaurant Product
- Restaurants
- RestaurantOffers
- Restaurant OrderTimes
- Restaurants Webhooks
- RestaurantSignup
- RestaurantQueries
- RestaurantQueries Webhooks
- Restaurant Claims
- Restaurant Events
- Restaurant Events Webhooks
- Restaurant API
- Restaurant Webhooks
- Products
- Logistics POS Restaurants
- Restaurant Smiley Rating