Main docs page Auth API Ordering API Menu API Venue API Inventory API Payment API Loyalty API Wallet API

Venue API (1.0)

Download OpenAPI specification:Download

OrderingStack venue API

Authentication

oauth2

Security Scheme Type OAuth2

oauth2-client

Security Scheme Type OAuth2

venues-controller

getVenue

Get venue by ID

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUESROLE_VIEWVENUESROLE_{venue}_MANAGER)
path Parameters
venue
required
string[a-zA-Z0-9_.-]+
header Parameters
x-tenant
string <uuid>

Responses

putVenue

Update venue by ID. Works as upsert

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUESROLE_{venue}_MANAGER)
path Parameters
venue
required
string[a-zA-Z0-9_.-]+
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
id
string [ 0 .. 128 ] characters [a-zA-Z0-9_.-]+
name
required
string [ 1 .. 255 ] characters
menu
string[a-zA-Z0-9_.-]+
active
boolean
tempDisabled
boolean
tempDisabledReason
string [ 0 .. 255 ] characters
object (Address)
phone
string [ 1 .. 64 ] characters
email
string
description
string [ 0 .. 1024 ] characters
timeZone
required
string
object (GeoPosition)
object

Map key refers to possible order types, like 'DELIVERY', 'TAKE_AWAY', 'DINE_IN', etc.

Array of objects (CalendarException) [ 0 .. 7 ] items
warehouse
string[a-zA-Z0-9_.-]+
sync
boolean
syncId
string^[a-z0-9A-Z]+$
object (ModuleStatus)
object
object

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "menu": "string",
  • "active": true,
  • "tempDisabled": true,
  • "tempDisabledReason": "string",
  • "address": {
    },
  • "phone": "string",
  • "email": "string",
  • "description": "string",
  • "timeZone": "Europe/Warsaw",
  • "geoPosition": {
    },
  • "channelConstraints": {
    },
  • "exceptions": [
    ],
  • "warehouse": "string",
  • "sync": true,
  • "syncId": "string",
  • "posIntegratorStatus": {
    },
  • "device": {
    },
  • "extra": {
    }
}

deleteVenue

Delete venue by ID. Be careful as this is irreversible operation.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUES)
path Parameters
venue
required
string[a-zA-Z0-9_.-]+
header Parameters
x-tenant
string <uuid>

Responses

postVenue

Create venue. Works as upsert

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUES)
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
id
string [ 0 .. 128 ] characters [a-zA-Z0-9_.-]+
name
required
string [ 1 .. 255 ] characters
menu
string[a-zA-Z0-9_.-]+
active
boolean
tempDisabled
boolean
tempDisabledReason
string [ 0 .. 255 ] characters
object (Address)
phone
string [ 1 .. 64 ] characters
email
string
description
string [ 0 .. 1024 ] characters
timeZone
required
string
object (GeoPosition)
object

Map key refers to possible order types, like 'DELIVERY', 'TAKE_AWAY', 'DINE_IN', etc.

Array of objects (CalendarException) [ 0 .. 7 ] items
warehouse
string[a-zA-Z0-9_.-]+
sync
boolean
syncId
string^[a-z0-9A-Z]+$
object (ModuleStatus)
object
object

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "menu": "string",
  • "active": true,
  • "tempDisabled": true,
  • "tempDisabledReason": "string",
  • "address": {
    },
  • "phone": "string",
  • "email": "string",
  • "description": "string",
  • "timeZone": "Europe/Warsaw",
  • "geoPosition": {
    },
  • "channelConstraints": {
    },
  • "exceptions": [
    ],
  • "warehouse": "string",
  • "sync": true,
  • "syncId": "string",
  • "posIntegratorStatus": {
    },
  • "device": {
    },
  • "extra": {
    }
}

deactivateVenue

Deactivate venue by ID. Inactive venues cannot receive orders.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUESROLE_{venue}_MANAGER)
path Parameters
venue
required
string[a-zA-Z0-9_.-]+
header Parameters
x-tenant
string <uuid>

Responses

activateVenue

Activate venue by ID. Active venues can receive orders.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUESROLE_{venue}_MANAGER)
path Parameters
venue
required
string[a-zA-Z0-9_.-]+
header Parameters
x-tenant
string <uuid>

Responses

react-admin-list-controller

list

Get paginated list of venues. This endpoint is compatible with React AdminOnRest framework to provide DataSource.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUESROLE_VIEWVENUESROLE_{venue}_MANAGER)
query Parameters
required
object (VenuesFilter)
header Parameters
x-tenant
string <uuid>

Responses

pos-status-controller

modulePosUnlock

Unlock venue with POS module status.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUESROLE_DEVICEROLE_{venue}_MANAGER)
path Parameters
venue
required
string[a-zA-Z0-9_.-]+
header Parameters
x-tenant
string <uuid>

Responses

modulePosStatusUpdate

Update POS module status.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUESROLE_DEVICEROLE_{venue}_MANAGER)
path Parameters
venue
required
string[a-zA-Z0-9_.-]+
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
version
required
string [ 0 .. 32 ] characters ^[a-z0-9A-Z.-]+$
ok
boolean
message
string [ 0 .. 256 ] characters

Responses

Request samples

Content type
application/json
{
  • "version": "string",
  • "ok": true,
  • "message": "string"
}

modulePosLock

Lock venue with POS module status.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_VENUESROLE_DEVICEROLE_{venue}_MANAGER)
path Parameters
venue
required
string[a-zA-Z0-9_.-]+
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
message
string [ 0 .. 256 ] characters

Responses

Request samples

Content type
application/json
{
  • "message": "string"
}

validate-cluster-controller

validateCluster

Validate venue cluster (batch of venues). Returns information if order can be made to those venues simultaneously. Currently only single venue is allowed.

Authorizations:
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
venues
required
Array of strings [ 0 .. 16 ] items
channel
string [ 0 .. 32 ] characters [A-Z0-9_]+

There is also 'orderType' alias of this field for backward compatibility.

due
string <date-time>
object (GeoPosition_Cluster)

Responses

Request samples

Content type
application/json
{
  • "venues": [
    ],
  • "channel": "string",
  • "due": "2019-08-24T14:15:22Z",
  • "deliveryPoint": {
    }
}

validateCluster_1

Validate venue cluster (batch of venues). Returns information if order can be made to those venues simultaneously. Currently only single venue is allowed.

Authorizations:
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
venues
required
Array of strings [ 0 .. 16 ] items
channel
string [ 0 .. 32 ] characters [A-Z0-9_]+

There is also 'orderType' alias of this field for backward compatibility.

due
string <date-time>
object (GeoPosition_Cluster)

Responses

Request samples

Content type
application/json
{
  • "venues": [
    ],
  • "channel": "string",
  • "due": "2019-08-24T14:15:22Z",
  • "deliveryPoint": {
    }
}

venue-controller

getVenue_1

Get venue by ID

Authorizations:
path Parameters
venue
required
string[a-zA-Z0-9_.-]+
query Parameters
at
string <date-time>

Timestamp for exception calculation. Defaults to 'now'

header Parameters
x-tenant
string <uuid>

Responses

getNearest

Locate venues near provided geo position.

Authorizations:
query Parameters
lat
required
number
lng
required
number
maxDistance
number >= 0
limit
integer <int32> [ 1 .. 100 ]
at
string <date-time>

Timestamp for exception calculation. Defaults to 'now'

header Parameters
x-tenant
string <uuid>

Responses

getList

List venues public endpoint

Authorizations:
query Parameters
limit
integer <int32> [ 1 .. 100 ]
skip
integer <int32> >= 0
at
string <date-time>

Timestamp for exception calculation. Defaults to 'now'

header Parameters
x-tenant
string <uuid>

Responses