Cross-Provider Workflow

Okta User to Google Workspace Mailbox Provision

Version 1.0.0

Create an Okta identity, then provision the matching Google Workspace mailbox.

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

Providers Orchestrated

okta google-workspace

Workflows

okta-user-google-mailbox
Create an Okta user and provision a Google Workspace mailbox.
Creates a user in Okta, then provisions a matching Google Workspace account so the new hire has identity plus email from day one.
2 steps inputs: email, firstName, googlePassword, googlePrimaryEmail, lastName, login outputs: googleEmail, googleUserId, oktaUserId
1
create-okta-user
$sourceDescriptions.oktaApi.createUser
Create the employee identity in Okta.
2
provision-google-mailbox
$sourceDescriptions.googleWorkspaceApi.insertUser
Provision the matching Google Workspace account.

Source API Descriptions

Arazzo Workflow Specification

id-okta-user-to-google-mailbox-provision.yml Raw ↑
arazzo: 1.0.1
info:
  title: Okta User to Google Workspace Mailbox Provision
  summary: Create an Okta identity, then provision the matching Google Workspace mailbox.
  description: >-
    An onboarding workflow that establishes a new employee identity in Okta as
    the system of record, then provisions a matching Google Workspace account so
    the user has email and collaboration access. Bridges an identity provider and
    a productivity suite for a complete day-one setup.
  version: 1.0.0
sourceDescriptions:
  - name: oktaApi
    url: https://raw.githubusercontent.com/api-evangelist/okta/refs/heads/main/openapi/okta-openapi-original.yml
    type: openapi
  - name: googleWorkspaceApi
    url: https://raw.githubusercontent.com/api-evangelist/google-workspace/refs/heads/main/openapi/admin-sdk-directory-api.yml
    type: openapi
workflows:
  - workflowId: okta-user-google-mailbox
    summary: Create an Okta user and provision a Google Workspace mailbox.
    description: >-
      Creates a user in Okta, then provisions a matching Google Workspace account
      so the new hire has identity plus email from day one.
    inputs:
      type: object
      properties:
        firstName:
          type: string
        lastName:
          type: string
        email:
          type: string
        login:
          type: string
        googlePrimaryEmail:
          type: string
        googlePassword:
          type: string
    steps:
      - stepId: create-okta-user
        description: Create the employee identity in Okta.
        operationId: $sourceDescriptions.oktaApi.createUser
        requestBody:
          contentType: application/json
          payload:
            profile:
              firstName: $inputs.firstName
              lastName: $inputs.lastName
              email: $inputs.email
              login: $inputs.login
        successCriteria:
          - condition: $statusCode == 200
        outputs:
          oktaUserId: $response.body#/id
      - stepId: provision-google-mailbox
        description: Provision the matching Google Workspace account.
        operationId: $sourceDescriptions.googleWorkspaceApi.insertUser
        requestBody:
          contentType: application/json
          payload:
            primaryEmail: $inputs.googlePrimaryEmail
            name:
              givenName: $inputs.firstName
              familyName: $inputs.lastName
            password: $inputs.googlePassword
            changePasswordAtNextLogin: true
        successCriteria:
          - condition: $statusCode == 200
        outputs:
          googleUserId: $response.body#/id
          googleEmail: $response.body#/primaryEmail
    outputs:
      oktaUserId: $steps.create-okta-user.outputs.oktaUserId
      googleUserId: $steps.provision-google-mailbox.outputs.googleUserId
      googleEmail: $steps.provision-google-mailbox.outputs.googleEmail