Catalyst API v1

The Catalyst public API is a simple, secure, JSON-based interface for viewing customer business data on the Catalyst platform in a programmatic way.

The Catalyst API is intended for software developers. To use it you should be familiar with web programming and be comfortable creating applications that consume web services through HTTP requests.

What you should know

  1. Create secure API keys to access endpoints
  2. There is a global rate limit of 100 calls per minute, per customer instance
  3. For the OpenAPI specification, please refer to our public API documentation 
  4. Refer below to data definitions for API endpoints

Data definitions for API endpoints

Account Data & Health Scores

Label Name Description API Endpoints Attribute Path
Account ID The account's unique Catalyst ID GET /accounts "Data" > "id"
External ID The account's unique Salesforce ID  GET /accounts/{account_id} "Data" > "external_id"
Created At When the Catalyst account record was created GET /accounts/{account_id} "Data" > "created_at"
Updated At When the Catalyst account record was last updated GET /accounts/{account_id} "Data"> "updated_at"
Account Name The account's Name in Catalyst & Salesforce GET /accounts/{account_id} "Data" > "attributes" > "label", "value"
Account Type The account's Type field (from Salesforce) GET /accounts/{account_id} "Data" > "attributes" > "label", "value"
Description The account’s Description field (from Salesforce) GET /accounts/{account_id} "Data" > "attributes" > "label", "value"
Health The account’s Catalyst Health category ("Healthy", "Neutral" or "At-Risk") GET /accounts/{account_id} "Data" > "attributes" > "label", "value"
Industry The account’s Industry field (from Salesforce) GET /accounts/{account_id} "Data" > "attributes" > "label", "value"
Numerical Health Score The account’s Catalyst Numeric Health score (1-10 score decimal) GET /accounts/{account_id} "Data" > "attributes" > "label", "value"
Phone The account’s Phone field (from Salesforce) GET /accounts/{account_id} "Data" > "attributes" > "label", "value"
Website The account’s Website field (from SFDC) GET /accounts/{account_id} "Data" > "attributes" > "label", "value"

 

Account Health Groups & Inputs Scores

Label Name Description API Endpoints Attribute Path
Health Group ID The account's Health Score Group ID GET /accounts/{account_id}
/health_groups
"Data" > "group_id"
Health Group Name The Health Group Name (up to 5 Groups, each has a weighting of Inputs to calculate Health Score) GET /accounts/{account_id}
/health_groups
"Data" > "name"
Health Group Description The Health Group Description GET /accounts/{account_id}
/health_groups
"Data" > "description"
Health Group Score The Health Group Score (1-10 score decimal) GET /accounts/{account_id}
/health_groups
"Data" > "group_score"
Health Group Weight The weight of the Health Group as it pertains to the overall Health Score calculation GET /accounts/{account_id}
/health_groups
"Data" > "weight"
Health Group Updated At When the Health Group was last updated at GET /accounts/{account_id}
/health_groups
"Data"> "updated_at"
Health Profile ID The Health Profile ID the Heath Group is a part of GET /accounts/{account_id}
/health_groups
"Data" > "health_profile" > "id"
Health Profile Name Health Profile Name (Multiple Health Scores can be configured with each configuration labeled as a "Profile" - e.g., you may create 3 different profiles for SMB, MM and Enterprise accounts respectively) GET /accounts/{account_id}
/health_groups
"Data" > "health_profile" > "name"
Health Input Score The individual Input’s Score (1-10 score decimal) GET /accounts/{account_id}
/health_groups
"Data" > "health_inputs" > "score"
Health Input Field Name Input Field Name (a health score can have an unlimited number of fields, the field is scored on a scale of 1-10 and rolls up to an overall group score, that then rolls into the overall health score) GET /accounts/{account_id}
/health_groups
"Data" > "health_inputs" > "field_name"

 

Playbook Data & Overall Performance

Label Name Description API Endpoints Attribute Path
Playbook ID The unique ID for the playbook GET /playbooks  "Data" > "id"
Playbook Name Name of the playbook GET /playbooks/{playbook_id}  "Data" > "name"
Playbook Status Status of the playbook (enabled, paused, disabled) GET /playbooks/{playbook_id}  "Data" > "status"
Current Participants How many object records are currently running through the playbook GET /playbooks/{playbook_id}  "Data" > "current_participants_count"
Total Participants How many object records have run in this playbook GET /playbooks/{playbook_id}  "Data" > "total_participants_count"
Met Objective Impact The percentage of participants who successfully met the playbook objective within 30 days of exiting the playbook. GET /playbooks/{playbook_id}  "Data" > "met_objective_percentage"
Average Objective Impact The average change in the playbook objective metric across all participants (%) GET /playbooks/{playbook_id}  "Data" > "avg_objective_percentage
_change"
Object Type The object type this playbook built for (account, opportunity, etc.) GET /playbooks/{playbook_id}  "Data” > “object_type”
Created At When the playbook was created GET /playbooks/{playbook_id}  “Data" > "created_at"
Updated At When was the playbook was last updated GET /playbooks/{playbook_id}  "Data" > "updated_at"
Creator Name Which user created the playbook GET /playbooks/{playbook_id}  "Data" > "created_by" > "name"

 

Playbook Run Performance

Label Name Description API Endpoints Attribute Path
Playbook ID The unique ID for the playbook GET /playbooks "Data" > "id"
Playbook Name The name of the playbook GET /playbooks/{playbook_id}  "Data" > "name"
Run ID The unique ID for this playbook run GET /playbooks/{playbook_id}
/executions 
"Data" > "id"
Status What is the status of the run (still in the playbook, completed, etc.) GET /playbooks/{playbook_id}
/executions 
"Data”"> "status"
Enter Type How did the object enter the playbook (i.e. "Manual" or "Automatic") GET /playbooks/{playbook_id}
/executions 
"Data" > "enter_type"
Enter Date Date of object record entry into playbook GET /playbooks/{playbook_id}
/executions 
"Data" > "enter_date"
Exited Date Date of object record exiting the playbook GET /playbooks/{playbook_id}
/executions 
"Data" > "exited_date"
Days in Playbook How long was this object record is in playbook GET /playbooks/{playbook_id}
/executions 
"Data" > "days_in_playbook"
Object Record ID The unique Catalyst ID for the object record that entered the playbook (an object record can re-enter the same playbook multiple times) GET /playbooks/{playbook_id}
/executions

"Data" > "object" > "id"
Object External ID The object record’s unique Salesforce ID  GET /playbooks/{playbook_id}
/executions 
"Data" > "object" > "external_id"
Object Type Object record type entered into the playbook (account, contact, opportunity, additional object) GET /playbooks/{playbook_id}
/executions 
"Data" > "object" > "type"
Objective Value on Entry The objective field value when the customer entered the playbook GET /playbooks/{playbook_id}
/executions 
"Data" > "objective" > "objective_value_on_entry"
Objective Value on Exit The objective field value when the customer exited the playbook GET /playbooks/{playbook_id}
/executions 
"Data" > "objective" > "objective_value_on_exit"
Objective Met Was the objective met (TRUE or FALSE) GET /playbooks/{playbook_id}
/executions 
"Data” > "objective" > "objective_met"
Objective Met Date What date did the customer meet the objective GET /playbooks/{playbook_id}
/executions 
"Data” > "objective" > "objective_met_date"
Objective Value on Day 30 Day What was the objective value 30 days after the customer exited the playbook GET /playbooks/{playbook_id}
/executions 
"Data” > "objective" > "objective_value_on_day
_thirty"
Added By If the object record Playbook enter type is “Manual”, user name of who added them GET /playbooks/{playbook_id}
/executions 
"Data" > "Added By" > "name"

 

Playbook Emails

Label Name Description API Endpoints Attribute Path
Playbook ID The unique ID for the playbook (the playbook associated with the email) GET /playbooks "Data" > "id"
Playbook Name The name of the playbook (the playbook that created the email) GET /playbooks/{playbook_id} "Data" > "name"
Email ID An ID representing a unique email that is sent. There will be one row per email recipient. GET /playbooks/{playbook_id}
/executions
"Data" > "emails" > "id"
Email Subject The subject of the sent email (this may be null if the email has not been approved for send) GET /emails/{email_id} "Data" > "subject"
Email Automated If the email was sent automatically from a playbook (TRUE or FALSE) GET /emails/{email_id} "Data" > "automated"
Email Sent At Timestamp for when the email was sent GET /emails/{email_id} "Data" > "sent_at"
Email Approved At Timestamp for when the email was approved in Catalyst for sending GET /emails/{email_id} "Data" > "approved_at"
Email Rejected At Timestamp for when the email was rejected in Catalyst for sending GET /emails/{email_id} "Data" > "rejected_at"
Email Status Status of the email (sent, rejected, awaiting approval) GET /emails/{email_id} "Data" > "status"
Recipient Email The email address of the recipient of the email (this may be null if the email is not yet approved) GET /emails/{email_id}  "Data" > "recipient" > "email"
Email Recipient First Clicked At The first time the recipient of the email clicked a link in the email (this data may be missing if the recipient has trackers blocked) GET /emails/{email_id}  "Data" > "recipient" > "first_clicked_at"
Email Recipient Last Clicked At The last time the recipient of the email clicked a link in the email (this data may be missing if the recipient has trackers blocked) GET /emails/{email_id}  "Data" > "recipient" > "last_clicked_at"
Email Recipient First Opened At The first time the recipient of the email opened the email (this data may be missing if the recipient has trackers blocked) GET /emails/{email_id}  "Data" > "recipient" > "first_opened_at"
Email Recipient Last Opened At The last time the recipient of the email opened the email (this data may be missing if the recipient has trackers blocked) GET /emails/{email_id}  "Data" > "recipient" > "last_opened_at"
Email Recipient Bounced At The time this email bounced from the recipient. In an instance where Sendgrid retries, it's possible to both bounce and be delivered GET /emails/{email_id}  "Data" > "recipient" > "bounced_at"
Sender Name Name of the sender of the email GET /emails/{email_id} "Data" > "sender" > "name"
Sender Email Email address the email appears to have come from (this may be a default Catalyst email or the customer may provide a whitelisted domain) GET /emails/{email_id} "Data" > "sender" > "email"

 

Playbook Email Template Performance

Label Name Description API Endpoint
Template ID The playbook email template's unique ID GET /playbooks/{playbook_id}
/email_templates
"Data" > "id"
Email Subject The playbook email template's subject line GET /playbooks/{playbook_id}
/email_templates
"Data" > "subject"
Template Created At Timestamp for when the playbook email template was created GET /playbooks/{playbook_id}
/email_templates
"Data" > "created_at"
Template Updated At Timestamp for when the playbook email template was last updated GET /playbooks/{playbook_id}
/email_templates
"Data" > "updated_at"
Delivered Rate The total rate for which an email is delivered to all end recipients (decimal ratio) GET /playbooks/{playbook_id}
/email_templates
"Data" > "performance" > "delivered_rate"
Not Delivered Rate The total rate for which an email is not delivered to all end recipients (decimal ratio) GET /playbooks/{playbook_id}
/email_templates
"Data" > "performance" > "not_delivered_rate"
Opened Rate The total rate for which an email is opened by all end recipients (decimal ratio) GET /playbooks/{playbook_id}
/email_templates
"Data" > "performance" > "opened_rate"
Clicked Rate The total rate for which an email is clicked by all end recipients (decimal ratio) GET /playbooks/{playbook_id}
/email_templates
"Data" > "performance" > "clicked_rate"
Replied Rate The total rate for which an email is replied to by all end recipients (decimal ratio) GET /playbooks/{playbook_id}
/email_templates
"Data" > "performance" > "replied_rate"

Was this article helpful?

0 out of 0 found this helpful

Have more questions? Submit a request