Incentivio · OpenAPI Overlay 1.0.0
API Evangelist enhancements for the Incentivio Admin API
8 actions
8 updates
documentation
extends
../openapi/incentivio-admin-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Incentivio's API. It is a proposal applied on top of the contract, not a document Incentivio publishes.
What the actions change
descriptiontitleversionx-api-evangelist-notesecuritySchemessecurityIncClientIdHeaderIncMerchantIdHeader
Targets 8
$.info
$.servers[0]
$.components
$
$.components.parameters
$.components.responses
$.paths.*.*.responses
$.paths.*.*.responses.200
OpenAPI Overlay
overlay: 1.0.0
info:
title: API Evangelist enhancements for the Incentivio Admin API
version: 1.0.0
x-provenance:
generated: '2026-08-13'
method: generated
source: >-
openapi/incentivio-admin-api-openapi.yml, plus live probes of
https://adminapi.incentivio.com/incentivio-admin-api recorded in
authentication/, conventions/ and errors/
note: >-
As with the mobile definition, this is a springdoc auto-generation with no
title, no descriptions, no securitySchemes and success-only responses. Every
action below adds information established by probe or from the published
OAuth 2.0 metadata. The original definition is never modified.
extends: ../openapi/incentivio-admin-api-openapi.yml
actions:
- target: $.info
description: Name and describe the API.
update:
title: Incentivio Admin API
version: v0
description: >-
The operator-facing REST API behind Incentivio's brand administration
console. Covers client and merchant configuration, stores and locations,
menu import and menu intelligence, items and sub-items, campaigns and
offer distribution, guest journeys and personas, customer segments and
tags, loyalty administration, gift card issuance and ACH funding,
payments, refunds and fund transfers, Spreedly payment gateway
connectors, role and module permissions, and a large reporting surface
with CSV export. Tenancy is carried by the Inc-Client-Id header and
clientid path parameters.
x-api-evangelist-note: >-
This API moves money (refunds, fund transfers, gift card ACH funding) and
distributes marketing at brand scale. It is served publicly and
anonymously at /v3/api-docs with no documentation of any kind.
- target: $.servers[0]
description: Replace the springdoc default description.
update:
description: Production — brand administration and reporting
- target: $.components
description: Declare the security schemes the service enforces.
update:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: >-
OAuth 2.0 access token. Unauthenticated requests return 401 with
incentivio-code "Unknown" and, unlike the mobile service, no
WWW-Authenticate header.
incentivioAdminOAuth2:
type: oauth2
description: >-
Authorization server metadata is published at
/.well-known/oauth-authorization-server (issuer
https://admin.incentivio.com/issuer). No scopes_supported array is
published.
flows:
authorizationCode:
authorizationUrl: https://admin.incentivio.com/issuer/oauth2/authorize
tokenUrl: https://admin.incentivio.com/issuer/oauth/token
refreshUrl: https://admin.incentivio.com/issuer/oauth/token
scopes: {}
clientCredentials:
tokenUrl: https://admin.incentivio.com/issuer/oauth/token
scopes: {}
- target: $
description: Apply bearer security to the whole surface.
update:
security:
- bearerAuth: []
- target: $.components.parameters
description: Make the tenant headers reusable named parameters.
update:
IncClientIdHeader:
name: Inc-Client-Id
in: header
required: true
description: >-
Identifier of the restaurant brand tenant. Declared on 52 of 421
operations but required in practice across the surface; 121 operations
instead carry it as a clientid path parameter.
schema:
type: string
IncMerchantIdHeader:
name: Inc-Merchant-Id
in: header
required: false
description: Merchant scope within the client tenant.
schema:
type: string
- target: $.components.responses
description: Add the error responses the definition omits.
update:
BadRequest:
description: A required parameter is missing or malformed. Body is empty.
headers:
incentivio-code:
schema:
type: string
incentivio-message:
schema:
type: string
trace-id:
schema:
type: string
Unauthorized:
description: >-
No bearer token was presented, or it was rejected. Body is empty and
incentivio-code / incentivio-message are both literally "Unknown".
headers:
incentivio-code:
schema:
type: string
incentivio-message:
schema:
type: string
Forbidden:
description: >-
The operator's role or module permission does not allow the operation.
Inferred from role-module-permission-controller; not directly observed,
since an authenticated session was not available.
x-confidence: low
ServerError:
description: Unhandled server-side failure. Body is empty.
headers:
incentivio-code:
schema:
type: string
trace-id:
schema:
type: string
- target: $.paths.*.*.responses
description: Attach the error responses to every operation.
update:
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/ServerError'
- target: $.paths.*.*.responses.200
description: Record the success envelope headers carried on every response.
update:
headers:
incentivio-code:
schema:
type: string
incentivio-message:
schema:
type: string
trace-id:
schema:
type: string
span-id:
schema:
type: string