Skip to main content

Prerequisites

The connector should already be set up, with a Connector Profile and a Linked Account. See Getting Started on the Expo connector page.

Register the webhook endpoint with EAS

Expo delivers events to the StackOne Native Webhook URL once you register a webhook on your app. Expo does not provide a web UI for this, so you register it with the EAS CLI (or the connector’s Create Webhook action). Each webhook covers a single app and a single event type, so repeat the registration for every app and event type you want delivered.

1

Retrieve the Native Webhook URL from StackOne

The Native Webhook URL is generated once an account has been linked. You will paste this into the EAS webhook you create.

  • Open the linked account in StackOne.
  • Copy the value from Native Webhook URL.
2

Create the webhook with the EAS CLI

Run the EAS CLI from your project and follow the prompts, or pass the values as flags.

  • Run eas webhook:create.
  • Choose the event type when prompted, or pass --event BUILD or --event SUBMIT.
  • Provide the Native Webhook URL when prompted, or pass it with --url.
  • Provide a signing secret of at least 16 characters when prompted, or pass it with --secret. Keep this secret — it is used to verify delivery signatures.
  • Repeat for each app and for each event type (BUILD and SUBMIT) you want delivered.
3

Register with the Create Webhook action (alternative)

Instead of the CLI, you can register the same webhook through the connector’s Create Webhook action. Call it once per app and event type, passing the app ID, the Native Webhook URL, the event type, and a signing secret.

4

Review existing webhooks

Use the EAS CLI to review or change webhooks you have already created.

  • List webhooks with eas webhook:list.
  • Update a webhook with eas webhook:update --id WEBHOOK_ID.
  • Remove a webhook with eas webhook:delete.

Add your Expo account name to this connection

Inbound events are matched to this account by the account name Expo includes on every delivery. Set it on the connection so events route to the right place.

1

Set the Expo account name

Edit this connection in StackOne and fill the Expo Account Name field with your Expo account or organization name (the same value returned by the List Accounts action).

Available webhook events

The following Expo events can be delivered. Only the event types you register a webhook for are delivered — Expo sends nothing for event types you have not subscribed to.

1

Build and submit events

Events fired by the EAS build and store-submission lifecycle.

  • Build (BUILD) — Fired when an EAS build finishes, errors, or is canceled
  • Submit (SUBMIT) — Fired when an EAS store submission finishes, errors, or is canceled

Delivery format

Details of how Expo signs and retries webhook deliveries.

1

Verify the signature

Expo signs each delivery so you can confirm it came from Expo.

  • Each request carries an expo-signature header — a hex-encoded HMAC-SHA1 digest of the request body, keyed by the signing secret you set when creating the webhook.
2

Review the retry behavior

Failed deliveries are retried automatically.

  • If your endpoint responds with a status code outside the 200–399 range, Expo retries delivery a few more times with exponential back-off.

Verify

Your Connector should now be able to receive and process events. Try triggering an event and you should see an Event appear in the Connector logs.