{ "openapi": "3.0.0", "info": { "title": "Vibes Platform API", "version": "1.0.0" }, "servers": [ { "url": "https://public-api.vibescm.com", "description": "North America" }, { "url": "https://public-api.eu.vibes.com/", "description": "EMEA" } ], "security": [ { "basicAuth": [] } ], "tags": [ { "name": "Acquisition Campaign API" }, { "name": "Broadcast API" }, { "name": "Callback API" }, { "name": "Event API" }, { "name": "Event-Triggered Campaign API" }, { "name": "Incentive Code API" }, { "name": "Incentive Pool API" }, { "name": "Person API" }, { "name": "Push Device Manager API" }, { "name": "Source Code API" }, { "name": "Subscription API" }, { "name": "Subscription List API" }, { "name": "Wallet Campaign API", "description": "Manage mobile wallet campaigns and the individual wallet items (passes) issued from them. A wallet campaign is the container for a single offer, loyalty card, or event ticket program; it owns the iOS and Android pass templates, the messages you send, and the store locations attached to the passes. Items are the per-recipient passes created when end users add a pass to Apple Wallet or Google Wallet." }, { "name": "Wallet Messaging API", "description": "Send push-style messages to the holders of a wallet campaign's passes and review messages that have already been sent. Messages can be targeted to specific recipients with filters (for example, by token value or group code)." }, { "name": "Android Wallet Templates API", "description": "Define the design and content of the Google Wallet (Android) pass for a wallet campaign. Each campaign has a single Google Wallet template whose fields map to Google Wallet pass concepts. See the Google Wallet reference for field semantics: https://developers.google.com/wallet/generic" }, { "name": "iOS Wallet Templates API", "description": "Define the design and content of the Apple Wallet (iOS) pass for a wallet campaign. Each campaign has a single Apple Wallet (passbook) template whose fields map to PassKit pass concepts. See the Apple Wallet Passes reference for field semantics: https://developer.apple.com/documentation/WalletPasses" }, { "name": "Wallet Location Selector API", "description": "Configure the branded \"Add to Wallet\" landing page shown to end users for a wallet campaign, including its image, heading, colors, and language." }, { "name": "Wallet Store Locations API", "description": "Manage the store locations attached to a wallet campaign. Locations drive geofenced lock-screen notifications that remind pass holders about a nearby store." } ], "paths": { "/companies/{company_key}/campaigns/acquisition": { "get": { "tags": [ "Acquisition Campaign API" ], "summary": "Get acquisition campaigns", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/acquisitionsResponse" } } } }, "404": { "description": "No campaigns can be located." } } } }, "/companies/{company_key}/campaigns/acquisition/{acquisition_id}": { "get": { "tags": [ "Acquisition Campaign API" ], "summary": "Get an acquisition campaign", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "acquisition_id", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/acquisitionResponse" } } } }, "404": { "description": "The `acquisition_id` cannot be located." } } } }, "/companies/{company_key}/campaigns/acquisition/{acquisition_id}/participants": { "get": { "tags": [ "Acquisition Campaign API" ], "summary": "Search for pending participants", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "mdn", "in": "query", "description": "Mobile Directory Number. The dialable phone number associated with the phone. Required if searching by mdn.", "schema": { "type": "string" } }, { "name": "person_id", "in": "query", "description": "Vibes-assigned unique indentifier for the person. Required if searching by person_id", "schema": { "type": "string" } }, { "name": "external_person_id", "in": "query", "description": "A unique person identifier assigned by the brand, which can be used to link non-Vibes-assigned identifiers to Vibes person records. Required if searching by external_person_id.", "schema": { "type": "string" } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "acquisition_id", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "This is returned for all valid requests. The array with be empty for entities without pending subscriptions.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/acquisitionParticipantsResponse" } } } }, "400": { "description": "The supplied MDN is not in proper mobile number format." } } }, "post": { "tags": [ "Acquisition Campaign API" ], "summary": "Add a participant", "requestBody": { "description": "User details for acquisition", "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/addParticipantRequest" } } } }, "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "acquisition_id", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: If you are entering a live acquistion_id, please note that using the \"Try It\" feature on the righthand console will send an actual API call to our system. This may result in a person being added to the live campaign.
" } ], "responses": { "200": { "description": "This means the person has a pending acquisition and has not yet confirmed.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/addParticipantResponse" } } } }, "201": { "description": "Depending on the \"status\", the following can be returned:
" }, "400": { "description": "The supplied mobile number is not in proper mobile number format." }, "409": { "description": "Already subscribed. This means the person has tried to subscribe more than once, but is already subscribed to the list." }, "422": { "description": "Returned in the following situations:
" } } } }, "/companies/{company_key}/mobiledb/broadcasts/": { "post": { "tags": [ "Broadcast API" ], "summary": "Create a broadcast", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/broadcastRequest" } } } }, "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: Please note that the \"Try It\" feature to the right will send an actual API call to our system, which may result in a new broadcast being created.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/broadcastResponse" } } } }, "201": { "description": "Broadcast has been created." } } } }, "/companies/{company_key}/mobiledb/broadcasts": { "get": { "tags": [ "Broadcast API" ], "summary": "Get broadcasts", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "status", "in": "query", "schema": { "type": "string", "enum": [ "scheduled", "sent", "canceled", "in_progress", "failed", "paused", "deleted" ] }, "example": "scheduled" }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/broadcastsResponse" } } } } } } }, "/companies/{company_key}/mobiledb/broadcasts/{broadcast_id}": { "get": { "tags": [ "Broadcast API" ], "summary": "Get a broadcast", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "broadcast_id", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/broadcastResponse" } } } }, "404": { "description": "The broadcast cannot be found or the `broadcast_id` is invalid." } } }, "put": { "tags": [ "Broadcast API" ], "summary": "Update a broadcast", "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/broadcastRequest" } } } }, "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "broadcast_id", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: If you are entering a live broadcast_id, please note that using the \"Try It\" feature on the righthand console will send an actual API call to our system. This may result in changes being made to the live broadcast.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/broadcastResponse" } } } }, "403": { "description": "The status of the broadcast is not scheduled." }, "404": { "description": "The `broadcast_id` cannot be found." } } }, "delete": { "tags": [ "Broadcast API" ], "summary": "Cancel a broadcast", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "broadcast_id", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: If you are entering a live broadcast_id, please note that using the \"Try It\" feature on the righthand console will send an actual API call to our system. This may result in the live broadcast being canceled.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/broadcastResponse" } } } }, "403": { "description": "Returned if the broadcast cannot be canceled because it has already been sent." }, "404": { "description": "The `broadcast_id` cannot be found." } } } }, "/companies/{company_key}/config/callbacks/": { "post": { "tags": [ "Callback API" ], "summary": "Register for a new callback type", "requestBody": { "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/callbackRequest-Ack" }, { "$ref": "#/components/schemas/callbackRequest-Event" }, { "$ref": "#/components/schemas/callbackRequest-Person" }, { "$ref": "#/components/schemas/callbackRequest-Push" }, { "$ref": "#/components/schemas/callbackRequest-Sub" }, { "$ref": "#/components/schemas/callbackRequest-SubList" }, { "$ref": "#/components/schemas/callbackRequest-Unmatched" }, { "$ref": "#/components/schemas/callbackRequest-Wallet" } ] } } } }, "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: Please note that the \"Try It\" feature to the right will send an actual API call to our system, which may result in your company being registered for a new callback.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/callbackResponse" } } } }, "201": { "description": "Callback has been successfully registered." } } }, "get": { "tags": [ "Callback API" ], "summary": "List registered callbacks", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/callbacksResponse" } } } } } } }, "/companies/{company_key}/config/callbacks/{callback_id}": { "get": { "tags": [ "Callback API" ], "summary": "Get a callback", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "callback_id", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/callbackResponse" } } } }, "404": { "description": "The `callback_id` is not recognized." } } }, "put": { "tags": [ "Callback API" ], "summary": "Update a callback", "requestBody": { "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/callbackRequest-Ack" }, { "$ref": "#/components/schemas/callbackRequest-Event" }, { "$ref": "#/components/schemas/callbackRequest-Person" }, { "$ref": "#/components/schemas/callbackRequest-Push" }, { "$ref": "#/components/schemas/callbackRequest-Sub" }, { "$ref": "#/components/schemas/callbackRequest-SubList" }, { "$ref": "#/components/schemas/callbackRequest-Unmatched" }, { "$ref": "#/components/schemas/callbackRequest-Wallet" } ] } } } }, "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: Please note that the \"Try It\" feature to the right will send an actual API call to our system, which may result in your company being registered for a new callback.
" }, { "name": "callback_id", "in": "path", "schema": { "type": "string" }, "required": true, "description": "The id for the callback you are updating." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/callbackResponse" } } } }, "201": { "description": "Callback has been successfully updated." } } }, "delete": { "tags": [ "Callback API" ], "summary": "Cancel a callback", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "callback_id", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: Please note that the \"Try It\" feature to the right will send an actual API call to our system, which may result in a callback being cancelled.
" } ], "responses": { "200": { "description": "Callback was successfully cancelled. Your endpoint will no longer receive this callback.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/callbackResponse" } } } }, "404": { "description": "The `callback_id` cannot be found." } } } }, "/companies/{company_key}/config/callback_events/test": { "post": { "tags": [ "Callback API" ], "summary": "Create a test callback event", "requestBody": { "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/testcallbackRequest-Ack" }, { "$ref": "#/components/schemas/testcallbackRequest-Event" }, { "$ref": "#/components/schemas/testcallbackRequest-Person" }, { "$ref": "#/components/schemas/testcallbackRequest-Push" }, { "$ref": "#/components/schemas/testcallbackRequest-Sub" }, { "$ref": "#/components/schemas/testcallbackRequest-SubList" } ] } } } }, "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: Please note that the \"Try It\" feature to the right will send an actual API call to our system, which may result in your company being registered for a new callback.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/testCallbackResponse" } } } }, "201": { "description": "The callback was queued for send." }, "404": { "description": "An active callback does not exist." } } } }, "/companies/{company_key}/events": { "post": { "tags": [ "Event API" ], "summary": "Create an event", "parameters": [ { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: Please note that the \"Try It\" feature to the right will send an actual API call to our system, which may result in a new event being created.
" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/eventRequest" } } } }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/eventResponse" } } } }, "202": { "description": "Returned if the event has been successfully submitted but will not necessarily result in a message. To track whether or not your message was sent and received by the end user, we recommend registering for Event-Triggered Callbacks." } } } }, "/companies/{company_key}/mobiledb/event_triggered_messages": { "post": { "tags": [ "Event-Triggered Campaign API" ], "summary": "Create an event-triggered campaign", "requestBody": { "required": true, "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/eventTriggeredRequest" }, { "$ref": "#/components/schemas/eventTriggeredRequestMMS" }, { "$ref": "#/components/schemas/eventTriggeredRequestPush" } ] } } } }, "parameters": [ { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: Please note that the \"Try It\" feature to the right will send an actual API call to our system, which may result in a new event-triggered broadcast being created.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/eventTriggeredResponse" } } } }, "202": { "description": "Campaign has been successfully created. This response will include additional information about your campaign, including the `event_triggered_messsage_id`, `status`, `created_by`, and more. These are defined by the system and cannot be changed." } } }, "get": { "tags": [ "Event-Triggered Campaign API" ], "summary": "Get event-triggered campaigns", "parameters": [ { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "status", "in": "query", "description": "Optional status filter.", "schema": { "type": "string" } }, { "name": "event_type", "in": "query", "description": "Optional event type.", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/eventTriggeredsResponse" } } } } } } }, "/companies/{company_key}/mobiledb/event_triggered_messages/{event_triggered_message_id}": { "get": { "tags": [ "Event-Triggered Campaign API" ], "summary": "Get event-triggered campaign info", "parameters": [ { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "event_triggered_message_id", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "Successful response incentivePoolResponse", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/eventTriggeredResponse" } } } }, "404": { "description": "The `event_triggered_message_id` cannot be found." } } }, "put": { "tags": [ "Event-Triggered Campaign API" ], "summary": "Update an event-triggered campaign", "requestBody": { "required": true, "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/eventTriggeredRequest" }, { "$ref": "#/components/schemas/eventTriggeredRequestMMS" }, { "$ref": "#/components/schemas/eventTriggeredRequestPush" } ] } } } }, "parameters": [ { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "event_triggered_message_id", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: If you are entering a live event_triggered_message_id, please note that using the \"Try It\" feature on the righthand console will send an actual API call to our system. This may result in changes being made to the live campaign.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/eventTriggeredResponse" } } } }, "404": { "description": "The `event_triggered_message_id` does not exist." }, "422": { "description": "The status code of the entity does not allow updates. For example, the campaign has been cancelled." } } }, "delete": { "tags": [ "Event-Triggered Campaign API" ], "summary": "Cancel an event-triggered campaign", "parameters": [ { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "event_triggered_message_id", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: If you are entering a live event_triggered_message_id, please note that using the \"Try It\" feature on the righthand console will send an actual API call to our system. This may result in the live campaign being deleted.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/eventTriggeredResponse" } } } }, "404": { "description": "The campaign cannot be found." } } } }, "/companies/{company_key}/incentives/pools/{issuance_pool_id}/issuances": { "post": { "tags": [ "Incentive Code API" ], "summary": "Issue an incentive code", "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/incentiveCodeIssuanceRequest" } } } }, "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "issuance_pool_id", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: If you are entering a live issuance_pool_id, please note that using the \"Try It\" feature on the righthand console will send an actual API call to our system. This may result in a code being issued.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/incentiveCodeIssuanceResponse" } } } }, "422": { "description": "No codes are available from the code pool specified." } } } }, "/companies/{company_key}/incentives/codes/{incentive_code}": { "get": { "tags": [ "Incentive Code API" ], "summary": "Get incentive code", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "incentive_code", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/incentiveCodeResponse" } } } } } } }, "/companies/{company_key}/incentives/codes/{incentive_code}/issuances": { "get": { "tags": [ "Incentive Code API" ], "summary": "Get issuances for a code", "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "incentive_code", "in": "path", "schema": { "type": "string" }, "required": true } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/incentiveCodeIssuancesResponse" } } } } } } }, "/companies/{company_key}/incentives/codes/{incentive_code}/redemptions": { "post": { "tags": [ "Incentive Code API" ], "summary": "Redeem an incentive code", "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/incentiveCodeIssuanceRequest" } } } }, "parameters": [ { "name": "X-API-Version", "in": "header", "schema": { "type": "string", "default": 1 } }, { "name": "Content-Type", "in": "header", "schema": { "type": "string" }, "example": "application/json", "required": true }, { "name": "company_key", "in": "path", "schema": { "type": "string" }, "required": true }, { "name": "incentive_code", "in": "path", "schema": { "type": "string" }, "required": true, "description": "
Important: If you are entering a real incentive_code, please note that using the \"Try It\" feature on the righthand console will send an actual API call to our system. This may result in a code being redeemed.
" } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/incentiveCodeIssuancesResponse" } } } }, "422": { "description": "Returned in the following cases: