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

# Recovering from disconnect

> Restore attendee sync for a DISCONNECTED, FAILED, or stuck PENDING event.

Events lose their live sync for two main reasons: the integration's OAuth token was revoked on the provider side, or the initial import never finished. Badge surfaces both as a banner alert at the top of the event page with a one-click recovery action. This page walks each path.

<Note>
  **Before you start**

  * Workspace **Admin** role. Only admins can reconnect integrations or restart imports.
  * For a `DISCONNECTED` event: a working integration of the same provider in **Settings → Integrations**, in `CONNECTED` state. If the integration is also disconnected, reconnect the provider first via [Connect Eventbrite](/platform/integrations/eventbrite) or [Connect Luma](/platform/integrations/luma).
</Note>

## Recognize the state

Open the event page in the Badge dashboard. The alert banner at the top tells you what happened:

| Alert title                  | Sync status               | Trigger                                                 | Recovery action |
| ---------------------------- | ------------------------- | ------------------------------------------------------- | --------------- |
| **Integration disconnected** | `DISCONNECTED`            | OAuth credential severed on provider side               | **Reconnect**   |
| **Sync failed**              | `FAILED`                  | Last sync attempt errored (transient or provider issue) | **Retry**       |
| **Import failed**            | `PENDING` (no active job) | Initial import did not complete                         | **Retry**       |

The button label changes (`Reconnect` vs `Retry`), but every path opens the same recovery dialog. Background details on each status are in [Sync status](/platform/concepts/sync-status).

## Reconnect a DISCONNECTED event

<Steps>
  <Step title="Click Reconnect in the event alert">
    On the event page, click **Reconnect** in the **Integration disconnected** banner. The Reconnect dialog opens.
  </Step>

  <Step title="Confirm the integration to use">
    The dialog looks up `CONNECTED` integrations of the same provider as this event:

    * **One found.** The dialog shows the integration as a card with the account email and a green **Connected** badge. Click **Reconnect with this account** to re-link the event.
    * **None found.** The dialog shows an empty state with a **Go to integrations** button. Open **Settings → Integrations**, reconnect the provider, return to the event, and click **Reconnect** again.
  </Step>

  <Step title="Wait for the re-import">
    Badge confirms with a toast (`"Reconnecting event"`) and refreshes the page. The event flips to `PENDING` while a fresh re-import runs in the background; when complete, status returns to `ACTIVE`.
  </Step>
</Steps>

## Retry a FAILED sync

A `FAILED` event is a temporary problem. The integration is still healthy, but the last sync attempt errored.

<Steps>
  <Step title="Click Retry in the event alert">
    On the event page, click **Retry** in the **Sync failed** banner. The recovery dialog opens with the same connected-integration card shown for `DISCONNECTED`.
  </Step>

  <Step title="Confirm the retry">
    Click **Reconnect with this account**. Badge re-runs the sync. The toast confirms `"Reconnecting event"` and the page refreshes with the latest data.
  </Step>

  <Step title="Escalate if it keeps failing">
    If `FAILED` returns immediately after a retry, the underlying issue is likely on the provider's side or with the integration credential. Contact [support](mailto:support@trytalkvalue.com) with the event name and the timestamp of the failure.
  </Step>
</Steps>

## Retry a stuck PENDING import

While an import runs, `PENDING` is the expected state and the event page shows live progress. If `PENDING` persists with no active job, the initial import never completed.

<Steps>
  <Step title="Click Retry in the Import failed alert">
    On the event page, the banner reads **Import failed** with a **Retry** button. Click it. The recovery dialog opens with a slightly different title (**Set Up Sync**) but the same connected-integration card.
  </Step>

  <Step title="Restart the import">
    Click **Reconnect with this account**. Badge starts a fresh import job and the toast confirms `"Retrying import"`. The event page returns to the **Import in progress** view until the new job completes.
  </Step>
</Steps>

## Troubleshooting

### No integration found in the Reconnect dialog

The dialog filters to integrations in `CONNECTED` state only. A `DISCONNECTED` integration in **Settings → Integrations** won't appear. Reconnect the provider first, then try again.

### Reconnecting succeeds but sync stays DISCONNECTED

The integration credential is healthy on the TalkValue side but the provider rejected it again, usually because permission was revoked on the provider's dashboard or the OAuth scope was reduced. Reconnect the provider from scratch, then run **Reconnect** on the event one more time.

## Related

* [Sync status](/platform/concepts/sync-status). The full status reference behind every alert.
* [Add an event](/badge/events/create). Start fresh if you'd rather re-add the event than reconnect.
* [Connect Eventbrite](/platform/integrations/eventbrite). Fix the upstream Eventbrite integration.
* [Connect Luma](/platform/integrations/luma). Fix the upstream Luma integration.
* [Import attendees](/badge/events/import-attendees). What the resync actually does once it runs.
