How can we help?

About our API documentation

Overview

In conjunction with the Cordial UI, the Cordial platform provides a robust set of RESTful APIs (Application Program Interfaces). Using these APIs, developers can programmatically perform many of the same functions available within the UI, such as adding, updating, and removing contacts, creating lists, sending messages, retrieving message activity data, and a variety of other actions. Cordial also provides non-UI related APIs to support integrations and open-application development.

Cordial embraces the developer community and understands the need for having highly scalable, industry-standard APIs for building personalized messaging applications and for maintaining and managing the bidirectional flow of large amounts of structured and unstructured data. With Cordial, you can harness the power and innovations of the platform entirely via API—or through some combination of API and UI interactions.

The purpose of our API docs is to help application designers and developers understand the underlying design of Cordial's data structures and definitions—and how best to accomplish common objectives using our API resources. This is a companion resource to our interactive Swagger documentation.

Audience and assumptions

Cordial's API docs are for application designers, developers, and anyone who wants to understand the general capabilities of our APIs.

Our docs don't address the specific details of using each Cordial API in your app, but they do provide useful code samples. We assume that developers already understand coding principles regarding security, encoding and decoding JSON, looping through record sets, error processing and recovery, and general programming standards.

Data structure and organization

Cordial's data structures are built using MongoDB. MongoDB is a document-based database that provides high performance, high availability, and high scalability. Cordial is designed to handle large amounts of data generated over long periods of time. Contact profile data, contact activity data, purchase data, product catalog data, device-generated IoT (Internet of Things) data, and publishing data are examples of structured and unstructured data that Cordial can elegantly represent, index, store, retrieve, and operate over.

In Cordial, data structures are referred to as collections. Collections exist independent of each other; but through keys or other field associations, they can be logically associated to form a full picture of some current state. For example, a contact in the database is defined by an email address that exists in the collection of contacts. Attributes used to extend a contact's data structure are independently defined and live in a collection of attributes. Once attributes are created, they're available to extend the data schema of a given contact by including an array of attribute value pairs using a JSON structure.

Another example of how collections work together is in the association of message activity data back to a contact. Message activity data exists in its own collection. As activity data is generated by a contact, it's stored in the message activity data collection with a contact ID (cID) value. The cID value then serves as the key or link to associate that activity to its respective owner.  

Throughout our docs, you will see various associations emerge as well as the sequence with which we construct data and reference it using APIs.

Comments

0 comments

Please sign in to leave a comment.