Google Workspace · Arazzo Workflow

Google Workspace Create a Group

Version 1.0.0

Create a group with an email and description, then read it back.

1 workflow 1 source API 1 provider
View Spec View on GitHub CalendarCollaborationEmailProductivityStorageVideo ConferencingArazzoWorkflows

Provider

google-workspace

Workflows

create-group
Create a group and confirm it by reading it back.
Creates a group with the supplied email, name, and description, then fetches the group by its email to confirm creation and capture its id.
2 steps inputs: accessToken, description, email, name outputs: email, groupId, name
1
createGroup
insertGroup
Create the group with the supplied email, display name, and description.
2
confirmGroup
getGroup
Read the newly created group back by its email to confirm it exists and capture its id.

Source API Descriptions

Arazzo Workflow Specification

google-workspace-create-group-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Google Workspace Create a Group
  summary: Create a group with an email and description, then read it back.
  description: >-
    Stands up a new Google Workspace group. The workflow creates the group with
    a unique email, display name, and description, then reads the group back by
    its email to confirm it was created and to capture its unique id. 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: directoryApi
  url: ../openapi/admin-sdk-directory-api.yml
  type: openapi
workflows:
- workflowId: create-group
  summary: Create a group and confirm it by reading it back.
  description: >-
    Creates a group with the supplied email, name, and description, then fetches
    the group by its email to confirm creation and capture its id.
  inputs:
    type: object
    required:
    - accessToken
    - email
    - name
    properties:
      accessToken:
        type: string
        description: OAuth 2.0 bearer access token with the admin.directory.group scope.
      email:
        type: string
        description: The unique email address for the new group.
      name:
        type: string
        description: The display name for the group.
      description:
        type: string
        description: An extended description of the group's purpose.
        default: ""
  steps:
  - stepId: createGroup
    description: >-
      Create the group with the supplied email, display name, and description.
    operationId: insertGroup
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    requestBody:
      contentType: application/json
      payload:
        email: $inputs.email
        name: $inputs.name
        description: $inputs.description
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      groupId: $response.body#/id
      groupEmail: $response.body#/email
  - stepId: confirmGroup
    description: >-
      Read the newly created group back by its email to confirm it exists and
      capture its id.
    operationId: getGroup
    parameters:
    - name: groupKey
      in: path
      value: $steps.createGroup.outputs.groupEmail
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      groupId: $response.body#/id
      email: $response.body#/email
      name: $response.body#/name
  outputs:
    groupId: $steps.confirmGroup.outputs.groupId
    email: $steps.confirmGroup.outputs.email
    name: $steps.confirmGroup.outputs.name