Optimizely Promotions API
The Promotions API from Optimizely — 12 operation(s) for promotions.
The Promotions API from Optimizely — 12 operation(s) for promotions.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/optimizely-promotions-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
version: admin-v1
title: Admin API V1 Promotions API
servers:
- url: https://dogfood.commerce.insitesandbox.com
security: []
tags:
- name: Promotions
paths:
/api/v1/admin/Promotions:
get:
tags:
- Promotions
summary: Returns the EntitySet Promotions
operationId: Promotions_Get
parameters:
- name: $expand
in: query
description: Expands related entities inline.
required: false
schema:
type: string
- name: $filter
in: query
description: Filters the results, based on a Boolean condition.
required: false
schema:
type: string
- name: $select
in: query
description: Selects which properties to include in the response.
required: false
schema:
type: string
- name: $apply
in: query
description: Aggregates the results according to one or more transformations.
required: false
schema:
type: string
- name: $orderby
in: query
description: Sorts the results.
required: false
schema:
type: string
- name: $top
in: query
description: Returns only the first n results.
required: false
schema:
type: integer
format: int32
- name: $skip
in: query
description: Skips the first n results.
required: false
schema:
type: integer
format: int32
- name: $count
in: query
description: Includes a count of the matching results in the response.
required: false
schema:
type: boolean
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
post:
tags:
- Promotions
summary: Post a new entity to EntitySet Promotions
operationId: Promotions_Post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Insite.Data.Entities.Promotion'
description: The entity to post
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/Promotions({id}):
get:
tags:
- Promotions
summary: Returns the entity with the key from Promotions
operationId: Promotions_GetById
parameters:
- name: id
in: path
description: 'key: id'
required: true
schema:
type: string
format: uuid
- name: $expand
in: query
description: Expands related entities inline.
required: false
schema:
type: string
- name: $select
in: query
description: Selects which properties to include in the response.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
put:
tags:
- Promotions
summary: Replace entity in EntitySet Promotions
operationId: Promotions_PutById
parameters:
- name: id
in: path
description: 'key: id'
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Insite.Data.Entities.Promotion'
description: The entity to put
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
delete:
tags:
- Promotions
summary: Delete entity in EntitySet Promotions
operationId: Promotions_DeleteById
parameters:
- name: id
in: path
description: 'key: id'
required: true
schema:
type: string
format: uuid
- name: If-Match
in: header
description: If-Match header
required: false
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
patch:
tags:
- Promotions
summary: Update entity in EntitySet Promotions
operationId: Promotions_PatchById
parameters:
- name: id
in: path
description: 'key: id'
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Insite.Data.Entities.Promotion'
description: The entity to patch
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/Promotions/Default.Default():
get:
tags:
- Promotions
summary: Call operation Default
operationId: Promotions_Default
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/Promotions/Default.archive:
post:
tags:
- Promotions
summary: Call operation archive
operationId: Promotions_Archive
parameters:
- name: ids
in: query
required: true
explode: true
schema:
type: array
items:
type: string
format: uuid
requestBody:
$ref: '#/components/requestBodies/Affiliates_ArchiveParameters'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/Promotions({id})/Default.results:
post:
tags:
- Promotions
summary: Call operation results
operationId: Promotions_SetResultsById
parameters:
- name: id
in: path
description: 'key: id'
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
type: object
properties:
promotionResults:
type: array
items:
$ref: '#/components/schemas/Insite.Data.Entities.PromotionResult'
description: results action parameters
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/promotions({key})/results:
post:
tags:
- Promotions
operationId: Promotions_SetResultsByKey
parameters:
- name: key
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/promotions/archive:
delete:
tags:
- Promotions
operationId: Promotions_ArchiveRoute
parameters:
- name: ids
in: query
required: true
explode: true
schema:
type: array
items:
type: string
format: uuid
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/promotions/delete:
delete:
tags:
- Promotions
operationId: Promotions_DeleteRoute
parameters:
- name: ids
in: query
required: true
explode: true
schema:
type: array
items:
type: string
format: uuid
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/promotions({key})/customerorderpromotions({customerorderpromotionKey}):
get:
tags:
- Promotions
operationId: Promotions_GetCustomerOrderPromotionByKeyAndCustomerorderpromotionkey
parameters:
- name: key
in: path
required: true
schema:
type: string
format: uuid
- name: customerorderpromotionKey
in: path
required: true
schema:
type: string
format: uuid
- name: $expand
in: query
description: Expands related entities inline.
required: false
schema:
type: string
- name: $select
in: query
description: Selects which properties to include in the response.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/promotions({key})/customproperties({custompropertyKey}):
get:
tags:
- Promotions
operationId: Promotions_GetCustomPropertyByKeyAndCustompropertykey
parameters:
- name: key
in: path
required: true
schema:
type: string
format: uuid
- name: custompropertyKey
in: path
required: true
schema:
type: string
format: uuid
- name: $expand
in: query
description: Expands related entities inline.
required: false
schema:
type: string
- name: $select
in: query
description: Selects which properties to include in the response.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/promotions({key})/promotionresults({promotionresultKey}):
get:
tags:
- Promotions
operationId: Promotions_GetPromotionResultByKeyAndPromotionresultkey
parameters:
- name: key
in: path
required: true
schema:
type: string
format: uuid
- name: promotionresultKey
in: path
required: true
schema:
type: string
format: uuid
- name: $expand
in: query
description: Expands related entities inline.
required: false
schema:
type: string
- name: $select
in: query
description: Selects which properties to include in the response.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
/api/v1/admin/promotions({key})/websites({websiteKey}):
get:
tags:
- Promotions
operationId: Promotions_GetWebsiteByKeyAndWebsitekey
parameters:
- name: key
in: path
required: true
schema:
type: string
format: uuid
- name: websiteKey
in: path
required: true
schema:
type: string
format: uuid
- name: $expand
in: query
description: Expands related entities inline.
required: false
schema:
type: string
- name: $select
in: query
description: Selects which properties to include in the response.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
deprecated: false
security:
- access_token: []
components:
schemas:
Insite.Data.Entities.PromotionResult:
required:
- promotionResultType
type: object
properties:
id:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
promotionId:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
productId:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
amount:
format: double
type: number
promotionResultType:
maxLength: 100
minLength: 0
type: string
visible:
type: boolean
shipViaId:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
categoryId:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
maxValue:
format: double
type: number
qtyRequired:
format: double
type: number
maxFree:
format: double
type: number
isPercent:
type: boolean
vendorId:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
brandId:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
productLineId:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
qualifyingProductId:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
customResultName:
maxLength: 255
minLength: 0
type: string
code:
maxLength: 255
minLength: 0
type: string
createdOn:
format: date-time
type: string
createdBy:
type: string
modifiedOn:
format: date-time
type: string
modifiedBy:
type: string
Insite.Data.Entities.Promotion:
required:
- description
- displayMessage
- name
- promoCode
type: object
properties:
id:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
activateOn:
format: date-time
type: string
deactivateOn:
format: date-time
type: string
description:
maxLength: 1024
minLength: 0
type: string
displayMessage:
maxLength: 1024
minLength: 0
type: string
isLive:
type: boolean
name:
maxLength: 50
minLength: 0
type: string
promoCode:
maxLength: 50
minLength: 0
type: string
rank:
format: decimal
type: number
ruleManagerId:
format: uuid
type: string
example: 00000000-0000-0000-0000-000000000000
createdOn:
format: date-time
type: string
createdBy:
type: string
modifiedOn:
format: date-time
type: string
modifiedBy:
type: string
requestBodies:
Affiliates_ArchiveParameters:
content:
application/json:
schema:
type: object
properties: {}
description: archive action parameters
securitySchemes:
access_token:
type: apiKey
description: Token used to access storefront API.
name: access_token
in: query