# Troubleshoot Events That Do Not Start a Run (https://www.shipfox.io/docs/how-to/run-and-troubleshoot/event-routing)

Description: Find where an event stopped before it could start a run.

Use this guide when an external event should have started a workflow but no run
appeared.

## Before you begin [#before-you-begin]

You need access to workspace events. You also need the expected integration connection slug,
event name, and workflow trigger.

## Check whether Shipfox received the event [#check-whether-shipfox-received-the-event]

Open **Settings → Events**. Filter by source, event name, and time.

If the event is absent, the problem is before trigger matching:

* Confirm that the integration connection is enabled and connected. Reconnect
  it if its authorization expired or was revoked.
* Confirm that the connected account or app can access the resource that
  produced the event.
* Check the provider's delivery history, when available, to confirm that it sent
  the event.
* Repeat the provider's setup checks in the [Integrations
  reference](https://www.shipfox.io/docs/integrations).

After repairing the connection or its permissions, send a new test event.

## If delivery succeeded but no workflow matched [#if-delivery-succeeded-but-no-workflow-matched]

Open the event and compare it with the synced trigger:

1. `source` equals the integration connection slug on the event.
2. `event` equals the delivered event name.
3. The filter reads fields that exist in this payload and returns true.
4. The workflow finished syncing before the event arrived.

A false filter creates no run. A filter error does the same. Fix the trigger and
wait for a successful sync. Then send a new event. Shipfox does not replay the
old event after an edit.

Use the [Integrations reference](https://www.shipfox.io/docs/integrations) for provider event catalogs.
Use [Expressions](https://www.shipfox.io/docs/reference/expressions) for filter syntax and the [Contexts
reference](https://www.shipfox.io/docs/reference/contexts#context-availability) for available data.

## If evaluation or run creation failed [#if-evaluation-or-run-creation-failed]

A **Failed** result means Shipfox received the event. It could not finish the
check or create the matched work.

Read the error on the event. Check the workflow's most recent sync result and saved
trigger. Fix the item named by the error. It may be an expression, integration connection,
or workflow field. Wait for sync, then send one new test event.

Each matching trigger creates its own run. If only some runs appear, check each
missing trigger on its own.

## If the event stays evaluating [#if-the-event-stays-evaluating]

Compare its time with newer events from the same workspace. If newer events
finish while this one stays **Evaluating**, record:

* Event or delivery ID.
* Integration connection slug and event name.
* Received time.
* Expected workflow.
* The last visible routing state.

Send one fresh test event. If it also stays evaluating, stop changing the
workflow. The routing work did not finish. The trigger policy is not the likely
cause.

## Confirm the repair [#confirm-the-repair]

Send a new safe event and confirm one final outcome:

* **Triggered** links to every expected run.
* **No workflows triggered** is correct for a deliberate non-match.
* **Failed** and **Evaluating** no longer appear for the repaired path.