# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for AJO Customer Loyalty Challenge State API version: 1.0.0 extends: openapi/adobe-suite-challenge-state-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 8 - target: $.paths['/loyalty/challenges/{profileId}/withdraw/{challengeId}'].post update: x-apievangelist-phrasing: intent: Withdraw a profile from a loyalty challenge effect: destructive questions: - How do I pull a customer out of a loyalty challenge they joined? - Can a profile withdraw from a challenge after signing up? instructions: - text: Withdraw profile {profileId} from challenge {challengeId}. slots: profileId: path.profileId challengeId: path.challengeId - text: Remove customer {profileId} from loyalty challenge {challengeId} in sandbox {sandbox}. slots: profileId: path.profileId challengeId: path.challengeId sandbox: header.x-sandbox-name method: generated generated: '2026-09-26' - target: $.paths['/loyalty/challenges/state'].get update: x-apievangelist-phrasing: intent: Get a profile's challenge state effect: read questions: - What is a customer's current progress state across loyalty challenges? - Can I check the state of one challenge for a given profile? instructions: - text: Get the challenge state for profile {pid}. slots: pid: query.pid - text: Show profile {pid} state in challenge {cid}. slots: pid: query.pid cid: query.cid method: generated generated: '2026-09-26' - target: $.paths['/loyalty/challenges/signup/{challengeId}'].post update: x-apievangelist-phrasing: intent: Sign a profile up for a loyalty challenge effect: write questions: - How do I enroll a customer in a loyalty challenge? - Can I pick a task when signing a profile up for a challenge? instructions: - text: Sign profile {profileId} up for challenge {challengeId}. slots: profileId: requestBody.profileId challengeId: path.challengeId - text: Enroll {profileId} in challenge {challengeId} with task {taskPicked}. slots: profileId: requestBody.profileId challengeId: path.challengeId taskPicked: requestBody.taskPicked method: generated generated: '2026-09-26' - target: $.paths['/loyalty/challenges/events'].post update: x-apievangelist-phrasing: intent: Send a loyalty event to challenges effect: write questions: - How do I feed a customer event into loyalty challenges so progress updates? - Can I send a test loyalty event? instructions: - text: Send a loyalty event for challenge {cid}. slots: cid: query.cid - text: Post a test loyalty event with test mode {test}. slots: test: query.test method: generated generated: '2026-09-26' - target: $.paths['/loyalty/challenges/{profileId}'].get update: x-apievangelist-phrasing: intent: List active challenges for a profile effect: read questions: - Which loyalty challenges is this customer currently in? - Can I filter a profile's challenges by state? instructions: - text: List active challenges for profile {profileId}. slots: profileId: path.profileId - text: Show challenges for profile {profileId} in state {state}. slots: profileId: path.profileId state: query.state method: generated generated: '2026-09-26' - target: $.paths['/loyalty/challenges/org'].get update: x-apievangelist-phrasing: intent: List all active challenges in the org effect: read questions: - What loyalty challenges are running across my organization right now? - Can I see every active challenge in a sandbox? instructions: - text: List all active loyalty challenges. - text: Show active challenges in sandbox {sandbox}. slots: sandbox: header.x-sandbox-name method: generated generated: '2026-09-26' - target: $.paths['/loyalty/challenges/health'].get update: x-apievangelist-phrasing: intent: Check the loyalty challenge service health effect: read questions: - Is the loyalty challenge service up? - How can I verify the challenge API is healthy before sending events? instructions: - text: Run a health check on the loyalty challenge service. - text: Check whether the challenge API is healthy. method: generated generated: '2026-09-26' - target: $.paths['/loyalty/challenges/challenge'].get update: x-apievangelist-phrasing: intent: Get challenge details for a profile effect: read questions: - How do I see the full details of a challenge for a particular customer? - Can I fetch the challenge definition along with a profile's participation? instructions: - text: Get challenge details for profile {pid}. slots: pid: query.pid - text: Show details of challenge {cid} for profile {pid}. slots: cid: query.cid pid: query.pid method: generated generated: '2026-09-26'