PropelAuth · Arazzo Workflow

PropelAuth Revoke Pending Invite

Version 1.0.0

Find a pending invite for an org and revoke it when one is outstanding.

1 workflow 1 source API 1 provider
View Spec View on GitHub AuthenticationIdentityB2BMulti-TenancyAuthorizationRBACSSOSCIMMCPAPI KeysArazzoWorkflows

Provider

propelauth

Workflows

revoke-pending-invite
Look up an org's pending invites and revoke the one for a given email.
Reads an organization's pending invites and, when at least one is outstanding, revokes the invitation for the supplied email address.
2 steps inputs: backendApiKey, inviteeEmail, orgId outputs: totalInvitesBefore
1
findInvites
fetchPendingInvites
Read the organization's pending invites.
2
revokeInvite
revokePendingOrgInvite
Revoke the pending invite for the supplied email address.

Source API Descriptions

Arazzo Workflow Specification

propelauth-revoke-pending-invite-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: PropelAuth Revoke Pending Invite
  summary: Find a pending invite for an org and revoke it when one is outstanding.
  description: >-
    A find-then-act flow for cleaning up outstanding invitations. The workflow
    reads the pending invites for an organization and branches: when at least one
    invite is outstanding it revokes the invite for the supplied email, and when
    none are pending it ends without acting. Each step inlines its request,
    including the Backend Integration API key as a bearer token.
  version: 1.0.0
sourceDescriptions:
- name: orgApi
  url: ../openapi/propelauth-org-api-openapi.yml
  type: openapi
workflows:
- workflowId: revoke-pending-invite
  summary: Look up an org's pending invites and revoke the one for a given email.
  description: >-
    Reads an organization's pending invites and, when at least one is
    outstanding, revokes the invitation for the supplied email address.
  inputs:
    type: object
    required:
    - backendApiKey
    - orgId
    - inviteeEmail
    properties:
      backendApiKey:
        type: string
        description: PropelAuth Backend Integration API key presented as a bearer token.
      orgId:
        type: string
        description: Identifier of the organization whose invite should be revoked.
      inviteeEmail:
        type: string
        description: Email address of the pending invite to revoke.
  steps:
  - stepId: findInvites
    description: Read the organization's pending invites.
    operationId: fetchPendingInvites
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.backendApiKey"
    - name: org_id
      in: query
      value: $inputs.orgId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      totalInvites: $response.body#/total_invites
    onSuccess:
    - name: invitesExist
      type: goto
      stepId: revokeInvite
      criteria:
      - context: $response.body
        condition: $.total_invites > 0
        type: jsonpath
    - name: noInvites
      type: end
      criteria:
      - context: $response.body
        condition: $.total_invites == 0
        type: jsonpath
  - stepId: revokeInvite
    description: Revoke the pending invite for the supplied email address.
    operationId: revokePendingOrgInvite
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.backendApiKey"
    requestBody:
      contentType: application/json
      payload:
        org_id: $inputs.orgId
        invitee_email: $inputs.inviteeEmail
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      revokedStatus: $statusCode
  outputs:
    totalInvitesBefore: $steps.findInvites.outputs.totalInvites