Salesforce Experience Cloud · Arazzo Workflow

Salesforce Experience Cloud Site Update and Publish

Version 1.0.0

Update an Experience Cloud site's settings, then publish the changes.

1 workflow 1 source API 1 provider
View Spec View on GitHub CMSCommunitiesCRMCustomer PortalDigital ExperienceExperience CloudPartner PortalArazzoWorkflows

Provider

salesforce-experience-cloud

Workflows

site-update-publish
Update an Experience Cloud site's settings and publish them.
Reads a site, updates its name, description, and status, then publishes the site to apply the changes.
3 steps inputs: accessToken, communityId, description, name, status outputs: communityId, publishStatus, updatedName
1
getSite
getExperienceCloudSite
Read the site to confirm it exists before updating.
2
updateSite
updateExperienceCloudSite
Apply the updated name, description, and status to the site.
3
publishSite
publishExperienceCloudSite
Publish the site to make the updated settings live.

Source API Descriptions

Arazzo Workflow Specification

salesforce-experience-cloud-site-update-publish-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Salesforce Experience Cloud Site Update and Publish
  summary: Update an Experience Cloud site's settings, then publish the changes.
  description: >-
    A site maintenance flow. The workflow reads an existing Experience Cloud
    site to confirm it exists, applies updated name, description, and status
    properties, then publishes the site 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: sitesApi
  url: ../openapi/salesforce-experience-cloud-sites-openapi.yml
  type: openapi
workflows:
- workflowId: site-update-publish
  summary: Update an Experience Cloud site's settings and publish them.
  description: >-
    Reads a site, updates its name, description, and status, then publishes the
    site to apply the changes.
  inputs:
    type: object
    required:
    - accessToken
    - communityId
    properties:
      accessToken:
        type: string
        description: OAuth 2.0 bearer token for the Salesforce instance.
      communityId:
        type: string
        description: ID of the Experience Cloud site (community) to update.
      name:
        type: string
        description: Updated name for the site.
      description:
        type: string
        description: Updated description for the site.
      status:
        type: string
        description: Updated status (Live, Inactive, or DownForMaintenance).
  steps:
  - stepId: getSite
    description: Read the site to confirm it exists before updating.
    operationId: getExperienceCloudSite
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.accessToken
    - name: communityId
      in: path
      value: $inputs.communityId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      currentName: $response.body#/name
  - stepId: updateSite
    description: Apply the updated name, description, and status to the site.
    operationId: updateExperienceCloudSite
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.accessToken
    - name: communityId
      in: path
      value: $inputs.communityId
    requestBody:
      contentType: application/json
      payload:
        name: $inputs.name
        description: $inputs.description
        status: $inputs.status
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      updatedName: $response.body#/name
  - stepId: publishSite
    description: Publish the site to make the updated settings live.
    operationId: publishExperienceCloudSite
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.accessToken
    - name: communityId
      in: path
      value: $inputs.communityId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      publishStatus: $response.body#/status
  outputs:
    communityId: $inputs.communityId
    updatedName: $steps.updateSite.outputs.updatedName
    publishStatus: $steps.publishSite.outputs.publishStatus