Flipdish Marketing API
Run marketing campaigns, vouchers, cross-sell, and push notifications.
Run marketing campaigns, vouchers, cross-sell, and push notifications.
{
"openapi": "3.0.3",
"info": {
"title": "Flipdish API - Marketing",
"version": "v1.0",
"description": "Flipdish Open API v1.0 \u2014 Marketing operations. Flipdish is an online ordering and branded-app platform for restaurants and takeaways. This specification was derived from the official Flipdish Swagger document and grouped by resource domain.",
"contact": {
"name": "Flipdish Support",
"email": "[email protected]",
"url": "https://help.flipdish.com"
},
"x-generated-from": "https://api.flipdish.co/swagger/docs/v1.0",
"x-last-validated": "2026-06-02"
},
"servers": [
{
"url": "https://api.flipdish.co",
"description": "Flipdish production API"
}
],
"security": [
{
"oauth2": [
"api"
]
}
],
"tags": [
{
"name": "Campaigns",
"description": "Operations for Campaigns."
},
{
"name": "CrossSell",
"description": "Operations for Cross Sell."
},
{
"name": "PushNotifications",
"description": "Operations for Push Notifications."
},
{
"name": "RestaurantVouchersPayGreen",
"description": "Operations for Restaurant Vouchers Pay Green."
},
{
"name": "Vouchers",
"description": "Operations for Vouchers."
}
],
"paths": {
"/api/v1.0/{appId}/campaigns/loyalty": {
"get": {
"tags": [
"Campaigns"
],
"operationId": "GetLoyaltyCampaignsForApp",
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The app id path parameter.",
"example": "500123"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RestApiArrayResult_LoyaltyCampaign_"
},
"examples": {
"GetLoyaltyCampaignsForApp200Example": {
"summary": "Default GetLoyaltyCampaignsForApp 200 response",
"x-microcks-default": true,
"value": {
"Data": []
}
}
}
}
}
},
"400": {
"description": "BadRequest",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForApp400Example": {
"summary": "Default GetLoyaltyCampaignsForApp 400 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForApp401Example": {
"summary": "Default GetLoyaltyCampaignsForApp 401 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"403": {
"description": "Successful authentication, but authorization has been denied for this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForApp403Example": {
"summary": "Default GetLoyaltyCampaignsForApp 403 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"404": {
"description": "NotFound",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForApp404Example": {
"summary": "Default GetLoyaltyCampaignsForApp 404 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForApp500Example": {
"summary": "Default GetLoyaltyCampaignsForApp 500 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
}
},
"security": [
{
"oauth2": [
"api"
]
}
],
"summary": "Flipdish Get Loyalty Campaigns for App",
"description": "Get Loyalty Campaigns for App via the Flipdish Open API v1.0 (GET /api/v1.0/{appId}/campaigns/loyalty).",
"x-microcks-operation": {
"delay": 0,
"dispatcher": "FALLBACK"
}
},
"post": {
"tags": [
"Campaigns"
],
"operationId": "CreateLoyaltyCampaign",
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The app id path parameter.",
"example": "500123"
}
],
"requestBody": {
"required": false,
"content": {}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RestApiResult_LoyaltyCampaign_"
},
"examples": {
"CreateLoyaltyCampaign200Example": {
"summary": "Default CreateLoyaltyCampaign 200 response",
"x-microcks-default": true,
"value": {
"Data": {
"CampaignId": 500123,
"Statistics": {
"VouchersIssued": 1,
"VouchersRedeemed": 1,
"Conversion": 1.0,
"SalesGenerated": 1.0,
"ReturnOfInvestment": 1.0
},
"Stores": [],
"PublicId": "00000000-0000-0000-0000-000000000000",
"OrdersBeforeReceivingVoucher": 1,
"PercentDiscountAmount": 12.5,
"MaxDiscount": 3,
"RoundingStrategy": 1,
"ShouldIncludeOrdersWithLoyaltyVoucher": true,
"VoucherValidPeriodDays": 1,
"IncludeDeliveryFee": true,
"AutoApplyResultingVouchers": true,
"IncludeExistingOrders": true,
"IsEnabled": true,
"StoreIds": [
1
],
"AppId": "500123",
"ForceDiscount": true
}
}
}
}
}
}
},
"400": {
"description": "BadRequest",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateLoyaltyCampaign400Example": {
"summary": "Default CreateLoyaltyCampaign 400 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateLoyaltyCampaign401Example": {
"summary": "Default CreateLoyaltyCampaign 401 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"403": {
"description": "Successful authentication, but authorization has been denied for this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateLoyaltyCampaign403Example": {
"summary": "Default CreateLoyaltyCampaign 403 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"404": {
"description": "NotFound",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateLoyaltyCampaign404Example": {
"summary": "Default CreateLoyaltyCampaign 404 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateLoyaltyCampaign500Example": {
"summary": "Default CreateLoyaltyCampaign 500 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
}
},
"security": [
{
"oauth2": [
"api"
]
}
],
"summary": "Flipdish Create Loyalty Campaign",
"description": "Create Loyalty Campaign via the Flipdish Open API v1.0 (POST /api/v1.0/{appId}/campaigns/loyalty).",
"x-microcks-operation": {
"delay": 0,
"dispatcher": "FALLBACK"
}
}
},
"/api/v1.0/{appId}/campaigns/retention": {
"get": {
"tags": [
"Campaigns"
],
"operationId": "GetRetentionCampaignsForApp",
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The app id path parameter.",
"example": "500123"
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RestApiArrayResult_RetentionCampaign_"
},
"examples": {
"GetRetentionCampaignsForApp200Example": {
"summary": "Default GetRetentionCampaignsForApp 200 response",
"x-microcks-default": true,
"value": {
"Data": []
}
}
}
}
}
},
"400": {
"description": "BadRequest",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetRetentionCampaignsForApp400Example": {
"summary": "Default GetRetentionCampaignsForApp 400 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetRetentionCampaignsForApp401Example": {
"summary": "Default GetRetentionCampaignsForApp 401 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"403": {
"description": "Successful authentication, but authorization has been denied for this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetRetentionCampaignsForApp403Example": {
"summary": "Default GetRetentionCampaignsForApp 403 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"404": {
"description": "NotFound",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetRetentionCampaignsForApp404Example": {
"summary": "Default GetRetentionCampaignsForApp 404 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetRetentionCampaignsForApp500Example": {
"summary": "Default GetRetentionCampaignsForApp 500 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
}
},
"security": [
{
"oauth2": [
"api"
]
}
],
"summary": "Flipdish Get Retention Campaigns for App",
"description": "Get Retention Campaigns for App via the Flipdish Open API v1.0 (GET /api/v1.0/{appId}/campaigns/retention).",
"x-microcks-operation": {
"delay": 0,
"dispatcher": "FALLBACK"
}
},
"post": {
"tags": [
"Campaigns"
],
"operationId": "CreateRetentionCampaign",
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The app id path parameter.",
"example": "500123"
}
],
"requestBody": {
"required": false,
"content": {}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RestApiResult_RetentionCampaign_"
},
"examples": {
"CreateRetentionCampaign200Example": {
"summary": "Default CreateRetentionCampaign 200 response",
"x-microcks-default": true,
"value": {
"Data": {
"CampaignId": 500123,
"Statistics": {
"VouchersIssued": 1,
"VouchersRedeemed": 1,
"Conversion": 1.0,
"SalesGenerated": 1.0,
"ReturnOfInvestment": 1.0
},
"Stores": [],
"PublicId": "00000000-0000-0000-0000-000000000000",
"NotifyCustomerAfterMinutes": 1,
"PercentDiscountAmount": 12.5,
"MaxDiscount": 3,
"LumpDiscountAmount": 12.5,
"VoucherValidPeriodDays": 1,
"IncludeDeliveryFee": true,
"AutoApplyResultingVouchers": true,
"IncludeExistingOrders": true,
"IsEnabled": true,
"StoreIds": [
1
],
"AppId": "500123",
"ForceDiscount": true
}
}
}
}
}
}
},
"400": {
"description": "BadRequest",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateRetentionCampaign400Example": {
"summary": "Default CreateRetentionCampaign 400 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateRetentionCampaign401Example": {
"summary": "Default CreateRetentionCampaign 401 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"403": {
"description": "Successful authentication, but authorization has been denied for this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateRetentionCampaign403Example": {
"summary": "Default CreateRetentionCampaign 403 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"404": {
"description": "NotFound",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateRetentionCampaign404Example": {
"summary": "Default CreateRetentionCampaign 404 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"CreateRetentionCampaign500Example": {
"summary": "Default CreateRetentionCampaign 500 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
}
},
"security": [
{
"oauth2": [
"api"
]
}
],
"summary": "Flipdish Create Retention Campaign",
"description": "Create Retention Campaign via the Flipdish Open API v1.0 (POST /api/v1.0/{appId}/campaigns/retention).",
"x-microcks-operation": {
"delay": 0,
"dispatcher": "FALLBACK"
}
}
},
"/api/v1.0/{appId}/campaigns/loyalty/{storeId}": {
"get": {
"tags": [
"Campaigns"
],
"operationId": "GetLoyaltyCampaignsForStore",
"parameters": [
{
"name": "appId",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The app id path parameter.",
"example": "500123"
},
{
"name": "storeId",
"in": "path",
"required": true,
"schema": {
"type": "integer",
"format": "int32"
},
"description": "The store id path parameter.",
"example": 500123
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RestApiArrayResult_LoyaltyCampaign_"
},
"examples": {
"GetLoyaltyCampaignsForStore200Example": {
"summary": "Default GetLoyaltyCampaignsForStore 200 response",
"x-microcks-default": true,
"value": {
"Data": []
}
}
}
}
}
},
"400": {
"description": "BadRequest",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForStore400Example": {
"summary": "Default GetLoyaltyCampaignsForStore 400 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForStore401Example": {
"summary": "Default GetLoyaltyCampaignsForStore 401 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"403": {
"description": "Successful authentication, but authorization has been denied for this request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForStore403Example": {
"summary": "Default GetLoyaltyCampaignsForStore 403 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"404": {
"description": "NotFound",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForStore404Example": {
"summary": "Default GetLoyaltyCampaignsForStore 404 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FlipdishError"
},
"examples": {
"GetLoyaltyCampaignsForStore500Example": {
"summary": "Default GetLoyaltyCampaignsForStore 500 response",
"x-microcks-default": true,
"value": {
"error": {
"errorMessage": "Invalid or missing parameters.",
"errorCode": "BadRequest",
"details": "Validation failed for field 'storeId'."
}
}
}
}
}
# --- truncated at 32 KB (286 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/flipdish/refs/heads/main/openapi/flipdish-marketing-openapi.json