{
"swagger": "2.0",
"info": {
"description": "",
"version": "v1",
"title": "Cake Online Order API",
"termsOfService": "https://www.trycake.com/legal/developer-api-terms/"
},
"host": "stag-sandbox.cake.net",
"basePath": "/olo/v1",
"tags": [
{
"name": "Account API",
"description": "Third Party Account Controller"
},
{
"name": "Tax API",
"description": "Third Party Tax Controller"
},
{
"name": "Menu API",
"description": "Third Party Menu Controller"
},
{
"name": "Order API",
"description": "Third Party Order Controller"
}
],
"paths": {
"/accounts/{accountId}": {
"get": {
"tags": [
"Account API"
],
"summary": "Account Profile by Account Id",
"description": "Retrieves operator details using the given account id. Returned object contains all the information related to the operator.\n",
"operationId": "getOperatorProfileByAccountIdUsingGET",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountId",
"in": "path",
"description": "accountId",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/Account"
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "200002 - Account not found"
},
"500": {
"description": "200000 - Unknown Error"
}
},
"security": [
{
"oauthschema": [
"global"
]
}
]
}
},
"/accounts/{accountId}/catalog": {
"get": {
"tags": [
"Menu API"
],
"summary": "Get menu catalog by account id",
"description": "Get active menu catalog for the given account id",
"operationId": "getMenuCatalogByAccountIdUsingGET_1",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountId",
"in": "path",
"description": "accountId",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/Menu catalog"
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "200002 - Account not found "
},
"500": {
"description": "200100 - Menu error 200000 - Unknown Error "
}
},
"security": [
{
"oauthschema": [
"global"
]
}
]
}
},
"/accounts/{accountId}/orders": {
"post": {
"tags": [
"Order API"
],
"summary": "Place Order",
"description": "This endpoint allows to place an order via the Cake platform for a given operator.",
"operationId": "createOrderUsingPOST",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"in": "body",
"name": "thirdPartyOrder",
"description": "thirdPartyOrder",
"required": true,
"schema": {
"$ref": "#/definitions/Order"
}
},
{
"name": "accountId",
"in": "path",
"description": "accountId",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/Order"
}
},
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/Order"
}
},
"400": {
"description": "200300 - Invalid order object 200301 - Empty provider detail 200302 - Empty aggregator detail 200203 - Invalid modifier option 200305 - Invalid order type 200307 - Invalid customer object 200308 - Invalid customer contact 200309 - Invalid subtotal value 200310 - Invalid tax value 200311 - Invalid discount value 200312 - Invalid delivery fee 200313 - Invalid tip value 200314 - Invalid order total value 200315 - Invalid payment details 200316 - Invalid payment method 200317 - Invalid payment mode 200318 - Invalid order prep time 200004 - Restaurant is offline 200200 - Invalid tax object 200201 - Invalid item 200202 - Invalid modifier group 200203 - Invalid modifier option 200204 - Incompatible line items "
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "200002 - Account not found "
},
"409": {
"description": "200303 - Duplicate provider reference 200304 - Duplicate aggregator reference "
},
"500": {
"description": "200100 - Menu error 200000 - Unknown Error "
},
"501": {
"description": "200319 - Unsupported payment method 200320 - Unsupported payment mode "
}
},
"security": [
{
"oauthschema": [
"global"
]
}
]
}
},
"/accounts/{accountId}/orders/{orderId}": {
"get": {
"tags": [
"Order API"
],
"summary": "Get Order",
"description": "This endpoint allows to get an order details via the Cake platform for a given operator.",
"operationId": "getOrderUsingGET",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountId",
"in": "path",
"description": "accountId",
"required": true,
"type": "string"
},
{
"name": "orderId",
"in": "path",
"description": "orderId",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/Order"
}
},
"400": {
"description": "200322 - Invalid order id "
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "200002 - Account not found "
},
"500": {
"description": "200000 - Unknown Error "
}
},
"security": [
{
"oauthschema": [
"global"
]
}
]
}
},
"/accounts/{accountId}/sessions": {
"get": {
"tags": [
"Menu API"
],
"summary": "Menu Sessions by Account ID",
"description": "Retrieve the active menu session list for a given Account ID",
"operationId": "getMenuSessionsByAccountIdUsingGET",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountId",
"in": "path",
"description": "accountId",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/Menu Sessions"
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "200002 - Account not found200101 - Session not found"
},
"500": {
"description": "200100 - Menu error 200000 - Unknown Error "
}
},
"security": [
{
"oauthschema": [
"global"
]
}
]
}
},
"/accounts/{accountId}/sessions/{sessionId}/catalog": {
"get": {
"tags": [
"Menu API"
],
"summary": "Menu catalog using the Account ID and the Session ID",
"description": "Retrieve the active menu catalog for a given Account ID and the Session ID",
"operationId": "getMenuCatalogByAccountIdAndSessionIdUsingGET",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountId",
"in": "path",
"description": "accountId",
"required": true,
"type": "string"
},
{
"name": "sessionId",
"in": "path",
"description": "sessionId",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/Menu Sessions"
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "200002 - Account not found"
},
"500": {
"description": "200100 - Menu error 200000 - Unknown Error "
}
},
"security": [
{
"oauthschema": [
"global"
]
}
]
}
},
"/accounts/{accountId}/status": {
"get": {
"tags": [
"Account API"
],
"summary": "Account Status",
"description": "Retrieves the Online/Offline status of the account",
"operationId": "getPosStatusByAccountIdUsingGET_1",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountId",
"in": "path",
"description": "accountId",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/AccountOnlineStatus"
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "200002 - Account not found"
},
"500": {
"description": "200000 - Unknown Error "
}
},
"security": [
{
"oauthschema": [
"global"
]
}
]
}
},
"/accounts/{accountId}/tax": {
"post": {
"tags": [
"Tax API"
],
"summary": "Calculate Tax",
"description": "This endpoint is used to calculate the total tax for given line items with values.",
"operationId": "calculateTaxUsingPOST",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "accountId",
"in": "path",
"description": "accountId",
"required": true,
"type": "string"
},
{
"in": "body",
"name": "orderTax",
"description": "orderTax",
"required": true,
"schema": {
"$ref": "#/definitions/Tax"
}
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/Tax"
}
},
"400": {
"description": "200200 - Invalid tax object 200201 - Invalid item 200202 - Invalid modifier group 200203 - Invalid modifier option 200204 - Incompatible line items "
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "200002 - Account not found "
},
"500": {
"description": "200100 - Menu error 200000 - Unknown Error "
}
},
"security": [
{
"oauthschema": [
"global"
]
}
]
}
}
},
"securityDefinitions": {
"oauthschema": {
"type": "oauth2",
"tokenUrl": "https://stag-sandbox.cake.net/oauth/token",
"flow": "application",
"scopes": {
"global": "global"
}
}
},
"definitions": {
"Customer": {
"type": "object",
"required": [
"contact",
"email",
"firstName",
"lastName"
],
"properties": {
"contact": {
"type": "array",
"description": "Customer contact list",
"items": {
"$ref": "#/definitions/Contact"
}
},
"email": {
"type": "string",
"example": "sample@test.com",
"description": "Customer email address"
},
"firstName": {
"type": "string",
"example": "Jone",
"description": "First name"
},
"lastName": {
"type": "string",
"example": "Doie",
"description": "Last name"
}
},
"description": "Customer resource representation"
},
"Phone": {
"type": "object",
"required": [
"areaCode",
"exchangeCode",
"subscriberNumber"
],
"properties": {
"areaCode": {
"type": "string",
"example": "233",
"description": "Area code"
},
"exchangeCode": {
"type": "string",
"example": "233",
"description": "Exchange code"
},
"extension": {
"type": "string",
"example": "233",
"description": "Extension code"
},
"subscriberNumber": {
"type": "string",
"example": "233",
"description": "Subscriber code"
}
},
"description": "Phone resource representation"
},
"Location info": {
"type": "object",
"required": [
"lan",
"lat"
],
"properties": {
"lan": {
"type": "string",
"example": "-122.421889500000000000000000000",
"description": "longitude of the restaurant"
},
"lat": {
"type": "string",
"example": "37.795939400000000000000000000",
"description": "Latitude of the restaurant"
}
},
"description": "Location information of the account"
},
"Contact": {
"type": "object",
"required": [
"address",
"contactType",
"phone"
],
"properties": {
"address": {
"description": "Address of the customer. This is required for Delivery orders.",
"$ref": "#/definitions/Address"
},
"contactType": {
"type": "string",
"example": "HOME",
"description": "Contact type of the contact",
"enum": [
"HOME",
"OFFICE",
"OTHER"
]
},
"phone": {
"description": "Phone number",
"$ref": "#/definitions/Phone"
}
},
"description": "Contact resource representation"
},
"Menu catalog": {
"type": "object",
"required": [
"account",
"categories",
"menus",
"salesCategories",
"variations"
],
"properties": {
"account": {
"description": "Account related menu details",
"$ref": "#/definitions/MenuAccount"
},
"categories": {
"type": "array",
"description": "Item category details",
"items": {
"$ref": "#/definitions/Category"
}
},
"items": {
"type": "array",
"items": {
"$ref": "#/definitions/Item"
}
},
"menus": {
"type": "array",
"description": "Menu details",
"items": {
"$ref": "#/definitions/Menu"
}
},
"modifierGroups": {
"type": "array",
"items": {
"$ref": "#/definitions/ModifierGroup"
}
},
"modifierOptions": {
"type": "array",
"items": {
"$ref": "#/definitions/ModifierOption"
}
},
"salesCategories": {
"type": "array",
"description": "Sales category details",
"items": {
"$ref": "#/definitions/SalesCategory"
}
},
"taxes": {
"type": "array",
"items": {
"$ref": "#/definitions/CatalogTax"
}
},
"variations": {
"type": "array",
"description": "Variation details",
"items": {
"$ref": "#/definitions/Variation"
}
}
},
"description": "Menu catalog resource representation"
},
"Order": {
"type": "object",
"required": [
"aggregatorId",
"aggregatorOrderReference",
"customer",
"deliveryFee",
"discount",
"lineItems",
"orderReadyTime",
"orderStatus",
"orderType",
"paymentDetails",
"providerId",
"providerOrderReference",
"subTotal",
"tax",
"tip",
"total"
],
"properties": {
"aggregatorId": {
"type": "string",
"example": "Checkmate",
"description": "OLO aggregator name"
},
"aggregatorOrderReference": {
"type": "string",
"example": "12345678",
"description": "The reference number of the OLO aggregator."
},
"customer": {
"description": "Order customer details",
"$ref": "#/definitions/Customer"
},
"deliveryFee": {
"type": "number",
"example": 2,
"description": "Order delivery fee value"
},
"discount": {
"type": "number",
"example": 4,
"description": "Order discount value"
},
"lineItems": {
"type": "array",
"description": "Order line item details",
"items": {
"$ref": "#/definitions/Item"
}
},
"orderReadyTime": {
"type": "integer",
"format": "int64",
"example": 1577769799000,
"description": "Order ready time. This should be a unix timestamp"
},
"orderStatus": {
"type": "string",
"example": "APPROVED",
"description": "Order status of the given order number",
"enum": [
"PENDING",
"FETCHED",
"APPROVED",
"CANCELLED"
]
},
"orderType": {
"type": "string",
"example": "DINE_IN",
"description": "Order type",
"enum": [
"TAKEOUT",
"DINE_IN and DELIVERY"
]
},
"paymentDetails": {
"description": "Order payment details",
"$ref": "#/definitions/Payment Details"
},
"providerId": {
"type": "string",
"example": "GrubHub",
"description": "OLO service provider name"
},
"providerOrderReference": {
"type": "string",
"example": "12345678",
"description": "The reference number of the OLO service provider."
},
"subTotal": {
"type": "number",
"example": 60,
"description": "Order sub total value"
},
"tax": {
"type": "number",
"example": 12,
"description": "Order tax value"
},
"tip": {
"type": "number",
"example": 5,
"description": "Order tip value"
},
"total": {
"type": "number",
"example": 75,
"description": "Order total value"
}
},
"description": "Order resource representation"
},
"Account": {
"type": "object",
"required": [
"accountId",
"name"
],
"properties": {
"accountId": {
"type": "string",
"example": "10132224",
"description": "Account's account id"
},
"accountStatus": {
"type": "string",
"example": "ACTIVE",
"description": "Account status",
"enum": [
"ACTIVE",
"INACTIVE"
]
},
"address": {
"description": "Account's Address",
"$ref": "#/definitions/Address"
},
"countryCode": {
"type": "string",
"example": "US",
"description": "Account's country code"
},
"deliveryFee": {
"type": "number",
"example": 10,
"description": "Account's delivery fee for delivery orders"
},
"deliveryTime": {
"type": "integer",
"format": "int64",
"example": 30,
"description": "Minimum expected time in minutes for the delivery order"
},
"description": {
"type": "string",
"example": "sample-merchant-description",
"description": "Account's description"
},
"diningOptions": {
"type": "array",
"example": "TAKEOUT, DELIVERY, DINING",
"description": "Account supported dining options",
"items": {
"type": "string",
"enum": [
"TAKEOUT",
"DELIVERY",
"DINING"
]
}
},
"emailAddress": {
"type": "string",
"example": "test@sysco.com",
"description": "Account's email address"
},
"isAccountOnline": {
"type": "boolean",
"example": true,
"description": "This value will be true if the PoS is online. If the PoS is switched off, CAKE assumes that the account is offline"
},
"languageCode": {
"type": "string",
"example": "en",
"description": "Account's language code"
},
"location": {
"description": "Account's location information",
"$ref": "#/definitions/Location info"
},
"minDeliveryOrderAmount": {
"type": "number",
"example": 15,
"description": "Minimum amount for the delivery order"
},
"minOrderAmount": {
"type": "number",
"example": 20,
"description": "Minimum amount for the order"
},
"name": {
"type": "string",
"example": "Test Merchant",
"description": "Account's name"
},
"orderPrepTime": {
"type": "integer",
"format": "int64",
"example": 20,
"description": "Minimum time expected to prepare the order"
},
"phone": {
"description": "Account's phone number",
"$ref": "#/definitions/Phone"
},
"timezone": {
"type": "string",
"example": "America/Los_Angeles",
"description": "Account's name"
}
},
"description": "Account resource representation"
},
"Tax": {
"type": "object",
"required": [
"lineItems"
],
"properties": {
"lineItems": {
"type": "array",
"description": "Order line item details",
"items": {
"$ref": "#/definitions/Item"
}
}
},
"description": "Tax resource representation"
},
"AccountOnlineStatus": {
"type": "object",
"required": [
"isAccountOnline"
],
"properties": {
"isAccountOnline": {
"type": "boolean",
"example": true,
"description": "This value will be true if the POS device at the location is online."
}
},
"description": "Operator PoS online status representation"
},
"Modifier Group": {
"type": "object",
"required": [
"modifierGroupId",
"modifierOptions"
],
"properties": {
"modifierGroupId": {
"type": "string",
"example": "15b40371-e06a-4ddc-e8f5-2658d9c83168",
"description": "Modifier group id"
},
"modifierOptions": {
"type": "array",
"description": "Modifier options list",
"items": {
"$ref": "#/definitions/Modifier Option"
}
}
},
"description": "A group of Add ons are assigned under a modifier group"
},
"Menu": {
"type": "object",
"properties": {
"active": {
"type": "boolean"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"sessionIds": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"ModifierOption": {
"type": "object",
"properties": {
"globalModifier": {
"type": "boolean"
},
"id": {
"type": "string"
},
"isActive": {
"type": "boolean"
},
"lineNumber": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string"
},
"price": {
"type": "number"
}
}
},
"Category": {
"type": "object",
"properties": {
"active": {
"type": "boolean"
},
"childrenIds": {
"type": "array",
"items": {
"type": "string"
}
},
"description": {
"type": "string"
},
"id": {
"type": "string"
},
"itemIds": {
"type": "array",
"items": {
"type": "string"
}
},
"menuIds": {
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"type": "string"
},
"parentIds": {
"type": "array",
"items": {
"type": "string"
}
},
"printerIds": {
"type": "array",
"items": {
"type": "string"
}
},
"salesCategoryId": {
"type": "string"
},
"sessionIds": {
"type": "array",
"items": {
"type": "string"
}
},
"taxId": {
"type": "string"
},
"toGoTaxId": {
"type": "string"
}
}
},
"Payment Details": {
"type": "object",
"required": [
"paymentMethod",
"paymentMode",
"paymentReferenceId"
],
"properties": {
"paymentMethod": {
"type": "string",
"example": "THIRD_PARTY",
"description": "Payment method"
},
"paymentMode": {
"type": "string",
"example": "CARD",
"description": "Payment mode"
},
"paymentReferenceId": {
"type": "string",
"example": "12345678",
"description": "Payment reference Id"
}
},
"description": "Payment Details representation"
},
"Modifier Option": {
"type": "object",
"required": [
"modifierOptionId"
],
"properties": {
"modifierOptionId": {
"type": "string",
"example": "83317be5-d47b-4eab-e23f-248754561d10",
"description": "Modifier option id"
},
"modifierOptionName": {
"type": "string",
"example": "Sample Modifier",
"description": "Modifier option name"
},
"value": {
"type": "number",
"example": 2,
"description": "Modifier option value"
}
},
"description": "Add ons that can be attached to an item for further customizations"
},
"Item": {
"type": "object",
"required": [
"id",
"price",
"quantity",
"variationId"
],
"properties": {
"id": {
"type": "string",
"example": "a653fede-f4a6-47d7-d823-c5bed2ac6d0d",
"description": "The Id of the CAKE item"
},
"itemName": {
"type": "string",
"example": "Sample Item",
"description": "Name of the item"
},
"modifierGroups": {
"type": "array",
"description": "Modifier groups assigned to the item",
"items": {
"$ref": "#/definitions/Modifier Group"
}
},
"price": {
"type": "number",
"example": 10,
"description": "Price of the item"
},
"quantity": {
"type": "integer",
"format": "int32",
"example": 1,
"description": "Quantity"
},
"specialInstruction": {
"type": "string",
"example": "Less spicy",
"description": "Special instructions for line item"
},
"tax": {
"type": "number",
"description": "Item total tax value"
},
"variationId": {
"type": "string",
"example": "2a16ba67-8fb8-4b27-b669-ec9450a39c14",
"description": "Variation id of the CAKE item"
}
},
"description": "Item resource representation"
},
"SalesCategory": {
"type": "object",
"properties": {
"active": {
"type": "boolean"
},
"categoryIds": {
"type": "array",
"items": {
"type": "string"
}
},
"childrenIds": {
"type": "array",
"items": {
"type": "string"
}
},
"code": {
"type": "string"
},
"id": {
"type": "string"
},
"itemIds": {
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"type": "string"
},
"parentIds": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"Session": {
"type": "object",
"properties": {
"active": {
"type": "boolean"
},
"categoryIds": {
"type": "array",
"items": {
"type": "string"
}
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"slotIds": {
"type": "array",
"items": {
"type": "string"
}
},
"slots": {
"type": "array",
"items": {
"$ref": "#/definitions/SessionSlots"
}
}
}
},
"MenuAccount": {
"type": "object",
"properties": {
"accountId": {
"type": "string"
},
"defaultTaxId": {
"type": "string"
},
"serviceChargeTaxEnabled": {
"type": "boolean"
},
"serviceChargeTaxId": {
"type": "string"
},
"toGoTaxEnabled": {
"type": "boolean"
}
}
},
"Address": {
"type": "object",
"required": [
"address1",
"address2",
"city",
"countryCode",
"state",
"zipCode"
],
"properties": {
"address1": {
"type": "string",
"example": "10000",
"description": "Address line one"
},
"address2": {
"type": "string",
"example": "Van Dyke Ave",
"description": "Address line two"
},
"city": {
"type": "string",
"example": "Sterling Heights",
"description": "City"
},
"countryCode": {
"type": "string",
"example": "US",
"description": "Country code"
},
"state": {
"type": "string",
"example": "MI",
"description": "State"
},
"zipCode": {
"type": "string",
"example": "48312",
"description": "Zip code"
}
},
"description": "Address resource representation"
},
"SessionSlots": {
"type": "object",
"properties": {
"active": {
"type": "boolean"
},
"dayOfWeek": {
"type": "integer",
"format": "int32"
},
"endTime": {
"type": "string"
},
"id": {
"type": "string"
},
"startTime": {
"type": "string"
}
}
},
"Variation": {
"type": "object",
"properties": {
"active": {
"type": "boolean"
},
"default": {
"type": "boolean"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"ModifierGroup": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"isActive": {
"type": "boolean"
},
"isRequired": {
"type": "boolean"
},
"lineNumber": {
"type": "integer",
"format": "int32"
},
"max": {
"type": "integer",
"format": "int32"
},
"min": {
"type": "integer",
"format": "int32"
},
"modifierOptions": {
"type": "array",
"items": {
"$ref": "#/definitions/ModifierOption"
}
},
"name": {
"type": "string"
}
}
},
"CatalogTax": {
"type": "object",
"properties": {
"childrenIds": {
"type": "array",
"items": {
"type": "string"
}
},
"id": {
"type": "string"
},
"isActive": {
"type": "boolean"
},
"name": {
"type": "string"
},
"parentIds": {
"type": "array",
"items": {
"type": "string"
}
},
"rate": {
"type": "number"
},
"type": {
"type": "string"
}
}
},
"Menu Sessions": {
"type": "object",
"required": [
"sessions",
"totalSessions"
],
"properties": {
"sessions": {
"type": "array",
"description": "Session details",
"items": {
"$ref": "#/definitions/Session"
}
},
"totalSessions": {
"type": "integer",
"format": "int32",
"description": "Total number of sessions available"
}
},
"description": "Sessions resource representation"
}
}
}