Amplitude · Arazzo Workflow

Amplitude SCIM User Provisioning

Version 1.0.0

Provision a SCIM user, read the account back, then deactivate it via a SCIM patch.

1 workflow 1 source API 1 provider
View Spec View on GitHub A/B TestingAnalyticsExperimentationFeature FlagsProduct AnalyticsUser BehaviorArazzoWorkflows

Provider

amplitude

Workflows

provision-and-deactivate-user
Create a SCIM user, read it back, and deactivate it.
Drives a SCIM user through provisioning, retrieval, and deactivation so the onboarding-to-offboarding lifecycle is exercised end to end.
3 steps inputs: bearerToken, familyName, givenName, userName outputs: active, userId
1
createUser
Provision a new SCIM user with the supplied user name and name components. Confirms creation by checking for the 201 Created status.
2
getUser
Retrieve the newly provisioned user by their SCIM ID to confirm the account exists and is active.
3
deactivateUser
Apply a SCIM PatchOp that replaces the active attribute with false to deactivate the account during offboarding.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Amplitude SCIM User Provisioning
  summary: Provision a SCIM user, read the account back, then deactivate it via a SCIM patch.
  description: >-
    Implements an identity-provider style user lifecycle against the Amplitude
    SCIM 2.0 API. The workflow provisions a new user, retrieves the created
    account by its SCIM ID to confirm provisioning, and then applies a SCIM
    PatchOp to deactivate the account, mirroring an offboarding flow. All steps
    use the application/scim+json content type and authenticate with a SCIM
    token as a bearer token. 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: usersApi
  url: ../openapi/amplitude-users-api-openapi.yml
  type: openapi
workflows:
- workflowId: provision-and-deactivate-user
  summary: Create a SCIM user, read it back, and deactivate it.
  description: >-
    Drives a SCIM user through provisioning, retrieval, and deactivation so the
    onboarding-to-offboarding lifecycle is exercised end to end.
  inputs:
    type: object
    required:
    - bearerToken
    - userName
    properties:
      bearerToken:
        type: string
        description: The SCIM API token passed as a bearer token.
      userName:
        type: string
        description: The user's email address, used as the primary SCIM identifier.
      givenName:
        type: string
        description: The user's first name.
      familyName:
        type: string
        description: The user's last name.
  steps:
  - stepId: createUser
    description: >-
      Provision a new SCIM user with the supplied user name and name components.
      Confirms creation by checking for the 201 Created status.
    operationId: createScimUser
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.bearerToken"
    requestBody:
      contentType: application/scim+json
      payload:
        schemas:
        - "urn:ietf:params:scim:schemas:core:2.0:User"
        userName: $inputs.userName
        name:
          givenName: $inputs.givenName
          familyName: $inputs.familyName
        active: true
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      userId: $response.body#/id
      active: $response.body#/active
  - stepId: getUser
    description: >-
      Retrieve the newly provisioned user by their SCIM ID to confirm the
      account exists and is active.
    operationId: getScimUser
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.bearerToken"
    - name: user_id
      in: path
      value: $steps.createUser.outputs.userId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      userName: $response.body#/userName
      active: $response.body#/active
  - stepId: deactivateUser
    description: >-
      Apply a SCIM PatchOp that replaces the active attribute with false to
      deactivate the account during offboarding.
    operationId: updateScimUser
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.bearerToken"
    - name: user_id
      in: path
      value: $steps.createUser.outputs.userId
    requestBody:
      contentType: application/scim+json
      payload:
        schemas:
        - "urn:ietf:params:scim:api:messages:2.0:PatchOp"
        Operations:
        - op: replace
          path: active
          value: false
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      active: $response.body#/active
  outputs:
    userId: $steps.createUser.outputs.userId
    active: $steps.deactivateUser.outputs.active

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/amplitude-scim-user-provisioning-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.