> ## 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.

# On recording transcription generated

> Subscribes when a Cal Video transcript is generated.

`calcom.onRecordingTranscriptionGenerated` subscribes when a Cal Video transcript is generated.

```ts automations/on-recording-transcription-generated.automation.ts theme={null}
import { automation, markSignificant } from "automate.ax"
import { calcom } from "automate.ax/calcom"

export default automation("On recording transcription generated", () => {
  const event = calcom.onRecordingTranscriptionGenerated()
  markSignificant(event)
})
```

## Event

| Field                                          | Type                                  | Required |
| ---------------------------------------------- | ------------------------------------- | -------- |
| `createdAt`                                    | `string (date-time)`                  | Yes      |
| `payload`                                      | `object`                              | Yes      |
| `payload.attendees`                            | `object[]`                            | Yes      |
| `payload.attendees[].email`                    | `string (email)`                      | Yes      |
| `payload.attendees[].id`                       | `integer`                             | No       |
| `payload.attendees[].language`                 | `object`                              | Yes      |
| `payload.attendees[].language.locale`          | `string`                              | Yes      |
| `payload.attendees[].name`                     | `string`                              | Yes      |
| `payload.attendees[].phoneNumber`              | `string \| null`                      | No       |
| `payload.attendees[].timeZone`                 | `string`                              | Yes      |
| `payload.attendees[].username`                 | `string \| null`                      | No       |
| `payload.attendees[].utcOffset`                | `number`                              | No       |
| `payload.endTime`                              | `string`                              | Yes      |
| `payload.organizer`                            | `object`                              | Yes      |
| `payload.organizer.email`                      | `string (email)`                      | Yes      |
| `payload.organizer.id`                         | `integer`                             | No       |
| `payload.organizer.language`                   | `object`                              | Yes      |
| `payload.organizer.language.locale`            | `string`                              | Yes      |
| `payload.organizer.name`                       | `string`                              | Yes      |
| `payload.organizer.phoneNumber`                | `string \| null`                      | No       |
| `payload.organizer.timeZone`                   | `string`                              | Yes      |
| `payload.organizer.username`                   | `string \| null`                      | No       |
| `payload.organizer.utcOffset`                  | `number`                              | No       |
| `payload.startTime`                            | `string`                              | Yes      |
| `payload.title`                                | `string`                              | Yes      |
| `payload.uid`                                  | `string`                              | Yes      |
| `payload.downloadLinks`                        | `object`                              | No       |
| `payload.downloadLinks.recording`              | `string (uri)`                        | No       |
| `payload.downloadLinks.transcription`          | `object[]`                            | No       |
| `payload.downloadLinks.transcription[].format` | `string`                              | Yes      |
| `payload.downloadLinks.transcription[].link`   | `string (uri)`                        | Yes      |
| `triggerEvent`                                 | `"RECORDING_TRANSCRIPTION_GENERATED"` | Yes      |

Additional provider fields are preserved.

Automate.ax creates and maintains the Cal.com webhook, verifies `x-cal-signature-256`, and deduplicates provider retries. Use `calcom.onEvent` when one automation should receive every supported Cal.com event.
