# Zoho People — Pipedream Connect

> Zoho People is a cloud-based HR software crafted to nurture employees, quickly adapt to changes, and make HR management agile and effective.

- API slug: `zoho_people` (use in MCP headers and tool keys)
- Auth: OAuth (Pipedream-managed)
- Categories: Human Resources
- Website: https://www.zoho.com/people/
- Managed OAuth scopes: `ZOHOPEOPLE.automation.all` · `ZOHOPEOPLE.employee.all` · `ZOHOPEOPLE.performance.all` · `ZOHOPEOPLE.attendance.all` · `ZOHOPEOPLE.timetracker.all` · `ZOHOPEOPLE.forms.all` · `ZOHOPEOPLE.leave.all` · `ZOHOPEOPLE.assessment.all` · `ZOHOPEOPLE.training.all` · `ZOHOPEOPLE.announcement.all` · `ZOHOPEOPLE.feeds.all` · `ZOHOPEOPLE.dashboard.all` · `ZOHOPEOPLE.files.all` · `ZOHOPEOPLE.onboarding.all` · `ZOHOPEOPLE.integration.all`
- This page (HTML): https://pipedream.com/apps/zoho-people
- Tools: 6 actions · 0 triggers

## 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_people`

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

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

const { tools } = await mcp.listTools()

// e.g. run Add Record:
const result = await mcp.callTool({
  name: "zoho_people-add-record",
  arguments: {
    form: "Form",
  },
})
```

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

## API proxy

For a Zoho People 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.example.com/v1/me

curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9hcGkuZXhhbXBsZS5jb20vdjEvbWU?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_people-add-record",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    zoho_people: { authProvisionId: "apn_xxxxxxx" },
    form: "Form",
  },
})
```

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

## Actions (6)

### `zoho_people-add-record` — Add Record (Write)

Add a record to a Zoho People module. See the documentation

Full schema: https://pipedream.com/apps/zoho-people/actions/add-record.md

### `zoho_people-create-attendance-entry` — Create Attendance Entry (Write)

This API can be used to capture the check-in and check-out entries of an individual employee.The system will mark the attendance exit/entry of individual employees.It will automatically update the attendance status in the web portal for every check-in and check-out. See the documentation

Full schema: https://pipedream.com/apps/zoho-people/actions/create-attendance-entry.md

### `zoho_people-get-attendance-entries` — Get Attendance Entries (Write)

This API is used to fetch the shift configuration details of an employee. All the details of the shift, that has been configured to the employee, in the given duration can be fetched using this API. Details include shifts mapped to the employee, start and end time of the shift and holiday, Weekend…

Full schema: https://pipedream.com/apps/zoho-people/actions/get-attendance-entries.md

### `zoho_people-list-emp-id-options` — List Employee ID Options (Read-only)

Retrieves available options for the Employee ID field.

Full schema: https://pipedream.com/apps/zoho-people/actions/list-emp-id-options.md

### `zoho_people-list-form-options` — List Form Options (Read-only)

Retrieves available options for the Form field.

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

### `zoho_people-update-record` — Update Record (Write)

Update a record to a Zoho People module. See the documentation

Full schema: https://pipedream.com/apps/zoho-people/actions/update-record.md

---

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