> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Unipile: Create Calendar Event

> Creates an event on the customer’s connected calendar. The calendar provider may send invitations to the listed attendees.

Creates an event on the customer’s connected calendar.

> [!NOTE]
>
> Tool ID: `unipile_create_calendar_event`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'unipile_create_calendar_event',
  {
    "account_id": "123456789",
    "calendar_id": "calendar_123",
    "title": "VP of Engineering",
    "attendees": [
      {
        "email": "jane.doe@example.com"
      }
    ],
    "start": {
      "date_time": "2026-01-15T12:00:00Z",
      "time_zone": "example"
    },
    "end": {
      "date_time": "2026-01-15T12:00:00Z",
      "time_zone": "example"
    }
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute unipile_create_calendar_event --input '{
  "account_id": "123456789",
  "calendar_id": "calendar_123",
  "title": "VP of Engineering",
  "attendees": [
    {
      "email": "jane.doe@example.com"
    }
  ],
  "start": {
    "date_time": "2026-01-15T12:00:00Z",
    "time_zone": "example"
  },
  "end": {
    "date_time": "2026-01-15T12:00:00Z",
    "time_zone": "example"
  }
}' --json
```

## Example response

The SDK returns this shape at `result.toolResponse.raw`. The example values illustrate the response.

```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
{
  "data": {
    "object": "CalendarEventCreated",
    "event_id": "event_123"
  }
}
```

Use `deepline describe unipile_create_calendar_event --json` for the latest machine-readable contract.

## Input reference

Create a calendar event.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.account_id` | `string` | Yes | — | The id of the account to use. |
| `payload.calendar_id` | `string` | Yes | — | The id of calendar receiving the event. |
| `payload.title` | `string` | Yes | — | The title of the event. |
| `payload.body` | `string` | No | — | The body of the event. |
| `payload.location` | `string` | No | — | The location of the event. |
| `payload.transparency` | `"opaque" \| "transparent"` | No | — | The transparency of the event. `opaque` does block time on the calendar and is equivalent to setting Show me as to Busy in the Calendar UI. `transparent` does not block time on the calendar and is equivalent to setting Show me as to Available in the Calendar UI. |
| `payload.visibility` | `"public" \| "private"` | No | — | The visibility of the event. |
| `payload.conference` | `object` | No | — | — |
| `payload.is_attendees_list_hidden` | `boolean` | No | — | Is the attendees list hidden for attendees. |
| `payload.attendees` | `array` | Yes | — | — |
| `payload.recurrence` | `array` | No | — | List of RRULE, EXRULE, RDATE and EXDATE lines for a recurring event, as specified in RFC5545. |
| `payload.start` | `object` | Yes | — | The start date and time of the event. |
| `payload.end` | `object` | Yes | — | The end date and time of the event. |
| `payload.color` | `string` | No | — | The color of the event. `Google Calendar`: `#7986CB`, `#33B679`, `#8E24AA`, `#E67C73`, `#F6BF26`, `#F4511E`, `#039BE5`, `#616161`, `#3F51B5`, `#0B8043`, `#D50000` |
| `payload.notify` | `boolean` | No | `false` | If true, send notifications about the event to invited attendees. `Outlook Calendar`: Not supported, this parameter will always be true. |
| `payload.guests_can_modify` | `boolean` | No | `false` | If true, allow guests to modify the event. `Outlook Calendar`: Not supported, this parameter will always be false. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Create a calendar event.",
    "properties": {
      "account_id": {
        "type": "string",
        "description": "The id of the account to use."
      },
      "calendar_id": {
        "type": "string",
        "description": "The id of calendar receiving the event."
      },
      "title": {
        "type": "string",
        "description": "The title of the event."
      },
      "body": {
        "type": "string",
        "description": "The body of the event."
      },
      "location": {
        "type": "string",
        "description": "The location of the event."
      },
      "transparency": {
        "description": "The transparency of the event. `opaque` does block time on the calendar and is equivalent to setting Show me as to Busy in the Calendar UI. `transparent` does not block time on the calendar and is equivalent to setting Show me as to Available in the Calendar UI.",
        "anyOf": [
          {
            "type": "string",
            "enum": [
              "opaque"
            ]
          },
          {
            "type": "string",
            "enum": [
              "transparent"
            ]
          }
        ]
      },
      "visibility": {
        "description": "The visibility of the event.",
        "anyOf": [
          {
            "type": "string",
            "enum": [
              "public"
            ]
          },
          {
            "type": "string",
            "enum": [
              "private"
            ]
          }
        ]
      },
      "conference": {
        "type": "object",
        "properties": {
          "provider": {
            "type": "string",
            "description": "The conference provider.",
            "enum": [
              "google_meet",
              "zoom",
              "teams",
              "unknown"
            ]
          },
          "conference_id": {
            "type": "string",
            "description": "The provider-native conference ID."
          },
          "url": {
            "type": "string",
            "description": "The conference URL. If not provided, it will automatically create a new conference (only teams and google_meet available)"
          }
        },
        "required": [
          "provider"
        ],
        "additionalProperties": false
      },
      "is_attendees_list_hidden": {
        "type": "boolean",
        "description": "Is the attendees list hidden for attendees."
      },
      "attendees": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "email": {
              "type": "string",
              "description": "Email of the attendee."
            }
          },
          "required": [
            "email"
          ],
          "additionalProperties": false
        }
      },
      "recurrence": {
        "type": "array",
        "description": "List of RRULE, EXRULE, RDATE and EXDATE lines for a recurring event, as specified in RFC5545.",
        "items": {
          "type": "string"
        }
      },
      "start": {
        "description": "The start date and time of the event.",
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "date_time": {
                "type": "string",
                "description": "The date and time. Uses ISO 8601 UTC datetime (YYYY-MM-DDTHH:MM:SS.sssZ)."
              },
              "time_zone": {
                "type": "string",
                "description": "The time zone of the date time."
              }
            },
            "required": [
              "date_time",
              "time_zone"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "date": {
                "type": "string",
                "description": "The date. Uses ISO 8601 date format (YYYY-MM-DD)."
              }
            },
            "required": [
              "date"
            ],
            "additionalProperties": false
          }
        ]
      },
      "end": {
        "description": "The end date and time of the event.",
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "date_time": {
                "type": "string",
                "description": "The date and time. Uses ISO 8601 UTC datetime (YYYY-MM-DDTHH:MM:SS.sssZ)."
              },
              "time_zone": {
                "type": "string",
                "description": "The time zone of the date time."
              }
            },
            "required": [
              "date_time",
              "time_zone"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "date": {
                "type": "string",
                "description": "The date. Uses ISO 8601 date format (YYYY-MM-DD)."
              }
            },
            "required": [
              "date"
            ],
            "additionalProperties": false
          }
        ]
      },
      "color": {
        "type": "string",
        "description": "The color of the event. `Google Calendar`: `#7986CB`, `#33B679`, `#8E24AA`, `#E67C73`, `#F6BF26`, `#F4511E`, `#039BE5`, `#616161`, `#3F51B5`, `#0B8043`, `#D50000`"
      },
      "notify": {
        "type": "boolean",
        "description": "If true, send notifications about the event to invited attendees. `Outlook Calendar`: Not supported, this parameter will always be true.",
        "default": false
      },
      "guests_can_modify": {
        "type": "boolean",
        "description": "If true, allow guests to modify the event. `Outlook Calendar`: Not supported, this parameter will always be false.",
        "default": false
      }
    },
    "required": [
      "account_id",
      "calendar_id",
      "title",
      "attendees",
      "start",
      "end"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.object` | `"CalendarEventCreated"` | Yes | — | Allowed: `CalendarEventCreated`. |
| `result.data.event_id` | `string` | Yes | — | — |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Provider response payload.",
        "properties": {
          "object": {
            "type": "string",
            "enum": [
              "CalendarEventCreated"
            ]
          },
          "event_id": {
            "type": "string"
          }
        },
        "required": [
          "object",
          "event_id"
        ],
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Unipile provider guide](https://deepline.com/docs/providers/unipile/guide.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.