Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Just Eat publicly-accessible API

The publicly-accessible API from Just Eat — 85 operation(s) for publicly-accessible.

Just Eat publicly-accessible API is one of 24 APIs that Just Eat publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include publicly-accessible. The published artifact set on APIs.io includes an OpenAPI specification.

This API exposes 98 operations across 85 paths, and defines 145 schemas. It is described by OpenAPI 3.0.0, at version 1.0.0.

Requests are made against 3 base URLs: https://uk.api.just-eat.io, https://i18n.api.just-eat.io, https://aus.api.just-eat.io.

98 operations 85 paths 145 schemas 4 DELETE29 GET2 PATCH25 POST38 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.0
API Version
1.0.0
Base URL
https://uk.api.just-eat.io
Authentication
HTTP Bearer, API Key, HTTP Basic, OpenID Connect, HTTP Bearer
Resource Areas
1

Authentication & Security 5

Just Eat publicly-accessible API declares 5 security schemes for authenticating requests. It accepts HTTP bearer tokens (JWT) (Bearer). An API key is passed in the header as Authorization (api_key). It accepts HTTP basic authentication (basic_auth). It supports OpenID Connect (justeat_adfs) discovered at https://adfs.just-eat.com/adfs/.well-known/openid-configuration. It accepts HTTP bearer tokens (JWT token with payload `RestaurantId` and Role `[RestaurantRead | VerifyEmail | RestaurantWrite | FullAccess | DocumentRead]`) (restaurantsignup_jwt).

  • Bearer — Bearer token authentication using a JSON Web Token (JWT).
  • api_key — APIs for delivery partners require an API key that will have been issued to you.
  • basic_auth — A few services allow the use of basic authentication when a partner doesn't support OAuth based authentication.
  • justeat_adfs — ADFS authentication provider for internal Just Eat tools.
  • restaurantsignup_jwt — Bearer token authentication using a JSON Web Token (JWT), used by the restaurant sign up system

Paths & Operations 98

Across 85 paths, the API surfaces 98 operations — 4 DELETE, 29 GET, 2 PATCH, 25 POST, 38 PUT. Each is listed below with its method, path, parameters, and response codes.

publicly-accessible 98
POST
/acceptance-requested
Acceptance requested
body → 200
PUT
/attempted-delivery-query-resolved
Attempted delivery query resolved
body → 200
GET
/checkout/{tenant}/{checkoutId}
Get Checkout
3 params → 200400401403404409429500
PATCH
/checkout/{tenant}/{checkoutId}
Update Checkout
3 params body → 200400401403404409429500
GET
/checkout/{tenant}/{checkoutId}/fulfilment/availabletimes
Get Available Fulfilment Times
3 params → 200400404409429500503
GET
/consumers/{tenant}
Get consumers details
4 params → 200400404500501
POST
/consumers/{tenant}
Create consumer
1 param body → 201400403404409500
GET
/consumers/{tenant}/me/communication-preferences
Get communication preferences
1 param → 200401403404500
GET
/consumers/{tenant}/me/communication-preferences/{type}
Get channel subscriptions for a given consumer's communication preference type
2 params → 200401403404500
PUT
/consumers/{tenant}/me/communication-preferences/{type}
Set only the channel subscriptions for a given consumer's communication preference type
2 params body → 204401404500
DELETE
/consumers/{tenant}/me/communication-preferences/{type}/subscribedChannels/{channel}
Remove subscription of a specific communication preference channel
3 params body → 204401404500
POST
/consumers/{tenant}/me/communication-preferences/{type}/subscribedChannels/{channel}
Subscribe to a specific communication preference channel
3 params body → 204401403404500
PUT
/delivery-failed
Delivery Attempt Failed
body → 200
GET
/delivery-fees/{tenant}
Get restaurant delivery fees
5 params → 200400404
GET
/delivery/estimatedeprecated
Get delivery estimate
4 params → 200
GET
/delivery/pools
Get your delivery pools
→ 200500
POST
/delivery/pools
Create a new delivery pool
body → 201400500
DELETE
/delivery/pools/{deliveryPoolId}
Delete a delivery pool
1 param → 200404500
GET
/delivery/pools/{deliveryPoolId}
Get an individual delivery pool
1 param → 200404500
PATCH
/delivery/pools/{deliveryPoolId}
Modify a delivery pool
1 param body → 202400404409500
PUT
/delivery/pools/{deliveryPoolId}
Replace an existing delivery pool
1 param body → 202400404409500
GET
/delivery/pools/{deliveryPoolId}/availability/relative
Get availability for pickup
1 param → 200404
PUT
/delivery/pools/{deliveryPoolId}/availability/relative
Set availability for pickup
1 param body → 202404
PUT
/delivery/pools/{deliveryPoolId}/hours
Set the delivery pools daily start and end times
1 param body → 200404
DELETE
/delivery/pools/{deliveryPoolId}/restaurants
Remove restaurants from a delivery pool
1 param body → 200400404
PUT
/delivery/pools/{deliveryPoolId}/restaurants
Add restaurants to an existing delivery pool
1 param → 200400404409
PUT
/driver-assigned-to-delivery
Driver Assigned to Delivery
body → 200
PUT
/driver-at-delivery-address
Driver at delivery address
body → 200
PUT
/driver-at-restaurant
Driver at restaurant
body → 200
PUT
/driver-has-delivered-order
Driver has delivered order
body → 200
PUT
/driver-location
Driver Location
body → 200
PUT
/driver-on-their-way-to-delivery-address
Driver on their way to delivery address
body → 200
POST
/late-order-compensation-query
late order compensation query, restaurant response required
body → 200
POST
/late-order-query
late order query, restaurant response required
body → 200
POST
/menu-ingestion-complete
Menu ingestion complete
body → 200
POST
/order-accepted
Order accepted
body → 200
POST
/order-cancelled
Order cancelled
body → 200
POST
/order-eligible-for-restaurant-compensation
Order Eligible For Restaurant Compensation
body → 200
PUT
/order-is-ready-for-pickup
Order ready for pickup
body → 200default
POST
/order-ready-for-preparation-async
Order ready for preparation (async)
body → 202400
POST
/order-ready-for-preparation-sync
Order ready for preparation (sync)
body → 200
POST
/order-rejected
Order rejected
body → 200
PUT
/order-requires-delivery-acceptance
Order requires delivery acceptance
body → 201default
POST
/order-time-updated
Order time updated
body → 200
POST
/orders
Create order
1 param body → 201400409
PUT
/orders/deliverystate/driverlocation
Update current driver locations (bulk upload)
body → 200
PUT
/orders/{orderId}/accept
Accept order
1 param body → 200404409
PUT
/orders/{orderId}/cancel
Cancel order
1 param body → 200404409
POST
/orders/{orderId}/complete
Complete order
1 param → 204404409500
PUT
/orders/{orderId}/deliverystate/atdeliveryaddress
Update order with driver at delivery address details
1 param body → 200
PUT
/orders/{orderId}/deliverystate/atrestaurant
Update order with driver at restaurant details
1 param body → 200
PUT
/orders/{orderId}/deliverystate/atrestauranteta
Update the driver's estimated time to arrive at the Restaurant
1 param body → 200
PUT
/orders/{orderId}/deliverystate/delivered
Update order with delivered details
1 param body → 200
PUT
/orders/{orderId}/deliverystate/driverassigned
Update order with driver assigned details
1 param body → 200
PUT
/orders/{orderId}/deliverystate/driverlocation
Update the driver's current location
1 param body → 200
PUT
/orders/{orderId}/deliverystate/driverunassigned
Update order with driver unassigned details
1 param body → 200400
PUT
/orders/{orderId}/deliverystate/onitsway
Update order with driver on its way details
1 param body → 200
PUT
/orders/{orderId}/duedate
Update order ETA
1 param body → 200400404
PUT
/orders/{orderId}/ignore
Ignore order
1 param → 200404409
POST
/orders/{orderId}/readyforcollection
Mark order as ready for collection
1 param → 204400404409500
PUT
/orders/{orderId}/reject
Reject order
1 param body → 200404409
POST
/orders/{tenant}/{orderId}/consumerqueries/lateorder/restaurantresponse
Response to Late Order Update Request
3 params body → 202400401404409500
POST
/orders/{tenant}/{orderId}/consumerqueries/lateordercompensation/restaurantresponse
Update late order compensation request with Restaurant response
3 params body → 202400401404409500
POST
/orders/{tenant}/{orderId}/restaurantqueries/compensation
Create Compensation requests
3 params body → 201400401403404409500
PUT
/redelivery-requested
Customer Requested Redelivery
body → 200
PUT
/restaurant-offline-status
Restaurant Offline Status
body → 200
PUT
/restaurant-online-status
Restaurant Online Status
body → 200
GET
/restaurants/bylatlong
Get restaurants by location
SearchByLocation 7 params → 200400401500
GET
/restaurants/bypostcode/{postcode}
Get restaurants by postcode
SearchByPostcode 6 params → 200400401500
PUT
/restaurants/driver/eta
Set ETA for pickup
body → 202400
GET
/restaurants/{tenant}/{restaurantId}/catalogue
Get product catalogue
2 params → 200404500
GET
/restaurants/{tenant}/{restaurantId}/catalogue/availabilities
Get all availabilities
4 params → 200400404500
GET
/restaurants/{tenant}/{restaurantId}/catalogue/categories
Get all categories
4 params → 200400404500
GET
/restaurants/{tenant}/{restaurantId}/catalogue/categories/{categoryId}/items
Get all category item IDs
5 params → 200400404500
GET
/restaurants/{tenant}/{restaurantId}/catalogue/items
Get all menu items
4 params → 200400404500
GET
/restaurants/{tenant}/{restaurantId}/catalogue/items/{itemId}/dealgroups
Get all menu item deal groups
5 params → 200400404500
GET
/restaurants/{tenant}/{restaurantId}/catalogue/items/{itemId}/dealgroups/{dealGroupId}/dealitemvariations
Get all deal item variations for a deal group
6 params → 200400404500
GET
/restaurants/{tenant}/{restaurantId}/catalogue/items/{itemId}/modifiergroups
Get all menu item modifier groups
5 params → 200400404500
GET
/restaurants/{tenant}/{restaurantId}/catalogue/items/{itemId}/variations
Get all menu item variations
5 params → 200400404500
GET
/restaurants/{tenant}/{restaurantId}/customerclaims
Get claims
7 params → 200400401403500
GET
/restaurants/{tenant}/{restaurantId}/customerclaims/{id}
Get order claim
4 params → 200401403404500
POST
/restaurants/{tenant}/{restaurantId}/customerclaims/{id}/restaurantresponse
Submit a restaurant response for the claim
4 params body → 201400401403404409422500
PUT
/restaurants/{tenant}/{restaurantId}/customerclaims/{id}/restaurantresponse/justification
Add reason and comments to the response
4 params body → 204400401403404409500
GET
/restaurants/{tenant}/{restaurantId}/fees
Get Restaurant Fees
3 params → 200400401403404500
PUT
/restaurants/{tenant}/{restaurantId}/fees
Create or Update Restaurant Fees
3 params body → 200400401403404500
GET
/restaurants/{tenant}/{restaurantId}/menu
Get the latest version of the restaurant's full menu
3 params → 301400401403500
PUT
/restaurants/{tenant}/{restaurantId}/menu
Create or update a menu
putMenuForIngestion 4 params body → 202400401403500
GET
/restaurants/{tenant}/{restaurantId}/ordertimes
Get the restaurant's delivery and collection lead times
GetOrderTimes 3 params → 200401403500
PUT
/restaurants/{tenant}/{restaurantId}/ordertimes/{dayOfWeek}/{serviceType}
Update the restaurant's delivery and collection lead times
UpdateOrderTime 5 params body → 204400401403500
GET
/restaurants/{tenant}/{restaurantId}/servicetimes
Get service times
getRestaurantServiceTimes 2 params → 200403404500
PUT
/restaurants/{tenant}/{restaurantId}/servicetimes
Create or update service times
putRestaurantServiceTimes 2 params body → 200400403500
GET
/search/autocomplete/{tenant}
Get auto-completed search terms
4 params → 200400401500503
GET
/search/restaurants/{tenant}
Search restaurants
4 params → 200400401422500503
POST
/send-to-pos-failed
Send to POS failed
body → 200
POST
/v1/{tenant}/restaurants/event/offline
Create Offline Event
3 params body → 201400500
DELETE
/v1/{tenant}/restaurants/{id}/event/offline
Delete Offline Event
4 params → 200202400500
POST
/{tenant}/orders/{orderId}/queries/attempteddelivery
Delivery Attempt Failed
3 params body → 200400401404500
POST
/{tenant}/orders/{orderId}/queries/attempteddelivery/resolution/redeliverorder
Request Redelivery of the Order
3 params body → 200400401404500

Schemas 145

The contract defines 145 schemas that model the data the API accepts and returns. The most detailed are SearchRestaurant (78 properties), acceptance-requested (14 properties), order-ready-for-preparation (12 properties), OrderClaim (12 properties). Each schema is shown below with its type and property counts.

PagedMenuModifierGroupsResponse
ServiceTimesCollection
array
estimated-time
object
1 property
address-v2
object
4 properties 4 required
connectorder-list
array
MenuIngestionResponse
object
1 property
create-attempted-delivery
object
1 property
RestaurantOfflineStatus
object
4 properties
order-ready-for-preparation
object
12 properties
resolve-attempted-delivery-redeliver
object
2 properties
create-delivery-pool
object
2 properties 1 required
PagedCategoryItemsResponse
LegacyTempOfflineStatus
string
- Unset : Legacy value meaning online. - None : Legacy value meaning online. - TempOffline : The restaurant will go temporarily offline, typically for an undet…
RestaurantFees
object
An object encapsulating all possible fees which a restaurant can apply to itself
1 property
order-request-v2
object
10 properties 7 required
UserRole
string
- System : Role for an automated process action. - Operations : Role for an operations user action. - Restaurant : Role for a restaurant owner/employee user ac…
CheckoutDefaultError
object
A default HTTP error response
1 property
SearchResponse
object
10 properties
MenuBase
object
4 properties
LateOrderCompensationOption
object
2 properties
ConsumerCreate
object
6 properties 3 required
attempted-delivery-resolved
object
3 properties
lines-v2
object
5 properties 1 required
CommunicationTypes
string
Variation
object
9 properties
attempted-delivery-created
object
4 properties
CheckoutUpdate400Error
object
An HTTP 400 error response
1 property
location-v2
object
2 properties 2 required
ChannelSubscriptionsWithDerivedField
object
2 properties
menu-ingestion-complete
object
6 properties
driver-location
object
3 properties
location
object
GeoLocation object containing latitude and longitude values.
5 properties 2 required
on-its-way-details
object
3 properties
ready-for-pickup
object
2 properties
fee
object
2 properties
late-order-compensation-query
object
4 properties
MenuItemBase
object
6 properties
Time
object
3 properties
order-item
array
eta-estimate
object
2 properties
CreateRestaurantCompensationQuery
object
2 properties
order-accepted
object
3 properties
Menu
PagedAvailabilitiesResponse
ServiceTimesDays
object
The desired times at which a restaurant is in service
7 properties
ServiceTypeFeeConfiguration
object
Distinct values which are configured for a particular service type
1 property
LateOrderRestaurantResponse
object
2 properties
ExternalSearchResponse
object
1 property
CommunicationPreferences
object
1 property
customer-v2
object
5 properties 3 required
delivery-driver-assigned-details
object
7 properties
estimated-delivery-time
object
2 properties
delivery-driver-location
object
4 properties
order-rejected
object
4 properties
orderTime
object
The object representing order time entry
4 properties
PagedMenuDealGroupsResponse
ItemDecision
object
Decision on the item
2 properties
CheckoutUpdateResponse
object
2 properties 2 required
Category
delivery-driver-unassigned-details
object
9 properties
AutoCompleteSearchResponseItem
object
2 properties
bulk-delivery-details-list
array
RestaurantETAs
array
MenuModifierGroup
object
5 properties
order-reject-request
object
1 property
ChannelSubscriptions
object
1 property
RestaurantSearchResponse
object
1 property
items-v2
object
6 properties 4 required
RestaurantDeliveryFees
object
3 properties
CheckoutUpdateRequest
object
Properties apply to all supported country codes, except where specified. We do not support a PATCH request on the root path and a 400 status code will be retur…
3 properties
AutoCompleteSearchResponse
object
1 property
order-cancel-request
object
1 property
Checkout409Error
object
An HTTP 409 error response
1 property
extensibleObject
object
MenuDealGroupBase
object
3 properties
RestaurantPromotedPlacementInfo
object
2 properties
Justification
object
The reason of the claim rejection and optional comments from the restaurant
2 properties
ValidationError
object
9 properties
payment-v2
object
5 properties 1 required
ServiceTimesServices
object
2 properties
PagedMenuItemsResponse
PagedDealItemVariationResponse
order-accept-request
object
1 property
order-item-restriction
object
1 property
OrderClaim
object
Claim information
12 properties
OrderClaimRestaurantResponse
object
Restaurant response for the claim
3 properties
4XXErrorSchema
object
A HTTP 4xx error response
1 property
order-address
object
4 properties
Checkout404Error
object
An HTTP 404 error response
1 property
restaurant-v2
CategoryBase
object
3 properties
OrderEligibleForRestaurantCompensation
object
2 properties
LateOrderCompensationRestaurantResolution
object
4 properties
attempted-delivery-response-received
object
4 properties
send-to-pos-failed
object
1 property
500ErrorSchema
object
A HTTP 500 error response
1 property
bulk-delivery-details
object
5 properties
updateOrderTimeRequest
object
Request object for order time update
2 properties
late-order-query
object
3 properties
CheckoutGetResponse
object
Properties apply to all supported country codes, except where specified.
6 properties 6 required
PagedCategoriesResponse
consumerMarketingPreference
array
SearchWebResponse
object
3 properties
driver-status
object
7 properties
patch-delivery-pool
object
2 properties
OfflineRestaurantsRequestModel
object
9 properties 5 required
MenuDealGroup
local-date-time
string
A local date time object, conforming to ISO-8601, but with only a partial time representation and no time offset.
CheckoutGet400Error
object
An HTTP 400 error response
1 property
DealItemVariation
object
4 properties
order-cancelled
object
3 properties
Fee
object
The object which encapsulates a Fee
2 properties
delivery-restaurantslist
object
1 property
Availability
object
5 properties
Item
object
Information about an item in the claim
7 properties
IgnoredRestaurantIds
object
1 property
5XXErrorSchema
object
A HTTP 5xx error response
1 property
AvailableFulfilmentTimes409Error
object
An HTTP 409 error response
1 property
SearchRestaurant
object
78 properties
late-order-compensation-options
array
delivery-details
object
2 properties
order-time-updated
object
5 properties
tax-v2
object
3 properties 3 required
GetAvailableFulfilmentTimesResponse
object
2 properties 2 required
ServiceTimes
object
1 property
CommunicationChannels
string
vehicle-details
object
2 properties
PagedAfterOnlyCursorResponse
object
1 property
PagedVariationsResponse
ClaimResolution
object
Representation of the decision made about a claim
4 properties
ClaimsResponse
object
Response containing claims for a restaurant which match the given filter
1 property
MenuItem
ConsumerCreateResponse
object
2 properties 2 required
RestaurantSearchProduct
object
3 properties
RestaurantSearchResponseItem
object
3 properties
item-v2
object
5 properties
order-due-date-request
object
1 property
delivery-pool-hours
object
7 properties 7 required
delivery-driver-details-with-eta
object
3 properties
acceptance-requested
object
14 properties
connectorder
object
12 properties
fulfilment-v2
object
3 properties 2 required
CheckoutIssue
object
1 property 1 required
MenuModifier
object
5 properties
ConsumerErrorResponse
object
2 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

just-eat-publicly-accessible-api-openapi.yml Raw ↑

Other APIs Just Eat publishes across the network.

Just Eat Attempted Delivery API API
Just Eat Attempted Delivery Webhooks API
Just Eat Checkout API
Just Eat Consumer Queries Webhooks API
Just Eat ConsumerQueries API
Just Eat Consumers API
Just Eat Delivery Pools API API
Just Eat DeliveryFee API
Just Eat Order Acceptance API API
Just Eat Order Acceptance Webhooks API
Just Eat Order API API
Just Eat Order Delivery API API