Slack · Arazzo Workflow

Slack Audit Channels and Post a Summary

Version 1.0.0

List the workspace channels and post a summary message to a channel.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub BotsChatCollaborationMessagingProductivityT1Team CommunicationArazzoWorkflows

Provider

slack

Workflows

audit-channels-post-summary
List channels and post a summary message into a reporting channel.
Lists the workspace channels and posts a summary message into a designated reporting channel.
2 steps inputs: limit, reportChannel, summaryText, types outputs: channels, messageTs, nextCursor
1
listChannels
getConversationsList
List the workspace channels and capture the channel collection and paging cursor.
2
postSummary
postChatPostmessage
Post the audit summary message into the designated reporting channel.

Source API Descriptions

Arazzo Workflow Specification

slack-audit-channels-post-summary-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Slack Audit Channels and Post a Summary
  summary: List the workspace channels and post a summary message to a channel.
  description: >-
    A reporting pattern that surveys the workspace channel inventory and shares
    the result. The workflow lists the channels, captures the channel
    collection, and posts a summary message into a designated reporting channel
    so the audit result is recorded where the team can see it. 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: conversationsApi
  url: ../openapi/slack-conversations-openapi.yml
  type: openapi
- name: chatApi
  url: ../openapi/slack-chat-openapi.yml
  type: openapi
workflows:
- workflowId: audit-channels-post-summary
  summary: List channels and post a summary message into a reporting channel.
  description: >-
    Lists the workspace channels and posts a summary message into a designated
    reporting channel.
  inputs:
    type: object
    required:
    - reportChannel
    - summaryText
    properties:
      reportChannel:
        type: string
        description: The channel ID to post the audit summary into.
      summaryText:
        type: string
        description: The summary message text describing the audit result.
      types:
        type: string
        description: A comma separated list of channel types to include.
      limit:
        type: integer
        description: The maximum number of channels to return.
  steps:
  - stepId: listChannels
    description: >-
      List the workspace channels and capture the channel collection and paging
      cursor.
    operationId: getConversationsList
    parameters:
    - name: types
      in: query
      value: $inputs.types
    - name: limit
      in: query
      value: $inputs.limit
    successCriteria:
    - condition: $statusCode == 200
    - context: $response.body
      condition: $.ok == true
      type: jsonpath
    outputs:
      channels: $response.body#/channels
      nextCursor: $response.body#/response_metadata/next_cursor
  - stepId: postSummary
    description: >-
      Post the audit summary message into the designated reporting channel.
    operationId: postChatPostmessage
    requestBody:
      contentType: application/x-www-form-urlencoded
      payload:
        channel: $inputs.reportChannel
        text: $inputs.summaryText
    successCriteria:
    - condition: $statusCode == 200
    - context: $response.body
      condition: $.ok == true
      type: jsonpath
    outputs:
      messageTs: $response.body#/ts
  outputs:
    channels: $steps.listChannels.outputs.channels
    nextCursor: $steps.listChannels.outputs.nextCursor
    messageTs: $steps.postSummary.outputs.messageTs