arazzo: 1.0.1 info: title: Salesforce Experience Cloud CMS Content Revise and Republish summary: Update an existing CMS content item, then republish it to channels. description: >- A content maintenance flow for Experience Cloud. The workflow reads an existing CMS content item to confirm it exists, applies revised title and body fields, then republishes the item to its delivery channels so the changes go live. Each 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: cmsConnectApi url: ../openapi/salesforce-experience-cloud-cms-connect-openapi.yml type: openapi workflows: - workflowId: cms-content-revise-republish summary: Revise an existing CMS content item and republish it. description: >- Reads a content item, updates its title and body, and republishes it to the supplied delivery channels. inputs: type: object required: - accessToken - contentId - title - contentType - channelIds properties: accessToken: type: string description: OAuth 2.0 bearer token for the Salesforce instance. contentId: type: string description: ID of the CMS content item to revise. title: type: string description: Updated title for the content item. contentType: type: string description: Developer name of the content type. contentBody: type: object description: Updated content body fields as defined by the content type. channelIds: type: array description: Channel IDs to republish the content to. items: type: string steps: - stepId: getContent description: Read the content item to confirm it exists before revising. operationId: getCmsContent parameters: - name: Authorization in: header value: Bearer $inputs.accessToken - name: contentId in: path value: $inputs.contentId successCriteria: - condition: $statusCode == 200 outputs: currentStatus: $response.body#/status - stepId: updateContent description: Apply the revised title and body to the content item. operationId: updateCmsContent parameters: - name: Authorization in: header value: Bearer $inputs.accessToken - name: contentId in: path value: $inputs.contentId requestBody: contentType: application/json payload: title: $inputs.title contentType: $inputs.contentType contentBody: $inputs.contentBody successCriteria: - condition: $statusCode == 200 outputs: managedContentId: $response.body#/managedContentId - stepId: republishContent description: Republish the revised content item to the supplied delivery channels. operationId: publishCmsContent parameters: - name: Authorization in: header value: Bearer $inputs.accessToken - name: contentId in: path value: $inputs.contentId requestBody: contentType: application/json payload: channelIds: $inputs.channelIds successCriteria: - condition: $statusCode == 200 outputs: contentId: $inputs.contentId outputs: contentId: $inputs.contentId managedContentId: $steps.updateContent.outputs.managedContentId