> ## 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 courier arriving at pickup

> Starts an automation when an Uber courier is about one minute from the pickup.

`uber.onCourierArrivingAtPickup` takes no filters. It starts when the courier is about one minute or 80 meters from the pickup: status `pickup` while `courierImminent` is `true`.

```ts automations/courier-arriving-at-pickup.automation.ts theme={null}
import { automation, sendEmail, t } from "automate.ax"
import { uber } from "automate.ax/uber"

export default automation("Have the order ready", () => {
  const event = uber.onCourierArrivingAtPickup({})
  sendEmail({
    to: "*",
    subject: t`Courier arriving for ${event.delivery.manifest?.reference}`,
    text: t`${event.delivery.courier?.name} arrives in about a minute.`,
  })
})
```

The event includes `id`, `deliveryId`, `customerId`, `status`, `liveMode`, `created`, and the full `delivery` with its courier, waypoints, ETAs, and fee.

Requires an Uber Direct connection with a webhook signing key and a dashboard webhook that sends `event.delivery_status`. See [Connect Uber Direct](https://docs.automate.ax/reference/integrations/uber/index.md#connect-uber-direct).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.