This article provides information about the Higher Logic Thrive Marketing Professional (Thrive Marketing Professional) Web Service.
Web Service overview
The Web Service simplifies the synchronization and transfer of data (e.g., email addresses, users' names) between Thrive Marketing Professional and a third-party AMS/CRM database with which it is integrated.
You can pull email addresses from your third-party database into Thrive Marketing Professional to simplify your mailings, and you can pull in users' names in order to personalize those mailings. You can also generate lists of "unsubscribers" in order to ensure that unsubscribed email addresses are excluded from future mailings.
These lists that you generate can also serve as a starting point for reports. There are GridRequests that can be used to retrieve data (about subscribers and about mailings) from Thrive Marketing Professional.
Technology overview
Higher Logic has embraced a document-centric approach to SOAP-based web services. This is considered to be a "second generation" approach for web services. There are a number of benefits to this approach that we think will be helpful to you as you develop your integration.
These benefits include:
- Sending a single document (as opposed to making multiple, iterative method calls)
- Listening for only the data that you want in a Response document
- Avoiding RPC, which is more "fragile" with regard to versioning
See http://www.ibm.com/developerworks/webservices/library/ws-docstyle.html for details.
All API communication occurs via HTTPS, thereby securing the transmission. The content within each document can also be encrypted to further secure data.
Understand Thrive Marketing Professional
Understanding how Thrive Marketing Professional works will be helpful to you as you begin work on this project. The Informz Partner Relationship Manager will schedule a session (or sessions) in which your team can learn about Thrive Marketing Professional and how it operates. This basic understanding of the Thrive Marketing Professional user interface will help you to test your API.
If you have questions about working with this API, create a case and include your name and any relevant uncompressed XML calls in your message.
API endpoints
Test: https://partnertest.informz.net/aapi/InformzService.svc
US Prod: https://partner.informz.net/aapi/InformzService.svc
Canadian Prod: https://partner.informz.ca/aapi/InformzService.svc
API method
There is a single method in the API:
PostInformzMessage (string)
NOTE: The input string parameter should be a fully formed XML document.
Higher Logic XML documents
Higher Logic provides two XML documents: ActionRequest and GridRequest, as described below.
Use an ActionRequest to have Thrive Marketing Professional perform an action. For example, you could use an ActionRequest to:
- create a mailing or
- schedule a mailing
<ActionRequest xmlns="http://partner.informz.net/aapi/2009/08/"> <Username>testuser</Username> <Password>lark12345</Password> <Brand id="9999">Test Brand</Brand> <Actions> [Action_Details] </Actions> </ActionRequest>
Use a GridRequest to retrieve information from Thrive Marketing Professional; it is returned in tabular format. For example, you could use a GridRequest to generate:
- a list of mailings or
- a list of recipients who opened one of your organization's mailings.
<GridRequest xmlns="http://partner.informz.net/aapi/2009/08/"> <Username>testuser</Username> <Password>lark12345</Password> <Brand id="9999">Test Brand</Brand> <Grids> [Grid_Details] </Grids> </GridRequest>
Document notes
All ActionRequest and GridRequest documents have the following requirements.
- Brand id: your unique account ID; when the document is received, this is validated against the IP address that is stored with your brand in order to ensure that it is a valid origin point.
- Username: your unique username; when the document is received, this is validated against a known user list in Thrive Marketing Professional.
- Password: the password that is associated with your unique username.
NOTE: Encryption tags are optional unless you're using encryption, in which case, they are required.
Case sensitivity in document tags
The document tags are case sensitive. Make sure that the casing of the letters is respected between the calling application and the API.
EXAMPLE: <BulkUpload> is correct; <bulkupload> is not correct.
NOTE: The comparison of string values in a GridRequest is not case sensitive.
Node order
The order in which the nodes are presented in an XML document is determined by the XSD (XML Schema Definition).
- Use the example messages that Higher Logic has provided in the Requests section, as well as the graphical depiction of the XSD, to ensure that the order in which the nodes are presented (in the documents being submitted to the API) matches the order as found in the XSD.
Compression, Encryption/Authentication, & Encoding
To learn about these operations, see Recommended Set Up Steps.
API sample app
The C# console app that is provided below outlines each step, from request creation to response capturing. This is helpful if you are having difficulty with implementing compression, encryption, and/or making requests.
This sample makes a GridRequest for "mailing_activity_demo" mailing IDs and should work in your environment because the demonstration-only information is preloaded into the brand.
IMPORTANT: The code in the sample is intended for demonstration purposes and as a template only. Do not use it "as is" in your own integration environment. Instead, download the file and extract the contents to a folder. Navigate to that folder and open the SLN file.