Bronto integration summary

Stitch’s Bronto integration replicates data using the Bronto SOAP API . Refer to the Schema section for a list of objects available for replication.

Bronto feature snapshot

A high-level look at Stitch's Bronto integration, including release status, useful links, and the features supported in Stitch.

STITCH
Release Status

Released

Supported By

Singer Community

Stitch Plan

Free

Singer GitHub Repository

Bronto Repository

DATA SELECTION
Table Selection

Unsupported

Column Selection

Unsupported

REPLICATION SETTINGS
Anchor Scheduling

Supported

Advanced Scheduling

Unsupported

Table-level Reset

Unsupported

Configurable Replication Methods

Unsupported

TRANSPARENCY
Extraction Logs

Supported

Loading Reports

Supported

Connecting Bronto

Bronto setup requirements

To set up Bronto in Stitch, you need:

  • Admin permissions in Bronto. This is required to create an API token.

Step 1: Create a Bronto API token

  1. Sign into your Bronto account.
  2. Navigate to Home > Settings.
  3. Click Data Exchange in the left side menu.
  4. Under SOAP API Tokens, click the Add Access Token button.
  5. In the API Token Name field, enter Stitch. This will allow you to easily identify what application is using the token.
  6. Click the checkbox next to Read to allow read access for this token.
  7. Ensure that the checkbox next to Token is active? is checked, and click Save.
  8. The access token will appear on the page under the name Stitch once the modal closes. Copy this to be used in setting up the connection from within the Stitch application.

Step 2: Add Bronto as a Stitch data source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the Bronto icon.

  4. Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch Bronto” would create a schema called stitch_bronto in the destination. Note: Schema names cannot be changed after you save the integration.

  5. In the Bronto API Token field, paste the access token you created in Step 1.

Step 3: Define the historical sync

The Sync Historical Data setting will define the starting date for your Bronto integration. This means that:

  • For tables using Incremental Replication, data equal to or newer than this date will be replicated to your data warehouse.
  • For tables using Full Table Replication, all data - including records that are older, equal to, or newer than this date - will be replicated to your data warehouse.

Change this setting if you want to replicate data beyond Bronto’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.

Step 4: Create a replication schedule

In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.

Bronto integrations support the following replication scheduling methods:

To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.

Initial and historical replication jobs

After you finish setting up Bronto, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.

For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.

Free historical data loads

The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.


Bronto table schemas

Replication Method :

Key-based Incremental

Replication Key :

modified

Primary Key :

id

API endpoint :

readContacts

The contacts table contains information about your contacts. A contact describes an individual email address and/or SMS number in Bronto, along with associated statistics and field data that you have provided.

id
STRING

The unique ID for the contact. The id can be used to reference a specific contact when using the contact functions.

Reference:

modified
DATE-TIME

The last time information about the contact was modified. This timestamp is immutable and cannot be changed.

msgPref
STRING

The message preference for the contact. A contact can have a message preference of text or html.

primaryEmailClient
STRING

The primary email client (Microsoft Outlook, Mozilla Thunderbird, Apple Mail, etc.) used by a contact.

source
STRING

The source or where the contact came from. The source can manual, import, api, webform, or sforcereport (salesforce report).

numConversions
NUMBER

The total number of conversions made by the contact.

numClicks
NUMBER

The total number of times deliveries were clicked by the contact. If a link is clicked multiple times, each click is included in this metric.

customSource
STRING

A source you define that states where the contact came from.

totalOrders
NUMBER

The total number of orders recorded for a contact.

geoIPZip
STRING

The zip code recorded for the contact based on their last known non-mobile IP addresses.

lastClickDate
STRING

The last date a click was recorded for the contact.

totalRevenue
NUMBER

The total amount of revenue recorded for a contact.

SMSKeywordIDs
ARRAY

The IDs of the SMS keywords the contact is subscribed to.

SMSKeywordID
STRING

The SMS keyword ID.

Reference:

contact (table), SMSKeywordIDs (attribute)

lastOpenDate
STRING

The last date an open was recorded for the contact.

created
STRING

The date the contact was created. This timestamp is immutable and cannot be changed

numBounces
NUMBER

The total number of times deliveries sent to the contact resulted in a bounce.

lastOrderTotal
NUMBER

The total amount of revenue recorded for the most recent order.

deleted
BOOLEAN

Set to true if the contact has been deleted.

email
STRING

The email address assigned to the contact. The email address can be used to reference a specific contact when using the contact functions.

operatingSystem
STRING

The operating system (MacOSX, WinXP, Win7, Android, iOS etc.) used by a contact.

conversionAmount
NUMBER

The sum/total amount of conversions made by the contact.

lastDeliveryDate
STRING

The last date a delivery was made to the contact.

averageOrderValue
NUMBER

The average amount of revenue per order recorded for a contact.

mobileBrowser
STRING

The mobile browser (Safari mobile, Firefox mobile, Chrome mobile) used by a contact.

primaryBrowser
STRING

The primary browser (Firefox, Chrome, Safari, etc.) used by a contact.

firstOrderDate
STRING

The date of the first order recorded for a contact.

status
STRING

The status of the contact. Valid statuses are: active, onboarding, transactional, bounce, unconfirmed, unsub

geoIPCity
STRING

The city recorded for the contact based on their last known non-mobile IP addresses.

numSends
NUMBER

The total number of deliveries sent to the contact.

lastOrderDate
STRING

The date of the last order recorded for a contact.

numOpens
NUMBER

The total number of times deliveries were opened by the contact. This metric includes multiple opens of the same delivery.

geoIPCountryCode
STRING

The country code recorded for the contact based on their last known non-mobile IP addresses.

mobileEmailClient
STRING

The mobile email client (Gmail mobile, Yahoo Mail for mobile, etc.) used by a contact.

geoIPStateRegion
STRING

The state/region recorded for the contact based on their last known non-mobile IP addresses.

mobileNumber
STRING

The mobile number stored for the contact. A valid country code must be included when adding or updating a mobile number for a contact.

listIds
ARRAY

The IDs of the lists that the contact belongs to.

value
STRING

The ID of the list that the contact belongs to.

Reference:

contact (table), listIds (attribute)

geoIPCountry
STRING

The country recorded for the contact based on their last known non-mobile IP addresses.


Replication Method :

Key-based Incremental

Replication Key :

createdDate

Primary Key :

id

API endpoint :

readRecentInboundActivities

The inbound_activity object contains activity info regarding contacts, messages, and deliveries.

id
STRING

The activity ID.

createdDate
DATE-TIME

The date the activity was recorded.

skipReason
STRING

The detailed reason why the contact was skipped when attempting to send to them. The skipReason property is returned if the activityType is contactskip.

deliveryId
STRING

The ID assigned to the delivery associated with the activity.

Reference:

deliveryType
STRING

The type of delivery associated with the activity. Possible values are:

  • bulk
  • test
  • split
  • trigger
  • ftaf (forward to a friend)

workflowName
STRING

The name of the workflow associated with the activity. The workflowName property is returned if a workflowId is returned.

listName
STRING

The name of the list associated with the activity. The listName property is returned if a istId is returned.

messageName
STRING

The name of the message associated with the activity. The messageName property is returned if a messageId is returned.

emailAddress
STRING

The email address of the contact associated with the activity. The emailAddress property is returned if a contactId is returned, and an email address is stored for the associated contact.

orderId
STRING

The ID assigned to the order. The orderId property is returned if the activityType is conversion.

Reference:

webformAction
STRING

The activity performed on the webform. Valid values are: submitted, view. The webformAction property is returned if the activityType is webform.

webformName
STRING

The name of the webform used. The webformName property is returned if the activityType is webform.

listId
STRING

The ID assigned to the list that the delivery associated with the activity was sent to.

Reference:

socialNetwork
STRING

The social network the activity was performed on. The bounceType property is returned if the activityType is social.

The valid networks are: facebook, twitter, linkedin, digg, myspace.

unsubscribeMethod
STRING

The method used by the contact to unsubscribe. The unsubscribeMethod property is returned if the activityType is unsubscribe.

Possible values are:

  • subscriberadmin
  • bulk
  • listcleaning
  • fbl (Feedback Loop)
  • complaint
  • account
  • api
  • unclassified

linkName
STRING

The name of the link that was clicked. The linkName property is returned if the activityType is click.

segmentId
STRING

The ID assigned to the segment that the delivery associated with the activity was sent to.

Reference:

deliveryStart
STRING

The date/time the delivery associated with the activity was scheduled. The deliveryStart property is returned if a deliveryId is returned.

contactId
STRING

The ID assigned to the contact associated with the activity.

Reference:

listLabel
STRING

The label assigned to the list associated with the activity. The label is the external (customer facing) name given to a list. The listLabel property is returned if a listId is returned.

socialActivity
STRING

The activity performed. The valid activities are: view, share. The socialActivity property is returned if the activityType is social.

automatorName
STRING

The name of the automator associated with the activity.

webformId
STRING

The unique ID for a webform.

bounceReason
STRING

The detailed reason why the bounce occurred. The bounceReason property is returned if the activityType is bounce.

messageId
STRING

The ID assigned to the message associated with the activity.

Reference:

workflowId
STRING

The ID assigned to the workflow that sent the delivery associated with the activity.

Reference:

smsKeywordName
STRING

The name of the SMS keyword associated with the activity. The smsKeywordName property is returned if a keywordId is returned.

keywordId
STRING

The ID assigned to the SMS keyword that the SMS delivery associated with the activity was sent to.

Reference:

activityType
STRING

The type of activity the object represents. For outbound activities, this can be send or sms_send.

contactStatus
STRING

The status of the contact associated with the activity. Possible values are:

  • active
  • onboarding
  • transactional
  • bounce
  • unconfirmed
  • unsub

bounceType
STRING

The type of bounce recorded. The bounceType property is returned if the activityType is bounce.

The following types can be returned:

Hard bounces:

  • bad_email
  • destination_unreachable
  • rejected_message_content

Soft bounces:

  • temporary_contact_issue
  • destination_temporarily_unavailable
  • deferred_message_content
  • unclassified

ftafEmails
STRING

The emails that were used in the Forward To A Friend Delivery. The ftafEmails property is returned if the activityType is friendforward.

mobileNumber
STRING

The mobile number of the contact associated with the activity. The mobileNumber property is returned if a contactId is returned, and a mobile number is stored for the associated contact.

linkUrl
STRING

The URL of the link that was clicked. The linkUrl property is returned if the activityType is click.

segmentName
STRING

The name of the segment associated with the activity. The segmentName property is returned if a segmentId is returned.


Replication Method :

Full Table

Primary Key :

id

API endpoint :

readLists

The lists table contains info about the contact lists in your Bronto account.

id
STRING

The unique id assigned to the list.

Reference:

label
STRING

The external (customer facing) name of the list.

status
STRING

The status of the list. Possible values are:

  • active
  • deleted
  • tmp

activeCount
INTEGER

The number of active contacts of currently on the list.

name
STRING

The internal name of the list.


outbound_activity

Replication Method :

Key-based Incremental

Replication Key :

createdDate

Primary Key :

id

Official docs :

Official Docs

The outbound_activity table contains activity info regarding contacts, messages, and deliveries.

id
STRING

The outbound activity ID.

createdDate
DATE-TIME

The date the activity was recorded.

skipReason
STRING

The detailed reason why the contact was skipped when attempting to send to them. The skipReason property is returned if the activityType is contactskip.

deliveryId
STRING

The ID assigned to the delivery associated with the activity.

Reference:

deliveryType
STRING

The type of delivery associated with the activity. Possible values are:

  • bulk
  • test
  • split
  • trigger
  • ftaf (forward to a friend)

workflowName
STRING

The name of the workflow associated with the activity. The workflowName property is returned if a workflowId is returned.

listName
STRING

The name of the list associated with the activity. The listName property is returned if a istId is returned.

messageName
STRING

The name of the message associated with the activity. The messageName property is returned if a messageId is returned.

emailAddress
STRING

The email address of the contact associated with the activity. The emailAddress property is returned if a contactId is returned, and an email address is stored for the associated contact.

orderId
STRING

The ID assigned to the order. The orderId property is returned if the activityType is conversion.

Reference:

webformAction
STRING

The activity performed on the webform. Valid values are: submitted, view. The webformAction property is returned if the activityType is webform.

webformName
STRING

The name of the webform used. The webformName property is returned if the activityType is webform.

listId
STRING

The ID assigned to the list that the delivery associated with the activity was sent to.

Reference:

socialNetwork
STRING

The social network the activity was performed on. The bounceType property is returned if the activityType is social.

The valid networks are: facebook, twitter, linkedin, digg, myspace.

unsubscribeMethod
STRING

The method used by the contact to unsubscribe. The unsubscribeMethod property is returned if the activityType is unsubscribe.

Possible values are:

  • subscriberadmin
  • bulk
  • listcleaning
  • fbl (Feedback Loop)
  • complaint
  • account
  • api
  • unclassified

linkName
STRING

The name of the link that was clicked. The linkName property is returned if the activityType is click.

segmentId
STRING

The ID assigned to the segment that the delivery associated with the activity was sent to.

Reference:

deliveryStart
STRING

The date/time the delivery associated with the activity was scheduled. The deliveryStart property is returned if a deliveryId is returned.

contactId
STRING

The ID assigned to the contact associated with the activity.

Reference:

listLabel
STRING

The label assigned to the list associated with the activity. The label is the external (customer facing) name given to a list. The listLabel property is returned if a listId is returned.

socialActivity
STRING

The activity performed. The valid activities are: view, share. The socialActivity property is returned if the activityType is social.

automatorName
STRING

The name of the automator associated with the activity.

webformId
STRING

The unique ID for a webform.

bounceReason
STRING

The detailed reason why the bounce occurred. The bounceReason property is returned if the activityType is bounce.

messageId
STRING

The ID assigned to the message associated with the activity.

Reference:

workflowId
STRING

The ID assigned to the workflow that sent the delivery associated with the activity.

Reference:

smsKeywordName
STRING

The name of the SMS keyword associated with the activity. The smsKeywordName property is returned if a keywordId is returned.

keywordId
STRING

The ID assigned to the SMS keyword that the SMS delivery associated with the activity was sent to.

Reference:

activityType
STRING

The type of activity the object represents. For outbound activities, this can be send or sms_send.

contactStatus
STRING

The status of the contact associated with the activity. Possible values are:

  • active
  • onboarding
  • transactional
  • bounce
  • unconfirmed
  • unsub

bounceType
STRING

The type of bounce recorded. The bounceType property is returned if the activityType is bounce.

The following types can be returned:

Hard bounces:

  • bad_email
  • destination_unreachable
  • rejected_message_content

Soft bounces:

  • temporary_contact_issue
  • destination_temporarily_unavailable
  • deferred_message_content
  • unclassified

ftafEmails
STRING

The emails that were used in the Forward To A Friend Delivery. The ftafEmails property is returned if the activityType is friendforward.

mobileNumber
STRING

The mobile number of the contact associated with the activity. The mobileNumber property is returned if a contactId is returned, and a mobile number is stored for the associated contact.

linkUrl
STRING

The URL of the link that was clicked. The linkUrl property is returned if the activityType is click.

segmentName
STRING

The name of the segment associated with the activity. The segmentName property is returned if a segmentId is returned.


Replication Method :

Key-based Incremental

Replication Key :

created

Primary Key :

contactId : deliveryId : created

API endpoint :

readUnsubscribes

The unsubscribe table contains info about unsubscribe events. Contacts may be unsubscribed by you, or they can unsubscribe themselves via an Unsubscribe or Manage Preferences Webform.

contactId
STRING

The unique ID of the contact associated with the unsubscribe.

Reference:

deliveryId
STRING

The unique ID of the delivery that resulted in the contact unsubscribing.

Reference:

created
STRING

The time the unsubscribe event was created.

method
STRING

The method used by the contact to unsubscribe. Possible values are:

  • subscriber
  • admin
  • bulk
  • listcleaning
  • fbl (feedback loop)
  • complaint
  • account
  • api

complaint
STRING

Optional additional information about the unsubscribe.



Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.