Ortto (formerly Autopilot)

Send your event data from RudderStack to Ortto.

Ortto (formerly Autopilot) is a popular marketing automation platform that allows you to track and capture new leads, create detailed customer journeys, and boost customer retention.

Find the open source transformer code for this destination in the GitHub repository.

Setup

  1. In your RudderStack dashboard, go to Directory > Destinations > Cloud Destinations and search for Ortto.
  2. Connect your source and click Continue.

Connection settings

Configure the following settings to set up Ortto as a destination in RudderStack:

  • Name: Assign a name to uniquely identify the destination.
  • Private API Key: Enter your private API key from the Ortto data source. For more information on generating this key, see Ortto’s documentation.
  • Instance Region: Specify your Ortto account’s instance region from Australia, Europe, or Other.

Connection mode

Specify how you want to route events from your source to Ortto.

RudderStack supports sending events to Ortto via the following connection modes:

Connection ModeWebMobileServer
Device mode---
Cloud modeSupportedSupportedSupported

Configuration settings

After completing the initial setup, configure the following settings to correctly receive your data in Ortto:

  • OneTrust cookie consent settings: This setting lets you associate the OneTrust cookie consent groups to Ortto.

Event and property mapping

Click the Set up mapping button to map your RudderStack events and properties to specific Ortto custom events/properties. You can also use the JSON mapper to set these mappings.

RudderStack provides the following options:

  • Event and property mappings: Map a RudderStack event or property to an Ortto event/property. In the property mappings, you can also specify the Ortto Property Type.
Ortto event mapping
  • Custom user traits mappings: Use this setting to map the user traits in your identify events to your Ortto Person attributes.
Ortto traits mapping

Identify

You can use the identify call to create or update an user in Ortto. RudderStack sends this data to Ortto by leveraging their merge endpoint.

A sample identify event is shown:

rudderanalytics.identify("1hKOmRA4GRlm", {
  "firstName": "Alex",
  "lastName": "Keener",
  "email": "alex@example.com",
  "phone": "+1-202-555-0146",
  "emailConsent": true,
  "smsConsent": false,
  "gdpr": false,
  "address": {
    "city": "New Orleans",
    "country": "USA",
    "zipcode": 900001
  }
});

Note that:

  • userId or anonymousId are required fields in your identify calls for RudderStack to send data to Ortto successfully.
  • RudderStack uses userId/anonymousId to look up the user and update their profile in Ortto. If these fields are absent, it uses email instead.
  • Use the emailConsent, smsConsent, and gdpr fields to set consent for email subscription, SMS subscription, and GDPR, respectively.

Track

You can use the track to record user activities in Ortto. RudderStack sends this data to Ortto by leveraging their activities API. The event mapping is shown below:

RudderStack eventOrtto event
event
Required
activities[i].activity_id

A sample track payload is as shown in the snippet below:

rudderanalytics.track("Product Clicked", {
  description: "Adidas Sneakers",
  brand: "Adidas",
  colors: "red",
  productName: "Shoes"
}, {
  context: {
    traits: {
      emailConsent: false,
      smsConsent: true,
      gdpr: true
    }
  }
});

As seen in the above snippet, you can use the emailConsent, smsConsent, and gdpr fields within the context.traits object to set consent for email subscription, SMS subscription, and GDPR, respectively.

warning
Make sure the events you want to send to Ortto are specified and mapped to the Ortto events in the Event and property mappings dashboard setting. Otherwise, RudderStack will drop them.

Supported mappings

RudderStack maps the following identify/track event properties to the corresponding Ortto properties:

RudderStack propertyOrtto property
userId
anonymousId
Required
str::ei
context.traits.firstNamepeople[i].fields.str::first
context.traits.lastNamepeople[i].fields.str::last
context.traits.emailpeople[i].fields.str::email
context.traits.address.citypeople[i].fields.geo::city.name
context.traits.address.countrypeople[i].fields.geo::country.name
context.traits.address.regionpeople[i].fields.geo::region.name
context.traits.address.zipcodepeople[i].fields.str::postal
context.traits.birthdaypeople[i].fields.dtz::b
context.traits.language
context.locale
str::language
context.traits.phonephn::phone.n
userId
anonymousId
str::ei
info
RudderStack supports sending up to 100 fields in a single request.


Questions? Contact us by email or on Slack