Datadog · Arazzo Workflow

Datadog Create a Team

Version 1.0.0

Create a team, read it back, then list teams.

1 workflow 1 source API 1 provider
View Spec View on GitHub AnalyticsDashboardsMonitoringPlatformT1VisualizationsArazzoWorkflows

Provider

datadog

Workflows

create-team
Create a Datadog team, get it, then list teams.
Creates a team with the supplied handle and name, reads it back by id, and lists teams in the organization.
3 steps inputs: description, handle, name outputs: teamId, teamName, teams
1
createTeam
CreateTeam
Create a team with the supplied handle and name.
2
getTeam
GetTeam
Fetch the created team by id to confirm it exists.
3
listTeams
ListTeams
List teams in the organization so the new team can be located.

Source API Descriptions

Arazzo Workflow Specification

datadog-create-team-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Datadog Create a Team
  summary: Create a team, read it back, then list teams.
  description: >-
    A team-provisioning pattern on the Datadog v2 Teams API, substituted for a
    v1-only SLO flow that this v2 specification does not expose. The workflow
    creates a team with a handle and name, fetches the created team by id to
    confirm it exists, and then lists teams so the new team can be located among
    them. 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: datadogApi
  url: ../openapi/datadog-api-openapi.yml
  type: openapi
workflows:
- workflowId: create-team
  summary: Create a Datadog team, get it, then list teams.
  description: >-
    Creates a team with the supplied handle and name, reads it back by id, and
    lists teams in the organization.
  inputs:
    type: object
    required:
    - handle
    - name
    properties:
      handle:
        type: string
        description: The team's identifier (e.g. "example-team").
      name:
        type: string
        description: The display name of the team.
      description:
        type: string
        description: Optional free-form markdown description for the team.
  steps:
  - stepId: createTeam
    description: Create a team with the supplied handle and name.
    operationId: CreateTeam
    requestBody:
      contentType: application/json
      payload:
        data:
          type: team
          attributes:
            handle: $inputs.handle
            name: $inputs.name
            description: $inputs.description
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      teamId: $response.body#/data/id
  - stepId: getTeam
    description: Fetch the created team by id to confirm it exists.
    operationId: GetTeam
    parameters:
    - name: team_id
      in: path
      value: $steps.createTeam.outputs.teamId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      teamName: $response.body#/data/attributes/name
  - stepId: listTeams
    description: List teams in the organization so the new team can be located.
    operationId: ListTeams
    parameters:
    - name: filter[keyword]
      in: query
      value: $inputs.handle
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      teams: $response.body#/data
  outputs:
    teamId: $steps.createTeam.outputs.teamId
    teamName: $steps.getTeam.outputs.teamName
    teams: $steps.listTeams.outputs.teams