# Superdocu — Pipedream Connect

> Superdocu helps companies collect documents from their contacts: clients, employees or partners.

- API slug: `superdocu` (use in MCP headers and tool keys)
- Auth: API key (Pipedream-managed)
- Categories: CRM
- Website: https://www.superdocu.com/
- This page (HTML): https://pipedream.com/apps/superdocu
- Tools: 8 actions · 1 trigger

## Connect via MCP (recommended)

- Endpoint: `https://remote.mcp.pipedream.net/v3`
- Headers: `Authorization: Bearer <token>` · `x-pd-project-id` · `x-pd-environment` · `x-pd-external-user-id` · `x-pd-app-slug: superdocu`

```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": "superdocu",
      },
    },
  },
)

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

const { tools } = await mcp.listTools()

// e.g. run Create Contact:
const result = await mcp.callTool({
  name: "superdocu-create-contact",
  arguments: {
    firstName: "First Name",
    lastName: "Last Name",
  },
})
```

Docs: [MCP guide](https://pipedream.com/docs/connect/mcp/developers.md)

## API proxy

For a Superdocu endpoint with no pre-built tool, the proxy forwards your request with the connected user's credentials attached.

```bash
# The path segment is the target URL, URL-safe base64 encoded:
# https://api.superdocu.com/api/v1/contacts

curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9hcGkuc3VwZXJkb2N1LmNvbS9hcGkvdjEvY29udGFjdHM?external_user_id={external_user_id}&account_id=apn_xxxxxxx" \
  -H "Authorization: Bearer {access_token}" \
  -H "x-pd-environment: production"
```

Docs: [API proxy guide](https://pipedream.com/docs/connect/api-proxy.md)

## SDK

```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: "superdocu-create-contact",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    superdocu: { authProvisionId: "apn_xxxxxxx" },
    firstName: "First Name",
    lastName: "Last Name",
  },
})
```

Docs: [Managed auth guide](https://pipedream.com/docs/connect/managed-auth/quickstart.md) · [Tools guide](https://pipedream.com/docs/connect/components.md)

## Actions (8)

### `superdocu-create-contact` — Create Contact (Write)

Create a new contact in Superdocu. Returns the created contact including its id, which you can then pass as contactId to Create Dossier to assign a workflow. See the documentation.

Full schema: https://pipedream.com/apps/superdocu/actions/create-contact.md

### `superdocu-create-dossier` — Create Dossier (Write)

Create a dossier by assigning a workflow to an existing Superdocu contact (the API calls this a contact workflow). Run List Contacts (or Create Contact) first to obtain a contactId, and List Templates to obtain a workflowId. Returns the created dossier with its id and initial status. The API…

Full schema: https://pipedream.com/apps/superdocu/actions/create-dossier.md

### `superdocu-delete-dossier` — Delete Dossier (Write)

Permanently delete a dossier (the API calls this a contact workflow) from a contact. This is irreversible. Run List Contacts first to obtain a contactId, then List Dossiers for that contact to obtain a contactWorkflowId. See the documentation.

Full schema: https://pipedream.com/apps/superdocu/actions/delete-dossier.md

### `superdocu-get-dossier` — Get Dossier (Read-only)

Retrieve the full detail of a single dossier (the API calls this a contact workflow), including its states. Run List Contacts first to obtain a contactId, then List Dossiers for that contact to obtain a contactWorkflowId. See the documentation.

Full schema: https://pipedream.com/apps/superdocu/actions/get-dossier.md

### `superdocu-invite-contact` — Invite Contact (Write)

Invite a Superdocu contact: emails them an invitation covering ALL workflows currently assigned to them. The Superdocu API endpoint takes only a contactId and dispatches notifications for every assigned workflow — it is not possible to invite to a single dossier in isolation. Run List Contacts…

Full schema: https://pipedream.com/apps/superdocu/actions/invite-contact.md

### `superdocu-list-contacts` — List Contacts (Read-only)

List contacts in Superdocu. Returns an array of contact objects, each with a numeric id (e.g. "56031") — this id (not the email) is the value to pass as contactId to List Dossiers, Create Dossier, Get Dossier, Delete Dossier, and Invite Contact. The email field is for reference/display only…

Full schema: https://pipedream.com/apps/superdocu/actions/list-contacts.md

### `superdocu-list-dossiers` — List Dossiers (Read-only)

List the dossiers (the API calls these contact workflows) assigned to a specific Superdocu contact. Returns an array of dossier objects, each with an id (the contact-workflow ID) and a status. Run List Contacts first to obtain a valid contactId. Use a returned dossier id as the contactWorkflowId…

Full schema: https://pipedream.com/apps/superdocu/actions/list-dossiers.md

### `superdocu-list-templates` — List Templates (Read-only)

List workflow templates in Superdocu (the API calls these workflows; the intake refers to them as templates). Returns an array of template objects, each with an id and name. Use the returned id as the workflowId input to Create Dossier. See the documentation.

Full schema: https://pipedream.com/apps/superdocu/actions/list-templates.md

## Triggers (1)

### `superdocu-new-event` — New Event (Instant)

Emit new events from Superdocu. You can configure your webhook here

Full schema: https://pipedream.com/apps/superdocu/triggers/new-event.md

---

- All apps: https://pipedream.com/apps — index: https://pipedream.com/llms.txt
- Pipedream docs for agents: https://pipedream.com/docs/llms.txt
