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

> ## Agent Instructions
> Automate.ax automations are TypeScript programs.
> Use Bun for installation and command examples.
> Use Automate.ax for the product name and automate.ax for the package, CLI, and domain.
> Treat documented public APIs as current; do not invent transitional or deprecated names.

# Update profile

> Updates the connected Cal.com profile.

`calcom.updateProfile` updates the connected Cal.com profile.

```ts automations/update-profile.automation.ts theme={null}
import { automation, markSignificant } from "automate.ax"
import { calcom } from "automate.ax/calcom"

export default automation("Update profile", () => {
  markSignificant(
    calcom.updateProfile({ name: "Ada Lovelace", timeZone: "Europe/London" }),
  )
})
```

## Input

All fields are optional.

| Field               | Type           | Description                                 |
| ------------------- | -------------- | ------------------------------------------- |
| `email`             | `string`       | Account email.                              |
| `name`              | `string`       | Display name.                               |
| `timeFormat`        | `12 \| 24`     | Clock format.                               |
| `defaultScheduleId` | `number`       | Default schedule.                           |
| `weekStart`         | `string`       | First weekday.                              |
| `timeZone`          | `string`       | IANA time zone.                             |
| `locale`            | `string`       | Supported Cal.com locale.                   |
| `avatarUrl`         | `string (uri)` | Avatar URL.                                 |
| `bio`               | `string`       | Profile biography.                          |
| `metadata`          | `object`       | Up to 50 provider-defined metadata entries. |

## Output

Returns the updated profile with required `id`, `username`, `email`, `name`, `avatarUrl`, `bio`, `timeFormat`, `defaultScheduleId`, `weekStart`, `timeZone`, `locale`, and `organizationId`; `organization` is optional.

Cal.com enforces account role, plan, and availability requirements. Provider rejections surface as structured action failures with the HTTP status and any `Retry-After` delay.
