arazzo: 1.0.1 info: title: Workday Give Feedback Badge summary: Confirm a worker and review their existing badges, then give a new feedback badge. description: >- A talent recognition flow. It resolves the worker, reads the feedback badges they have already received for context, and then gives a new feedback badge with an optional comment. Every step spells out its request inline so the flow can be read and executed without opening the underlying OpenAPI description. version: 1.0.0 sourceDescriptions: - name: hcmApi url: ../openapi/hcm.yml type: openapi - name: performanceManagementApi url: ../openapi/performanceManagement.yml type: openapi workflows: - workflowId: give-feedback-badge summary: Resolve a worker, review existing badges, then give a new feedback badge. description: >- Reads the worker and their existing feedback badges, then gives a new feedback badge with the supplied badge reference and optional comment. inputs: type: object required: - authorization - workerId - badge properties: authorization: type: string description: OAuth2 bearer token, e.g. "Bearer eyJ...". workerId: type: string description: The Workday ID of the worker receiving the badge. badge: type: object description: The badge reference object (id, descriptor, href). comment: type: string description: An optional comment accompanying the badge. steps: - stepId: getWorker description: Confirm the worker exists before giving a badge. operationId: getWorkerById parameters: - name: Authorization in: header value: $inputs.authorization - name: ID in: path value: $inputs.workerId successCriteria: - condition: $statusCode == 200 outputs: workerDescriptor: $response.body#/descriptor - stepId: getExistingBadges description: Read the feedback badges the worker has already received. operationId: getFeedbackBadges parameters: - name: Authorization in: header value: $inputs.authorization - name: ID in: path value: $inputs.workerId successCriteria: - condition: $statusCode == 200 outputs: existingBadges: $response.body#/data - stepId: giveBadge description: Give a new feedback badge to the worker. operationId: giveFeedbackBadge parameters: - name: Authorization in: header value: $inputs.authorization - name: ID in: path value: $inputs.workerId requestBody: contentType: application/json payload: badge: $inputs.badge comment: $inputs.comment successCriteria: - condition: $statusCode == 201 outputs: badgeId: $response.body#/id givenDate: $response.body#/givenDate outputs: workerDescriptor: $steps.getWorker.outputs.workerDescriptor existingBadges: $steps.getExistingBadges.outputs.existingBadges badgeId: $steps.giveBadge.outputs.badgeId