Delivery Hero Outlets API
The Outlets API from Delivery Hero — 2 operation(s) for outlets.
The Outlets API from Delivery Hero — 2 operation(s) for outlets.
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/delivery-hero-outlets-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:
version: 1.1.1
title: On Demand Rider Outlets API
x-logo:
url: data:image/svg+xml,%3Csvg width='173' height='28' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='translate(-64 -15)' fill='none' fill-rule='evenodd'%3E%3Cpath d='M0 0h1350v60H0z'%3E%3C/path%3E%3Cpath d='M0 0h1350v60H0z'%3E%3C/path%3E%3Cg transform='translate(64 15)' fill='%23D61F26'%3E%3Cpath d='M32.18 13.383l-.021.012-3.754 1.531-.115.053-.915 4.18c-.061.143-.244.177-.367.058l-2.735-3.234-.013-.01-15.423 6.618a.103.103 0 01-.104-.176l13.333-9.98-1.687-3.852c-.084-.175.071-.362.277-.31h.002l4.086 1.006 3.172-2.823c.137-.107.323-.03.358.14l.31 4.241 3.658 2.141c.157.1.134.332-.062.405zM30.316 1.258C25.582-.6 20.376.795 17.164 4.365L4.63 17.793c-.169.181-.09.408.115.438l3.34.205c.267.017.3.247.166.404L.086 27.646c-.142.152.03.392.224.332l11.656-3.683c.246-.085.436.135.332.328l-1.56 2.756c-.08.157.071.372.267.358l16.804-3.743c4.015-.636 7.6-3.316 9.193-7.374 2.4-6.09-.598-12.967-6.686-15.362z'%3E%3C/path%3E%3Cpath d='M75.362 21.69h-3.829L74.53 7.658l4.176-1.535-3.343 15.565'%3E%3C/path%3E%3Cpath d='M67.138 13.653c-.917 0-1.444.759-1.658 1.638 1.813 0 2.362-.566 2.362-1.036 0-.33-.295-.602-.704-.602m-2.087 4.096c-.02.096-.04.274-.04.37 0 .625.428.84 1.562.84 1.013 0 2.456-.255 3.297-.546v2.868c-1.073.39-2.753.603-4.1.603-3.16 0-4.682-.859-4.682-3.725 0-2.814 1.307-7.201 6.344-7.201 3.198 0 4.153 1.445 4.153 2.968 0 1.97-1.696 3.647-6.534 3.823'%3E%3C/path%3E%3Cpath d='M82.316 10.455c-1.305 0-2.145-.839-2.145-1.99 0-1.503 1.054-2.341 2.359-2.341 1.328 0 2.148.838 2.148 1.97 0 1.522-1.034 2.361-2.362 2.361'%3E%3C/path%3E%3Cpath d='M79.63 11.31h3.94l-1.992 10.224h-3.98L79 14.354'%3E%3C/path%3E%3Cpath d='M94.925 11.31c-1.367 3.435-2.87 6.79-4.78 10.224h-4.88c-.623-3.24-.898-6.654-.818-10.224h3.981a47.373 47.373 0 00.036 4.994c.021.43.061.838.099 1.251h.022c.174-.413.368-.82.545-1.251.682-1.68 1.306-3.51 1.777-4.994h4.018'%3E%3C/path%3E%3Cpath d='M100.252 13.653c-.915 0-1.445.759-1.661 1.638 1.817 0 2.363-.566 2.363-1.036 0-.33-.29-.602-.702-.602m-2.086 4.096a2.33 2.33 0 00-.042.37c0 .625.431.84 1.561.84 1.016 0 2.46-.255 3.299-.546v2.868c-1.074.39-2.752.603-4.097.603-3.163 0-4.684-.859-4.684-3.725 0-2.814 1.306-7.201 6.341-7.201 3.2 0 4.155 1.445 4.155 2.968 0 1.97-1.694 3.647-6.533 3.823'%3E%3C/path%3E%3Cpath d='M112.351 14.92a4.396 4.396 0 00-.957-.12c-.879 0-1.581.88-1.895 2.5l-.816 4.235H104.7l1.993-10.224h2.987l.096 1.363c.916-1.13 1.64-1.716 2.752-1.716.506 0 .78.039.915.078l-1.091 3.883'%3E%3C/path%3E%3Cpath d='M124.799 11.31c-1.758 4.567-3.318 7.902-4.88 10.207-2.262 3.376-4.254 4.157-6.304 4.157-.605 0-1.247-.16-1.561-.314l.626-2.947h1.366c.683 0 .974-.275 1.424-.879-.761-2.75-1.133-6.594-1.094-10.224h4.002a44.95 44.95 0 00.039 4.936c.02.448.056.878.095 1.309h.02c.177-.413.37-.82.547-1.27a50.015 50.015 0 001.736-4.975h3.984'%3E%3C/path%3E%3Cpath d='M140.1 21.534h-4.2l.997-5.153h-3.553l-.997 5.153h-4.192l2.652-13.62h4.197l-.955 4.86h3.551l.957-4.86h4.193l-2.651 13.62'%3E%3C/path%3E%3Cpath d='M148.37 13.653c-.918 0-1.442.759-1.658 1.638 1.815 0 2.364-.566 2.364-1.036 0-.33-.296-.602-.706-.602m-2.088 4.096a2.32 2.32 0 00-.037.37c0 .625.43.84 1.559.84 1.016 0 2.46-.255 3.299-.546v2.868c-1.073.39-2.752.603-4.1.603-3.16 0-4.682-.859-4.682-3.725 0-2.814 1.307-7.201 6.342-7.201 3.2 0 4.158 1.445 4.158 2.968 0 1.97-1.7 3.647-6.539 3.823'%3E%3C/path%3E%3Cpath d='M160.467 14.92a4.333 4.333 0 00-.954-.12c-.877 0-1.581.88-1.893 2.5l-.82 4.235h-3.979l1.988-10.224h2.985l.1 1.363c.916-1.13 1.637-1.716 2.748-1.716.51 0 .782.039.92.078l-1.095 3.883'%3E%3C/path%3E%3Cpath d='M167.006 14.1c-1.6 0-2.03 2.44-2.03 3.533 0 .877.37 1.13 1.095 1.13 1.577 0 1.988-2.44 1.988-3.55 0-.858-.35-1.113-1.053-1.113m-1.485 7.784c-3.102 0-4.622-1.327-4.622-3.98 0-2.947 1.462-6.946 6.615-6.946 3.084 0 4.624 1.366 4.624 3.982 0 3.005-1.464 6.944-6.617 6.944'%3E%3C/path%3E%3Cpath d='M52.543 18.294h-.781l1.404-7.182h1.095c1.657 0 2.262.98 2.262 2.323 0 2.715-1.504 4.86-3.98 4.86m3.719-6.928l2.652-2.545c-1.035-.623-2.455-.908-4.227-.908h-5.073l-2.651 13.621h5.289c6.144 0 8.601-4.293 8.601-8.76 0-1.161-.25-2.09-.732-2.81l-3.86 1.402'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E
altText: Delivery Hero
backgroundColor: '#FFFFFF'
description: '# About
The On Demand Rider (ODR) API provides system-to-system integration to facilitate on-demand courier delivery service requests.'
servers:
- url: https://pandago-api-sandbox.deliveryhero.io/sg/api/v1
description: <b>Sandbox</b> environment
- url: https://api-infra-eu-central-1.stg.ondemandrider.net/{country code}/api/v1
description: <b>Stage</b> Glovo generic 💡 Find your country URL [here](#section/About/API-Endpoints-and-URLs) 💡
- url: https://ondemand-api-glovoapp.deliveryhero.io/{country code}/api/v1
description: <b>Production</b> Glovo generic 💡 Find your country URL [here](#section/About/API-Endpoints-and-URLs) 💡
- url: https://ondemand-api-glovoapp.deliveryhero.io/pt/api/v1
description: <b>Example in production</b> for Glovo Portugal
security:
- Bearer_Token: []
tags:
- name: Outlets
paths:
/outlets/{client_vendor_id}:
summary: Operations
put:
summary: Create or Update an Outlet
tags:
- Outlets
description: '*NOTE for vendors in Finland, Norway, and Sweden:*
Vendors in the the named countries have the option to work with coordinates (by providing **`latitude`** and **`longitude`**) or with addresses by providing **`address`**. Addresses should be specified in accordance with the format used by the national postal service of the specific country. Do not include additional address elements, like business names, floor numbers, etc. Delimit address elements by spaces. Examples:
* Jakobsbergsgatan 24 111 44 Stockholm
* Pasilankatu 10 00240 Helsinki
* Waldemar Thranes gate 98 0175 Oslo
*NOTE for vendors in Singapore:*
Vendors in Singapore have the option to work with location coordinates (by providing **`latitude`** and **`longitude`**) or with postal codes (by providing **`postal_code`**). If both location coordinates and postal codes are provided, only the coordinates will be used for finding the exact location.
Postal code should be specified as a 6 digit number. For example: 752340.
*NOTE on removing users:*
* Users can only be removed while updating an outlet.
* Adding and removing users in the same request is not recommended.'
parameters:
- name: Authorization
in: header
required: true
schema:
type: string
default: Bearer {access-token}
- name: client_vendor_id
in: path
required: true
description: 'ID of the outlet to update or to create.
💡 When creating an outlet, this will be the `client_vendor_id` of the outlet needed to fetch or update the outlet
'
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateOrUpdateOutletRequest'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Outlet'
'400':
description: Invalid request body
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: Invalid request payload\n - recipient.phone_number is required
'500':
description: Server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: Unable to proceed, something went wrong
operationId: putOutletsByClientVendorId
x-operation-id-source: derived
get:
summary: Get an Outlet
tags:
- Outlets
parameters:
- name: Authorization
in: header
required: true
schema:
type: string
default: Bearer {access-token}
- name: client_vendor_id
in: path
required: true
description: ID of the outlet to get
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/VendorResponse'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: Outlet not found
'500':
description: Server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: Unable to proceed, something went wrong
operationId: getOutletsByClientVendorId
x-operation-id-source: derived
patch:
summary: Partially Update an Outlet
tags:
- Outlets
description: 'Use this endpoint to partially update an existing outlet. Only the fields provided in the request body will be updated; all other fields will remain unchanged.
This is useful when you need to update specific outlet attributes without having to provide all required fields as in the PUT endpoint.
*NOTE:*
* At least one field must be provided for the update.
* If both `latitude` and `longitude` are provided, they must be provided together.
* The outlet must already exist and be active.
* The parent vendor must be active.'
parameters:
- name: Authorization
in: header
required: true
schema:
type: string
default: Bearer {access-token}
- name: client_vendor_id
in: path
required: true
description: ID of the outlet to partially update
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchOutletRequest'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Outlet'
'400':
description: Invalid request body
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: at least one field must be provided for update
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: Outlet not found
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: vendor is not a proper parent
'500':
description: Server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: Unable to proceed, something went wrong
operationId: patchOutletsByClientVendorId
x-operation-id-source: derived
/outletList:
summary: Bulk Operations
get:
summary: Get All Outlets
description: Kindly use this endpoint to get all outlets created under a single parent vendor. This end point will work only with Brand Vendors. When any Outlet vendor sends this request, they will see an error message saying "This vendor is not a parent".
tags:
- Outlets
parameters:
- name: Authorization
in: header
required: true
schema:
type: string
default: Bearer {access-token}
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/OutletListResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: This vendor is not a parent
'500':
description: Server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
examples:
response:
value:
message: Unable to proceed, something went wrong
operationId: getOutletList
x-operation-id-source: derived
components:
schemas:
Latitude:
title: Latitude
type: number
format: double
minimum: -90
maximum: 90
Name:
title: Name
type: string
maxLength: 300
ErrorResponse:
title: Error Response
type: object
properties:
message:
type: string
required:
- message
RiderInstructions:
type: string
maxLength: 500
ClientVendorID:
title: Client Outlet ID
type: string
maxLength: 255
PatchOutletRequest:
title: Partial Update Outlet Request
description: 'Request body for partially updating an outlet. All fields are optional - only the fields provided will be updated.
If updating coordinates, both latitude and longitude must be provided together.
'
type: object
properties:
name:
$ref: '#/components/schemas/Name'
address:
$ref: '#/components/schemas/Address'
street:
$ref: '#/components/schemas/Street'
street_number:
$ref: '#/components/schemas/StreetNumber'
building:
$ref: '#/components/schemas/Building'
district:
$ref: '#/components/schemas/District'
postal_code:
$ref: '#/components/schemas/PostalCode'
rider_instructions:
$ref: '#/components/schemas/RiderInstructions'
latitude:
$ref: '#/components/schemas/Latitude'
longitude:
$ref: '#/components/schemas/Longitude'
city:
$ref: '#/components/schemas/City'
phone_number:
$ref: '#/components/schemas/PhoneNumber'
description:
type: string
halal:
$ref: '#/components/schemas/Halal'
example:
name: Updated Outlet Name
address: 123 New Street
phone_number: '+6512345678'
Description:
title: Description
type: string
maxLength: 1000
Building:
type: string
maxLength: 120
District:
type: string
maxLength: 300
Longitude:
title: Longitude
type: number
format: double
minimum: -180
maximum: 180
VendorResponse:
title: VendorResponse
type: object
properties:
client_vendor_id:
$ref: '#/components/schemas/ClientVendorID'
name:
$ref: '#/components/schemas/Name'
address:
$ref: '#/components/schemas/Address'
street:
$ref: '#/components/schemas/Street'
street_number:
$ref: '#/components/schemas/StreetNumber'
building:
$ref: '#/components/schemas/Building'
district:
$ref: '#/components/schemas/District'
postal_code:
$ref: '#/components/schemas/PostalCode'
rider_instructions:
$ref: '#/components/schemas/RiderInstructions'
latitude:
$ref: '#/components/schemas/Latitude'
longitude:
$ref: '#/components/schemas/Longitude'
city:
$ref: '#/components/schemas/City'
phone_number:
$ref: '#/components/schemas/PhoneNumber'
currency:
$ref: '#/components/schemas/Currency'
description:
type: string
locale:
$ref: '#/components/schemas/Locale'
halal:
$ref: '#/components/schemas/Halal'
example:
client_vendor_id: outlet-987b61a1-7ccf-4447-82e0-6b9c1ab35a4f
name: Order Anytime Delivery Anywhere
address: '1 2nd Street #08-01'
latitude: 1.2923742
longitude: 103.8486029
city: Singapore
phone_number: '+6587654321'
currency: SGD
locale: en-SG
description: any items are for sale
required:
- name
- address
- latitude
- city
- currency
- description
- locale
- phone_number
PostalCode:
title: PostalCode **(can be used only for Singapore)**
type: string
maxLength: 120
description: Vendors in Singapore alone should use this attribute. If an accurate postal code is provided for Singapore orders, vendor does not need to provide address or lat/long information.
example: 752340, 750313, 757046
Halal:
title: Halal
type: boolean
description: Boolean flag to determine that the Outlet has a valid Halal certification
OutletListResponse:
title: OutletListResponse
type: array
items:
$ref: '#/components/schemas/OutletList'
example:
- client_vendor_id: outlet-8c3179cc-630b-4aba-83f1-8450f7954ed3
name: Order Anytime Delivery Anywhere
address: 'Central #08-02'
latitude: 1.2923742
longitude: 103.83231003
phone_number: '+6587654321'
description: Some Outlet details
created_at: 1636802000
- client_vendor_id: outlet-7a6202b5-8dc8-4b93-88ef-a7dd895dbe7f
name: Order Anytime Delivery Anywhere
address: '2nd Street #08-03'
latitude: 1.86631006
longitude: 103.5486025
phone_number: '+6587654321'
description: Some Outlet details
created_at: 1636803000
- client_vendor_id: outlet-4b1dd7a8-90e2-4b00-a7ee-6cca61dc70f0
name: Order Anytime Delivery Anywhere
address: '1st Street #08-04'
latitude: 1.3823567
longitude: 103.6686023
phone_number: '+6587654321'
description: Some Outlet details
created_at: 1636804000
PhoneNumber:
type: string
format: e164
description: '* Phone number in E.164 standard (https://en.wikipedia.org/wiki/E.164)
* libphonenumber is used for phone number validation
'
example: '+6588888888'
Outlet:
title: Outlet
type: object
properties:
vendor_id:
type: string
client_vendor_id:
$ref: '#/components/schemas/ClientVendorID'
name:
$ref: '#/components/schemas/Name'
address:
$ref: '#/components/schemas/Address'
street:
$ref: '#/components/schemas/Street'
street_number:
$ref: '#/components/schemas/StreetNumber'
building:
$ref: '#/components/schemas/Building'
district:
$ref: '#/components/schemas/District'
postal_code:
$ref: '#/components/schemas/PostalCode'
rider_instructions:
$ref: '#/components/schemas/RiderInstructions'
latitude:
$ref: '#/components/schemas/Latitude'
longitude:
$ref: '#/components/schemas/Longitude'
city:
$ref: '#/components/schemas/City'
phone_number:
$ref: '#/components/schemas/PhoneNumber'
currency:
$ref: '#/components/schemas/Currency'
description:
type: string
locale:
$ref: '#/components/schemas/Locale'
halal:
$ref: '#/components/schemas/Halal'
users:
type: array
items:
type: string
format: email
example:
client_vendor_id: outlet-987b61a1-7ccf-4447-82e0-6b9c1ab35a4f
name: Order Anytime Delivery Anywhere
address: '1 2nd Street #08-01'
latitude: 1.2923742
longitude: 103.8486029
city: Singapore
phone_number: '+6587654321'
currency: SGD
locale: en-SG
description: any items are for sale
vendor_id: a-bcde
users:
- example@email.com
- example2@email.com
required:
- name
- address
- latitude
- city
- currency
- description
- locale
- phone_number
City:
title: City
type: string
maxLength: 300
example: Singapore
Street:
type: string
maxLength: 300
Locale:
title: Locale
type: string
format: ISO639-1
example: en-SG
Address:
type: string
maxLength: 255
StreetNumber:
type: string
maxLength: 120
Timestamp:
title: Timestamp
type: integer
Currency:
title: Currency
type: string
format: ISO4217
example: SGD
OutletList:
title: OutletList
type: object
properties:
client_vendor_id:
$ref: '#/components/schemas/ClientVendorID'
name:
$ref: '#/components/schemas/Name'
address:
$ref: '#/components/schemas/Address'
latitude:
$ref: '#/components/schemas/Latitude'
longitude:
$ref: '#/components/schemas/Longitude'
phone_number:
$ref: '#/components/schemas/PhoneNumber'
description:
$ref: '#/components/schemas/Description'
created_at:
$ref: '#/components/schemas/Timestamp'
required:
- name
- address
- latitude
- longitude
- phone_number
CreateOrUpdateOutletRequest:
title: Create or Update an Outlet Response
type: object
properties:
name:
$ref: '#/components/schemas/Name'
address:
$ref: '#/components/schemas/Address'
street:
$ref: '#/components/schemas/Street'
street_number:
$ref: '#/components/schemas/StreetNumber'
building:
$ref: '#/components/schemas/Building'
district:
$ref: '#/components/schemas/District'
postal_code:
$ref: '#/components/schemas/PostalCode'
rider_instructions:
$ref: '#/components/schemas/RiderInstructions'
latitude:
$ref: '#/components/schemas/Latitude'
longitude:
$ref: '#/components/schemas/Longitude'
city:
$ref: '#/components/schemas/City'
phone_number:
$ref: '#/components/schemas/PhoneNumber'
currency:
$ref: '#/components/schemas/Currency'
locale:
$ref: '#/components/schemas/Locale'
description:
type: string
halal:
$ref: '#/components/schemas/Halal'
add_user:
type: array
items:
type: string
format: email
delete_user:
type: array
items:
type: string
format: email
required:
- name
- address
- latitude
- longitude
- city
- phone_number
- currency
- locale
example:
name: Order Anytime Delivery Anywhere
address: '1 2nd Street #08-01'
latitude: 1.2923742
longitude: 103.8486029
city: Singapore
phone_number: '+6587654321'
currency: SGD
locale: en-SG
description: any items are for sale
add_user:
- example@email.com
- example2@email.com
securitySchemes:
Bearer_Token:
type: apiKey
name: Authorization
in: header
description: 'Provide the access token in the format: `Bearer {access-token}`. You can obtain the access token from the [Authentication endpoint](#tag/Authentication).
'
x-tagGroups:
- name: Authentication
tags:
- Authentication
- name: Orders
tags:
- OrdersManagement
- OrdersEstimation
- RiderPosition
- Proofs
- name: Outlets
tags:
- Outlets
- name: Callback
tags:
- Callback