Swrve Destination Documentation
This destination is currently in beta. If you are interested in joining, let us know!
Segment makes it easy to send your data to Swrve (and lots of other destinations). Once you've tracked your data through our open source libraries we'll translate and route your data to Swrve in the format they understand.
Getting Started
Once the Segment library is integrated, toggle Swrve on in your Segment destination catalog. You can integrate Swrve as a mobile destination (iOS or Android). You’ll need to get your app_id
and api_key
from the Swrve dashboard and add these to your mobile app.
Swrve supports the identify
track
and screen
methods.Android
Integrating
In your top-level project
build.gradle
add:repositories { jcenter{ url = 'http://dl.bintray.com/swrve-inc/android' } maven { url = 'https://maven.google.com' } }
Add the Swrve Segment dependency to your app
build.gradle
:compile 'com.swrve:swrve-segment-integration:+'
To do this, import the Swrve integration:
import com.segment.analytics.android.integrations.swrve.SwrveIntegration;
And add the following lines when initializing Segment:
int appId = -1; String apiKey = "api_key"; SwrveConfig swrveConfig = new SwrveConfig(); // To use the EU stack, include this in your config. // swrveConfig.setSelectedStack(SwrveStack.EU); Analytics analytics = new Analytics.Builder(this, "write_key") .use(SwrveIntegration.createFactory(application, appId, apiKey, swrveConfig) .build();
Note: Since Swrve needs to be initialized as early as possible, you need to supply the
app_id
andapi_key
key when you initialize the factory that is registered with the analytics client.
Integrating Push & A/B Testing
Please follow Swrve’s push notification documentation here.
Integrating In-app Messaging & Conversations
No further action is required to integrate in-app messages or Conversations, which are registered for and requested by default by our Swrve Segment destination.
iOS
Integrating
Add this line to your
Podfile
:pod 'Segment-Swrve'
Register the integration. To do this, import the Swrve integration in your
AppDelegate
:#import <SwrveSegment/SEGSwrveIntegrationFactory.h>
And add the following lines:
NSString *const SEGMENT_WRITE_KEY = @"..."; SEGAnalyticsConfiguration *config = [SEGAnalyticsConfiguration configurationWithWriteKey:SEGMENT_WRITE_KEY]; // FIXME Add your own App ID and Api Key here int appId = 0; NSString *apiKey [email protected]"<Enter your own Api key here>"; SwrveConfig *swrveConfig = [[SwrveConfig alloc] init]; // TODO: // To use the EU stack, include this in your config. // swrveConfig.selectedStack = SWRVE_STACK_EU; [config use:[SEGSwrveIntegrationFactory instanceWithAppId:appId apiKey:apiKey swrveConfig:swrveConfig launchOptions:launchOptions]]; [SEGAnalytics setupWithConfiguration:config];
Note: Since Swrve needs to be initialized as early as possible, you need to supply the
app_id
andapi_key
key when you initialize the factory that is registered with the analytics client.
Integrating Push & A/B Testing
Please follow Swrve’s push notification documentation here.
Integrating In-app Messaging & Conversations
No further action is required to integrate in-app messages or Conversations, which are registered for and requested by default by our Swrve Segment destination.
Screen
When you call screen
in your mobile app, we send a event prefixed with screen.
to Swrve.
Identify
When you identify
a user, we’ll pass that userId
as a user property named customer.id
to Swrve.
All other traits will be sent to Swrve as custom user properties. Traits will be converted to strings before sending to Swrve.
Track
When you track
an event, we will send that event directly to Swrve as a custom event. Event properties will be sent to Swrve as event payloads. Properties will be converted to strings before sending.
Supported Sources and Connection Modes
Web | Mobile | Server |
---|---|---|