Sysdig · Arazzo Workflow

Sysdig Provision Team

Version 1.0.0

Create a team, verify it, and scope a notification channel for it.

1 workflow 1 source API 1 provider
View Spec View on GitHub Cloud SecurityContainersKubernetesRuntime SecuritySecurityVulnerability ManagementMonitoringObservabilityCSPMComplianceArazzoWorkflows

Provider

sysdig

Workflows

provision-team
Create a scoped team and a notification channel for it.
Creates a team with a default role and scope filter, verifies it by id, and creates a notification channel for the team's alert routing.
3 steps inputs: bearerToken, channelName, channelType, defaultTeamRole, description, filter, teamName outputs: channelId, teamId
1
createTeam
createTeam
Create the team with the supplied role and scope filter.
2
verifyTeam
getTeam
Read the team back by id to confirm it persisted.
3
createChannel
createNotificationChannel
Create a notification channel for the new team's alert routing.

Source API Descriptions

Arazzo Workflow Specification

sysdig-provision-team-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Sysdig Provision Team
  summary: Create a team, verify it, and scope a notification channel for it.
  description: >-
    A team onboarding flow for Sysdig Monitor. It creates a new team with a
    default role and scope filter, reads the team back to confirm it persisted,
    and provisions a notification channel that the team can use for routing.
    The API does not expose a direct add-user-to-team operation, so membership
    is established through the team's default role and scope rather than an
    explicit user assignment, which is noted here as an adaptation. 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: sysdigMonitor
  url: ../openapi/sysdig-monitor-openapi.yml
  type: openapi
workflows:
- workflowId: provision-team
  summary: Create a scoped team and a notification channel for it.
  description: >-
    Creates a team with a default role and scope filter, verifies it by id, and
    creates a notification channel for the team's alert routing.
  inputs:
    type: object
    required:
    - bearerToken
    - teamName
    properties:
      bearerToken:
        type: string
        description: Sysdig API bearer token used for Authorization.
      teamName:
        type: string
        description: Name of the team to create.
      description:
        type: string
        description: Optional team description.
      defaultTeamRole:
        type: string
        description: Default role for team members (ROLE_TEAM_EDIT or ROLE_TEAM_READ).
        default: ROLE_TEAM_READ
      filter:
        type: string
        description: Scope filter expression that limits the team's data.
      channelName:
        type: string
        description: Name of the notification channel to create for the team.
      channelType:
        type: string
        description: Notification channel type (e.g. EMAIL, SLACK).
        default: EMAIL
  steps:
  - stepId: createTeam
    description: Create the team with the supplied role and scope filter.
    operationId: createTeam
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.bearerToken
    requestBody:
      contentType: application/json
      payload:
        team:
          name: $inputs.teamName
          description: $inputs.description
          defaultTeamRole: $inputs.defaultTeamRole
          filter: $inputs.filter
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      teamId: $response.body#/team/id
      teamName: $response.body#/team/name
  - stepId: verifyTeam
    description: Read the team back by id to confirm it persisted.
    operationId: getTeam
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.bearerToken
    - name: teamId
      in: path
      value: $steps.createTeam.outputs.teamId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      teamId: $response.body#/team/id
  - stepId: createChannel
    description: Create a notification channel for the new team's alert routing.
    operationId: createNotificationChannel
    parameters:
    - name: Authorization
      in: header
      value: Bearer $inputs.bearerToken
    requestBody:
      contentType: application/json
      payload:
        notificationChannel:
          name: $inputs.channelName
          type: $inputs.channelType
          enabled: true
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      channelId: $response.body#/notificationChannel/id
  outputs:
    teamId: $steps.verifyTeam.outputs.teamId
    channelId: $steps.createChannel.outputs.channelId