# Create Leave Request — Kenjo

> Creates a new leave request in Kenjo. See the documentation.

- Key: `kenjo-create-leave-request`
- Type: Action (Write)
- Version: 0.0.2
- App: Kenjo (`kenjo`) — https://pipedream.com/apps/kenjo.md
- This page (HTML): https://pipedream.com/apps/kenjo/actions/create-leave-request
- Hints: open-world
- Source: https://github.com/PipedreamHQ/pipedream/blob/master/components/kenjo/actions/create-leave-request/create-leave-request.mjs

## Description

Creates a new leave request in Kenjo. [See the documentation](https://kenjo.readme.io/reference/post_time-off-requests).

## Props

| Prop | Type | Required | Description |
|---|---|---|---|
| `employeeId` | `string` | Yes | The identifier of an employee Options are loaded from the connected account. |
| `timeOffTypeId` | `string` | Yes | The identifier of a time off request type Options are loaded from the connected account. |
| `from` | `string` | Yes | The starting date of the time-off request in format YYYY-MM-DD |
| `to` | `string` | Yes | The ending date of the time-off request in format YYYY-MM-DD |
| `partOfDayFrom` | `string` | No | The duration of the from date. 'StartOfDay' means that the from date is the entire day. 'HalfOfDay' means that the request starts to apply in the middle of the from day. If not specified, the default value will be 'StartOfDay'. |
| `partOfDayTo` | `string` | No | The duration of the to date. 'EndOfDay' means that the to date is the entire day. 'HalfOfDay' means the request starts to apply in the middle of the to day. If not specified, the default value will be 'EndOfDay'. |
| `description` | `string` | No | The description of the time-off request |

## 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": "kenjo",
      },
    },
  },
)

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: "kenjo-create-leave-request",
  arguments: {
    employeeId: "Employee ID",
    timeOffTypeId: "Time Off Type 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: "kenjo-create-leave-request",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    kenjo: { authProvisionId: "apn_xxxxxxx" },
    employeeId: "Employee ID",
    timeOffTypeId: "Time Off Type 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": "kenjo-create-leave-request",
    "configured_props": {
      "kenjo": { "authProvisionId": "apn_xxxxxxx" },
      "employeeId": "Employee ID",
      "timeOffTypeId": "Time Off Type ID"
    }
  }'
```

---

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