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

# Ergo

> Webhook-only integration — paste a URL into your Ergo dashboard.

Ergo pushes the full meeting payload (transcript, summary, action items) to Yuzu via webhook. There's no API key — you just paste a URL and an auth secret.

**Auth method:** Webhook URL + HMAC auth secret.

## Prerequisites

* An Ergo account with permission to configure webhooks under **Meeting → Webhooks**.

## Setup

<Steps>
  <Step title="Open Yuzu Settings → Integrations">
    Go to **Settings → Integrations**, click **Connect Notetaker**, and choose **Ergo**. Yuzu creates the integration immediately and shows you a unique webhook URL.

    <Frame />
  </Step>

  <Step title="Open Ergo's webhook settings">
    In the Ergo dashboard, navigate to the **Meeting** section, click the three-dot menu in the top-right corner, and open the **Webhooks** tab.

    <Frame />
  </Step>

  <Step title="Paste the Yuzu webhook URL">
    Copy the URL from Yuzu (it looks like `https://<your-yuzu-host>/webhooks/notetaker/ntk_<token>`) and paste it into Ergo's endpoint field.
  </Step>

  <Step title="Generate an auth secret in Ergo and paste it back into Yuzu">
    Ergo will prompt you to generate an auth secret for the webhook. Copy it and paste it into the **Webhook Secret** field in the Yuzu dialog. Yuzu uses this secret to verify every incoming Ergo webhook.
  </Step>

  <Step title="Tick the confirmation box and click Complete Setup">
    The integration becomes active once you confirm the webhook is in place.
  </Step>
</Steps>

<Warning>
  If you skip the auth secret, Yuzu will still receive Ergo webhooks but won't be able to verify they came from Ergo. Add the secret as soon as you have it.
</Warning>

## What gets pulled

Ergo sends the entire meeting payload in the webhook body, so Yuzu doesn't need to make a follow-up API call. Each `notetaker.meeting.completed` event includes:

* The transcript array with `speaker`, `text`, and `timestamp`.
* Title, attendees, duration, recording URL.
* Summary and action items if Ergo generated them.
* A no-show flag (Yuzu skips no-show meetings).

Ergo does not currently support historical sync.

## Ownership and fanout

Ergo meetings can include several internal teammates. Yuzu still stores one canonical transcript per Ergo meeting ID.

When attendee metadata matches a workspace member, that member becomes the transcript owner. If coverage rules are configured, Yuzu only assigns ownership to covered members. If no safe owner is found, the transcript stays with the admin or integration owner until an admin assigns it.

Repeated webhooks for the same Ergo meeting update or skip the canonical record instead of creating duplicate transcripts or duplicate recap videos.

## Troubleshooting

<AccordionGroup>
  <Accordion title="Webhooks reach Yuzu but get rejected">
    This usually means the auth secret in Yuzu doesn't match the one in Ergo. Regenerate the secret in Ergo, paste it into Yuzu (**Settings → Integrations → Ergo**), and trigger a test meeting.
  </Accordion>

  <Accordion title="Webhooks aren't arriving at all">
    Confirm the Yuzu webhook URL in your Ergo dashboard matches the one shown in Yuzu's Ergo row exactly — including the `ntk_…` token. Regenerating the token in Yuzu invalidates the old URL.
  </Accordion>

  <Accordion title="No-show meetings show up in my transcripts list">
    They shouldn't. Yuzu drops events flagged with `isNoShow: true` from Ergo. If you see a no-show coming through, check the activity log and report the meeting ID to [support@yuzulabs.io](mailto:support@yuzulabs.io).
  </Accordion>
</AccordionGroup>
