Auth0 · Arazzo Workflow

Auth0 Find User by Email and Assign Role

Version 1.0.0

Look up a user by email and, when found, assign tenant roles to that user.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub AI AgentsAuthenticationAuthorizationFGAIdentity ManagementMCPOktaOpenID ConnectSAMLSecuritySCIMArazzoWorkflows

Provider

auth0

Workflows

find-user-assign-role
Resolve a user by email then grant roles when the user exists.
Searches users by email, and only when a match is found assigns the supplied role ids to the matched user.
2 steps inputs: email, roles outputs: matchedUserId
1
findUser
Search for a user by email address, returning at most the matching records.
2
assignRoles
Assign the supplied role ids to the matched user.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Auth0 Find User by Email and Assign Role
  summary: Look up a user by email and, when found, assign tenant roles to that user.
  description: >-
    A find-then-act access flow. The workflow searches for an existing user by
    email address and branches on the result: when a matching user is found it
    assigns the supplied tenant roles, and when no user matches it ends without
    making changes. Each step spells out its request inline so the flow can be
    read and executed without opening the underlying OpenAPI description.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-620.20
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-620.20
      capability_name: Identity & Access Management
      spec: auth0-users-by-email-api-openapi.yml
      confidence: 0.75
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: usersApi
  url: ../openapi/auth0-users-api-openapi.yml
  type: openapi
- name: usersByEmailApi
  url: ../openapi/auth0-users-by-email-api-openapi.yml
  type: openapi
workflows:
- workflowId: find-user-assign-role
  summary: Resolve a user by email then grant roles when the user exists.
  description: >-
    Searches users by email, and only when a match is found assigns the
    supplied role ids to the matched user.
  inputs:
    type: object
    required:
    - email
    - roles
    properties:
      email:
        type: string
        description: Email address to look the user up by (case-sensitive).
      roles:
        type: array
        description: List of existing role ids to assign when the user is found.
        items:
          type: string
  steps:
  - stepId: findUser
    description: >-
      Search for a user by email address, returning at most the matching
      records.
    operationId: get_users-by-email
    parameters:
    - name: email
      in: query
      value: $inputs.email
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      matchedUserId: $response.body#/0/user_id
    onSuccess:
    - name: userFound
      type: goto
      stepId: assignRoles
      criteria:
      - context: $response.body
        condition: $.length > 0
        type: jsonpath
    - name: userMissing
      type: end
      criteria:
      - context: $response.body
        condition: $.length == 0
        type: jsonpath
  - stepId: assignRoles
    description: >-
      Assign the supplied role ids to the matched user.
    operationId: post_user_roles
    parameters:
    - name: id
      in: path
      value: $steps.findUser.outputs.matchedUserId
    requestBody:
      contentType: application/json
      payload:
        roles: $inputs.roles
    successCriteria:
    - condition: $statusCode == 204
  outputs:
    matchedUserId: $steps.findUser.outputs.matchedUserId

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/auth0-find-user-assign-role-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.