# List Recipients — Docusign

> List recipients and recipient status for a DocuSign envelope. Use Include Tabs when you need each recipient's tab values and placement. See the documentation

- Key: `docusign-list-recipients`
- Type: Action (Read-only)
- Version: 0.0.2
- App: Docusign (`docusign`) — https://pipedream.com/apps/docusign.md
- This page (HTML): https://pipedream.com/apps/docusign/actions/list-recipients
- Hints: read-only · open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/docusign/actions/list-recipients/list-recipients.mjs

## Description

List recipients and recipient status for a DocuSign envelope. Use Include Tabs when you need each recipient's tab values and placement. [See the documentation](https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/enveloperecipients/list/)

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `account` | `string` | No | Your DocuSign account. Leave blank to automatically use your default account, or provide an Account ID (you can use List Accounts to retrieve available accounts). Options are loaded from the connected account. |
| `envelopeId` | `string` | Yes | The DocuSign envelope ID. Options are loaded from the connected account. |
| `includeTabs` | `boolean` | No | Whether to include each recipient's tabs. |
| `includeExtended` | `boolean` | No | Whether to include extended recipient information. |
| `includeMetadata` | `boolean` | No | Whether to include metadata. |

## Run it

**MCP**

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_PROJECT_ID!,
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "docusign",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
  name: "docusign-list-recipients",
  arguments: {
    account: "Account",
    envelopeId: "Envelope ID",
  },
})
```

**TypeScript**

```ts
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "docusign-list-recipients",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    docusign: { authProvisionId: "apn_xxxxxxx" },
    account: "Account",
    envelopeId: "Envelope ID",
  },
})

console.log(result)
```

**cURL**

```bash
curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
  -H "Content-Type: application/json" \
  -H "X-PD-Environment: production" \
  -H "Authorization: Bearer {access_token}" \
  -d '{
    "external_user_id": "{external_user_id}",
    "id": "docusign-list-recipients",
    "configured_props": {
      "docusign": { "authProvisionId": "apn_xxxxxxx" },
      "account": "Account",
      "envelopeId": "Envelope ID"
    }
  }'
```

---

- App: https://pipedream.com/apps/docusign.md · All apps: https://pipedream.com/apps
