Cross-Provider Workflow

Treblle API Governance Check to Slack

Version 1.0.0

Run a Treblle governance check, list affected endpoints, and report to Slack.

1 workflow 2 source APIs 2 providers
View Spec View on GitHub ArazzoWorkflowsCross-Provider

Providers Orchestrated

treblle slack

Workflows

governance-check-and-report
Run a Treblle governance check, list endpoints, and post to Slack.
Runs a Treblle governance check on a project, retrieves the project's endpoints, and posts a governance summary to a Slack channel.
3 steps inputs: projectId, slackChannel outputs: endpointCount, messageTs, score
1
run-governance
$sourceDescriptions.treblleApi.runGovernanceCheck
Run a governance and quality check for the Treblle project.
2
list-endpoints
$sourceDescriptions.treblleApi.listEndpoints
List the project's endpoints to locate where governance issues occur.
3
report-slack
$sourceDescriptions.slackChatApi.postChatPostmessage
Post the Treblle governance summary to a Slack channel.

Source API Descriptions

Arazzo Workflow Specification

sec-treblle-api-governance-to-slack.yml Raw ↑
arazzo: 1.0.1
info:
  title: Treblle API Governance Check to Slack
  summary: Run a Treblle governance check, list affected endpoints, and report to Slack.
  description: >-
    An API observability workflow that runs a Treblle governance and quality check against
    a project, enumerates the project's endpoints to surface where problems live, and posts
    a governance summary to a Slack channel so the API platform team can act. Demonstrates
    orchestrating an API observability platform with a chat platform in a single Arazzo
    workflow.
  version: 1.0.0
sourceDescriptions:
  - name: treblleApi
    url: https://raw.githubusercontent.com/api-evangelist/treblle/refs/heads/main/openapi/treblle-api-openapi.yml
    type: openapi
  - name: slackChatApi
    url: https://raw.githubusercontent.com/api-evangelist/slack/refs/heads/main/openapi/slack-chat-openapi.yml
    type: openapi
workflows:
  - workflowId: governance-check-and-report
    summary: Run a Treblle governance check, list endpoints, and post to Slack.
    description: >-
      Runs a Treblle governance check on a project, retrieves the project's endpoints, and
      posts a governance summary to a Slack channel.
    inputs:
      type: object
      properties:
        projectId:
          type: string
        slackChannel:
          type: string
    steps:
      - stepId: run-governance
        description: Run a governance and quality check for the Treblle project.
        operationId: $sourceDescriptions.treblleApi.runGovernanceCheck
        parameters:
          - name: projectId
            in: path
            value: $inputs.projectId
        successCriteria:
          - condition: $statusCode == 200
        outputs:
          score: $response.body#/score
          issuesFound: $response.body#/issues
      - stepId: list-endpoints
        description: List the project's endpoints to locate where governance issues occur.
        operationId: $sourceDescriptions.treblleApi.listEndpoints
        parameters:
          - name: projectId
            in: path
            value: $inputs.projectId
        successCriteria:
          - condition: $statusCode == 200
        outputs:
          endpointCount: $response.body#/meta/total
      - stepId: report-slack
        description: Post the Treblle governance summary to a Slack channel.
        operationId: $sourceDescriptions.slackChatApi.postChatPostmessage
        requestBody:
          contentType: application/x-www-form-urlencoded
          payload:
            channel: $inputs.slackChannel
            text: Treblle governance check completed for the API project.
        successCriteria:
          - condition: $statusCode == 200
        outputs:
          messageTs: $response.body#/ts
    outputs:
      score: $steps.run-governance.outputs.score
      endpointCount: $steps.list-endpoints.outputs.endpointCount
      messageTs: $steps.report-slack.outputs.messageTs