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

# Pushwoosh Webhook Setup Guide

> Configure Pushwoosh to deliver events to StackOne.

## Prerequisites

The connector should already be set up, with a Connector Profile and a Linked Account. See [Getting Started](https://docs.stackone.com/connectors/pushwoosh.md#getting-started) on the Pushwoosh connector page.

## Stream Pushwoosh events to StackOne

This connector uses manual webhooks. Pushwoosh's **Event streaming integration** sends message statistics and post events to the StackOne **Native Webhook URL** over HTTP.

**1. Copy the Native Webhook URL**

The **Native Webhook URL** is generated once the Pushwoosh account has been linked. Open the linked account's connection form in StackOne Hub.

<ul>
  <li>Scroll to **Native Webhook URL**.</li>
  <li>Click the copy button next to the value.</li>
  <li>The URL carries a token that identifies the linked account. Treat it like a password and share it only with Pushwoosh.</li>
</ul>

![The Pushwoosh connection form in StackOne Hub with the copy button next to the Native Webhook URL highlighted](https://mintcdn.com/stackone-60/5wq_H8ROC1qYydBE/connectors/pushwoosh/images/events-native-webhook-url.png?fit=max\&auto=format\&n=5wq_H8ROC1qYydBE\&q=85\&s=13359846a6c33a65ef180245f3412e7d)

**2. Open the Event streaming integration**

Sign in to your [Pushwoosh Control Panel](https://app.pushwoosh.com) and open the project you want events from. Go to the project's **3rd-party integrations** page (**Settings** > **3rd party integrations**, or `https://app.pushwoosh.com/applications/{application code}/integrations`).

<ul>
  <li>On the **Event streaming integration** card, click **Configure**.</li>
</ul>

![The 3rd-party integrations page with the Configure link on the Event streaming integration card highlighted](https://mintcdn.com/stackone-60/5wq_H8ROC1qYydBE/connectors/pushwoosh/images/events-open-integration.png?fit=max\&auto=format\&n=5wq_H8ROC1qYydBE\&q=85\&s=a93b216c72964963d14cf0d5baf313fb)

**3. Enter the endpoint URL**

Paste the StackOne **Native Webhook URL** into **Endpoint URL**.

<ul>
  <li>Leave **Authorization** empty. The Native Webhook URL already identifies the linked account.</li>
</ul>

![The Event streaming integration form with the Endpoint URL field highlighted](https://mintcdn.com/stackone-60/5wq_H8ROC1qYydBE/connectors/pushwoosh/images/events-endpoint-url.png?fit=max\&auto=format\&n=5wq_H8ROC1qYydBE\&q=85\&s=91ebaddbad30569cc3affbc43a1bc2b1)

**4. Select the events**

Open **Events** and select every event you want StackOne to receive.

<ul>
  <li>Available events: **Email Delivered**, **Email Opened**, **Email Bounced**, **Email Sent**, **Email Unsubscribed**, **SMS Sent**, **SMS Delivered**, **SMS Not Delivered**, **Push Sent**, **Push Opened**, **Push Delivered**</li>
</ul>

![The Events dropdown open with the list of message events highlighted](https://mintcdn.com/stackone-60/5wq_H8ROC1qYydBE/connectors/pushwoosh/images/events-select-events.png?fit=max\&auto=format\&n=5wq_H8ROC1qYydBE\&q=85\&s=a477212baba2b355dafb6a55d0808d65)

**5. Set the transport type**

Open **Transport Type** and select **HTTP**.

<ul>
  <li>StackOne receives HTTP deliveries only. Do not select **gRPC**.</li>
</ul>

![The Transport Type dropdown open with the HTTP option highlighted](https://mintcdn.com/stackone-60/5wq_H8ROC1qYydBE/connectors/pushwoosh/images/events-transport-type.png?fit=max\&auto=format\&n=5wq_H8ROC1qYydBE\&q=85\&s=68584fc8919e80ecf3067b1dd63832a4)

**6. Add post events**

Post events are events recorded in Pushwoosh through the SDK or the `postEvent` API, such as `PW_DeviceRegistered`. Skip this step if you only need message events.

<ul>
  <li>Turn on **Allow post events**.</li>
  <li>Open **Post events** and select the post events you want StackOne to receive.</li>
  <li>A post event appears in **Post events** only after it has been recorded at least once for the project. Come back and add the in-app post events once in-app messages have been shown and clicked.</li>
</ul>

![The Allow post events toggle switched on and the Post events dropdown open, both highlighted](https://mintcdn.com/stackone-60/5wq_H8ROC1qYydBE/connectors/pushwoosh/images/events-post-events.png?fit=max\&auto=format\&n=5wq_H8ROC1qYydBE\&q=85\&s=a26485c905204e2055b9266ed57b3e82)

**7. Select the platforms**

Expand **Platforms** and click **Select all**, or select only the platforms you want events from.

![The Platforms section expanded with the Select all link highlighted](https://mintcdn.com/stackone-60/5wq_H8ROC1qYydBE/connectors/pushwoosh/images/events-platforms.png?fit=max\&auto=format\&n=5wq_H8ROC1qYydBE\&q=85\&s=8a6e4e502679bddadc31dd01dd33ea9d)

**8. Apply the integration**

Click **Apply**. The integration moves to **CONNECTED SERVICES** with the status **CONNECTED**.

<ul>
  <li>Changes take effect within 15 minutes.</li>
  <li>If StackOne does not accept deliveries for 24 hours, Pushwoosh pauses the integration and emails the account owner. Click **Apply** again on the integration to resume it.</li>
</ul>

![The Event streaming integration form with the Apply button highlighted](https://mintcdn.com/stackone-60/5wq_H8ROC1qYydBE/connectors/pushwoosh/images/events-apply.png?fit=max\&auto=format\&n=5wq_H8ROC1qYydBE\&q=85\&s=b716df753fca65c098e4e2531556f06c)

## Available webhook events

The following Pushwoosh events can be enabled. Only events turned on in StackOne are delivered to your webhooks, and Pushwoosh sends only the events selected in the Event streaming integration.

**1. Review the push events**

Events related to push notifications.

<ul>
  <li>**Push Sent** (`Push Sent`) — Fired when Pushwoosh sends a push notification to a device</li>
  <li>**Push Delivered** (`Push Delivered`) — Fired when a push notification is delivered to a device</li>
  <li>**Push Opened** (`Push Opened`) — Fired when a user opens a push notification</li>
</ul>

**2. Review the email events**

Events related to email messages.

<ul>
  <li>**Email Sent** (`Email Sent`) — Fired when Pushwoosh sends an email</li>
  <li>**Email Delivered** (`Email Delivered`) — Fired when an email is delivered to the recipient's mail server</li>
  <li>**Email Opened** (`Email Opened`) — Fired when a recipient opens an email</li>
  <li>**Email Bounced** (`Email Bounced`) — Fired when an email bounces with a permanent error</li>
  <li>**Email Unsubscribed** (`Email Unsubscribed`) — Fired when a recipient unsubscribes through an email</li>
</ul>

**3. Review the SMS events**

Events related to SMS messages.

<ul>
  <li>**SMS Sent** (`SMS Sent`) — Fired when Pushwoosh sends an SMS</li>
  <li>**SMS Delivered** (`SMS Delivered`) — Fired when an SMS is delivered to the recipient</li>
  <li>**SMS Not Delivered** (`SMS Not Delivered`) — Fired when an SMS fails to deliver</li>
</ul>

**4. Review the post events**

Events recorded through the Pushwoosh SDK or the `postEvent` API. Each must be selected under **Post events** in Pushwoosh.

<ul>
  <li>**In-App Shown** (`PW_InAppShow`) — Fired when an in-app message is shown to a user</li>
  <li>**In-App Clicked** (`PW_InAppClicked`) — Fired when a user clicks an in-app message</li>
  <li>**Device Registered** (`PW_DeviceRegistered`) — Fired when a device registers for push notifications</li>
  <li>**Device Unregistered** (`PW_DeviceUnregistered`) — Fired when a device unregisters from push notifications</li>
  <li>**Custom Event** (any other post event, for example `PW_ApplicationOpen`) — Fired for any other selected post event, such as a custom event recorded with the `postEvent` API</li>
</ul>

## Delivery format

Details of how Pushwoosh delivers events to StackOne.

**1. Expect batched payloads**

Each request body is a JSON object with an `events` array. Pushwoosh sends a batch once 100 events are queued or one hour after the previous batch, so a single event can take up to an hour to arrive. StackOne routes each event in the batch to its own handler by its `event_name`.

<ul>
  <li>StackOne processes at most 50 events from a single request and acknowledges the rest without processing them. Pushwoosh batches can hold 100 events, so high-volume projects can lose events.</li>
  <li>Pushwoosh retries a failed delivery after 1, 3 and 8 seconds and then drops the batch.</li>
  <li>Each event carries a unique `uuid`, which StackOne uses as the event ID.</li>
</ul>

## 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.


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