Segment integration
Segment is a customer data platform that simplifies collecting user data and helps you leverage it effectively. If you store your customer data in Segment, you can set up integration with Pushwoosh in just a few clicks.
Once the integration is set, Segment will send the following data to Pushwoosh:
- User attributes: name, device, preferences, location, behavior, etc. Pushwoosh will save this data as Tags and their values for each user.
- Events: each Segment Event will be transferred to Pushwoosh and saved as a Pushwoosh Event with the same name. Pushwoosh will also get information about which events each user has triggered.
Using Segment data, you can follow up on your audience with seamless communications in Pushwoosh. Below are two examples of leveraging the power of two platforms:
1. Create targeted campaigns based on user behavior data. Use Events data from Segment to build precise user segments in Pushwoosh based on specific user behavior.
For example, Segment sends data about the SubscribedToOffers Event to Pushwoosh. You can build a user segment in Pushwoosh consisting of users who have subscribed to special offers:

Then, you can create engaging customer journeys with promo messages and discounts for users who subscribed to your offers:

2. Personalize messages based on user attributes from Segment. You can leverage user attributes obtained from Segment to modify the content of your push notifications, in-app messages, and emails. This will allow you to set up relevant and high-converting communications.
For example, Segment sends the searched_product attribute values to Pushwoosh. You can create a push preset offering a discount on the products from a category a user has previously searched for:

Each user will receive a push offering a discount on the exact product category they browsed previously. For example, those who searched for sports shoes will see this message:

Integration overview
Section titled âIntegration overviewâIntegration type
Section titled âIntegration typeâ- Destination: Data is sent from Segment to Pushwoosh.
- Source: Data is sent from Pushwoosh to Segment.
Prerequisites
Section titled âPrerequisitesâPaid accounts in both Pushwoosh and Segment
Synchronized entities
Section titled âSynchronized entitiesâSource
- Push Statistics
Destination
- Devices
- Tags
Use Cases
Section titled âUse CasesâTracking Notifications
Send push notifications and track their status, including whether they were successfully sent and delivered.
Event Analysis
Analyze user-triggered events, such as push notifications or email deliveries, and ensure these events are accurately recorded in Segment.
User Management
Register and manage user information, including tagging users with relevant attributes or deleting users when needed.
Setting up integration
Section titled âSetting up integrationâConfiguring a Destination
Section titled âConfiguring a Destination â1. In the Segment interface, navigate to Connections â Destinations and click Add Destination.
2. Search for Pushwoosh and select it.
3. Choose the Sources you want to connect the Destination to.
4. Go to Destination settings:

5. Enter the Pushwoosh API key and application code. Ensure the Enable Destination switch is on. After that, click Save Changes.
Where can I find the API key and application code?
You can find the API key in the Settings â API Access section:

The application code can be found at the top left corner of the Pushwoosh interface, right below the project name:

6. Go to the Mappings tab and ensure the Create or Update User Profile and Track Events options are enabled:

It is important to verify the mapping of event fields from your source to Pushwoosh as the destination to ensure your events are processed correctly.
If an event does not contain the device_platform field or this field is incorrect, your event will be disregarded. Additionally, if an event does not contain either userId or deviceId, it will also be disregarded.
To ensure that your mapping is configured correctly, go to Pushwoosh as Destination > Settings.

Then, select the Mapping tab and click Edit Mapping for the Track Events method.

Next, ensure that the mapping of your events to the events sent to Pushwoosh is correct, and that the fields Device Platform and External User ID (or Device ID) are properly matched.

Your event may differ from the example provided above. However, the key is to match the data transfer for the platform and device for the event sent to Pushwoosh.
If the integration is configured correctly, Pushwoosh will start receiving Events and user attributes from Segment. Based on this data, you can create highly targeted customer journeys and personalize your push notifications, in-app messages, and emails.
Configuring a Source
Section titled âConfiguring a Source â- From your workspaceâs Sources catalog page, click Add Source.
- Search for âPushwooshâ in the Sources Catalog, select Pushwoosh, and click Add Source.
- On the next screen, give the Source a name and configure any other settings.
- Click Add Source to save your settings.
- Copy the Write key from the Segment UI.
- Log in to your Pushwoosh account, and select the Application you want to connect.
- Navigate to Settings > 3rd party integration > Segment, click the Configure button, and enter your Write key from your Segment workspace.
- List the events you want to export using a
,
delimiter in the Events field, or leave it blank if you want to export all events, then click Apply.
Pushwoosh uses the Segment stream Source component to send Segment event data. It uses a server-side track method to send data to Segment. These events are then available in any destination that accepts server-side events, and are available in a schema in your data warehouse.
By default, Pushwoosh passes the Pushwoosh User ID as the Segment userId property. If there is no associated User ID, Pushwoosh will pass the HWID as the Segment anonymousId.
The table below lists events that Pushwoosh sends to Segment. These events appear as tables in your warehouse, and as regular events in other Destinations.
Event Name | Description |
---|---|
Email Sent | Email was sent successfully |
Push Sent | Push notification successfully sent |
SMS Sent | SMS sent to recipient |
Email Delivered | Email successfully delivered |
Push Delivered | Push notification successfully delivered |
SMS Delivered | SMS successfully delivered |
Email Bounced | Email returned to sender due to permanent error |
Event Properties
Section titled âEvent PropertiesâThe table below list the properties included in the events listed above.
Property Name | Description |
---|---|
message_type | Contains the type of message (Push, Email, In-App or SMS) |
campaign_code | Unique identifier of the message campaign |
device_type | Type of the device |
Adding Destinations
Section titled âAdding DestinationsâNow that your Source is set up, you can connect it with Destinations.
Log into your downstream tools and check to see that your events appear as expected and that they contain all of the properties you expect. If your events and properties donât appear, check the Event Delivery, and refer to the Destination docs for each tool for troubleshooting.
If there are any issues with how the events are arriving to Segment, contact our support team.
How the integration works
Section titled âHow the integration worksâ- Push notification initiation: A client starts the process by initiating a push notification through the Pushwoosh interface.
- Event production: The Pushwoosh backend processes the push notification request and generates an event. This event is then sent to a Kafka topic named
channels-tracking-log
managed by Pushwoosh. - Event consumption: The Segment Integration service continuously listens to the
channels-tracking-log
Kafka topic and consumes the events as they arrive. - Event processing: The consumed events are processed by the Segment Integration service, which transforms them into Segment Track Events.
- Event transmission: The processed Segment Track Events are then sent to the Segment backend for further handling and analysis.
How do you know that the integration is working?
Section titled âHow do you know that the integration is working?âDestination
Section titled âDestinationâtrack-user
Section titled âtrack-userâGo to your Pushwoosh account > Your Connected Application > Audience > User Explorer. Find your user/device and check tags which Segment sent.
post-event
Section titled âpost-eventâGo to your Pushwoosh account > Your Connected Application > Audience > Events. Select the event, click the three-dot menu, and choose Event Statistics. Make sure that the event is counted.
delete-user
Section titled âdelete-userâGo to your PW account > Your Connected Application > Audience > User Explorer. Make sure that user/device does not exist.
Use Source debugger to detect events which were sent from Pushwoosh to Segment.
Troubleshooting
Section titled âTroubleshootingâCheck integration status
Section titled âCheck integration statusâTo troubleshoot issues with the Pushwoosh integration, start by verifying the following:
Destination
- Track-User: Verify user/device information and tags in Pushwoosh under
Audience > User Explorer
. - Post-Event: Ensure the event is counted in Pushwoosh by checking event statistics.
- Delete-User: Confirm that the user/device no longer exists in Pushwoosh.
Source
Use the source debugger at Segment Debugger to check if events from Pushwoosh are properly sent to Segment.
Event mismatch
Section titled âEvent mismatchâIf events are not appearing correctly in Segment, ensure that Pushwoosh events are correctly mapped to Segment Track Events as per the provided mapping rules.
Authentication issues
Section titled âAuthentication issuesâVerify that the correct authentication tokens or API keys are used in the requests to Pushwoosh and Segment.
Data flow issues
Section titled âData flow issuesâConfirm that the data flow between Pushwoosh and Segment is uninterrupted and that Kafka topics are being monitored correctly.
What types of events are sent to Segment from Pushwoosh?
Section titled âWhat types of events are sent to Segment from Pushwoosh?âReserved events such as Push Sent, Email Sent, SMS Sent, Push Delivered, Email Delivered, SMS Delivered, and Email Bounced are sent to Segment.
How can I verify that events are correctly sent to Segment?
Section titled âHow can I verify that events are correctly sent to Segment?âUse the Segment source debugger to check for events sent from Pushwoosh, and review event statistics in your Pushwoosh account to ensure they are properly counted.
What should I do if I encounter issues with the integration?
Section titled âWhat should I do if I encounter issues with the integration?âCheck the integration status by verifying user/device information, event counts, and user deletions in Pushwoosh. Additionally, ensure that the correct authentication tokens are used and that the data flow is uninterrupted.
How is user and device information handled in the integration?
Section titled âHow is user and device information handled in the integration?âUser and device information, including attributes and tags, are registered or updated in Pushwoosh based on requests from Segment. Note that default tags are not automatically created in Pushwoosh.
Where can I find detailed documentation for the integration?
Section titled âWhere can I find detailed documentation for the integration?âDetailed documentation is available in the Segment and Pushwoosh integration manuals, as well as in their respective API documentation.