# Zoho Forms — Pipedream Connect

> Build powerful forms for free, share them online, receive instant alerts, and efficiently manage your data with our integrated apps. Focus on your business while Zoho Forms handles the data collection process for you!

- API slug: `zoho_forms` (use in MCP headers and tool keys)
- Auth: OAuth (Pipedream-managed)
- Categories: Surveys & Forms
- Website: https://www.zoho.com/forms/
- Managed OAuth scopes: `ZohoForms.forms.READ`
- This page (HTML): https://pipedream.com/apps/zoho-forms
- Tools: 3 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: zoho_forms`

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

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

const { tools } = await mcp.listTools()

// e.g. run Get Form Fields:
const result = await mcp.callTool({
  name: "zoho_forms-get-form-fields",
  arguments: {
    formId: "Form Id",
  },
})
```

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

## API proxy

For a Zoho Forms 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://forms.zoho.com/api/zforms?zf_service=Pipedream

curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9mb3Jtcy56b2hvLmNvbS9hcGkvemZvcm1zP3pmX3NlcnZpY2U9UGlwZWRyZWFt?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: "zoho_forms-get-form-fields",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    zoho_forms: { authProvisionId: "apn_xxxxxxx" },
    formId: "Form Id",
  },
})
```

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

## Actions (3)

### `zoho_forms-get-form-fields` — Get Form Fields (Read-only)

Get the fields of a particular form

Full schema: https://pipedream.com/apps/zoho-forms/actions/get-form-fields.md

### `zoho_forms-list-form-link-name-options` — List Form Link Name Options (Read-only)

Retrieves available options for the Form Link Name field.

Full schema: https://pipedream.com/apps/zoho-forms/actions/list-form-link-name-options.md

### `zoho_forms-list-forms` — List Forms (Read-only)

Fetches the meta information of all the forms present in a Zoho Creator application. See the documentation

Full schema: https://pipedream.com/apps/zoho-forms/actions/list-forms.md

## Triggers (1)

### `zoho_forms-new-response-received-instant` — New Response Received (Instant) (Instant)

Emit new event when a specific form receive a new response.

Full schema: https://pipedream.com/apps/zoho-forms/triggers/new-response-received-instant.md

---

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