Change log

Zapier Integration

The Zapier integration is available via an extension to your site and allows Zapier Actions, Triggers and Searches to be authorised against the site instance.

Enabling Zapier

The Zapier integration is installed as a site extension and can therefore be enabled from your reseller Portal, via the site instance settings, then under the ‘Extensions’ tab.

Prerequisites

To use the Zapier extension you’ll need to be either a Treepl CMS Portal user or the site admin where the Zapier extension is installed.

You’ll also need to have access to a Zapier account/s.

Beta Invite

During the beta period you will need to request an invite to view the Treepl CMS app within Zapier’s interface.

Please send a support ticket to the Treepl CMS team via your portal (or email support@treepl.co) and ask for a Zapier invite to be sent to the email address of your Zapier account. This allows your Zapier account to show the Treepl CMS app when searching for apps to connect to.

Authorisation

When connecting to the Treepl CMS app within Zapier you’ll be prompted to log in to your Treepl CMS account (as a Portal user or site admin user).

After successful login, authorisation between Zapier and Treepl CMS will be possible for any Treepl CMS site normally accessible with you login credentials and that has the Zapier extension installed on.

Connecting Zapier

The Zapier integration can be connected as:

  • Your Treepl CMS site to any supported Zapier app/s (Trigger)
  • Any Zapier supported app/s to your Treepl CMS site (Action)
  • Your Treepl CMS site to another Treepl CMS site (for cross-site triggers/actions)
  • Your Treepl CMS site to itself (for internal triggers/actions)

As a Trigger

To connect your Treepl CMS site to be used as a trigger (the initiating step in a Zap), click the “Create Zap” button in Zapier and search for ‘Treepl’ in the Trigger step search box.

Treepl CMS Zapier Integration

Select the latest version if multiple versions exist.

Once selected, the Treepl CMS app will list all the available events (the thing that initiates the trigger). Choose your desired event, such as ‘when a new order is created’ or ‘when a workflow is sent’.

Continuing on, Zapier will need you to now select an existing connected Treepl CMS account or connect a new one - which you do by logging in with your Treepl CMS credentials and accepting the permissions required for the integration.

If you are already logged in to a Treepl CMS account in the same browser then Zapier will default to that account and automatically authenticate with it.

If you need to connect to a different Treepl CMS account other than the one you are currently logged in to, or you wish to add multiple Treepl CMS accounts to the one Zapier account, you’ll need to log out of Treepl CMS in the browser (or use a different browser to log into your Zapier account).

Next, setting up the trigger options, Zapier will prompt for the site instance to connect to and where the event data will come from (Forms, Modules, Workflows…).

Lastly, Zapier will test your trigger based on recent data it can find in the selected Treepl CMS site instance. Upon a successful test the data from that test will be previewed for you to check.

Later, in the action step, this data will also be used as sample data to configure you zap.

Continuing will progress into the Action step of the Zap where you can configure what happens to the Treepl CMS data being collected in the Trigger step. This will likely mean configuring a 3rd party app or connecting again to another, or the same, Treepl CMS site instance.

You can add multiple Action steps in order to send your data to multiple apps and/or to fulfil multiple tasks. Or use multiple Action steps to delay, filter or format your data.

See the Zapier documentation for more info on creating triggers:
https://zapier.com/help/create/basics/set-up-your-zap-trigger

As an Action

To connect your Treepl CMS site to be used as an Action (the resulting step in a Zap), is similar to the above Trigger step. However, you would first configure your Trigger with your 3rd party app (where the data is coming from) and then select the Treepl CMS app and your site instance in one of the Zap’s Action steps.

The events available will now have options of the receiving nature, such as Creating, Updating or Searching (as opposed to Triggering).

Based on the event type selected, you’ll have various options for populating data to your Treepl CMS site instance, such as creating a new Blog Post or updating an Event Booking.

After a Zapier Action creates or updates a Treepl CMS item a rollback log item is created (where the rollback functionality is enabled) with the source type “Zapier”. This helps you to identify how item versions were created when accessing rollback options.

Supported Methods

The Zapier integration supports the following methods and modules/items with all field properties available as per their corresponding Liquid output in Treepl CMS:

Triggers

New Comment

Triggers when a new Comment is created.

Response data:

As per the item data for the Comments module Liquid output.

New CRM Event Booking

Triggers when a new CRM Event Booking is created.

Response data:
{
    "Form": "registration_form",
    "ModuleItem": "1234",
    "Email": "alextest@test.com",
    "Allocation": "1",
    "CreatedDateTime": "2021-08-24T20:20:20.618268",
    "Fields": {
        "First Name": "Alex",
        "Last Name": "Smith",
        "Email": "alextest@test.com"
    }
    "CrmGroups": []
}

Fields and CrmGroups will vary depending on your registration form setup.

New CRM Form Submission

Triggers when a new CRM Form Submission is created.

Response data:

As per the formSubmissionData Liquid output.

New Gift Voucher

Triggers when a new Gift Voucher is created.

Response data:
{
    "Recurring Products ID": "6013",
    "Amount": "10.9",
    "Balance": "10.9",
    "RecipientName": "Alex Smith",
    "RecipientEmail": "asmith@example.com",
    "RecipientMessage": "Here’s a gift for you!",
    "Enabled": "true",
    "Recurring Products Name": "GV794686",
    "OrderId": "6009",
    "CountryCurrency": "AU/AUD",
    "Country": "AU",
    "Currency": "AUD",
    "Recurring Products Entity Type": "ViaShop"
}
New Member

Triggers when a new Member is created.

Response data:

Similar to the Member object Liquid output.

New Module Item

Triggers when a new Module Item is created.

Response data:

As per the item data for that module, for example; a Custom Module item's Liquid output.

New Order

Triggers when a new Order is created.

Response data:

Similar to the Order object Liquid output according to the order type triggered.

Triggered Workflow

Triggers when a new Workflow is triggered.

Response data:
{
    "Id": "1234",
    "Name": "My WorkFlow",
    "Recipients": [
        "asmith@example.com",
        "joetest@test.com"
    ],
    "FromEmail": "admin@trustedemail.co",
    "FromName": "Site Admin",
    "EmailSubject": "Thank you",
    "EmailBody": "..."
}
Updated Comment

Triggers when a Comment is updated.

Response data:

As per the item data for the Comments module Liquid output.

Updated CRM Event Booking

Triggers when a CRM Event Booking is updated.

Response data:
{
    "Form": "registration_form",
    "ModuleItem": "1234",
    "Email": "alextest@test.com",
    "Allocation": "1",
    "CreatedDateTime": "2021-08-24T20:20:20.618268",
    "Fields": {
        "First Name": "Alex",
        "Last Name": "Smith",
        "Email": "alextest@test.com"
    }
    "CrmGroups": []
}

Fields and CrmGroups will vary depending on your registration form setup.

Updated CRM Form Submission

Triggers when a CRM Form Submission is updated.

Response data:

As per the formSubmissionData Liquid output.

Updated Gift Voucher

Triggers when a Gift Voucher is updated.

Response data:
{
    "Recurring Products ID": "6013",
    "Amount": "10.9",
    "Balance": "10.9",
    "RecipientName": "Alex Smith",
    "RecipientEmail": "asmith@example.com",
    "RecipientMessage": "Here’s a gift for you!",
    "Enabled": "true",
    "Recurring Products Name": "GV794686",
    "OrderId": "6009",
    "CountryCurrency": "AU/AUD",
    "Country": "AU",
    "Currency": "AUD",
    "Recurring Products Entity Type": "ViaShop"
}
Updated Member

Triggers when a Member is updated.

Response data:

Similar to the Member object Liquid output.

Updated Module Item

Triggers when a Module Item is updated.

Response data:

As per the item data for that module, for example; a Custom Module item's Liquid output.

Updated Order

Triggers when a Order is update

Response data:

Similar to the Order object Liquid output according to the order type triggered.

Updated Recurring Subscription

Triggers when a member's recurring subscription is updated.

Response data:
{
    "Code": "sub_1Ojyfi433Ww5sV49lR49t7qg",
    "Status": "Canceled",
    "MemberId": 987654,
    "RecurringProducts": [{
            "EntityType": "SecureZoneSubscription"
            "Id": 1234,
            "Name": "My Secure Zone"
        }
    ]
}
Possible Status values:
  • Incomplete
  • IncompleteExpired
  • Trialing
  • Active
  • PastDue
  • Canceled
  • Unpaid
Possible EntityType values:
  • Form
  • ModuleItem
  • SecureZoneSubscription

Actions

Create Comment

Pass the following data to Create a new Comment.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Module
<ModuleId>
The reference module for loading module items from (in the Zapier interface).
Module Item
<ItemId>
The module item to assign the new comment to.
Parent Id
<ParentId>
The parent comment to assign the new comment to (if creating a reply/child comment).
Email
<email>
The email address of the comment author/owner in the CRM.

If the email address doesn't exist as a CRM Contact the action will be ignored and no comment will be created.

Rating
<integer>
A number between 0 and 100 intended for the module rating system.
Comment
<string>
The body content of the comment.
Create CRM Event Booking

Pass the following data to Create a new CRM Event Booking.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Email
<email>
The email address in the CRM to subscribe the event booking to.

If the email address doesn't exist as a CRM Contact the action will be ignored and no booking will be created.

Form
<formAlias>
An existing registration form to attach the associated form fields (including Advanced CRM Groups) to the Zapier interface/request. This data will be added to the event booking item, however, the form's Workflow, Autoresponder and other settings will not be executed.
Module
<ModuleId>
The reference module for loading module items from (in the Zapier interface). Only modules with the advanced setting of 'Enable bookings' turned on will display here.
Module Item
<ItemId>
The module item to assign the new booking to.
Allocation
<integer>
The number of seats booked.
Create CRM Form Submission

Pass the following data to Create a new CRM Form Submission.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Email
<email>
The email address in the CRM to assign the form submission to.

If the email address doesn't exist as a CRM Contact the action will be ignored and no case will be created.

Form
<formAlias>
An existing form to attach the associated form fields (including Advanced CRM Groups) to the Zapier interface/request. This data will be added to the form submission item, however, the form's Workflow, Autoresponder and other settings will not be executed.
Create CRM Member

Pass the following data to Create a new CRM Member.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
First Name
<string>
The first name of the contact.
Last Name
<string>
The last name of the contact.
Email
<email>
The email address to use for the new contact.

Creating a CRM contact will be skipped if this email address already exists.

...
All the system Contact fields and any assigned Advanced CRM Groups will be added to the Zapier interface/request.
Create Gift Voucher

Pass the following data to Create a new Gift Voucher.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Name
<string>
A name for the voucher which will also be used as the Gift Voucher code used to redeem the voucher.
Country/Currency
<CountryCode/CurrencyCode>
The currency in which you want the gift voucher created in.

The country code/currency passed must be set up and available on the site.

Amount
<number>
The total value of the gift voucher.
Enabled
true
false
Enable or disable the voucher from being usable in the website shopping cart.
Recipient Name
<string>
The name of the intended voucher recipient.
Recipient Email
<email>
The email address to set as the recipient of the Gift Voucher.

No CRM Contact is created with this email address.

Recipient Message
<string>
The body content of the Gift Voucher message to be used when emailing the recipient.
Create Module Item

Pass the following data to Create a new Module Item, including system module items (Pages, Blogs, Events, Products, etc.) and custom module items.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Module
<ModuleId>
The reference module for loading module items from (in the Zapier interface).
Item Name
<string>
A descriptive name for the new module item.
URL Slug
<url>
The final path of the URL (slug) for the new module item. eg; /my-module-item.
Description
<string>
The body content of the item.

All the system fields and any custom fields for the selected module will also be added to the Zapier interface/request.

Update Comment

Pass the following data to Update an existing Comment.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The comment ID to identify the comment to update.
Comment
<string>
The body content of the comment.
Update CRM Event Booking

Pass the following data to Update an existing CRM Event Booking.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The event booking ID to identify the booking to update. The retrieved event booking's associated fields and data (including Advanced CRM Groups) will be added to the Zapier interface/request.
Allocation
<integer>
The number of seats booked.
Update CRM Form Submission

Pass the following data to Update an existing CRM Form Submission.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The CRM Form Submission ID to identify the submission to update. The retrieved form submission's associated fields and data (including Advanced CRM Groups) will be added to the Zapier interface/request.
Update CRM Member

Pass the following data to Update an existing CRM Member.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The CRM Contact ID to identify the contact to update.
...
All the system Contact fields and any assigned Advanced CRM Groups will be added to the Zapier interface/request.

Blank fields submitted via Zapier will update the contact record and clear any existing data in those fields.

Update Gift Voucher

Pass the following data to Update an existing Gift Voucher.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Name
<string>
A name for the voucher which will also be used as the Gift Voucher code used to redeem the voucher.
Country/Currency
<CountryCode/CurrencyCode>
The currency in which you want the gift voucher in.

The country code/currency passed must be set up and available on the site.

Amount
<number>
The total value of the gift voucher.
Enabled
true
false
Enable or disable the voucher from being usable in the website shopping cart.
Recipient Name
<string>
The name of the intended voucher recipient.
Recipient Email
<email>
The email address of the recipient of the Gift Voucher.

No CRM Contact is created with this email address.

Recipient Message
<string>
The body content of the Gift Voucher message to be used when emailing the recipient.
Update Module Item

Pass the following data to Update an existing Module Item, including system module items (Pages, Blogs, Events, Products, etc.) and custom module items.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Module
<ModuleId>
The reference module for loading module items from (in the Zapier interface).
Id
<ItemId>
The Item Id to identify the module item to update.
Item Name
<string>
A descriptive name to update the module item with.
URL Slug
<url>
The final path of the URL (slug) to update the module item with. eg; /my-module-item.
Description
<string>
The body content of the item.

All the system fields and any custom fields for the selected module will also be added to the Zapier interface/request.

Blank fields submitted via Zapier will update the module item and clear any existing data in those fields.

Update Order

Pass the following data to Update an existing Order

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The Order ID to identify the order to update.

All the system Order fields and any assigned Advanced CRM Groups will be added to the Zapier interface/request.

Invoice number must be unique or the update action will be skipped.

Blank fields submitted via Zapier will update the contact record and clear any existing data in those fields.

Searches

Find Comment

Retrieve the data of an existing Comment by querying various comment fields.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The Comment ID to find a comment with.
Rating
<integer>
The rating value to find a comment with.
Comment
<string>
The body content to find a comment with (exact match of full content).
Module
<ModuleId>
Find a comment by the module it's assign to.
Module Item
<ItemId>
Find a comment by the module item ID it's assign to.
Sort Order
ASC
DESC
The order to retrieve the result from.
Sort By
Id
Rating
The field to sort items by when searching.
Email
<email>
Find a comment by the email address of the comment author/owner.
Response data:

As per the item data for the Comments module Liquid output.

Find CRM Event Booking

Retrieve the data of an existing Event Booking by querying various booking related fields.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The Event Booking ID to find a booking with.
Email
<email>
Find a booking by the email address of the booking owner.
Form
<FormAlias>
Find a booking by the Form used for its registration.
Module Item
<ItemId>
Find a booking by the Event/module item ID it's assign to.
Allocation (Min)
<integer>
Find a booking with an Allocation value greater than or equal to this minimum range.
Allocation (Max)
<integer>
Find a booking with an Allocation value less than or equal to this maximum range.
Sort Column
Id
MemberEmail
FormAlias
ModuleItemId
Allocation
The field to sort items by when searching.
Sort Order
ASC
DESC
The order to retrieve the result from.
Response data:
{
    "Id": "12345",
    "Form": "registration_form",
    "ModuleItem": "1234",
    "Email": "alextest@test.com",
    "Allocation": "1",
    "CreatedDateTime": "2021-08-24T20:20:20.618268",
    "Fields": {
        "First Name": "Alex",
        "Last Name": "Smith",
        "Email": "alextest@test.com"
    }
    "CrmGroups": [],
    "Zap Search Was Found Status": true
}

Fields and CrmGroups will vary depending on your registration form setup.

Find CRM Form Submission

Retrieve the data of an existing Form Submission by querying various submission related fields.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The Form Submission ID to find a submission with.
Email
<email>
Find a submission by the email address of the submission owner.
Form
<FormAlias>
Find a submission by the Form used for its submission.
Sort Column
Id
MemberEmail
FormAlias
The field to sort items by when searching.
Sort Order
ASC
DESC
The order to retrieve the result from.
Response data:
{
    "Id": "12345",
    "Form": "contact_form",
    "Email": "alextest@test.com",
    "Allocation": "1",
    "DateSubmission": "2021-08-24T20:20:20.618268",
    "FormFields": {
        "First Name": "Alex",
        "Last Name": "Smith",
        "Email": "alextest@test.com"
    }
    "CrmGroups": [],
    "Zap Search Was Found Status": true
}

FormFields and CrmGroups will vary depending on your registration form setup.

Find CRM Member

Retrieve the data of an existing CRM member by querying various contact related fields.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The CRM Contact ID to identify the contact with.
...
All the system Contact fields and any assigned Advanced CRM Groups will be added to the Zapier interface/request.
Response data:

Similar to the Member object Liquid output.

Find Gift Voucher

Retrieve the data of an existing Gift Voucher by querying various voucher related fields.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The Gift Voucher ID to identify the gift voucher with.
Name
<string>
Find a voucher by its name (voucher code).
Currency
<CountryCode/CurrencyCode>
Find a voucher by its assigned currency.
Amount (Min)
<number>
Find a voucher with an Amount value greater than or equal to this minimum range.
Amount (Max)
<number>
Find a voucher with an Amount value greater than or equal to this minimum range.
Recipient Name
<string>
Find a voucher by the name of the intended voucher recipient.
Recipient Email
<email>
Find a voucher by the email address assigned to the Gift Voucher.
Recipient Message
<string>
Find a voucher by the body content of the Gift Voucher message to be used when emailing the recipient.
Sort Order
ASC
DESC
The order to retrieve the result from.
Order By
Id
Name
Amount
The field to sort items by when searching.
Response data:
{
    "ID": "6013",
    "Amount": "10.9",
    "Balance": "10.9",
    "Recipient Name": "Alex Smith",
    "Recipient Email": "asmith@example.com",
    "Recipient Message": "Here’s a gift for you!",
    "Enabled": "true",
    "Name": "GV794686",
    "OrderId": "6009",
    "Country Currency": "AU/AUD",
    "Country": "AU",
    "Currency": "AUD",
    "Type": "ViaShop",
    "Zap Search Was Found Status": true
}
Find Module Item

Retrieve the data of an existing Module Item by querying various item related fields.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<ItemId>
Find a module item by the Item Id of the item.
Module
<ModuleId>
Find a module item by its parent module.
Item Name
<string>
Find a module item by the name of the item.
URL Slug
<url>
Find a module item by the final path of the URL (slug). eg; /my-module-item.
Description
<string>
Find a module item by the body content of the item.
...
<string>
All the system fields for module items will also be added to the Zapier interface/request.
Sort Column
Id
ModuleId
Name
UrlSlug
Description
Parents
Template
DetailLayout
Enabled
DisableForSiteSearch
ReleaseDate
ExpiryDate
Weighting
AddedBy
Author
The field to sort items by when searching.
Sort Order
ASC
DESC
The order to retrieve the result from.
Response data:

As per the item data for that module, for example; a Custom Module item's Liquid output.

Find Order

Retrieve the data of an existing Order by querying various order related fields.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<ItemId>
Find a module item by the Item Id of the item.
Order Name
<string>
Find a module item by the name of the item.
...
<string>
All the system fields for module items will also be added to the Zapier interface/request.
Sort By
OrderName
Id
InvoiceNumber
InvoiceDate
The field to sort items by when searching.
Sort Order
ASC
DESC
The order to retrieve the result from.
...
All the system Order fields will be added to the Zapier interface/request for searching against.

Any Advanced CRM Group fields assigned to Orders will not be shown here as it is not currently possible to search orders by Advanced CRM Group values.

Response data:

Similar to the Order object Liquid output according to the order type triggered.

Find Workflow

Retrieve the data of an existing Workflow by querying a workflow name or ID.

Field
Value
Required
Description
Domain
<URL>
The system URL (trial site URL) of the site to connect to.
Id
<Id>
The Workflow ID to find a workflow with.
Name
<string>
Find a workflow by its name.
Sort By
Id
Name
The field to sort items by when searching.
Sort Order
ASC
DESC
The order to retrieve the result from.
Response data:
{
    "Id": "1234",
    "Name": "My WorkFlow",
    "Recipients": [
        "asmith@example.com",
        "joetest@test.com"
    ],
    "From Email": "admin@trustedemail.co",
    "From Name": "Site Admin",
    "Email Subject": "Thank you",
    "Email Body": "...",
    "Zap Search Was Found Status": true
}

FormFields and CrmGroups will vary depending on your registration form setup.

Troubleshooting

Data Types and Formats

When passing data to or from connected apps, be sure to use the correct data type and formatting for the fields. For example, if a number field is only expecting numerical values be sure not to pass data that may contain alphabetical characters. Or where date fields are expecting specific date/time formatting ensure the passed date conforms to that format or is otherwise reformatted for that field.

The Zapier Formatter utility can help with this type of data formatting. For more info see the Zapier documentation here: https://zapier.com/help/create/format/get-started-with-formatter

Connecting to Different Treepl CMS Accounts

If you are trying to connect to a new/different Treepl CMS account but Zapier keeps connecting/displaying the existing account, try logging out of that account (as your session is logged in in the browser) or use a different browser for configuring Zapier (where you are not currently logged in to a Treepl CMS account).



External Resources

There are currently no external resources available.

Please let us know if you have any other contributions or know of any helpful resources you'd like to see added here.


Questions?

We are always happy to help with any questions you may have.
Visit the Treepl Forum for community support and to search previously asked questions or send us a message at support@treepl.co and we will consult you as soon as possible.