Docusign · Arazzo Workflow

DocuSign Multi-Signer Sequential Routing

Version 1.0.0

Send an envelope to two signers in sequential routing order, then poll the recipients until both complete.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub AgreementsContractsDigital Transaction ManagementDocumentsElectronic SignaturesE-SignatureArazzoWorkflows

Provider

docusign

Workflows

multi-signer-routing-order
Send to two sequential signers and poll recipients to completion.
Creates and sends an envelope with two signers at distinct routing orders, then polls the recipient list until both signers complete.
2 steps inputs: accountId, documentBase64, documentName, emailSubject, fileExtension, firstSignerEmail, firstSignerName, secondSignerEmail, secondSignerName outputs: envelopeId, signers
1
sendToSequentialSigners
Create and send an envelope with two signers at routing orders 1 and 2 so they are notified in sequence.
2
pollRecipients
List the recipients and re-check their statuses, looping while any signer is still pending.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: DocuSign Multi-Signer Sequential Routing
  summary: Send an envelope to two signers in sequential routing order, then poll the recipients until both complete.
  description: >-
    Coordinates a serial signing ceremony. The workflow creates and sends an
    envelope to two signers placed at routing orders one and two so the second
    signer is only notified after the first finishes, then lists the recipients
    and re-checks their statuses, looping while any signer is still pending and
    ending once both have completed. This is the e-signature equivalent of a
    sequential approval chain. 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
  x-realizes-capability-ids:
  - BC-150.10
  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-150.10
      capability_name: Contract Management
      spec: docusign-recipients-api-openapi.yml
      confidence: 0.7
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: envelopesApi
  url: ../openapi/docusign-envelopes-api-openapi.yml
  type: openapi
- name: recipientsApi
  url: ../openapi/docusign-recipients-api-openapi.yml
  type: openapi
workflows:
- workflowId: multi-signer-routing-order
  summary: Send to two sequential signers and poll recipients to completion.
  description: >-
    Creates and sends an envelope with two signers at distinct routing orders,
    then polls the recipient list until both signers complete.
  inputs:
    type: object
    required:
    - accountId
    - emailSubject
    - documentBase64
    - firstSignerName
    - firstSignerEmail
    - secondSignerName
    - secondSignerEmail
    properties:
      accountId:
        type: string
        description: The DocuSign account ID (GUID or short account number).
      emailSubject:
        type: string
        description: The subject line of the envelope email.
      documentBase64:
        type: string
        description: The base64-encoded content of the document.
      firstSignerName:
        type: string
        description: The full legal name of the first signer (routing order 1).
      firstSignerEmail:
        type: string
        description: The email address of the first signer.
      secondSignerName:
        type: string
        description: The full legal name of the second signer (routing order 2).
      secondSignerEmail:
        type: string
        description: The email address of the second signer.
      documentName:
        type: string
        description: The display name of the document.
        default: Agreement.pdf
      fileExtension:
        type: string
        description: The file extension of the document.
        default: pdf
  steps:
  - stepId: sendToSequentialSigners
    description: >-
      Create and send an envelope with two signers at routing orders 1 and 2 so
      they are notified in sequence.
    operationId: Envelopes_CreateEnvelope
    parameters:
    - name: accountId
      in: path
      value: $inputs.accountId
    requestBody:
      contentType: application/json
      payload:
        emailSubject: $inputs.emailSubject
        status: sent
        documents:
        - documentId: '1'
          name: $inputs.documentName
          fileExtension: $inputs.fileExtension
          documentBase64: $inputs.documentBase64
        recipients:
          signers:
          - recipientId: '1'
            routingOrder: '1'
            name: $inputs.firstSignerName
            email: $inputs.firstSignerEmail
            tabs:
              signHereTabs:
              - documentId: '1'
                pageNumber: '1'
                anchorString: '/sign1/'
          - recipientId: '2'
            routingOrder: '2'
            name: $inputs.secondSignerName
            email: $inputs.secondSignerEmail
            tabs:
              signHereTabs:
              - documentId: '1'
                pageNumber: '1'
                anchorString: '/sign2/'
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      envelopeId: $response.body#/envelopeId
  - stepId: pollRecipients
    description: >-
      List the recipients and re-check their statuses, looping while any signer
      is still pending.
    operationId: Recipients_ListRecipients
    parameters:
    - name: accountId
      in: path
      value: $inputs.accountId
    - name: envelopeId
      in: path
      value: $steps.sendToSequentialSigners.outputs.envelopeId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      signers: $response.body#/signers
    onSuccess:
    - name: stillPending
      type: goto
      stepId: pollRecipients
      criteria:
      - context: $response.body
        condition: $.signers[?(@.status != 'completed')]
        type: jsonpath
  outputs:
    envelopeId: $steps.sendToSequentialSigners.outputs.envelopeId
    signers: $steps.pollRecipients.outputs.signers

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/docusign-multi-signer-routing-order-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.