openapi: 3.2.0
info:
title: AJO Customer Loyalty Challenge State Challenge Controller API
description: APIs for managing AJO Customer Loyalty Challenge State.
**Related documentation:** See [Loyalty challenges](https://experienceleague.adobe.com/docs/journey-optimizer/using/loyalty-challenges/get-started.html) in Journey Optimizer documentation.
**Required headers:** All calls require the headers Authorization, x-gw-ims-org-id, and x-api-key. For more information, see the [authentication tutorial](https://developer.adobe.com/journey-optimizer-apis/references/authentication).
contact:
url: http://adobe.com
version: 1.1.0
servers:
- url: http://localhost:8080
description: Local
- url: https://platform-stage-va7.adobe.io/ajo/
description: Stage
- url: https://platform-va7.adobe.io/ajo/
description: Prod
tags:
- name: challenge-controller
paths:
/loyalty/challenges/{profileId}/withdraw:
post:
tags:
- challenge-controller
operationId: bulkWithdraw
parameters:
- name: x-request-id
in: header
required: false
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
- name: x-gw-ims-org-id
in: header
required: true
schema:
type: string
- name: x-sandbox-name
in: header
required: true
schema:
type: string
- name: Authorization
in: header
required: false
schema:
type: string
- name: profileId
in: path
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BulkWithdraw'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/BulkWithdrawResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'404':
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'406':
description: Not Acceptable
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'409':
description: Resource conflict
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'422':
description: Unprocessable
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
/loyalty/challenges/state:
post:
tags:
- challenge-controller
operationId: activeChallengeStateByProfileWithPayload
parameters:
- name: x-request-id
in: header
required: false
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
- name: x-gw-ims-org-id
in: header
required: true
schema:
type: string
- name: x-sandbox-name
in: header
required: true
schema:
type: string
- name: test
in: query
description: True if running the challenge as a test
required: false
schema:
type: boolean
default: false
- name: v
in: query
description: Version of the response
required: false
schema:
type: string
default: 2
- name: pid
in: query
description: Profile Id of the Loyalty guest
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
uniqueItems: true
type: array
items:
type: string
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/JsonNode'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'404':
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'406':
description: Not Acceptable
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'409':
description: Resource conflict
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'422':
description: Unprocessable
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
/loyalty/challenges/signup:
post:
tags:
- challenge-controller
operationId: bulkSignup
parameters:
- name: x-request-id
in: header
required: false
schema:
type: string
- name: x-api-key
in: header
required: true
schema:
type: string
- name: x-gw-ims-org-id
in: header
required: true
schema:
type: string
- name: x-sandbox-name
in: header
required: true
schema:
type: string
- name: Authorization
in: header
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BulkSignup'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/BulkSignupResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'404':
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'406':
description: Not Acceptable
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'409':
description: Resource conflict
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'422':
description: Unprocessable
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/CustomProblemDetail'
components:
schemas:
BulkWithdraw:
type: object
properties:
idList:
uniqueItems: true
type: array
items:
type: string
BulkSignupResult:
type: object
properties:
challengeId:
type: string
status:
type: integer
format: int32
title:
type: string
error_code:
type: string
message:
type: string
BulkWithdrawResponse:
type: object
properties:
withdrawResponse:
type: array
items:
$ref: '#/components/schemas/BulkSignupResult'
BulkSignupResponse:
type: object
properties:
signupResponse:
type: array
items:
$ref: '#/components/schemas/BulkSignupResult'
BulkSignup:
type: object
properties:
profileId:
type: string
idList:
uniqueItems: true
type: array
items:
type: string
JsonNode:
type: object
CustomProblemDetail:
type: object
properties:
error_code:
type: string
message:
type: string
title:
type: string
status:
type: integer
format: int32
instance:
type: string
format: uri
method:
type: string
time:
type: string
requestId:
type: string