We took a very simple approach to integrating mail2 with Tessitura: Create a simple, solid, open foundation of database objects (procedures, views, and tables) that organizations could easily use and customize to create sophisticated email management applications.
The entire process is sensitive to organization and control grouping in order to accommodate consortium complexities. Before communicating with the Tessitura API, mail2 retrieves a new web session key from Tessitura and applies the Organization Name variable to that key for the authenticated organization. That key is then passed to the custom procedures in Tessitura that can use the Organization Name variable to decide which data can be returned.
The Tessitura integration has four basic corner stones to its integration: The Tessitura database, a custom screen on the constituent record, the mail2 importer, and the mail2 webhooks.
The Tessitura Database
Tessitura integration for mail2 includes nine stored procedures, one view, and three tables. These objects are created with a simple script that is run at the time of installation.
The Custom Screen
The Tessitura custom screen appears on the custom tab of a constituent record and displays subscription and opt-out information for the logged in users organization. It also allows a Tessitura user to add a constituent email address, subscribe it to one or more lists, unsubscribe an address or view a patron's email contact history from mail2.
The mail2 Importer
The mail2 importer allows mail2 users to access their Tessitura list data, and import email addresses directly from the Tessitura database. The importer handles the creation of lists, new segments, and updating lists contents.
mail2 webhooks ensure that all of the data between mail2 and Tessitura remain synchronized. Each time a significant action is taken in mail2, a webhook is fired to Tessitura that causes Tessitura to update email address information as necessary. Webhooks are fired for the following actions:
- List subscription
- List create
- List delete
- Campaign open
- Campaign clicked
- Email bounced (hard bounces only)
Whenever Tessitura receives a webhook message, it takes the appropriate course of action with the information received to keep the database updated and in sync with mail2. This constant communication ensures that both databases are always working from the most up-to-date information.