# Extole Docs Documentation ## Guides - [Advocate Tiers](https://docs.extole.com/docs/advocate-tiers.md): You may think of the advocates that participate in your customer engagement programs as a single, unified group. However, our data gives us the power to create meaningful segments within the advocate group so that each segment can be treate… - [Eligibility Files](https://docs.extole.com/docs/eligibility-files.md): Running a program that is exclusive to a particular group of people, like a referral program for your employees, means you have to keep your list of eligible program participants up to date. Within Extole, this list of people is likely set… - [Existing Customer List Management](https://docs.extole.com/docs/existing-customer-list-management.md): Usually you want to run campaigns that are targeted to acquire new customers. By having an existing customer list at Extole, you can disqualify any conversions which come through for you existing customers. - [Audiences & Segmentation](https://docs.extole.com/docs/audiences-segmentation.md): Use segmentation to drive higher participation in your programs. - [How to Send a Promotional Email to an Audience](https://docs.extole.com/docs/how-to-send-a-promotional-email-to-an-audience.md): Whether or not your program is successful depends on how well you promote it. With Extole's Email Audience functionality, you no longer need to rely on fitting a promotional email into your existing marketing schedule—you can do it right fr… - [Interpreting the Network Graph](https://docs.extole.com/docs/interpreting-the-network-graph.md): If you've ever taken a look at our Support pages, you may be familiar with what we sometimes refer to as our bubble diagrams. We have been able to provide these graphs that illustrate links between individuals because of the unique data tha… - [Upload and Email an Audience](https://docs.extole.com/docs/upload-and-email-an-audience.md): The My Audiences page in your Extole account is your hub for uploading, managing, and emailing audiences. - [Advocacy Customer Segments](https://docs.extole.com/docs/advocacy-customer-segments.md): Marketers segment customers based on a number of factors that usually boil down to “how much do you spend with us?” Important segments may include “visitor” and “purchaser,” or they may identify a customer as “High Average Order Value (AOV)… - [Converting Advocates to Influencers](https://docs.extole.com/docs/converting-advocates-to-influencers.md): A benefit of refer-a-friend programs is that they help brands identify customers who also have followers and influence. Extole makes it easy to convert an advocate with reach into an influencer who can drive traffic and generate conversions… - [Dive into People - Find Your Super Advocates and Discover Who's New](https://docs.extole.com/docs/dive-into-people-find-your-super-advocates-and-discover-who-s-new.md): Referral marketing is all about people. It's about your customers advocating your brand, product, or services with their friends and family. Without people, you wouldn't have referrals. That's why Extole makes it easy for you to identify th… - [Turning Friends Into Advocates](https://docs.extole.com/docs/turning-friends-into-advocates.md): Data shows that customers acquired via referral are up to 5x more likely to share. These customers were introduced to your referral program, took advantage of the friend offer, and converted into customers. - [Using Refer-a-Friend Data Beyond Refer-a-Friend](https://docs.extole.com/docs/using-refer-a-friend-data-beyond-refer-a-friend.md): Refer-a-friend programs not only drive new customer acquisition and significant revenue, they are increasingly how high-quality customers discover and select your brand. An authentic recommendation from a trusted friend rapidly moves consum… - [ADA Compliance](https://docs.extole.com/docs/ada-compliance.md): For our customers' marketing programs, Extole provides baseline templates that have been audited for ADA compliance. As part of the implementation process, Extole customizes the templates based on brand-specific fonts, colors, imagery, and… - [Data Processing Agreement](https://docs.extole.com/docs/data-processing-agreement.md): Extole is a certified under the EU-U.S. Privacy Shield Frameworks. You can see the Extole Privacy Shield certification at: Extole, Inc. Privacy Shield (Active) - [Data Subject Rights](https://docs.extole.com/docs/data-subject-rights.md): See https://docs.extole.com/docs/gdpr-ccpa - [Extole Cookie Handling](https://docs.extole.com/docs/extole-cookie-handling.md): Extole drops a minimum number of cookies as part of the handling of the referral program. Cookies are designed to be specific to your program and your site and are not used in any cross-site capacity. - [Compliance & Policies](https://docs.extole.com/docs/compliance-policies.md): Extole's policies on data, privacy, and accessibility compliance. - [Advanced Report Configuration](https://docs.extole.com/docs/advanced-report-configuration.md): Extole reports have a variety of advanced configuration options for you to consider. While these are completely optional, they may help you better tailor a report to your needs or deliver the data to you in a more convenient fashion. - [Aggregated Reports](https://docs.extole.com/docs/aggregated-reports.md): An aggregated report is a powerful tool designed to streamline how you view and analyze data over time without repeatedly running large reports. - [Scheduled Reports](https://docs.extole.com/docs/scheduled-reports.md): The Schedules page, located within the Reports section of your My Extole account, lists all reports that run on a recurring schedule for your programs. - [Understanding How Extole Counts People](https://docs.extole.com/docs/understanding-how-extole-counts-people.md): Program and Campaign Dashboards give you total counts of events, but you can use the Configured Funnel Report to understand the number of unique people who have done a specific event. - [CSV Encoding](https://docs.extole.com/docs/csv-encoding.md): When downloading data in CSV format, there are some values that need to be quoted. Extole uses the following algorithm for determining which values to quote: - [Account Dashboard](https://docs.extole.com/docs/account-dashboard.md): Account dashboards include into two key graphs: Engagement & Activity and Outcomes. These metrics include data from all programs that you may be running with Extole, including those beyond just a referral program. - [Downloadable Reports on Program and Campaign Dashboards](https://docs.extole.com/docs/downloadable-reports-on-program-and-campaign-dashboards.md): My Extole is designed to quickly show you the numbers that you need in an easy to use visual way, but sometimes nothing can beat downloading a spreadsheet and crunching the data. This article covers the typical report metrics for a retail R… - [How Do I Prevent Testing Data from Appearing in my Analytics Dashboard?](https://docs.extole.com/docs/how-do-i-prevent-testing-data-from-appearing-in-my-analytics-dashboard.md): When interacting with the consumer experience of Extole, the default assumption is that any interaction is a part of the live campaign and data should be tracked as live data in the dashboards. To make sure that your test events such as sha… - [How to Measure and Benchmark Your Referral Program Success](https://docs.extole.com/docs/how-to-measure-and-benchmark-your-referral-program-success.md): Understanding how your referral program performs compared to industry benchmarks is critical for optimizing your results. While every program may vary due to custom events and offers, the benchmarks below will give you a high-level view of… - [The Influencer Program Page](https://docs.extole.com/docs/the-influencer-program-page.md): Our Influencer Program Page is the first of its kind: a program page that is dependent on the program type! Read on to see what differentiates this page from other program pages. - [Using My Timeline Dates](https://docs.extole.com/docs/using-my-timeline-dates.md): This article covers frequently asked questions about the Timeline Dates feature and how various dates and set and used throughout your My Extole account. - [How to Run a Report](https://docs.extole.com/docs/how-to-run-a-report.md): An essential part of a successful Extole program is your ability to quickly, accurately, and completely report on it. This article describes how to configure and run the various types of Extole reports that give you access to important data… - [Dashboards and Reporting](https://docs.extole.com/docs/dashboards-and-reporting.md): Read your dashboards, configure reports, and integrate Extole data into your own tools. - [How to Use the Extole Asynchronous Reporting API](https://docs.extole.com/docs/how-to-use-the-extole-asynchronous-reporting-api.md): Extole provides asynchronous API endpoints to download various reports. To run, check the status of, and download a report, you need to make calls across three API endpoints. - [Integrating Extole with Web Analytics](https://docs.extole.com/docs/integrating-extole-with-web-analytics.md): You can set up Extole to send web tracking information to various web and email analytics tools through the use of URL parameters, such as UTMs. - [Sending Reports to an External SFTP](https://docs.extole.com/docs/sending-reports-to-an-external-sftp.md): Get data delivered straight to your own SFTP server. Connecting your Extole programs with your own external systems makes it that much easier to get important information about your programs and participating customers into CRMs and ESPs. - [SFTP and Batch File Conventions](https://docs.extole.com/docs/sftp-and-batch-file-conventions.md): Extole supports using automated batch files to improve the execution of common activities. Batch files (also known as offline files) are a common method for transferring large volumes of information, and most customer relationship managemen… - [Using Extole's SFTP Server](https://docs.extole.com/docs/using-extole-s-sftp-server.md): Extole supports using automated batch files to improve the automation of common activities. Batch files (also known as offline files) are a common method for transferring large volumes of information, and most customer relationship manageme… - [New Customer Contribution Rate Report](https://docs.extole.com/docs/new-customer-contribution-rate-report.md): The New Customer Contribution Rate report provides an estimated ratio of new customers driven by Extole programs compared to your total new customer acquisition. It helps you understand the scale of acquisition through Extole relative to ot… - [Paused Reports](https://docs.extole.com/docs/paused-reports.md): In an effort to decrease the number of scheduled reports running overall, our system will pause reports automatically when they have not been viewed or downloaded for a certain period of time. You can also choose to pause reports manually i… - [Person vs. Related Person Columns in Reports](https://docs.extole.com/docs/person-vs-related-person-columns-in-reports.md): Learn how Extole reports determine the “Person” and “Related Person” in your referral program data. - [Recommended Reports](https://docs.extole.com/docs/recommended-reports.md): List of commonly used reports to see overall performance of your program and get detailed activity on the participants from your programs. - [Understanding the “Direct” Promotion Source](https://docs.extole.com/docs/understanding-the-direct-promotion-source.md): Use this guide to understand the Promotions section of your Program Dashboard - [Visit Type and Quality](https://docs.extole.com/docs/visit-type-and-quality.md): Understand what visit type and quality mean on your dashboards and in reporting - [Change the Reward on your Program](https://docs.extole.com/docs/change-the-reward-on-your-program.md): Update the reward on your campaign from the Flow Builder - [Common Trigger Rules](https://docs.extole.com/docs/common-trigger-rules.md): Understand the trigger rules available when building campaigns on Flow Builder - [Configure Common Reward Scenarios for Credit Unions and Banks](https://docs.extole.com/docs/configure-common-reward-scenarios-for-credit-unions-and-banks.md): 💡 Important Note: This guide only applies to flow campaigns that use Extole's upgraded Flow Builder. Check for the flow icon next to your campaign name. - [Default Business Event Quality Rules](https://docs.extole.com/docs/default-business-event-quality-rules.md): Guide to the common business event quality rules you can enable on your program - [How to Add a Coupon Reward to Your Referral Program](https://docs.extole.com/docs/how-to-add-a-coupon-reward-to-your-referral-program.md): Add coupon rewards and configure reward emails on your referral program - [How to Add a New Business Event](https://docs.extole.com/docs/how-to-add-a-new-business-event.md): Add a new business event to your flow campaign via Extole's upgraded Flow Builder. - [How to Add a New Reward](https://docs.extole.com/docs/how-to-add-a-new-reward.md): Add a new reward to your campaign using Extole’s upgraded Flow Builder. - [How to Add a Promotion Email or Onsite CTA](https://docs.extole.com/docs/how-to-add-a-promotion-email-or-onsite-cta.md): Promote your campaign with promotional emails or a new onsite or in-app call to action via Extole's upgraded Flow Builder. - [How to Approve Failed Rewards](https://docs.extole.com/docs/how-to-approve-failed-rewards.md): Investigate and approve failed rewards on behalf of your customers in Extole's User Support for flow campaigns. - [How to Issue a Manual Reward](https://docs.extole.com/docs/how-to-issue-a-manual-reward.md): Create manual rewards on behalf of your customers in Extole's User Support for flow campaigns. - [How to Set Up a Reward](https://docs.extole.com/docs/how-to-set-up-a-reward.md): Set up and change rewards using Extole’s upgraded Flow Builder. - [How to Set Up a Tango Gift Card Reward](https://docs.extole.com/docs/how-to-set-up-a-tango-gift-card-reward.md): Set up or change Tango gift card rewards using Extole's upgraded Flow Builder. - [How to Set Up Business Event Rules](https://docs.extole.com/docs/how-to-set-up-business-event-rules.md): Customize the existing business rules of your flow campaign or add new rules to business events via Extole's Flow Builder. - [How to Set Up Reward Rules](https://docs.extole.com/docs/how-to-set-up-reward-rules.md): Configure reward rules to ensure the right people are getting rewarded using Extole’s upgraded Flow Builder. - [How to Target a Program](https://docs.extole.com/docs/how-to-target-a-program.md): Set up program targeting using Extole’s upgraded Flow Builder. - [Flow Campaigns](https://docs.extole.com/docs/flow-campaigns.md): Use Extole's Flow Builder to set up and manage campaigns. - [Add a Promotion (Onsite Call-to-Action or Marketing Email)](https://docs.extole.com/docs/add-a-promotion-onsite-call-to-action-or-marketing-email.md): Add CTAs to improve visibility of your programs from the Flow Builder - [Exploring the Programs Page](https://docs.extole.com/docs/exploring-the-programs-page.md): The Programs page of your My Extole account loads your programs and campaigns lightning-fast, and lets you get right to work on editing your campaign with just the click of a button. - [Exploring the Reports Page](https://docs.extole.com/docs/exploring-the-reports-page.md): Extole platform delivers the essential part of successful growth and engagement programs: quick, accurate, and rich reporting. All data accumulated by your Extole programs is accessible to you through the Reports section of your My Extole a… - [Extole Opt-In/Opt-Out Sync Guide](https://docs.extole.com/docs/extole-opt-in-opt-out-sync-guide.md): A non technical explanation on how to integrate your opt-ins and opt-outs - [Getting Started with Extole](https://docs.extole.com/docs/getting-started-with-extole.md): This guide will highlight the key concepts and activities that Extole users should feel comfortable with as they scale their program - [Go-Live QA Checklist](https://docs.extole.com/docs/go-live-qa-checklist.md): Follow these steps to successfully QA the advocate and friend funnels before setting a campaign live - [Program and Campaign Flows](https://docs.extole.com/docs/program-and-campaign-flows.md): Program flows describe the sequence of events that consumers visit within a given program. When you launched your Extole program, you were shown a flow diagram depicting a typical consumer experience. Now, you can see that same flow diagram… - [Webhooks](https://docs.extole.com/docs/webhooks.md): Webhooks can be seen as the key building blocks of applications, allowing systems to exchange data in real-time in response to events. They act as the modern, web-oriented way for servers to receive notifications from other servers. Now, wh… - [Platform Overview](https://docs.extole.com/docs/getting-help.md): Get a platform overview and understand key concepts about Extole and referral. - [Introducing My Extole](https://docs.extole.com/docs/introducing-my-extole.md): Welcome to the My Extole platform. Whether you’re logging in for the first time or you need a refresher, this guide will walk you through the top two sections of your My Extole account: the Programs page and Program Dashboard. - [Acquisition Rate](https://docs.extole.com/docs/acquisition-rate.md): Share Rate. Click Through Rate. Conversion Rate. It can be difficult to understand the effectiveness of your referral program and where to spend your time to bring in the most customers. - [How Does Extole Recognize Advocates?](https://docs.extole.com/docs/how-does-extole-recognize-advocates.md): An Advocate is the consumer who is referring their friends - [Referral Marketing Glossary](https://docs.extole.com/docs/referral-marketing-glossary.md): Before getting started with Extole, it is important that we establish a common vocabulary when talking about referrals. We're excited to share our newly released Referral Marketing Encyclopedia! In it you'll find definitions for all the key… - [Understanding Participation Rate](https://docs.extole.com/docs/understanding-participation-rate.md): To measure how broad your advocate base is, Extole uses a metric called Participation Rate. Participation Rate compares the number of advocates to the number of transactors (e.g. purchasers, new members) over a time period. A high Participa… - [What is the Value that Extole Delivers?](https://docs.extole.com/docs/what-is-the-value-that-extole-delivers.md): Referral is person-centric. The value Extole delivers is different than typical direct attribution marketing which typically treats everything as a transaction vs. a customer. Some of the key areas referrals provide value: - [Leveraging User Support Pages](https://docs.extole.com/docs/leveraging-user-support-pages.md): While running programs and campaigns with Extole, your customers may have questions about their participation in the program. The Extole platform provides customer support tools to help you answer these questions. The most common question a… - [Manually Uploading Events to Extole](https://docs.extole.com/docs/manually-uploading-events-to-extole.md): Upload events directly into Extole for testing or resending past events - [Meet Cate: Your 24/7 Program Assistance Chatbot](https://docs.extole.com/docs/meet-cate-your-24-7-program-assistance-chatbot.md) - [Program and Campaign Dashboards](https://docs.extole.com/docs/program-and-campaign-dashboards.md): This article deep dives into the various sections and metrics present on your Program and Campaign Dashboards. Since you can send any number of events into your Extole programs and see those same events displayed within the tool, bear in mi… - [Programs vs. Campaigns](https://docs.extole.com/docs/programs-vs-campaigns.md): If your program is the strategy, your campaign is the execution of that strategy with specific designs and configurations - [Referral Program QA Guide for Marketers](https://docs.extole.com/docs/referral-program-qa-guide-for-marketers.md): This guide walks you through how to QA your referral program end-to-end. You will simulate the experience both as the advocate and friend. - [Set Up Dynamic Eligible Audience Files](https://docs.extole.com/docs/set-up-dynamic-eligible-audience-files.md): Set up a daily feed of your eligible customers who can participate in your program - [Targeting](https://docs.extole.com/docs/targeting.md): This document explains how Extole’s targeting system selects the correct campaign and referral relationship for an event using explicit targeting, required matching rules, ranking logic, and fallback behavior. - [Tracking Referrals via Tags vs. Email Capture](https://docs.extole.com/docs/tracking-referrals-via-tags-vs-email-capture.md): Use this guide to decide whether to tag your website to track referrals or use an email capture form for the referred friends. - [Uploading an Eligibility Audience File via SFTP](https://docs.extole.com/docs/uploading-an-eligibility-audience-file-via-sftp.md): If you want to limit program eligibility to a defined list of users, Extole can process that list as an audience file. This allows you to control which users are eligible to participate in your referral program as an Advocate. - [Notifications & Troubleshooting](https://docs.extole.com/docs/notifications-troubleshooting.md): Troubleshoot issues and configure platform notifications. - [Managing Your SSL Certificates](https://docs.extole.com/docs/managing-your-ssl-certificates.md): See https://docs.extole.com/docs/manage-your-ssl-certificate - [Extole Browser Support](https://docs.extole.com/docs/extole-browser-support.md): Extole aims to support all modern desktop and mobile browsers across different operating systems. Extole continually reviews browser market share as well as our support for different browsers. This article details our currently supported br… - [How can I Whitelist My Extole in uBlock Origin?](https://docs.extole.com/docs/how-can-i-whitelist-my-extole-in-ublock-origin.md): The Ad Block Chrome Extension, uBlock Origin, has added extole.io into the list of sites that it blocks. This does not impact customer-facing programs, since these program run under a branded domain. Unfortunately, this does impact successf… - [How do I view Extole System Status and subscribe to Extole Updates?](https://docs.extole.com/docs/how-do-i-view-extole-system-status-and-subscribe-to-extole-updates.md): How to subscribe to Extole status updates and view historical uptime. - [Login Troubleshooting Tips](https://docs.extole.com/docs/login-troubleshooting-tips.md): If you are experiencing errors when logging into your Extole dashboard, below are some tips to help you resolve this issue. - [Subscribing to My Extole Notifications](https://docs.extole.com/docs/subscribing-to-my-extole-notifications.md): In your My Extole account, you can manage your subscription to in-app notifications. Just click on your account in the bottom left corner to open the menu and select Notifications. On this page, you will see all recent notifications or an e… - [What to do When you Get a Notification](https://docs.extole.com/docs/what-to-do-when-you-get-a-notification.md): For any given notification, we recommend you view it at https://my.extole.com/notifications. There, you can view more details about the notification and optionally snooze it for up to 30 days in the future. - [Why is the from email @email.referral-mail.com? - Gmail Friendly From Changes](https://docs.extole.com/docs/why-is-the-from-email-email-referral-mail-com-gmail-friendly-from-changes.md): Gmail has unilaterally decided to change its DMARC policy, which means that Referral Emails sent using gmail.com in the from address, will have to originate from Gmail's infrastructure: - [Quick Troubleshooting Guide](https://docs.extole.com/docs/quick-troubleshooting-guide.md): This document is meant to be a quick reference guide to troubleshooting common issues. All steps should be followed sequentially in order to ensure the settings have been properly configured. - [Add an Advocate Stats Dashboard](https://docs.extole.com/docs/add-an-advocate-stats-dashboard.md): Keep your advocates motivated by providing them with real-time insights into their referral activity and rewards. An Advocate Stats Dashboard helps advocates: - [Adding and Removing Share Channels](https://docs.extole.com/docs/adding-and-removing-share-channels.md): Learn how to change the channels in which advocates can refer friends - [Advocate Share Experience](https://docs.extole.com/docs/advocate-share-experience.md): The heart of a referral program is the advocate experience—the call-to-action used by your customers to share your brand and your product with friends, family, and the world. The sharing experience provides advocates with the following opti… - [Advocate Invite Email](https://docs.extole.com/docs/advocate-invite-email-asset-guide.md) - [Advocate Stats Email](https://docs.extole.com/docs/advocate-stats-email-asset-guide.md) - [Creative Image Asset Guide](https://docs.extole.com/docs/creative-image-asset-guide.md): All images should be in .jpg or .png format and their size must not exceed 3МВ. You can use any online image compressor to reduce file size. - [Drop a Hint Asset Guide](https://docs.extole.com/docs/drop-a-hint-asset-guide.md): Get your consumers to share products with their networks that they want to be gifted! - [Earned Reward Emails](https://docs.extole.com/docs/earned-reward-emails-asset-guide.md) - [Friend Landing Experience](https://docs.extole.com/docs/friend-landing-experience-asset-guide.md) - [Friends & Family Asset Guide](https://docs.extole.com/docs/friends-family-asset-guide.md): Give your most important consumers a robust offer with the ability for them to share the exclusive offer with a select number of friends! - [Nomination Asset Guide](https://docs.extole.com/docs/nomination-asset-guide.md): The promotion email is how you announce your Nomination program to your customers. When they click on 'Nominate a Friend', they'll be brought to the promote destination you've set -- this is typically an Extole-hosted microsite at refer.com… - [Pending Reward Email](https://docs.extole.com/docs/pending-reward-email-asset-guide.md) - [Share Email & Reminder](https://docs.extole.com/docs/share-email-reminder-asset-guide.md) - [Share Experience](https://docs.extole.com/docs/share-experience-asset-guide.md) - [Social Media Share Creative Elements](https://docs.extole.com/docs/social-media-share-creative-elements.md): This article covers the default creative elements of your program's promotional emails . Just like email sharing, social media represents an important part of your referral program. - [Sweepstakes Asset Guide](https://docs.extole.com/docs/sweepstakes-asset-guide.md): To learn more about our Sweepstakes program, please see this Help Center article. - [Welcome Email](https://docs.extole.com/docs/welcome-email-asset-guide.md) - [Welcome Offer Asset Guide](https://docs.extole.com/docs/welcome-offer-asset-guide.md): The email capture popup is what prompts visitors to enter their information and opt-in to marketing emails. After the user enters their email and it passes Extole's quality and rewarding rules, this popup is also what will show the new cust… - [Call-to-Action Creative Elements](https://docs.extole.com/docs/call-to-action-creative-elements.md): This article covers the default creative elements of your program's call-to-action (CTA) zones. CTAs serve as the primary point of engagement for your referral program. CTAs can be dynamic or static, and typically launch the advocate share… - [Creative Customizations](https://docs.extole.com/docs/creative-customizations.md): Our Campaign Editor provides you with rich templates for each of the creative elements of your program. Each call to action, outbound email, and program experience template is set up according to our best practices with sensible defaults an… - [Enable Friend Email Capture for Opt Ins](https://docs.extole.com/docs/enable-friend-email-capture-for-opt-ins.md): A key feature of the Extole platform is the ability to track and reward not only at key events, like conversions or account openings, but at interim steps—like sign ups. When referred friends sign up for your emails using the Friend Email C… - [How Do I Clone an Existing Campaign?](https://docs.extole.com/docs/how-do-i-clone-an-existing-campaign.md): So you have successfully created a campaign that expresses your brand and you want to use this as a template for creating a new campaign. In order to duplicate or clone an existing campaign please follow these steps: - [Implement Fonts Across Your Creatives](https://docs.extole.com/docs/implement-fonts-across-your-creatives.md): You have the ability to implement fonts for your campaigns within the Campaign Editor of your My Extole account. This allows you to match your referral program fonts to the branding on your site. - [Using Extole's Campaign Editor](https://docs.extole.com/docs/using-extole-s-campaign-editor.md): Located in your My Extole account, our Campaign Editor is a comprehensive tool that allows you to fully customize and configure your Extole program experiences, emails, and promotions (i.e., creatives), as well as quality rules and business… - [Choosing Your Advocate Sharing Experience](https://docs.extole.com/docs/choosing-your-advocate-sharing-experience.md): A walkthrough of choices available to you for your advocate share experience. - [Common HTML Tags for Basic Campaign Editing](https://docs.extole.com/docs/common-html-tags-for-basic-campaign-editing.md): When using the Campaign Editor, you can customize your layout and styling using simple HTML tags. This is available in the different variable fields in your program’s emails, pop-ups, landing pages and terms. - [Editing the Advocate Microsite and Share Experience](https://docs.extole.com/docs/editing-the-advocate-microsite-and-share-experience.md): If you are updating the Advocate Microsite, there are a few places that will be updated within the Microsite section of your campaign and several that will be updated within the Share Experience. This guide will help you understand what nee… - [Go  Extole App Login Guide](https://docs.extole.com/docs/go-extole-app-login-guide.md): This guide explains how to get started and covers key troubleshooting steps - [How to Set Up a Reward for Action Offer Program](https://docs.extole.com/docs/how-to-set-up-a-reward-for-action-offer-program.md): Learn how to set up a simple reward for action program to reward participants for completing a survey, signing up for e-statements and more. - [How to Upload Terms & Conditions](https://docs.extole.com/docs/how-to-upload-terms-conditions.md): This article explains how to upload and manage your program’s Terms and Conditions. The best way to ensure your terms are carried across all assets is to update your terms within the Overview section. Note, to add any styling, HTML formatti… - [Programs & Campaigns](https://docs.extole.com/docs/programs-campaigns.md): Launch new campaigns, edit creatives, and find asset guides. - [Adding Languages to International Programs](https://docs.extole.com/docs/adding-languages-to-international-programs.md): If you're running an international program, we strongly encourage you to support as many native languages as possible. Doing so ensures that your customers can easily connect with your brand and advocate on your behalf. This article offers… - [Configuring an International Program](https://docs.extole.com/docs/configuring-an-international-program.md): Are you wanting to run a multi-region, multi-language, multi-reward program? Let's go over some best practices. - [International Programs](https://docs.extole.com/docs/international-programs.md): For years, we have helped our clients operate referral and other acquisition and retention programs internationally. If you have a presence outside the US and want to grow those markets, we're here to help. With Extole as an existing partne… - [How to Push Your Test Campaign Live](https://docs.extole.com/docs/how-to-push-your-test-campaign-live.md): The following instructions are how to make your campaign live. You should do this with your Customer Success Manager. - [How to QA Your Referral Program](https://docs.extole.com/docs/how-to-qa-your-referral-program.md): This article covers how to perform quality assurance (QA) tests on your program. Bear in mind that this is completely optional. As part of your Extole launch support, we will conduct a rigorous QA process that tests your program on multiple… - [How to Run A Burst](https://docs.extole.com/docs/how-to-run-a-burst.md): A great way to boost an evergreen program is by running a burst campaign. A burst is a strategic, limited-time variation of your standard campaign that typically offers a more enticing or seasonal reward to increase shares and conversions. - [Making Updates to your Campaigns](https://docs.extole.com/docs/making-updates-to-your-campaigns.md): Learn how to duplicate a campaign, apply and publish changes when you want to update your copy and creative. - [Pausing, Ending, and Scheduling Campaigns](https://docs.extole.com/docs/pausing-ending-and-scheduling-campaigns.md): When concluding a campaign, use the campaign state to determine what experience participants will see and set them to go live at a specific time. - [Share Link and Promote Link Behavior](https://docs.extole.com/docs/share-link-and-promote-link-behavior.md): Set your share and promote destination URLs to drive higher conversions - [My Account Settings](https://docs.extole.com/docs/my-account-settings.md): The My Account page in your My Extole account allows you to manage brand-level settings, like company name, logo, website, and primary fonts and colors. These settings are then passed down to your Extole programs and campaigns, giving you a… - [Agent Programs](https://docs.extole.com/docs/agent-programs.md): The key to referral success is promotion. If you want high levels of advocacy, you need awareness: you need to tell customers that there is a program, and more importantly, you need to ask for the referral. In most programs this means a bal… - [Campaigns for Selected Audiences](https://docs.extole.com/docs/campaigns-for-selected-audiences.md): Leverage the power of audience-segmented referral campaigns to target specific subsets of your customer base. With tailored messaging and rewards, you can maximize the impact of your referral programs by offering personalized experiences th… - [Launch a Credit Union Welcome Offer](https://docs.extole.com/docs/launch-a-credit-union-welcome-offer.md): Drive acquisition with new member offers by implementing an Extole Credit Union Welcome Offer. These campaigns reward new members for joining and completing qualifying actions with easy setup, minimal lift, and no required promo codes. - [Launch a Sweepstakes / Giveaway](https://docs.extole.com/docs/launch-a-sweepstakes-giveaway.md): Use sweepstakes and giveaways to drive marketing list growth easily with Extole - [Run Targeted Super Advocate Programs](https://docs.extole.com/docs/run-targeted-super-advocate-programs.md): Read more about influencer programs here and the influencer program page here! - [Sweepstakes Program](https://docs.extole.com/docs/sweepstakes-program.md): A Sweepstakes is a program where consumers are encouraged to provide their information via a form submission in return for a chance to win a prize or gift from a brand they love (that's you!). Unique to Extole is the ability for consumers t… - [Welcome Offer Program](https://docs.extole.com/docs/welcome-offer-program.md): A Welcome Offer Program is a great way to build a lasting relationship from the very beginning of a customer's experience, ultimately improving customer retention. In a Welcome Offer Program, a new user lands on your site and is immediately… - [Overlay Creative Elements](https://docs.extole.com/docs/overlay-creative-elements.md): Overlays hover over your site's content. There are two types of overlays: - [Overlay CTAs and How to Optimize Them for Sharing](https://docs.extole.com/docs/overlay-ctas-and-how-to-optimize-them-for-sharing.md): Floating overlays are a top performing CTA and bring widespread visibility to your campaign - [Reward Bank Redemption Experience](https://docs.extole.com/docs/reward-bank-redemption-experience.md): Understand the user experience when implementing Extole's Reward Bank - [Tango Reward Email](https://docs.extole.com/docs/tango-reward-email.md): Customize the gift card reward email when using Tango Card rewards. - [Rewards Management](https://docs.extole.com/docs/rewards-management.md): Investigate reward inquiries and manage the rules on your program. - [Approving and Declining Events Workflow](https://docs.extole.com/docs/approving-and-declining-events-workflow.md): As advocates and friends interact with your referral program, their actions generate events such as shares, clicks, registrations, account openings, quote submissions, purchases, and more. All events are scored for suspicious quality and ar… - [How to Block Users and Decline Shares](https://docs.extole.com/docs/how-to-block-users-and-decline-shares.md): Your referral marketing program exists to bring in good business, but there are plenty of people out there who don't play by the rules. Extole's quality engine works to catch people who are manipulating a campaign in violation of your progr… - [How to Investigate a WISMR Request](https://docs.extole.com/docs/how-to-investigate-a-wismr-request.md): Step by step on investigating reward requests and sending out rewards - [How to Manually Create a Referral or other Event](https://docs.extole.com/docs/how-to-manually-create-a-referral-or-other-event.md): In the course of supporting customers and running your referral campaign, you and your support team may need to manually create referrals or other events. - [Inform Your Support Team about Your Extole Program](https://docs.extole.com/docs/inform-your-support-team-about-your-extole-program.md): Use this article as a guide for educating your support team on the ins and outs of Extole and your program. - [Look Up and Understand Your Program Event Statuses](https://docs.extole.com/docs/look-up-and-understand-your-program-event-statuses.md): As consumers engage with your marketing programs, their actions generate events such as impressions, shares, clicks, registrations, and purchases. All events are scored by our quality rules, and are then either approved or declined based on… - [WISMR 101: Understanding Customer Reward Inquiries](https://docs.extole.com/docs/wismr-101-understanding-customer-reward-inquiries.md) - [Configuring the Rules of Your Program](https://docs.extole.com/docs/configuring-the-rules-of-your-program.md): Quality and reward rules are applied to all key events that occur within your Extole programs. These rules can be configured in the My Extole Campaign Editor under the Rules tab. - [Fraud and Anti-gaming Protection](https://docs.extole.com/docs/fraud-and-anti-gaming-protection.md): Extole employs a sophisticated, AI-powered tool to detect and prevent fraudulent activity from bad actors and broader gaming attempts on your programs. - [New Customer Rule](https://docs.extole.com/docs/new-customer-rule.md): Extole allows you to understand if your referral program is bringing in new customers or bringing existing customers back to spend more. Extole will capture the last purchase date and put it in the consumer profile of anyone who interacts w… - [Preventing Fraud and Best Practices for Campaign Rules](https://docs.extole.com/docs/preventing-fraud-and-best-practices-for-campaign-rules.md): Anytime a company is offering a reward or discount, there will inevitably be people trying to get around the rules of the offer to game the system. Because of this fact, Extole has implemented measures to identify fraud so your company is o… - [Sending Rewards with Tremendous](https://docs.extole.com/docs/sending-rewards-with-tremendous.md): Learn more about our reward offers available through Tremendous - [Set Up Account Credits for Financial Institutions](https://docs.extole.com/docs/set-up-account-credits-for-financial-institutions.md): Follow these steps to enable account credits as your referral reward for banks and credit unions - [Auto-Applying Multi-Use Coupons](https://docs.extole.com/docs/auto-applying-multi-use-coupons.md): If your system only has multi-use coupon code capabilities for friends, Extole suggests that you never expose those codes to the consumer, especially if they are static. This helps to avoid multi-use codes from getting posted directly on so… - [General Information About Tango Gift Cards](https://docs.extole.com/docs/general-information-about-tango-gift-cards.md): Recipients will be sent an Earned Reward Email directly from Tango. The email will contain a link that will take the recipient to the redemption portal. From there, the recipient needs to fill out a form and provide their information for se… - [How to Reward with Account Credits](https://docs.extole.com/docs/how-to-reward-with-account-credits.md): Account credits are another way to reward loyal customers who share your site with friends. Account credits can be awarded as discounts, redeemable points or cash. - [How to Reward with Coupons](https://docs.extole.com/docs/how-to-reward-with-coupons.md): Coupon rewards are a great way to reward your customers while encouraging them to continue shopping, sharing, and loving your products or services. Extole supports the ability to load lists of one-time use coupon codes into the system that… - [How to Reward with Salesforce Commerce Cloud](https://docs.extole.com/docs/how-to-reward-with-salesforce-commerce-cloud.md): You can use the Extole Salesforce Commerce Cloud Cartridge as a reward option. This integration allows you to automatically replenish coupons without the need to upload coupon codes into My Extole. - [How to Reward with Tango Gift Cards](https://docs.extole.com/docs/how-to-reward-with-tango-gift-cards.md): If your company provides a product or services where it doesn't make sense to reward your consumers with a coupon or other discount on the service you provide, you may want to thank them for sharing by giving them a gift card that can be us… - [Offer Advocates Multiple Gift Card Options](https://docs.extole.com/docs/offer-advocates-multiple-gift-card-options.md): The reward you give to your consumers should be tailor-made to fit with your brand. Though this will usually be a single coupon, account credits, or a gift card, there are some use cases where you might want to offer them a choice of reward… - [Rewards Overview and FAQ](https://docs.extole.com/docs/rewards-overview-and-faq.md): Rewards are a key part of any referral program. Choosing the right reward can improve the overall performance of your program and create a positive experience for your users. This guide will walk through the different reward types that are… - [Using Reward Passes with a Mobile Wallet](https://docs.extole.com/docs/using-reward-passes-with-a-mobile-wallet.md): We offer the ability for your consumers to add a reward as a pass in their mobile wallets! Advocates and Friends can do this from their earned reward emails. Simply toggle on 'Mobile Wallet Button' and set your 'Mobile Wallet Button Text' i… - [A/B Testing Your Campaign](https://docs.extole.com/docs/a-b-testing-your-campaign.md): A good referral program drives quality new customer acquisition. A great program activates a significant and broad base of participants. Extole allows you to test messaging, CTAs, rewards, and rules to optimize all aspects of your program. - [A/B Testing Your Offer](https://docs.extole.com/docs/a-b-testing-your-offer.md): When you are running an A/B test between two different campaigns to specifically test your offer structure, there are a few additional updates that need to be made. If you are looking for more general information about A/B testing, please r… - [Boost Share Rates with the Stats Drip](https://docs.extole.com/docs/boost-share-rates-with-the-stats-drip.md): Right now you might have have a Stats Email that an advocate can manually trigger from the Share Experience. This email can automatically start dripping to advocates after they share and has been seen to improve revenue by 5-7% just by havi… - [Enable and Test Friend Reminder Email](https://docs.extole.com/docs/enable-and-test-friend-reminder-email.md): One of the channels that an advocate can share your offer and brand with their friends is via email. Because some friends may not click on the offer in that original email, Extole has a feature that will enable a reminder email to be sent t… - [How Do I Enable Content Sharing?](https://docs.extole.com/docs/how-do-i-enable-content-sharing.md): Typically when your customers share, they will be either sharing your entire company or a specific offer to the friend. It's also possible to allow the customers to share information about a specific product or category as the focus of the… - [How Do I Prevent Ad Blockers from Blocking My Extole Experience](https://docs.extole.com/docs/how-do-i-prevent-ad-blockers-from-blocking-my-extole-experience.md): Would you like to identify 11% more advocates and generate 11% more revenue from refer-a-friend? Extole has a new tag approach to unlock those gains by adjusting a few things to minimize loss from adblockers. The approach involves serving E… - [Invite Customers to Share Post-Purchase](https://docs.extole.com/docs/invite-customers-to-share-post-purchase.md): Asking for a referral right after a customer makes a purchase is extremely effective; this request touches them when they are happy and connected to your brand. They are on a buyer's high! - [Mail After Purchase - Asking for a Referral When It Matters](https://docs.extole.com/docs/mail-after-purchase-asking-for-a-referral-when-it-matters.md): One of the most powerful ways to market your refer-a-friend program is right after your customers have purchased. A share experience on the Order Thank You page sparks action because your customers are eager with anticipation, happy with yo… - [Optimizing Share Channels](https://docs.extole.com/docs/optimizing-share-channels.md): Maximizing your program performances means turning every customer, enthusiast, and any other person who interacts with your brand into an advocate who shares your products and services with the people that they think will benefit. - [Optimizing your Referral Program](https://docs.extole.com/docs/optimizing-your-referral-program.md): Your My Extole dashboard can provide a lot of insights into the performance of your program. Are advocates clicking on your CTAs, but not sharing? Are friends signing up, but not converting? These are variables that can be tested and optimi… - [Using Promotion Badges](https://docs.extole.com/docs/using-promotion-badges.md): While we work tirelessly to direct your program emails to your customers' primary inboxes, we cannot guarantee where an email will land. Email services like Gmail have not released the criteria they consider when developing the algorithms t… - [Why You Should Pop-up Your Advocate Share Experience](https://docs.extole.com/docs/why-you-should-pop-up-your-advocate-share-experience.md): A dedicated landing page with an in-page share experience, also known as a dedicated sharing page, is a great way to start driving referrals, but there's a better way for you to reach peak performance. A pop-up share experience that appears… - [Create Your Own Customer Facing FAQ](https://docs.extole.com/docs/create-your-own-customer-facing-faq.md): As a best practice, we recommend putting together a customer facing Frequently Asked Questions (FAQ) about your Extole program. Your FAQ can be placed in an accessible area on your website and used as an aid to your customer support team so… - [Strategy & Best Practices](https://docs.extole.com/docs/strategy-best-practices.md): Get the most out of your program with bursts and campaign optimizations. - [Capturing In-Person Referrals](https://docs.extole.com/docs/capturing-in-person-referrals.md): For credit unions, banks, lenders and other institutions that provide in-person services, it’s essential to make your referral program available not just online, but also at the branch. Extole’s In-Branch Referral Page ensures that staff ca… - [Create A Compelling Offer Structure](https://docs.extole.com/docs/create-a-compelling-offer-structure.md): Incentives are an integral part of your referral program and ensuring the right reward amount and the right type of reward are in place is essential. Optimizing the offer structure throughout the lifetime of the program helps identify which… - [How to Market Your Program](https://docs.extole.com/docs/how-to-market-your-program.md): Best practices for where to add CTAs to market and scale your referral program - [Increasing Activity](https://docs.extole.com/docs/increasing-activity.md): Once we have a working referral program, success can be measured along two dimensions, Participation and Activity. Participation is simply how many (or what percentage) of your customers are active. Activity is how much each participant is… - [Taking Referrals from Site-to-Store](https://docs.extole.com/docs/taking-referrals-from-site-to-store.md): Use Extole Site-to-Store capabilities to connect the online and in-store experiences of your best customers: your advocates and their friends. Extole enables you to reward offline purchases and give in-store rewards. - [Top-Performing CTA: Implement the Overlay Call-to-Action Across Your Site](https://docs.extole.com/docs/top-performing-cta-implement-the-overlay-call-to-action-across-your-site.md) - [Trigger Advocacy with Seasonal and Burst Promotions](https://docs.extole.com/docs/trigger-advocacy-with-seasonal-and-burst-promotions.md): Keep your referral program fresh and fun in your customer’s minds. Seasonal or burst promotions, both of which are limited time offers, can trigger an influx in advocacy shares and friend conversions resulting in both short-term and long-te… - [Access Multiple Instances](https://docs.extole.com/docs/access-multiple-instances.md): Extole’s enterprise account capabilities are great for companies that have many sub-brands, agencies supporting multiple clients, and franchise organizations. With enterprise accounts, a central team can access all sub-brand accounts while… - [User Management](https://docs.extole.com/docs/user-management.md): Manage users that have access to the My Extole platform. - [Creating an Extole Account](https://docs.extole.com/docs/creating-an-extole-account.md): You just received an email inviting you to get started with Extole. You'll need to follow these three easy steps: - [Deleting Team Members](https://docs.extole.com/docs/deleting-team-members.md): As your team changes, you will need to remove users who no longer need access to your dashboard. To remove users, follow the steps below. - [Inviting Team Members](https://docs.extole.com/docs/inviting-team-members.md): Once you have completed the Extole registration process and your account has been created, you may invite your team members to join. - [Managing Your Extole Users](https://docs.extole.com/docs/managing-your-extole-users.md): This article provides you with all of the information necessary to invite coworkers to your My Extole account. In addition, you can also learn how to add users, delete users, edit users, reset passwords, and so on. - [Okta Single Sign-On to My Extole](https://docs.extole.com/docs/okta-single-sign-on-to-my-extole.md): My Extole supports a wide range of services for SSO. In order to connect Okta to My Extole, you'll use an OpenID Connect (OIDC) identity provider using the following steps. - [User Roles & Permissions](https://docs.extole.com/docs/user-roles-permissions.md): Extole’s user roles are great for organizing your team members and managing access within your Extole account. In particular, roles can help you delegate work across your team by focusing account access for specific members based on their p… - [A/B Testing](https://docs.extole.com/docs/ab-testing.md): Optimize your referral and engagement experiences to get the most out of each aspect of your customer journey. - [Limited Time Bursts](https://docs.extole.com/docs/limited-time-bursts.md): Drive more referrals by offering time-sensitive, high-impact rewards that create urgency and excitement. - [Referral Reward Strategy: Financial Services](https://docs.extole.com/docs/referral-reward-strategy-financial-services.md): Choosing the right referral reward is essential to maximizing engagement and driving new member acquisition. The reward should be compelling enough to motivate both current members and their friends, while also aligning with the requirements needed to earn it. - [Referral Reward Strategy: Retail](https://docs.extole.com/docs/referral-reward-strategy-retail.md): Choosing the right referral reward is a key component of your broader promotional strategy. The rewards need to be enticing to your current customers and their friends while standing out from other offers available onsite. - [Extole Overview](https://docs.extole.com/docs/getting-started.md): Understand key concepts about Extole and referral. - [Terms You Should Know](https://docs.extole.com/docs/terms-you-should-know.md): To succeed with referral marketing, you need to understand its terms. Get to know Extole's terminology. - [What is Extole?](https://docs.extole.com/docs/what-is-extole.md): Extole is the customer-led growth platform for marketers. Your existing customers are your greatest asset for acquiring new, high-quality customers and growing your business, and Extole provides the tools to help you realize it. Invest in your future with scalable referral marketing and customer engagement solutions by partnering with Extole. - [Your Team at Extole](https://docs.extole.com/docs/your-team.md): Get to know all of the services we provide our clients and the teams you'll work with throughout the launch process and beyond to get the most out of your Extole programs. - [Emails](https://docs.extole.com/docs/emails.md): Learn more about the types of emails included in your Extole programs. - [Experiences](https://docs.extole.com/docs/experiences.md): Learn more about the various experiences you can curate for your customers using Extole. - [Promotions & Marketing](https://docs.extole.com/docs/promotions.md): Learn more about how you can market your program effectively using onsite, in app and outbound CTAs - [Data Overview](https://docs.extole.com/docs/data-overview.md) - [Reports](https://docs.extole.com/docs/reports.md): Extole reports allow you to easily and reliably track and growth and performance of your programs. - [Events Overview](https://docs.extole.com/docs/events-overview.md) - [In-Person Referrals](https://docs.extole.com/docs/in-person-referrals.md): We have several solutions for tracking referral events that occur in-person. Discover the right method for your business. - [Non-referral Events](https://docs.extole.com/docs/non-referral-events.md) - [Referral Events](https://docs.extole.com/docs/referral-events.md) - [Creative Content](https://docs.extole.com/docs/creative-content.md) - [Creative Image Asset Guide](https://docs.extole.com/docs/creative-image-asset-guide.md) - [Enterprise Accounts & User Roles](https://docs.extole.com/docs/enterprise-accounts-user-roles.md) - [Integration Overview](https://docs.extole.com/docs/integration-basics.md): Learn about what it means to integrate with Extole, what processes and system connections are required, and how long it takes to launch. - [Launch FAQs](https://docs.extole.com/docs/launch-faqs.md): Find answers to our clients' most common questions relating to the integration and launch process. - [Quick Integration](https://docs.extole.com/docs/quick-integration.md): Getting your first program off the ground can be low-lift without sacrificing style or functionality. Learn how to set up a basic integration with Extole. - [Receiving Data from Extole](https://docs.extole.com/docs/receiving-data-from-extole.md) - [Rewarding](https://docs.extole.com/docs/rewarding.md) - [Sending Data to Extole](https://docs.extole.com/docs/sending-data-to-extole.md) - [Advocate Tiers](https://docs.extole.com/docs/advocate-tiers.md): You may think of the advocates that participate in your customer engagement programs as a single, unified group. However, our data gives us the power to create meaningful segments within the advocate group so that each segment can be treate… - [My Audiences](https://docs.extole.com/docs/audience-discovery.md): Learn about Extole's Audience Discovery tool and the various types of audiences we can identify for you. - [Audiences](https://docs.extole.com/docs/people-overview.md): Read about the nature and capabilities of Extole Audiences. - [Drop a Hint](https://docs.extole.com/docs/drop-a-hint.md): If Refer a Friend is "perfect for you," Drop a Hint is "perfect for me." Allow customers to ask for a specific product as a gift. - [Friends & Family](https://docs.extole.com/docs/friends-family.md): Announce special offers to important audiences and grant them the exclusive ability to share the offer with their friends. - [Ambassador](https://docs.extole.com/docs/influencer.md): Give your most influential advocates and ambassadors personalized links, a stats dashboard, and unique rewards for acquiring new customers on your behalf. - [International Programs](https://docs.extole.com/docs/international-programs.md): For years, we have helped our clients operate referral and other acquisition and retention programs internationally. If you have a presence outside the US and want to grow those markets, we're here to help. With Extole as an existing partne… - [Nomination](https://docs.extole.com/docs/nomination.md): Connect more meaningfully with your community by rewarding and recognizing important people nominated by your customers. - [Offer](https://docs.extole.com/docs/offer.md): Drive action by rewarding customers who complete a specific task in a certain timeframe. - [Refer a Friend](https://docs.extole.com/docs/refer-a-friend.md): Let your existing customers help you acquire new, higher quality customers through trusted referrals. - [Sweepstakes](https://docs.extole.com/docs/sweepstakes.md): Excite your customers with a chance to win! - [Welcome Offer](https://docs.extole.com/docs/welcome-offer.md): Grow your email list—and convert visitors—by offering users the ability to enter their email address to get a first-time visitor coupon to use on their first purchase. - [Rewards Overview](https://docs.extole.com/docs/rewards-overview.md) - [Rules & Quality](https://docs.extole.com/docs/rules-quality.md): Learn about Extole's rewarding system and how quality and reward rules are applied to ensure your customers' program participation is being recognized. - [ADA Compliance](https://docs.extole.com/docs/ada-compliance.md): For our customers' marketing programs, Extole provides baseline templates that have been audited for ADA compliance. As part of the implementation process, Extole customizes the templates based on brand-specific fonts, colors, imagery, and… - [Cookie Handling](https://docs.extole.com/docs/cookie-handling.md): Extole drops a minimum number of cookies as part of the handling of the referral program. Cookies are designed to be specific to your program and your site and are not used in any cross-site capacity. - [GDPR / CCPA](https://docs.extole.com/docs/gdpr-ccpa.md): Learn about Extole's responsibility under the General Data Protection Regulation (GDPR) and California Consumer Protection Act (CCPA). - [ISO 27001 Certification](https://docs.extole.com/docs/iso-27001-certification.md): Extole is an ISO 27001 certified company. - [Extole MCP](https://docs.extole.com/docs/extole-mcp.md): Connect your AI tools to Extole and manage your referral programs using natural language. - [Extole AI](https://docs.extole.com/docs/extole-ai.md) - [Flow Builder](https://docs.extole.com/docs/flow-builder.md): Understand how to use Extole's Flow Builder to set up and manage campaigns. - [Integrating with Extole](https://docs.extole.com/docs/integrating-with-extole.md): Get an introduction to our various integration methods for both web and mobile. - [Key Concepts](https://docs.extole.com/docs/key-concepts.md): Understand Extole from the bottom up by reading about our platform's core elements. - [Extole Help](https://docs.extole.com/docs/contact-extole-help.md): Use Extole Help to raise technical requests, troubleshoot inquiries on behalf of your customers, debug issues, or request creative customizations discussed with your Implementation or Customer Success Manager. - [Develop Behind Your Firewall](https://docs.extole.com/docs/develop-behind-your-firewall.md) - [Extole DNS Requirements](https://docs.extole.com/docs/extole-dns-requirements.md): Learn how to fully white label your program by setting up DNS entries. - [Generate Long-lived Access Tokens](https://docs.extole.com/docs/generate-long-lived-access-tokens.md): In your My Extole account, create long-lived access tokens to take advantage of our RESTful APIs. - [My Extole Single Sign On](https://docs.extole.com/docs/my-extole-single-sign-on.md): Read about the methods we support for SSO and SAML. - [Opt-out List Management](https://docs.extole.com/docs/opt-out-list-management.md): Learn about three types of opt-out lists we maintain for Extole-powered programs, what your options are for managing lists, and answers to our most frequently asked questions. - [Recent Customer Purchase Upload](https://docs.extole.com/docs/recent-customer-purchase-upload.md): Upload a list of recent customers who have made purchases from your business for targeting purposes. - [A/B Test Your Offer](https://docs.extole.com/docs/ab-test-your-offer.md): Learn how to set up A/B tests to optimize the reward you are offering in your Extole referral and engagement programs. - [Exclude Test Data from Analytics](https://docs.extole.com/docs/exclude-test-data-from-analytics.md): We support various methods for preventing test data from displaying in your My Extole dashboard analytics. - [A/B Test Your Program](https://docs.extole.com/docs/set-up-ab-tests.md): Learn how to set up A/B tests to optimize the performance of your Extole referral and engagement programs. - [Data Erasure Requests](https://docs.extole.com/docs/data-erasure-requests.md): Make data erasure requests and understand what these requests mean at Extole. - [Manage Your SSL Certificate](https://docs.extole.com/docs/manage-your-ssl-certificate.md) - [Right to Access Requests](https://docs.extole.com/docs/right-to-access-requests.md): Make General Data Protection Regulation (GDPR) and California Consumer Protection Act (CCPA) Right to Access requests. - [Verifying Consumers](https://docs.extole.com/docs/verifying-consumers.md): For a consumer token to be used to get PII data about a consumer's friends (email, name, conversion history), the token must be verified to belong to the consumer. - [Clutch](https://docs.extole.com/docs/withclutch.md) - [Boulevard (BLVD)](https://docs.extole.com/docs/boulevard-blvd.md): Boulevard is the first and only client experience platform for appointment-based, self-care businesses. - [Zapier](https://docs.extole.com/docs/zapier.md): Zapier is an automation platform that connects thousands of apps, enabling users to automate workflows without writing code. - [Amplitude](https://docs.extole.com/docs/amplitude.md): Send data from Amplitude to Extole to take action on your customer data to drive growth and deliver better customer experiences. - [Segment](https://docs.extole.com/docs/segment.md): Send data from Segment to Extole to target your advocation and engagement programs to specific groups of customers. - [Extole to Salesforce CRM](https://docs.extole.com/docs/extole-to-salesforce-crm.md): Learn how to send Extole real-time referrals, rewards, and customer engagement data to Salesforce through outbound webhooks. - [Hubspot](https://docs.extole.com/docs/hubspot.md): HubSpot is an AI-powered customer platform with all the software, integrations, and resources you need to connect your marketing, sales, and customer service. - [Salesforce CRM to Extole (Apex and Flows)](https://docs.extole.com/docs/salesforce-sales-cloud-apex-and-flows.md): Send event data from Salesforce CRM (Salesforce Sales Cloud) to Extole using Apex triggers and automate your processes using Flows. - [ServiceTitan](https://docs.extole.com/docs/service-titan.md): Integrate Extole with ServiceTitan to automatically reward prospects and customers for referrals and other key actions. - [Alkami](https://docs.extole.com/docs/alkami.md): The Extole and Alkami integration turns your digital banking channel into a valuable source of new members through personalized referral and engagement programs. - [Banno (Jack Henry)](https://docs.extole.com/docs/banno-jack-henry.md): Add an automated referral program to your Banno online, iOS, and Android applications with the Extole and Banno integration - [Candescent (NCR Digital Insight)](https://docs.extole.com/docs/ncr.md): Work with Candescent to set up secure in-portal access to your Extole programs - [Q2](https://docs.extole.com/docs/q2.md): Q2 offers digital banking solutions to grow with your business, your account holders, and the communities you serve. - [BigCommerce](https://docs.extole.com/docs/bigcommerce.md): Place CTAs for your Extole programs in your BigCommerce storefront, track customer activity, and reward engagement with BigCommerce discounts. - [Salesforce Commerce Cloud (SFRA)](https://docs.extole.com/docs/salesforce-commerce-cloud-sfra.md): Implement Extole's cartridge into your Salesforce Commerce Cloud site. - [Salesforce Commerce Cloud (Site Genesis)](https://docs.extole.com/docs/salesforce-commerce-cloud-site-genesis.md): Implement Extole's cartridge into your Salesforce Commerce Cloud site. - [Shopify Hydrogen](https://docs.extole.com/docs/shopify-hydrogen.md): Hydrogen is Shopify’s official development framework for building headless storefronts. - [Shopify Plus](https://docs.extole.com/docs/shopify.md): Shopify Plus is an enterprise-level commerce platform designed for high-volume merchants. - [Optimizely](https://docs.extole.com/docs/optimizely.md): Set up easy A/B testing for your Extole programs using Optimizely. - [Partners](https://docs.extole.com/docs/partners.md): Pre-built integrations with ecommerce, marketing automation, CRM, banking, and other technology partners. - [SessionM](https://docs.extole.com/docs/sessionm-loyalty-solution-guide.md): This guide will walk you through the technical steps for setting up a successful Extole referral program that integrates with your loyalty program powered by [SessionM](https://www.mastercardservices.com/en/solutions/consumer-engagement/sessionm). - [Adobe Marketo Engage](https://docs.extole.com/docs/adobe-marketo-engage.md): Send data from your Extole Lead Generation or B2B program directly to the Marketo Lead API. - [Attentive](https://docs.extole.com/docs/attentive.md): Set up a connection between your Extole programs and Attentive's SMS marketing platform. - [Braze](https://docs.extole.com/docs/braze.md): Set up a connection between your Extole programs and Braze's customer-engagement platform. - [Cordial](https://docs.extole.com/docs/cordial.md): Set up a connection between your Extole programs and Cordial's automated marketing platform. - [Iterable](https://docs.extole.com/docs/iterable.md): [Iterable](https://iterable.com/) is the AI-powered cross-channel communication platform helping to orchestrate individualized, harmonized, and dynamic customer experiences by closing the activation gap. - [Klaviyo](https://docs.extole.com/docs/klaviyo.md): Set up a connection between your Extole programs and Klaviyo's marketing automation platform. - [Listrak](https://docs.extole.com/docs/listrak.md): Set up a connection between your Extole programs and Listrak's cross-channel marketing platform. - [Optimove](https://docs.extole.com/docs/optimove.md): [Optimove](https://www.optimove.com/) is a CRM marketing platform that empowers marketers to drive measurable growth by planning, orchestrating, and optimizing marketing programs that start with the customer instead of a campaign or product.. - [Salesforce Marketing Cloud](https://docs.extole.com/docs/salesforce-marketing-cloud-opt-ins.md): Connect your Extole account to Salesforce Marketing Cloud to push data, typically a marketing email opt-in list. Extole can either push this through the Salesforce MC API or through Salesforce MC File Drop Automation. - [Vimeo OTT + Zapier](https://docs.extole.com/docs/vimeo-ott-zapier.md): Set up a connection between your Extole programs and Vimeo's over-the-top streaming service platform in tandem with Zapier. - [BHN (Blackhawk Network)](https://docs.extole.com/docs/bhn.md): Integrate with BHN to reward program participants with open loop and closed loop products from BHN's robust catalogue. - [Tremendous](https://docs.extole.com/docs/tremendous.md): Integrate with Tremendous to set up international gift card, PayPal, Venmo, and ACH rewards for your Extole programs. - [Ensighten](https://docs.extole.com/docs/ensighten.md): Set up Extole functionalities on your site using Ensighten tag management workflows. - [Google Tag Manager](https://docs.extole.com/docs/google-tag-manager.md): Set up Extole functionalities on your site using Google Tag Manager. If you already have GTM integrated with your site, then all you need to do is create and configure Extole tags. - [Tealium](https://docs.extole.com/docs/tealium.md): Set up Extole functionalities on your site using Tealium. - [Data Analysis & Visualization](https://docs.extole.com/docs/data-analysis-visualization.md): Analyze Extole data in your data visualization tool. - [Create Share Link on an Event](https://docs.extole.com/docs/create-share-link-on-an-event.md): Make sharing as easy as possible by precreating share links for every customer using the Extole extension or API - [Event Streams Overview](https://docs.extole.com/docs/event-streams-overview.md): This guide explains how to configure and use Event Streams in the Extole platform. - [Extensions](https://docs.extole.com/docs/extensions.md): Extole offers Extensions to enhance your marketing campaigns to meet your specific business needs. - [Reward Bank](https://docs.extole.com/docs/reward-bank.md): Reward Bank is an extension that allows consumers to accumulate and combine rewards for greater value while efficiently managing your incentives budget - [Audience Files](https://docs.extole.com/docs/audience-files.md): Extole offers the ability to modify audiences via file uploads automatically. - [External SFTP Servers](https://docs.extole.com/docs/external-sftp-servers.md): Set up external servers in your My Extole account and send data from your programs into other systems. - [Extole SFTP Server](https://docs.extole.com/docs/extoles-sftp-server.md): Set up and use internal servers within your My Extole account. - [File-based Events](https://docs.extole.com/docs/file-based-events.md): Understand when to send event files to Extole, our file naming conventions, and more. - [General File Uploads](https://docs.extole.com/docs/general-file-uploads.md): Upload files directly into your My Extole account using our Batch Jobs page. - [Files](https://docs.extole.com/docs/files.md): Extole offers several ways for you to send and receive important program data through file transfers. - [Advanced Concepts](https://docs.extole.com/docs/advanced-concepts.md): Our JavaScript SDK supports a wide variety of custom use cases and can be tailored to fit the needs and goals of your company. Read about some of our more common advanced tagging scenarios. - [FAQs](https://docs.extole.com/docs/faqs.md): Reference our answers to frequently asked questions about our JavaScript SDK and tagging your website. - [JavaScript SDK](https://docs.extole.com/docs/javascript-sdk.md): Extole's JavaScript SDK is integrated into your online experience by placing simple JavaScript tags on web pages to allow program optimization without additional development. - [Android SDK](https://docs.extole.com/docs/android-sdk.md): This integration guide shows you how to set up and launch an Extole program as quickly as possible with our Android SDK. - [Deep Link Integrations](https://docs.extole.com/docs/deep-link-integrations.md): Extole can integrate with your deeplink provider to power your experiences on all devices. - [Mobile SDKs](https://docs.extole.com/docs/mobile-sdks.md): Extole offers lightweight mobile SDKs for iOS, Android, and React Native. - [iOS SDK](https://docs.extole.com/docs/ios-sdk.md): This integration guide shows you how to set up and launch an Extole program as quickly as possible with our iOS SDK. - [React Native SDK](https://docs.extole.com/docs/react-native-sdk.md): This integration guide shows you how to set up and launch an Extole program as quickly as possible with our React Native SDK. - [Asynchronous Reporting API](https://docs.extole.com/docs/asynchronous-reporting-api.md) - [Errors](https://docs.extole.com/docs/errors.md): Brush up on common errors returned by our APIs. - [REST APIs](https://docs.extole.com/docs/rest-apis.md): Extole has three REST-style APIs. Server to Extole, Consumer to Extole, and Management - [Headless and Mobile API](https://docs.extole.com/docs/mobile-api.md): Create a typical in-app share experience using Extole's Admin API with mobile phone built-in sharing capabilities. - [Webhooks](https://docs.extole.com/docs/webhooks.md): Webhooks can be seen as the key building blocks of applications, allowing systems to exchange data in real-time in response to events. They act as the modern, web-oriented way for servers to receive notifications from other servers. Now, wh… - [Reward Webhooks](https://docs.extole.com/docs/reward-webhooks.md): Learn more about the most frequent use case for Extole outbound webhooks. - [Webhook Creation](https://docs.extole.com/docs/webhook-creation.md): Customize the format and authentication method of your webhooks as needed. - [Financial Services](https://docs.extole.com/docs/financial-services.md): Quickly build an effective referral program to turn account holders and influencers into advocates who turn their passion for you into new account holders. - [Extole Solution Guides](https://docs.extole.com/docs/extole-solution-guides.md) - [Lead Generation](https://docs.extole.com/docs/lead-generation.md): Quickly build an effective lead generation referral program to turn customers into advocates who become the source for your best leads. - [Membership & Loyalty](https://docs.extole.com/docs/membership-loyalty.md): Set up a membership and loyalty referral program with branded links, website tags, signup and purchase tracking, rewards, mobile integration, and optional enhancements. - [Banking / Credit Unions](https://docs.extole.com/docs/quick-banking.md): Quickly build an effective referral program to turn account holders and influencers into advocates who turn their passion for you into new account holders. - [Retail](https://docs.extole.com/docs/retail.md): Quickly build an effective referral program to turn customers into advocates and to turn the passion they have for you into new customers. - [Subscription](https://docs.extole.com/docs/subscription.md): Quickly build an effective subscription referral program to turn customers into advocates and to turn the passion they have for you into new subscribers. - [Go Extole Field Team App](https://docs.extole.com/docs/go-extole-technical-docs.md): Mobile app where users share QR codes and links to refer and earn rewards ## API Reference - [API Overview](https://docs.extole.com/reference/api-overview.md): Start with the right Extole API, authenticate your request, and make your first call. - [Authentication](https://docs.extole.com/reference/authentication-overview.md): Every call to the Extole API carries an access token. The API uses two token models, chosen by where the caller runs. - [Errors](https://docs.extole.com/reference/common-errors.md): Understand common errors returned by Extole's APIs. - [Create a consumer access token](https://docs.extole.com/reference/createconsumertoken.md): Issues a new access token for the identity supplied in the request. Pass an `email` to identify a consumer when the client identity key is `email`. Pass a `jwt` to assert a trusted identity via JWT verification. Omit both to issue an anonymous token. The optional `duration_seconds` field caps the token lifetime. - [Delete a consumer access token](https://docs.extole.com/reference/deleteconsumertoken.md): Revokes the access token supplied in the `access_token` query parameter or bearer header. If no token is supplied, the server attempts to resolve a token from the HTTP authorization header and revokes that one. After revocation the token is immediately invalidated. - [Get consumer token details](https://docs.extole.com/reference/getconsumertoken.md): Returns the metadata for the access token supplied in the `access_token` query parameter or bearer header. If no token is supplied, the server attempts to resolve a token from the HTTP authorization header. Returns the token's expiry, scopes, and the identity it represents. - [Fetch a named zone for web-page embedding](https://docs.extole.com/reference/fetchzonebynameweb.md): Fetches the zone identified by `zone_name` and returns its content. Designed for direct browser or web SDK use — automatically allocates a new access token if none is present and writes it back as a cookie so subsequent requests in the same session are correlated. The response body varies by the zone's creative configuration: HTML, JavaScript, JSON, or plain text. Because this is a GET request, no targeting data can be sent in the body — use `POST /zones/{zone_name}` to pass identity or other targeting fields. - [Allocate a token via an empty zone request](https://docs.extole.com/reference/fetchzoneweb.md): Returns an empty 200 response with `Extole-Log: target zone=unknown`. Because no zone name can be supplied on this path-less GET form, no zone is rendered — the operation's effect is access-token allocation: if no token is present in the request, one is generated and written back as both an `access_token` cookie and an `Extole-Token` response header. Use this to bootstrap a browser session before issuing a named zone request. To render an actual zone, use `GET /zones/{zone_name}`, `POST /zones`, or `POST /zones/{zone_name}`. - [Render a zone](https://docs.extole.com/reference/renderzone.md): Renders the zone identified by `event_name` in the JSON request body and returns the structured zone content as JSON. Intended for backend rendering where the caller manages token identity directly. For browser or in-app rendering use `POST /zones` instead. - [Render a named zone](https://docs.extole.com/reference/renderzonebyeventname.md): Renders the zone identified by the `event_name` path parameter and returns the structured zone content as JSON. Pass zone input data in the request body. Intended for backend rendering where the caller manages token identity directly. For browser or in-app rendering use `POST /zones/{zone_name}` instead. - [Render a named zone for web-page embedding](https://docs.extole.com/reference/renderzonebynameweb.md): Renders the zone identified by `zone_name` and returns its content. Designed for direct use from a browser page or web SDK embed — accepts form-encoded and multipart bodies in addition to JSON, and handles cookie-based identity automatically. For backend zone rendering use `POST /v6/zones/{event_name}` instead. - [Render a zone with the name in the body](https://docs.extole.com/reference/renderzoneweb.md): Renders the zone identified by `event_name` in the request body, applies any other body fields as targeting data passed to the creative, and returns the rendered creative content (HTML, JavaScript, JSON, or plain text). Designed for direct use from a browser page or web SDK embed — accepts form-encoded, plain-text, and multipart bodies in addition to JSON, and handles cookie-based identity automatically. If `event_name` is omitted, returns an empty 200 with `Extole-Log: target zone=unknown`; the access token is still allocated and written as a cookie. For backend zone rendering use `POST /v6/zones` instead. - [Submit a consumer event by URL](https://docs.extole.com/reference/fetchconsumereventbyname.md): Fires the named consumer event using data from the query string and optional JWT claim. Always returns HTTP 200 regardless of outcome — check for an `X-Extole-Error-Message` response header to detect processing errors. A new `access_token` cookie may be set on the response when the event establishes or upgrades a consumer identity. - [Submit a consumer event](https://docs.extole.com/reference/submitconsumerevent.md): Fires the consumer event described in the JSON request body. Event data may be supplied as top-level JSON fields or as a `jwt` claim. Always returns HTTP 200 regardless of outcome — check for an `X-Extole-Error-Message` response header to detect processing errors. A new `access_token` cookie may be set on the response when the event establishes or upgrades a consumer identity. - [Download a person asset by asset ID](https://docs.extole.com/reference/downloadpersonasset.md): Streams the binary or text content of the asset identified by `assetId`. Returns HTTP 302 if the content is hosted at a remote URL; returns HTTP 200 with the raw content otherwise. Use the `name` variant (`downloadPersonAssetByName`) when you have the asset name but not the id. - [Download a person asset by name](https://docs.extole.com/reference/downloadpersonassetbyname.md): Streams the binary or text content of the asset matching the `name` query parameter for the person identified by `personId`. Returns HTTP 302 if the content is hosted at a remote URL; returns HTTP 200 with the raw content otherwise. Use the id variant (`downloadPersonAsset`) when you have the asset id. - [Get the authenticated consumer profile](https://docs.extole.com/reference/getmyprofile.md): Returns the profile of the consumer identified by the supplied access token. The response includes the consumer's identity attributes (email, partner user id, name), custom data fields stored in `parameters`, and consent state. - [Get reward redemption status](https://docs.extole.com/reference/getmyrewardstatus.md): Returns the current state of a pending or completed reward redemption for the authenticated consumer. Supply exactly one of `polling_id` (returned by a prior reward claim call), `reward_name` (the configured reward name), or `partner_event_id` (the originating partner event identifier). Poll this endpoint until the reward reaches a terminal state. - [Get a person asset by ID](https://docs.extole.com/reference/getpersonasset.md): Returns full metadata for the asset identified by `assetId` and owned by the person identified by `personId`. Metadata includes the asset type, name, content URL, MIME type, and creation timestamp. Use `downloadPersonAsset` to stream the asset content. - [List assets for a person](https://docs.extole.com/reference/listpersonassets.md): Returns all assets attached to the person profile identified by `personId`. Assets are binary or text files associated with a program participant — for example, wallet passes, QR codes, or uploaded images. Use `getPersonAsset` to fetch a single asset's metadata, or `downloadPersonAsset` to retrieve its content. - [Create access token](https://docs.extole.com/reference/createclientaccesstoken.md): Mints a bearer token for server-to-Extole calls by a client. The body is optional: when omitted, the new token mirrors the calling identity's scopes; when supplied, the body can narrow the scope set (subset of the caller's scopes), bind the token to a specific `client_id`, supply email/password credentials in lieu of a calling token, or override the default lifetime via `duration_seconds`. Returns the new token, its `expires_in` (seconds), the resolved `client_id`, the `identity_id` of the user the token represents, and the granted `scopes`. - [Invalidate access token](https://docs.extole.com/reference/deleteclientaccesstoken.md): Invalidates the supplied access token immediately. Subsequent requests using the same token return `401 invalid_access_token`. Returns `200` with an empty body on success. - [Exchange access token](https://docs.extole.com/reference/exchangeclientaccesstoken.md): Exchanges the supplied access token for a fresh one with the same scopes and a renewed expiry. The original token is invalidated immediately on success. Use this to rotate long-lived integration tokens without re-authenticating. - [Get access token by value](https://docs.extole.com/reference/getclientaccesstokenbyvalue.md): Returns the metadata for the supplied token value (`type`, `client_id`, `identity_id`, `expires_in`, `scopes`). Use this when the caller has the token string and needs to introspect it; for the calling identity's own active token use `GET /v4/tokens` instead. - [Get current access token](https://docs.extole.com/reference/getcurrentclientaccesstoken.md): Returns the metadata for the access token used to authenticate the request (`type`, `client_id`, `identity_id`, `expires_in`, `scopes`). Equivalent to `GET /v4/tokens/{token}` but without having to repeat the token in the URL path. - [Cancel a batch job](https://docs.extole.com/reference/cancelbatch.md): Requests cancellation of a batch job. The job transitions to `CANCELED` status. Only jobs in a non-terminal state (`PENDING`, `QUEUED`, `IN_PROGRESS`, or `DISPATCHING`) can be canceled. - [Create a batch job](https://docs.extole.com/reference/createbatch.md): Creates a new asynchronous batch job that reads its data source row-by-row and dispatches a consumer event for each row. The data source can be a previously run report, an audience list, or an uploaded file asset (CSV, PSV, or JSON). The job begins processing immediately after creation; poll `GET /v6/batches/{batchId}` to monitor `status`. For small inline batches of events, use `POST /v6/async-events` in the event-api instead. - [Delete a batch job](https://docs.extole.com/reference/deletebatch.md): Permanently deletes a batch job record. The job must be in a terminal state (`DONE`, `FAILED`, `CANCELED`, or `EXPIRED`). This action is irreversible; the job record cannot be recovered after deletion. - [Expire a batch job](https://docs.extole.com/reference/expirebatch.md): Marks a completed batch job as expired, releasing associated resources. Only jobs in terminal state (`DONE`, `FAILED`, or `CANCELED`) can be expired. Once expired, the job record remains queryable but its data source reference is released. - [Get a batch job](https://docs.extole.com/reference/getbatch.md): Returns the full record for a single batch job, including current `status`, `success_rows`, `failed_rows`, and data source configuration. Poll this endpoint to monitor job progress until `status` reaches a terminal state: `DONE`, `FAILED`, `CANCELED`, or `EXPIRED`. - [List batch jobs](https://docs.extole.com/reference/listbatches.md): Returns a paginated list of batch jobs for the authenticated client. Filter by `name`, `event_name`, `tags`, `status`, or `user_id`. Results are ordered by creation date descending. Default page size is 100. - [Update a batch job](https://docs.extole.com/reference/updatebatch.md): Updates the mutable fields of an existing batch job: `name`, `tags`, and `scopes`. The job must not be in a terminal state (`DONE`, `FAILED`, `CANCELED`, or `EXPIRED`). Data source, event name, and column mappings are immutable after creation. - [Fetch a rendered zone](https://docs.extole.com/reference/fetchzone.md): Renders the named zone with no targeting data and returns its configured content. Useful for fetching static or anonymous zones from a server-rendered page or backend service. Identity (`email`, `partner_user_id`, `person_id`) and additional targeting fields are not accepted on this GET form - use `POST /v5/zones/{zone_name}` to pass them. Authenticated with a USER_SUPPORT scope access token. - [Render a zone with the name in the body](https://docs.extole.com/reference/renderzonefromrequest.md): Renders a zone using a request body that carries both the zone name and the targeting data. Functionally equivalent to `POST /v5/zones/{zone_name}`; the path-based form is the recommended primary entry point. Use this form when the calling code constructs the full request payload upstream and prefers a single body shape. Returns the zone's configured content (HTML, JavaScript, JSON, or plain text) plus `X-Extole-*` headers describing the matched campaign and creative. Authenticated with a USER_SUPPORT scope access token. - [Render a zone with targeting data](https://docs.extole.com/reference/renderzonev5.md): Renders the named zone, merging the request body's open data map into the targeting context. Recognised identity fields are `email`, `partner_user_id`, `person_id`, and `event_time` (ISO 8601). Additional keys are forwarded to the zone's targeting evaluator and creative renderer. Returns the zone's configured content (HTML, JavaScript, JSON, or plain text) plus `X-Extole-*` headers describing the matched campaign, frontend controller, creative, and input event. If no identity is provided the zone renders against an anonymous profile - prefer supplying at least one identity field for known visitors. Authenticated with a USER_SUPPORT scope access token. - [Events](https://docs.extole.com/reference/events-1.md) - [Submit an event](https://docs.extole.com/reference/submitevent.md): Submits a consumer event synchronously. Returns both `event_id` and `person_id`. Use when you need immediate confirmation that the event was processed and identity resolution has completed. For high-volume ingestion use `POST /v6/async-events` instead. - [Submit an event asynchronously](https://docs.extole.com/reference/submiteventasync.md): Submits a consumer event asynchronously. No per-request rate limit - use for high-volume or bulk integrations. May return 429 only if the downstream ingestion queue is saturated. Only `event_id` is returned; person identification occurs asynchronously after the request returns. - [Submit a named event](https://docs.extole.com/reference/submitnamedevent.md): Submits a specific named consumer event synchronously. The event name is supplied in the URL path rather than in the request body, and the body is an open data map. - [Submit a named event asynchronously](https://docs.extole.com/reference/submitnamedeventasync.md): Submits a specific named consumer event asynchronously. The event name is supplied in the URL path and the body is an open data map. No per-request rate limit. Returns `event_id` only; person identification occurs asynchronously. - [Upload a file asset](https://docs.extole.com/reference/createfile.md): Uploads a file and creates a file asset record. The request is a multipart/form-data body containing the file content and optional metadata (name, tags, format). Supported formats: `CSV`, `PSV`, `JSON`, `JSONL`, `XLSX`. Once uploaded, the file asset can be used as the `data_source` of a batch job via `POST /v6/batches`. The file enters `AVAILABLE` status on successful upload; use `POST /v6/files/{fileId}/expire` to release it when no longer needed. - [Delete a file asset](https://docs.extole.com/reference/deletefile.md): Permanently deletes a file asset record and releases its stored content. This action is irreversible. Batch jobs that have already ingested this file asset are not affected. - [Download a file asset](https://docs.extole.com/reference/downloadfile.md): Downloads the raw content of a file asset. The response body contains the file content in its original format (CSV, PSV, or JSON). Use the `limit` and `offset` parameters to paginate large files. Returns a 404 if the file asset has expired. - [Expire a file asset](https://docs.extole.com/reference/expirefile.md): Marks a file asset as expired, releasing the stored file content. Expired file assets remain queryable but cannot be used as a batch job data source. Any batch jobs already referencing this file asset are not affected if they have already started processing. - [Get a file asset](https://docs.extole.com/reference/getfile.md): Returns the metadata record for a single file asset, including `status`, `review_status`, `size`, `format`, and `tags`. To retrieve the file content, use `GET /v6/files/{fileId}/download`. - [List file assets](https://docs.extole.com/reference/listfiles.md): Returns a paginated list of file assets for the authenticated client. Filter by `name`, `statuses`, `tags`, or `user_id`. Results are ordered by creation date descending. Default page size is 100. - [Update a file asset](https://docs.extole.com/reference/updatefile.md): Updates the mutable metadata of an existing file asset: `name` and `tags`. File content is immutable after upload. The file asset must be in `AVAILABLE` status; expired file assets cannot be updated. - [Create a person](https://docs.extole.com/reference/createperson.md): Creates a new person profile in the Extole platform and returns the persisted record with its server-assigned id. Use this to provision person profiles outside of the normal event-tracking flow (e.g. bulk imports). - [Create a person data parameter](https://docs.extole.com/reference/createpersondata.md): Creates a new named data parameter for the specified person. Returns `400 data_already_exists` if a parameter with the same name already exists; use PUT to update an existing parameter. Returns `403 person_not_found` if the person is not accessible. - [Create a person audience membership](https://docs.extole.com/reference/createpersonmembership.md): Adds the specified person to an audience by creating a new audience membership. - [Create a person shareable](https://docs.extole.com/reference/createpersonshareable.md): Creates a new shareable for the specified person. A shareable is a unique referral link or code associated with a campaign that the person can share to invite friends. - [Delete a person data parameter](https://docs.extole.com/reference/deletepersondata.md): Permanently deletes the named data parameter for the specified person. Returns `400 data_not_found` if the parameter does not exist. Returns `403 person_not_found` if the person is not accessible. - [Delete a person audience membership](https://docs.extole.com/reference/deletepersonmembership.md): Removes the specified person from the audience identified by the audience ID. - [Forward a person to another profile](https://docs.extole.com/reference/forward.md): Merges the specified person profile into a target profile, forwarding all identity references from the source to the target. After the operation the source profile is no longer independently addressable; lookups by any of its identifiers resolve to the target. Use to consolidate duplicate person profiles. - [Get identity history for a person](https://docs.extole.com/reference/getidentityhistory.md): Returns the chronological log of identity-merge and identity-link events for the specified person. Each entry records the event type, the previous identity key information, and the event date. Use this to audit how a person's unified profile evolved over time. - [List partner keys](https://docs.extole.com/reference/getpartnerkeys.md): Returns the set of partner key names configured for the calling client. Partner keys are client-defined person identifier types (e.g. `partner_conversion_id`, `partner_shipment_id`) that supplement Extole's built-in identifiers. Supply the optional `include_campaign_ignoring_state` parameter to include partner keys declared in a specific campaign regardless of that campaign's state. - [Get a person](https://docs.extole.com/reference/getperson.md): Returns the person profile for the specified `person_id`. The response includes the person's current identity key and value, locale settings, and version. Returns `403 person_not_found` if the person does not exist or is not accessible. - [Get person block status](https://docs.extole.com/reference/getpersonblock.md): Returns the block record for the specified person, indicating whether they are blocked from participating in referral campaigns and the reason for the block. - [Get a person data parameter](https://docs.extole.com/reference/getpersondata.md): Returns the named data parameter for the specified person. Person data parameters are arbitrary key-value pairs attached to a person profile and can be used in campaign targeting and personalization. Returns `400 data_not_found` if the name does not exist, or `403 person_not_found` if the person is not accessible. - [Get a person journey](https://docs.extole.com/reference/getpersonjourney.md): Returns the specified campaign journey for the given person, including the program, campaign, container, journey entry data, and timestamps. - [Get a person reward](https://docs.extole.com/reference/getpersonreward.md): Returns the specified reward for the given person, including its state, face value, and associated campaign. - [Get a person share](https://docs.extole.com/reference/getpersonshare.md): Returns the specified share event for the given person, including its channel, shareable, and associated campaign journey. - [Get a person shareable](https://docs.extole.com/reference/getpersonshareable.md): Returns the shareable for the specified person identified by its share code. A shareable is a unique share link or code that allows a person to invite friends to participate in a referral campaign. - [List person data parameters](https://docs.extole.com/reference/listpersondata.md): Returns all data parameters for the specified person, sorted by updated date in descending order. Use query parameters to filter by name or date range. Returns `403 person_not_found` if the person is not accessible. - [List person journeys](https://docs.extole.com/reference/listpersonjourneys.md): Returns campaign journeys for the specified person, sorted by start date in descending order. A journey represents a person's participation lifecycle in a specific campaign (e.g. share, refer-a-friend, purchase). - [List person locations](https://docs.extole.com/reference/listpersonlocations.md): Returns request context location records for the specified person, sorted by created date in descending order. Locations capture the geographic context (country, region, city) observed at the time of person interactions. - [List person audience memberships](https://docs.extole.com/reference/listpersonmemberships.md): Returns audience memberships for the specified person, sorted by created date in descending order. Each membership indicates which audiences the person currently belongs to. - [List person relationships](https://docs.extole.com/reference/listpersonrelationships.md): Returns the referral relationships for the specified person, showing advocate-friend connections created through campaign participation. - [List person rewards](https://docs.extole.com/reference/listpersonrewards.md): Returns all rewards for the specified person, sorted by created date in descending order. Supports filtering by state, supplier type, and date range. - [List person shareables](https://docs.extole.com/reference/listpersonshareables.md): Returns all shareables for the specified person, sorted by created date in descending order. Each shareable is a unique referral link or code associated with a campaign. - [List person shares](https://docs.extole.com/reference/listpersonshares.md): Returns all share events for the specified person, sorted by created date in descending order. A share is recorded each time the person distributes a shareable link via a channel (social, email, etc.). - [List person steps](https://docs.extole.com/reference/listpersonsteps.md): Returns campaign flow steps for the specified person, sorted by event date in descending order. Steps represent discrete tracked actions (e.g. conversion, share, reward earned) within the person's journey. - [Search for persons](https://docs.extole.com/reference/searchpersons.md): Searches for persons by identity key value or client-defined person keys (supply in `name:value` format, e.g. `partner_conversion_id:abc123`). Returns an array because the same key may resolve to multiple Extole profiles. Supply at least one search criterion via query parameters. - [Update a person](https://docs.extole.com/reference/updateperson.md): Updates the identity key value on the specified person profile. Returns `403 person_not_found` if the person does not exist or is not accessible. - [Update person block status](https://docs.extole.com/reference/updatepersonblock.md): Updates the block record for the specified person. Set `type` to `EVENTS` to block event participation, `REWARDS` to block reward fulfilment, or `NONE` to remove any block. Supply an optional `reason` string for audit purposes. Returns the updated block record. - [Update a person data parameter](https://docs.extole.com/reference/updatepersondata.md): Updates the value of the named data parameter for the specified person. Returns `400 data_not_found` if the parameter does not exist, or `400 read_only_name` if the parameter name is read-only. Returns `403 person_not_found` if the person is not accessible. - [Update a person shareable](https://docs.extole.com/reference/updatepersonshareable.md): Updates the content of an existing shareable identified by its share code for the specified person. - [Cancel a reward](https://docs.extole.com/reference/cancelreward.md): Cancels the specified reward, preventing fulfilment. Returns the updated reward record. - [Mark custom reward failed](https://docs.extole.com/reference/failcustomreward.md): Marks the custom reward as failed, recording a fulfilment failure. - [Mark custom reward fulfilled and sent](https://docs.extole.com/reference/fulfillandsendcustomreward.md): Marks the custom reward as fulfilled and sent to the participant. - [Mark custom reward fulfilled](https://docs.extole.com/reference/fulfillcustomreward.md): Marks the custom reward as fulfilled, signalling that the client system has completed fulfilment. - [Get a reward](https://docs.extole.com/reference/getreward.md): Returns the reward record for the specified reward id, including its current state and history. - [Get reward cancels](https://docs.extole.com/reference/getrewardcancels.md): Returns the cancellation history for the specified reward. - [Get reward fails](https://docs.extole.com/reference/getrewardfails.md): Returns the fulfilment failure history for the specified reward. - [Get reward fulfillments](https://docs.extole.com/reference/getrewardfulfillments.md): Returns the fulfilment records for the specified reward. - [Get reward redeems](https://docs.extole.com/reference/getrewardredeems.md): Returns the redemption records for the specified reward. - [Get reward revokes](https://docs.extole.com/reference/getrewardrevokes.md): Returns the revocation records for the specified reward. - [Get reward sends](https://docs.extole.com/reference/getrewardsends.md): Returns the send events for the specified reward. - [Get reward state history](https://docs.extole.com/reference/getrewardstatehistory.md): Returns the full state-transition history for the specified reward. - [Get reward state summary](https://docs.extole.com/reference/getrewardstatesummary.md): Returns aggregate state counts for rewards on this client (e.g. earned, fulfilled, cancelled). - [List rewards](https://docs.extole.com/reference/listrewards.md): Returns reward records for the client matching the specified query parameters. - [Mark custom reward redeemed](https://docs.extole.com/reference/redeemcustomreward.md): Marks the custom reward as redeemed by the participant. - [Retry a reward](https://docs.extole.com/reference/retryreward.md): Retries fulfilment of a previously failed reward. Returns the updated reward. - [Revoke a reward](https://docs.extole.com/reference/revokereward.md): Revokes the specified reward, marking it as invalid. Returns the updated reward. - [Mark custom reward sent](https://docs.extole.com/reference/sendcustomreward.md): Marks the custom reward as sent to the participant. - [Update a reward](https://docs.extole.com/reference/updatereward.md): Updates attributes on the specified reward record. Returns the updated reward. - [Create an SFTP destination](https://docs.extole.com/reference/createsftpdestination.md): Creates a new SFTP destination connection profile used for automated report file delivery. Returns the created destination with its server-assigned id. - [Delete an SFTP destination](https://docs.extole.com/reference/deletesftpdestination.md): Removes the SFTP destination connection profile. Returns the deleted destination. - [Get an SFTP destination](https://docs.extole.com/reference/getsftpdestination.md): Returns the SFTP destination for the specified id. - [List SFTP destinations](https://docs.extole.com/reference/listsftpdestinations.md): Returns all SFTP destination connection profiles configured for the client. - [Sync an SFTP destination](https://docs.extole.com/reference/syncsftpdestination.md): Triggers an immediate synchronisation of the SFTP destination with its external server. Returns the updated destination after sync. - [Update an SFTP destination](https://docs.extole.com/reference/updatesftpdestination.md): Updates the SFTP destination connection profile. Only fields present in the request body are changed. Returns the updated destination. - [Validate an SFTP destination](https://docs.extole.com/reference/validatesftpdestination.md): Validates the SFTP destination connection profile without persisting any changes. Returns any connectivity or configuration errors. - [Archive audience](https://docs.extole.com/reference/archiveaudience.md): Soft-archives the audience. Archived audiences disappear from default `GET /v1/audiences` and `GET /v1/audiences/built` responses; pass `include_archived=true` to surface them. Reversible via `POST /v1/audiences/{audience_id}/unarchive`. Fails if the audience is still referenced by a campaign-controller membership trigger, a create- or remove-membership controller action, or a campaign component variable. - [Cancel an audience operation](https://docs.extole.com/reference/cancelaudienceoperation.md): Cancels a pending or in-progress audience operation identified by its operation ID. - [Create audience](https://docs.extole.com/reference/createaudience.md): Creates a new audience definition. `name` is required; `enabled`, `tags`, and `component_references` are optional. New audiences default to enabled. Tags must be 255 characters or fewer each; the resolved name must also be 255 characters or fewer. Returns the created audience. - [Create an audience operation](https://docs.extole.com/reference/createaudienceoperation.md): Creates a new operation for the specified audience. An operation modifies audience membership by adding, removing, or syncing members from a data source. - [Delete audience](https://docs.extole.com/reference/deleteaudience.md): Hard-deletes the audience. Unlike `DELETE /v1/audiences/{audience_id}` (which archives and is reversible), a deleted audience cannot be recovered. Fails with the same association errors as archive: the audience must be detached from any campaign-controller membership trigger, create- or remove-membership controller action, or campaign component variable before deletion can succeed. - [Download audience members](https://docs.extole.com/reference/downloadaudiencemembers.md): Downloads the full member list for the specified audience. Append a format extension (`.csv`, `.json`, `.xlsx`) to select the download format. - [Get audience](https://docs.extole.com/reference/getaudience.md): Returns the editable audience definition for the supplied `audience_id`, including its name, enabled state, tags, and the campaign components that reference it. For the rendered (runtime) snapshot use `GET /v1/audiences/{audience_id}/built` instead. - [Get an audience operation](https://docs.extole.com/reference/getaudienceoperation.md): Returns the audience operation identified by its operation ID for the specified audience. - [Get audience operation state](https://docs.extole.com/reference/getaudienceoperationstate.md): Returns the current state of the specified audience operation, including progress counters and any error details. - [Get audience operation debug state](https://docs.extole.com/reference/getaudienceoperationstatedebug.md): Returns the detailed debug state of the specified audience operation, including internal processing information. Restricted to client superusers. - [Get audience operation with details](https://docs.extole.com/reference/getaudienceoperationwithdetails.md): Returns the audience operation with its full detail view, including data source configuration and processing statistics. - [Get audience membership statistics](https://docs.extole.com/reference/getaudiencestats.md): Returns membership statistics for the specified audience, including total member count and any size change since the last operation. - [Get built audience](https://docs.extole.com/reference/getbuiltaudience.md): Returns the rendered (built) snapshot for the supplied `audience_id`. The snapshot has the same shape as `GET /v1/audiences/{audience_id}/built` items in the list response and is what the runtime evaluates against during targeting. - [List audience member IDs](https://docs.extole.com/reference/listaudiencememberids.md): Returns the person IDs of all current members of the specified audience. - [List audience members](https://docs.extole.com/reference/listaudiencemembers.md): Returns detailed profiles for all current members of the specified audience. - [List audience operations](https://docs.extole.com/reference/listaudienceoperations.md): Returns all operations for the specified audience, optionally filtered by the provided query parameters. - [List audiences](https://docs.extole.com/reference/listaudiences.md): Returns the client's audience definitions sorted by creation date, newest first. By default archived audiences are excluded; pass `include_archived=true` to include them. Use `limit` and `offset` to page (defaults: `limit=1000`, `offset=0`). Each entry is the editable definition - for runtime targeting reads, use `GET /v1/audiences/built` instead. - [List built audiences](https://docs.extole.com/reference/listbuiltaudiences.md): Returns the rendered (built) audience snapshots that the runtime evaluates against - the resolved name, enabled flag, tags, and component references for every audience the client owns. Filter by `name` (supports a trailing `*` wildcard), by `enabled` (`ENABLED`, `DISABLED`, or `ANY`), and by archived status. Use `limit` and `offset` to page (defaults: `limit=1000`, `offset=0`). Use `GET /v1/audiences` for the editable definitions. - [Retry an audience operation](https://docs.extole.com/reference/retryaudienceoperation.md): Retries a failed audience operation identified by its operation ID. - [Unarchive audience](https://docs.extole.com/reference/unarchiveaudience.md): Restores a previously archived audience so it appears in default `GET /v1/audiences` and `GET /v1/audiences/built` responses again. Fails with `400 audience_not_found` if the audience does not exist or has been hard-deleted via `POST /v1/audiences/{audience_id}/delete`. - [Update audience](https://docs.extole.com/reference/updateaudience.md): Updates an existing audience. Only fields supplied in the body are changed; omitted fields are left untouched. Sending `null` for `name` returns `400 invalid_null` because `name` is a required attribute on the audience. Returns the updated audience. - [Create a managed access token](https://docs.extole.com/reference/createmanagedtoken.md): Creates a new server-generated managed API access token with configurable scopes and expiry. Returns the created token with its server-assigned id. - [Delete a managed access token](https://docs.extole.com/reference/deletemanagedtoken.md): Revokes and removes the managed API access token for the specified id. - [List managed access tokens](https://docs.extole.com/reference/listmanagedtokens.md): Returns all managed API access tokens for the client. - [Create a block](https://docs.extole.com/reference/createblock.md): Creates a new named content block used as a reusable fragment in campaign experiences. Returns the created block with its server-assigned id. - [Delete a block](https://docs.extole.com/reference/deleteblock.md): Removes the content block for the specified id. Returns the deleted block. - [Get a block](https://docs.extole.com/reference/getblock.md): Returns the content block for the specified id. - [List blocks](https://docs.extole.com/reference/listblocks.md): Returns all content blocks for the client. - [List global blocks](https://docs.extole.com/reference/listglobalblocks.md): Returns all globally available content blocks that can be shared across clients. - [Test a block](https://docs.extole.com/reference/testblock.md): Evaluates the block configuration against a test payload without persisting any changes. Returns the rendered output and any validation errors. - [Archive a campaign](https://docs.extole.com/reference/archivecampaign.md): Moves the specified campaign version to archived state, hiding it from default campaign listings while retaining it for reporting and recovery. Use `POST /v2/campaigns/{id}/unarchive` to restore an archived campaign to active state. - [Delete a campaign](https://docs.extole.com/reference/deletecampaign.md): Soft-deletes the specified campaign version. Deleted campaigns are excluded from standard listings but are recoverable via `POST /v2/campaigns/{id}/undelete`. Returns the deleted campaign record. Requires the campaign to be in a state that permits deletion (e.g. DRAFT or ARCHIVED). - [Discard a campaign draft](https://docs.extole.com/reference/discard.md): Discards the draft version of the specified campaign, reverting it to the last published state. Uncommitted changes made since the last publish are lost. If no published version exists, the campaign remains in draft with its changes removed. - [Download a campaign bundle](https://docs.extole.com/reference/downloadcampaignbundle.md): Downloads the specified campaign version as a ZIP archive containing all campaign assets, component definitions, and configuration files. The archive can be used to back up a campaign or to import it into another client via `POST /v2/campaigns` or `PUT /v2/campaigns/{id}`. - [Duplicate a campaign](https://docs.extole.com/reference/duplicatecampaign.md): Creates a new draft campaign by deep-copying the supplied campaign version. The copy inherits all components, settings, and labels; the optional request body lets callers override the new campaign's name and label list. The new campaign is created in DRAFT state regardless of the source's state. - [End a campaign](https://docs.extole.com/reference/endcampaign.md): Transitions the specified campaign version to ended state, permanently closing it to new participants. Ended campaigns are retained for reporting and audit; use `POST /v2/campaigns/{id}/archive` to hide them from active lists. Supports an optional schedule request body to defer the end to a future time. - [Get a built campaign](https://docs.extole.com/reference/getbuiltcampaign.md): Returns the specified campaign version in its fully evaluated (built) runtime form, with all evaluatable fields resolved against current component and setting values. Omit the `/version/{version}` segment to retrieve the built form of the latest version. - [Get a campaign](https://docs.extole.com/reference/getcampaign.md): Returns the source definition of the supplied campaign version. Omit the `/version/{version}` path segment to retrieve the latest version. Use `GET /v2/campaigns/{id}/built` for the fully evaluated runtime form. - [Get a campaign summary](https://docs.extole.com/reference/getcampaignsummary.md): Returns a lightweight read-only summary of the specified campaign, including id, name, state, and dates. - [List deleted campaigns](https://docs.extole.com/reference/getdeletedcampaigns.md): Returns the campaigns that have been soft-deleted for the calling client. Deleted campaigns are retained for audit and recovery purposes. Use `POST /v2/campaigns/{id}/undelete` to restore a deleted campaign. - [List duplicatable campaigns](https://docs.extole.com/reference/getduplicatablecampaigns.md): Returns the campaigns that the calling client is permitted to duplicate. Duplicatable campaigns include both the client's own draft and published campaigns and any shared template campaigns. Use `POST /v2/campaigns/{id}/duplicate` to create a copy. - [Get a campaign version](https://docs.extole.com/reference/getversion.md): Returns the version descriptor for the specified campaign version identifier. Includes the version's state, author, and timestamps. Use `GET /v2/campaigns/{id}/version/{version}` to retrieve the full campaign definition for that version. - [List campaign versions](https://docs.extole.com/reference/getversions.md): Returns the version history for the specified campaign, ordered from most recent to oldest. Each entry includes the version identifier, state, and timestamps. Supports `limit` and `offset` query parameters for pagination. - [Launch a campaign in burst mode](https://docs.extole.com/reference/launchburst.md): Transitions the specified campaign version into burst mode, which is a high-throughput live state designed for time-limited promotional surges. Validates all campaign components and reward rules before the transition. Returns the updated campaign on success. - [Launch a campaign in test mode](https://docs.extole.com/reference/launchtest.md): Transitions the specified campaign version into test mode, enabling a limited rollout to test participants without affecting production traffic. Validates all campaign components, controllers, and reward rules before the transition. Returns the updated campaign on success. - [List built campaigns](https://docs.extole.com/reference/listbuiltcampaigns.md): Returns campaigns in their fully evaluated (built) runtime form, with all evaluatable fields resolved. Use this when the calling system needs effective component values and settings rather than source definitions. Supports the same filtering as `GET /v2/campaigns`. - [List campaigns](https://docs.extole.com/reference/listcampaigns.md): Returns campaigns for the calling client, filtered and ordered by the supplied query parameters. Supports filtering by state (draft, published, archived), label, and date range. Use `GET /v2/campaigns/built` for fully evaluated runtime forms. - [List campaign summaries](https://docs.extole.com/reference/listcampaignsummaries.md): Returns lightweight read-only summaries of campaigns, including id, name, state, and dates. Supports filtering via query parameters. - [Set a campaign live](https://docs.extole.com/reference/livecampaign.md): Transitions the specified campaign version directly to live state, bypassing the normal test-mode phase. Validates all components and reward rules before the transition. Returns the updated campaign. Use `POST /v2/campaigns/{id}/publish` for the standard publish flow with full validation. - [Lock a campaign](https://docs.extole.com/reference/lockcampaign.md): Locks the specified campaign version to prevent concurrent edits. While a campaign is locked, attempts to edit it by other callers are rejected with `400 campaign_locked`. The lock is associated with the caller's access token; use `POST /v2/campaigns/{id}/unlock` to release it. - [Make a campaign version the latest draft](https://docs.extole.com/reference/makelatestdraft.md): Promotes the specified campaign version to be the latest draft, replacing any existing latest-draft pointer. Useful for rolling back to a prior version that should become the new active draft for editing. The campaign must be in a state that permits draft promotion. - [Make a campaign version latest while preserving state](https://docs.extole.com/reference/makelatestpreservestate.md): Promotes the specified campaign version to the latest pointer while keeping the campaign's current lifecycle state (draft, published, etc.) unchanged. Unlike `make-latest-draft` or `make-latest-published`, this transition preserves the state the campaign was already in rather than changing it. - [Make a campaign version the latest published](https://docs.extole.com/reference/makelatestpublished.md): Promotes the specified campaign version to be the latest published version, replacing the existing latest-published pointer. Use to roll back live traffic to a prior published version without going through a full publish cycle. The campaign must already be in published state. - [Pause a campaign](https://docs.extole.com/reference/pausecampaign.md): Transitions the specified campaign version to paused state, temporarily halting participant eligibility and reward processing. The campaign can be resumed by publishing it again. Supports an optional schedule request body to defer the pause to a future time. - [Publish a campaign](https://docs.extole.com/reference/publishcampaign.md): Validates, builds, and publishes the supplied campaign version, making it live for participants. The optional request body lets callers override the publish schedule. Returns the published campaign. Validates all components, controllers, flow steps, and reward rules before publishing; validation failures return descriptive 4xx errors from the various validation exception types. - [Rename a campaigns program label](https://docs.extole.com/reference/renamecampaignsprogramlabel.md): Renames the specified program label across all campaigns that use it. - [Schedule a campaign state change](https://docs.extole.com/reference/schedulecampaign.md): Schedules the specified campaign version for a future state transition (e.g. go-live or end) at the datetime specified in the request body. The campaign must be published before it can be scheduled. Replaces any existing schedule on the same campaign version. - [Stop a campaign](https://docs.extole.com/reference/stopcampaign.md): Immediately stops the specified campaign version, halting all active processing and participant eligibility. Unlike pause, a stopped campaign must be republished to resume. Supports an optional schedule request body to defer the stop to a future time. - [Unarchive a campaign](https://docs.extole.com/reference/unarchivecampaign.md): Restores the specified campaign version from archived state back to its previous active state. After unarchiving, the campaign resumes appearing in standard listings and is eligible for editing or publishing. - [Undelete a campaign](https://docs.extole.com/reference/undeletecampaign.md): Recovers a soft-deleted campaign version, restoring it to an active state. Requires the `CLIENT_SUPERUSER` scope. After recovery the campaign appears again in standard listings and can be edited or published. - [Unlock a campaign](https://docs.extole.com/reference/unlockcampaign.md): Releases the edit lock on the specified campaign version. After unlocking, other callers can edit the campaign again. Returns `400 campaign_not_locked` if the campaign is not currently locked by the caller. - [Update campaigns by program label](https://docs.extole.com/reference/updatecampaignsbyprogramlabel.md): Applies the specified update to all campaigns associated with the given program label. - [Update a campaign from archive](https://docs.extole.com/reference/updatewithcampaignarchive.md): Replaces the content of the specified campaign version with a campaign ZIP archive. All components, controllers, flow steps, and creative assets in the archive overwrite the existing campaign definition. The `version` path segment acts as an optimistic-lock guard; supply the current version to prevent lost-update races. - [Upload a new campaign from archive](https://docs.extole.com/reference/uploadnewcampaignarchive.md): Creates a new campaign by importing a campaign ZIP archive previously exported via `GET /v2/campaigns/{id}.zip`. All components, controllers, flow steps, and creative assets contained in the archive are imported and the new campaign is created in DRAFT state with a server-assigned id. - [Add component to setting](https://docs.extole.com/reference/addcomponenttosetting.md): Adds a component reference to the specified socket-type setting. - [Apply a component bundle](https://docs.extole.com/reference/applycomponentbundle.md): Applies a bundle archive to an existing component, updating its sub-resources from the bundled definition. - [Batch update component settings](https://docs.extole.com/reference/batchupdatecomponentsettings.md): Applies a batch of setting value updates across the component in one request. - [Create a component setting](https://docs.extole.com/reference/createcomponentsetting.md): Adds a new named configuration setting to the specified component. Returns the created setting. - [Delete a component](https://docs.extole.com/reference/deletecomponent.md): Recursively deletes the specified component and all its children. If the deleted component is the root component of a campaign, the entire campaign is archived. The `version` path segment is used as an optimistic-lock guard. - [Delete a component setting](https://docs.extole.com/reference/deletecomponentsetting.md): Removes the specified component setting and returns the deleted record. - [Diff two components](https://docs.extole.com/reference/diffcomponents.md): Returns a diff between two component versions, showing added, removed, and changed settings. - [Download component variables](https://docs.extole.com/reference/downloadcomponentvariables.md): Downloads the current variable values for the specified component as CSV, JSON, or Excel. - [Download translatable component variables](https://docs.extole.com/reference/downloadtranslatablecomponentvariables.md): Downloads the translatable variable values for the specified component for localisation. - [Duplicate a component](https://docs.extole.com/reference/duplicatecomponent.md): Creates a deep copy of the specified component and all its child settings and assets. - [Get available component upgrades](https://docs.extole.com/reference/getavailablecomponentupgrades.md): Returns a map of available upgrade targets for the specified component, keyed by target component id. - [Get a built component](https://docs.extole.com/reference/getbuiltcomponent.md): Returns the fully evaluated (built) runtime form of the specified component, with expression fields resolved. - [Get a built component setting](https://docs.extole.com/reference/getbuiltcomponentsetting.md): Returns the fully evaluated (built) runtime form of the component setting, with expression fields resolved. - [Get a component](https://docs.extole.com/reference/getcomponent.md): Returns the specified component, optionally at a specific version. If no version is specified, returns the current version. - [Get component anchors](https://docs.extole.com/reference/getcomponentanchors.md): Returns the anchor details for the specified component. - [Get a component setting](https://docs.extole.com/reference/getcomponentsetting.md): Returns the component setting for the specified name. - [Get component variables](https://docs.extole.com/reference/getcomponentvariables.md): Returns the current variable values for the specified component. - [List built components](https://docs.extole.com/reference/listbuiltcomponents.md): Returns all components in their fully evaluated runtime form. - [List built component settings](https://docs.extole.com/reference/listbuiltcomponentsettings.md): Returns all component settings in their fully evaluated runtime form. - [List built duplicatable components](https://docs.extole.com/reference/listbuiltduplicatablecomponents.md): Returns all duplicatable components in their fully evaluated runtime form. - [List components](https://docs.extole.com/reference/listcomponents.md): Returns all components visible to the current client. Components are the reusable building blocks that campaigns assemble — creatives, content blocks, and sub-experiences. - [List component settings](https://docs.extole.com/reference/listcomponentsettings.md): Returns all settings for the specified component. - [List duplicatable components](https://docs.extole.com/reference/listduplicatablecomponents.md): Returns all components that are eligible for duplication by the current client. - [List installed components in setting](https://docs.extole.com/reference/listinstalledcomponentsinsetting.md): Returns all component references currently installed in the specified socket-type setting. - [Remove component from setting](https://docs.extole.com/reference/removecomponentfromsetting.md): Removes a component reference from the specified socket-type setting. - [Update a component setting](https://docs.extole.com/reference/updatecomponentsetting.md): Updates the specified component setting. Only fields present in the request body are changed. Returns the updated setting. - [Upgrade a component](https://docs.extole.com/reference/upgradecomponent.md): Upgrades the component to the latest version of its component type definition. - [Upload a component bundle](https://docs.extole.com/reference/uploadcomponentbundle.md): Uploads a new component bundle archive, creating a new component and its sub-resources from the bundled definition. - [Upload component variables](https://docs.extole.com/reference/uploadcomponentvariables.md): Uploads a CSV or Excel file containing variable values and applies them to the matching components. - [Upload translatable component variables](https://docs.extole.com/reference/uploadtranslatablecomponentvariables.md): Uploads translated variable values from a CSV or Excel file. - [Archive a program](https://docs.extole.com/reference/archiveprogram.md): Archives the program, disabling associated campaigns. Returns the archived program. - [Create a program](https://docs.extole.com/reference/createprogram.md): Creates a new top-level program definition. Returns the created program with its server-assigned id. - [Get a program](https://docs.extole.com/reference/getprogram.md): Returns the program definition for the specified id. - [Get a program with decrypted values](https://docs.extole.com/reference/getprogramdecrypted.md): Returns the program definition for the specified id including decrypted sensitive field values. Requires elevated authorization. - [List programs](https://docs.extole.com/reference/listprograms.md): Returns all top-level program definitions for the client. Programs group related campaigns together (for example, "Summer Referral 2025"). - [Update a program](https://docs.extole.com/reference/updateprogram.md): Updates the program definition. Only fields present in the request body are changed. Returns the updated program. - [Validate a program](https://docs.extole.com/reference/validateprogram.md): Validates the program domain configuration without persisting any changes. Returns any domain validation errors. - [Create an email domain](https://docs.extole.com/reference/createemaildomain.md): Creates a new custom sending domain for campaign emails. DNS verification records are generated for the domain. Returns the created domain with its server-assigned id. - [Delete an email domain](https://docs.extole.com/reference/deleteemaildomain.md): Removes the custom sending domain. Returns the deleted domain. - [Get an email domain](https://docs.extole.com/reference/getemaildomain.md): Returns the custom sending domain for the specified id. - [List email domains](https://docs.extole.com/reference/listemaildomains.md): Returns all custom sending domains configured for the client. - [Update an email domain](https://docs.extole.com/reference/updateemaildomain.md): Updates the custom sending domain. Only fields present in the request body are changed. Returns the updated domain. - [Validate an email domain](https://docs.extole.com/reference/validateemaildomain.md): Checks DNS records for the custom sending domain to confirm verification status. Returns the current validation result without making changes. - [Create an erasure request](https://docs.extole.com/reference/createerasure.md): Submits an irreversible GDPR/privacy erasure request for a person's data. All personal data associated with the specified person is permanently deleted. Returns the erasure record. - [Archive an event stream](https://docs.extole.com/reference/archiveeventstream.md): Archives the event-stream subscription, stopping event delivery without permanently removing the configuration. Returns the archived event stream. - [Archive an event stream filter](https://docs.extole.com/reference/archiveeventstreamfilter.md): Archives the filter rule on the specified event stream. Returns the archived filter. - [Create an event stream](https://docs.extole.com/reference/createeventstream.md): Creates a new event-stream subscription for the client. Event streams push a filtered view of client-event activity to a downstream consumer such as a webhook or Kafka topic. Returns the created event stream with its server-assigned id. - [Create an event stream filter](https://docs.extole.com/reference/createeventstreamfilter.md): Creates a new filter rule on the specified event stream. Filters restrict which events are delivered to the downstream consumer. Returns the created filter with its server-assigned id. - [Delete an event stream](https://docs.extole.com/reference/deleteeventstream.md): Permanently deletes the event-stream subscription. Returns the deleted event stream. - [Get a built event stream](https://docs.extole.com/reference/getbuilteventstream.md): Returns the evaluated runtime configuration for the specified event-stream subscription. The built representation reflects component inheritance and dynamic overrides applied at runtime. - [Get an event stream](https://docs.extole.com/reference/geteventstream.md): Returns the event-stream subscription for the specified id. - [Get an event stream filter](https://docs.extole.com/reference/geteventstreamfilter.md): Returns the filter rule for the specified id on the given event stream. - [List built event streams](https://docs.extole.com/reference/listbuilteventstreams.md): Returns the evaluated runtime configuration for all event-stream subscriptions of the client. Built representations reflect component inheritance and dynamic overrides applied at runtime. - [List events from an event stream](https://docs.extole.com/reference/listeventstreamevents.md): Returns events captured by the event stream identified by `eventStreamId`, sorted newest first. Use `limit`, `offset`, and date-range filter parameters to page and narrow the result set. Each entry includes the event type, timestamp, and the full event payload as recorded by the stream. - [List event stream filters](https://docs.extole.com/reference/listeventstreamfilters.md): Returns all filter rules configured on the specified event stream. - [List event streams](https://docs.extole.com/reference/listeventstreams.md): Returns all event-stream subscriptions configured for the client. Event streams push a filtered view of client-event activity to a downstream consumer such as a webhook or Kafka topic. Use `GET /v6/event-streams/built` to retrieve evaluated runtime configs. - [Unarchive an event stream](https://docs.extole.com/reference/unarchiveeventstream.md): Restores a previously archived event-stream subscription, resuming event delivery. Returns the restored event stream. - [Update an event stream](https://docs.extole.com/reference/updateeventstream.md): Updates the event-stream subscription. Only fields present in the request body are changed. Returns the updated event stream. - [Update an event stream filter](https://docs.extole.com/reference/updateeventstreamfilter.md): Updates the filter rule on the specified event stream. Only fields present in the request body are changed. Returns the updated filter. - [Get opt-out status](https://docs.extole.com/reference/getoptout.md): Returns the opt-out suppression state for a person identified by email address. A person who is opted out will not receive campaign sends or reward awards. - [Get a shareable link](https://docs.extole.com/reference/getshareable.md): Returns the v3 shareable link for the specified code, including the participant and campaign context resolved at runtime. - [Create a promotion link](https://docs.extole.com/reference/createpromotionlink.md): Creates a new promotion link for a participant. Returns the created link with its server-assigned id. - [Get a promotion link](https://docs.extole.com/reference/getpromotionlink.md): Returns the promotion link for the specified code. - [List promotion links](https://docs.extole.com/reference/listpromotionlinks.md): Returns all promotion links for the client. Promotion links are the short URLs that participants share to drive referrals. - [Update a promotion link](https://docs.extole.com/reference/updatepromotionlink.md): Updates the promotion link for the specified code. Only fields present in the request body are changed. Returns the updated link. - [Create a report runner](https://docs.extole.com/reference/createreportrunner.md): Creates a new report runner definition and schedules it for execution. Returns the persisted report runner with its server-assigned id. The runner begins executing on its first scheduled interval after creation. - [Delete a report runner](https://docs.extole.com/reference/deletereportrunner.md): Permanently deletes the supplied report runner and cancels all pending executions. Returns the deleted record on success. Returns `404 report_runner_not_found` if the id does not exist. Locked runners cannot be deleted via the REST API. - [Duplicate a report runner](https://docs.extole.com/reference/duplicatereportrunner.md): Creates a new report runner by duplicating the supplied one. The body provides the overrides to apply to the copy; fields absent from the body are copied from the source. Set `allow_duplicate=true` to allow creating a runner with the same name as an existing one. Returns the new report runner. - [Get a report runner](https://docs.extole.com/reference/getreportrunner.md): Returns the full report runner definition for the supplied id, including its schedule, report type, parameters, formats, and delivery configuration. Returns `404 report_runner_not_found` if the id does not exist. - [List report runners](https://docs.extole.com/reference/listreportrunners.md): Returns report runners for the calling client, filtered and ordered by the supplied query parameters. Report runners are scheduled report execution definitions that run a report type on a recurring schedule and deliver output to a configured destination (e.g. SFTP). Use `GET /v7/report-runners/template` to retrieve the available runner templates. - [List report runner templates](https://docs.extole.com/reference/listreportrunnertemplates.md): Returns the available report runner templates for the calling client. Templates are pre-configured runner definitions that can be duplicated via `POST /v7/report-runners/{id}/duplicate` to create new runners with minimal configuration. - [Update a report runner](https://docs.extole.com/reference/updatereportrunner.md): Applies a partial update to the supplied report runner. Only the fields present in the body are changed; omitted fields are left intact. Returns the persisted report runner after the update. Returns `404 report_runner_not_found` if the id does not exist. Locked runners (`report_runner_locked`) must be updated via deployment tooling. - [Delete a report type](https://docs.extole.com/reference/deletereporttype.md): Deletes the supplied report type. Returns the deleted record on success. Fails with `400 report_type_has_dependent_types` if other report types depend on it; delete or detach the dependents first. - [Get report type](https://docs.extole.com/reference/getreporttype.md): Returns the full report-type record for the supplied id, including its display name, description, declared `parameters`, supported `formats`, allowed `scopes`, visibility, and associated `tags`. - [List recommended report types](https://docs.extole.com/reference/listreporttyperecommendations.md): Returns report types that are recommended for immediate execution, ranked by relevance for the calling client. Use the `limit` parameter to control the maximum number of results (default: 5). - [List report types](https://docs.extole.com/reference/listreporttypes.md): Returns the report types visible to the calling client, filtered and ordered by the supplied query parameters. Supports paging via `limit` / `offset` and ordering via `order_by` / `order`. Use this to populate report-builder pickers and to discover the available `parameters`, `formats`, and `scopes` for each report type. - [List report types with their associated clients](https://docs.extole.com/reference/listreporttypeswithclients.md): Returns every report type alongside the ids of clients that have access to it. Equivalent to running `listReportTypes` and `listReportTypeClients` for every result, but in a single call. Requires the `client_superuser` scope - use this only when auditing cross-client access at the platform level. - [Update a report type](https://docs.extole.com/reference/updatereporttype.md): Applies a partial update to the supplied report type. Only the fields present in the body are changed; omitted fields are left intact. Returns the persisted report type after update. - [Cancel a report](https://docs.extole.com/reference/cancelreport.md): Cancels a pending or in-progress report run identified by its report ID. - [Create a report](https://docs.extole.com/reference/createreport.md): Submits a new report run for the specified report type and parameters. The report executes asynchronously; poll the returned report ID to check status. - [Create a shared token for a report](https://docs.extole.com/reference/createreportsharedtoken.md): Creates a shareable access token for the specified report, allowing the report to be accessed without full authentication. - [Delete a report](https://docs.extole.com/reference/deletereport.md): Deletes the report run identified by its report ID, including its output data. - [Download the latest report](https://docs.extole.com/reference/downloadlatestreport.md): Downloads the output of the most recent completed report run matching the specified report name and optional filters. Append a format extension to select the download format. - [Download a report](https://docs.extole.com/reference/downloadreport.md): Downloads the output of a completed report run. Append a format extension (`.csv`, `.json`, `.jsonl`, `.xlsx`, `.psv`) to select the download format, or omit it to use the report's default format. - [Get the latest report](https://docs.extole.com/reference/getlatestreport.md): Returns the most recent completed report run matching the specified report name and optional parameter filters. - [Get public view of a report](https://docs.extole.com/reference/getpublicreportview.md): Returns the publicly accessible view of the specified report. - [Get a report](https://docs.extole.com/reference/getreport.md): Returns the status and metadata for the report run identified by its report ID. - [Get report debug info](https://docs.extole.com/reference/getreportdebug.md): Returns internal debug information for the report run identified by its report ID. Restricted to client superusers. - [Get report info](https://docs.extole.com/reference/getreportinfo.md): Returns metadata about a completed report across all available formats, including row count and available column sets. - [Get report format info](https://docs.extole.com/reference/getreportinfobyformat.md): Returns metadata about a completed report in the specified format, such as row count and column names. - [List report recommendations](https://docs.extole.com/reference/listreportrecommendations.md): Returns reports recommended for scheduling according to the selected recommendation type. - [List reports](https://docs.extole.com/reference/listreports.md): Returns all report runs visible to the authenticated client, optionally filtered by the provided query parameters. - [List report tags](https://docs.extole.com/reference/listreporttags.md): Returns the list of tags available for filtering reports. - [Retry a report](https://docs.extole.com/reference/retryreport.md): Retries a previously submitted report run identified by its report ID. Use this to re-run a failed or cancelled report with the same parameters. - [Update a report](https://docs.extole.com/reference/updatereport.md): Updates the parameters of a pending report run identified by its report ID. - [Archive a custom reward supplier](https://docs.extole.com/reference/archivecustomrewardsupplier.md): Archives the custom reward supplier, removing it from active use. Returns the archived supplier. - [Archive a manual coupon reward supplier](https://docs.extole.com/reference/archivemanualcouponrewardsupplier.md): Archives the manual coupon reward supplier, removing it from active use. Returns the archived supplier. - [Archive a reward supplier](https://docs.extole.com/reference/archiverewardsupplier.md): Archives the reward supplier, removing it from active use. Returns the archived supplier. - [Archive a Salesforce coupon reward supplier](https://docs.extole.com/reference/archivesalesforcecouponrewardsupplier.md): Archives the Salesforce coupon reward supplier, removing it from active use. Returns the archived supplier. - [Archive a Tango reward supplier](https://docs.extole.com/reference/archivetangorewardsupplier.md): Archives the Tango reward supplier, removing it from active use. Returns the archived supplier. - [Create a custom reward supplier](https://docs.extole.com/reference/createcustomrewardsupplier.md): Creates a new custom reward supplier configuration. Returns the persisted supplier with its server-assigned id. - [Create a manual coupon reward supplier](https://docs.extole.com/reference/createmanualcouponrewardsupplier.md): Creates a new manual coupon reward supplier configuration. Returns the persisted supplier with its server-assigned id. - [Create a reward supplier](https://docs.extole.com/reference/createrewardsupplier.md): Creates a new reward supplier configuration. Returns the persisted supplier with its server-assigned id. - [Create a Salesforce coupon reward supplier](https://docs.extole.com/reference/createsalesforcecouponrewardsupplier.md): Creates a new Salesforce coupon reward supplier configuration. Returns the persisted supplier with its server-assigned id. - [Create a Tango reward supplier](https://docs.extole.com/reference/createtangorewardsupplier.md): Creates a new Tango reward supplier configuration. Returns the persisted supplier with its server-assigned id. - [Delete manual coupons](https://docs.extole.com/reference/deletemanualcoupons.md): Removes coupons from the manual coupon supplier's pool. - [Delete a reward supplier](https://docs.extole.com/reference/deleterewardsupplier.md): Permanently deletes the reward supplier. Returns the deleted supplier record. - [Delete Salesforce coupons](https://docs.extole.com/reference/deletesalesforcecoupons.md): Removes all unused coupons from the Salesforce coupon pool. - [Download manual coupons](https://docs.extole.com/reference/downloadmanualcoupons.md): Downloads the current coupon pool for the manual coupon supplier as a JSON response. - [Download manual coupons file](https://docs.extole.com/reference/downloadmanualcouponsfile.md): Downloads the current coupon pool for the manual coupon supplier as a file. - [Get a built custom reward supplier](https://docs.extole.com/reference/getbuiltcustomrewardsupplier.md): Returns the fully evaluated (built) runtime form of the specified custom reward supplier. - [Get a built manual coupon reward supplier](https://docs.extole.com/reference/getbuiltmanualcouponrewardsupplier.md): Returns the fully evaluated (built) runtime form of the specified manual coupon reward supplier. - [Get a built reward supplier](https://docs.extole.com/reference/getbuiltrewardsupplier.md): Returns the fully evaluated (built) runtime form of the specified reward supplier. - [Get a built Salesforce coupon reward supplier](https://docs.extole.com/reference/getbuiltsalesforcecouponrewardsupplier.md): Returns the fully evaluated (built) runtime form of the specified Salesforce coupon reward supplier. - [Get a built Tango reward supplier](https://docs.extole.com/reference/getbuilttangorewardsupplier.md): Returns the fully evaluated (built) runtime form of the specified Tango reward supplier. - [Get a custom reward supplier](https://docs.extole.com/reference/getcustomrewardsupplier.md): Returns the custom reward supplier configuration for the specified supplier id. - [Get manual coupon operations](https://docs.extole.com/reference/getmanualcouponoperations.md): Returns a log of recent upload and delete operations for this manual coupon supplier. - [Get a manual coupon reward supplier](https://docs.extole.com/reference/getmanualcouponrewardsupplier.md): Returns the manual coupon reward supplier configuration for the specified supplier id. - [Get manual coupon stats](https://docs.extole.com/reference/getmanualcouponstats.md): Returns usage statistics for the coupon pool on this manual coupon supplier. - [Get a reward supplier](https://docs.extole.com/reference/getrewardsupplier.md): Returns the reward supplier configuration for the specified supplier id. - [Get reward supplier display types](https://docs.extole.com/reference/getrewardsupplierdisplaytypes.md): Returns the available display type labels for reward suppliers on this client. - [Get Salesforce coupon operations](https://docs.extole.com/reference/getsalesforcecouponoperations.md): Returns a log of recent Salesforce sync operations for this coupon supplier. - [Get a Salesforce coupon reward supplier](https://docs.extole.com/reference/getsalesforcecouponrewardsupplier.md): Returns the Salesforce coupon reward supplier configuration for the specified supplier id. - [Get Salesforce coupon stats](https://docs.extole.com/reference/getsalesforcecouponstats.md): Returns usage statistics for the coupon pool on this Salesforce coupon supplier. - [Get Tango catalog](https://docs.extole.com/reference/gettangocatalog.md): Returns the available Tango gift card brands and denominations from the Tango Card API. - [Get a Tango reward supplier](https://docs.extole.com/reference/gettangorewardsupplier.md): Returns the Tango reward supplier configuration for the specified supplier id. - [List built custom reward suppliers](https://docs.extole.com/reference/listbuiltcustomrewardsuppliers.md): Returns all custom reward suppliers in their fully evaluated (built) runtime form. - [List built manual coupon reward suppliers](https://docs.extole.com/reference/listbuiltmanualcouponrewardsuppliers.md): Returns all manual coupon reward suppliers in their fully evaluated (built) runtime form. - [List built reward suppliers](https://docs.extole.com/reference/listbuiltrewardsuppliers.md): Returns all reward suppliers in their fully evaluated (built) runtime form. - [List built reward suppliers](https://docs.extole.com/reference/listbuiltrewardsuppliersv2.md): Returns all reward suppliers in their fully evaluated (built) runtime form. - [List built Salesforce coupon reward suppliers](https://docs.extole.com/reference/listbuiltsalesforcecouponrewardsuppliers.md): Returns all Salesforce coupon reward suppliers in their fully evaluated (built) runtime form. - [List built Tango reward suppliers](https://docs.extole.com/reference/listbuilttangorewardsuppliers.md): Returns all Tango reward suppliers in their fully evaluated (built) runtime form. - [List custom reward suppliers](https://docs.extole.com/reference/listcustomrewardsuppliers.md): Returns all custom reward supplier configurations for the client. A custom reward supplier fulfils rewards via callbacks to the client's own system. - [List manual coupon reward suppliers](https://docs.extole.com/reference/listmanualcouponrewardsuppliers.md): Returns all manual coupon reward supplier configurations for the client. A manual coupon supplier distributes one-time coupon codes from a pool uploaded by the client. - [List reward suppliers](https://docs.extole.com/reference/listrewardsuppliers.md): Returns all reward supplier configurations for the client, across all supplier types. Reward suppliers are integrations with upstream providers that fulfil reward issuance (gift cards, coupons, payouts, etc.). Use the `types` query parameter to filter by supplier type. - [List reward suppliers](https://docs.extole.com/reference/listrewardsuppliersv2.md): Returns all reward supplier configurations for the client. - [List Salesforce coupon pools](https://docs.extole.com/reference/listsalesforcecouponpools.md): Returns the available Salesforce coupon pools that can be linked to a reward supplier. - [List Salesforce coupon reward suppliers](https://docs.extole.com/reference/listsalesforcecouponrewardsuppliers.md): Returns all Salesforce coupon reward supplier configurations for the client. - [List Tango reward suppliers](https://docs.extole.com/reference/listtangorewardsuppliers.md): Returns all Tango reward supplier configurations for the client. - [Refill Salesforce coupons](https://docs.extole.com/reference/refillsalesforcecoupons.md): Triggers a sync to pull new coupon codes from the Salesforce coupon pool into the supplier. - [Unarchive a reward supplier](https://docs.extole.com/reference/unarchiverewardsupplier.md): Restores a previously archived reward supplier to active use. Returns the restored supplier. - [Update a custom reward supplier](https://docs.extole.com/reference/updatecustomrewardsupplier.md): Updates the custom reward supplier on the client. Only fields present in the request body are changed. Returns the updated supplier. - [Update a manual coupon reward supplier](https://docs.extole.com/reference/updatemanualcouponrewardsupplier.md): Updates the manual coupon reward supplier on the client. Only fields present in the request body are changed. Returns the updated supplier. - [Update a reward supplier](https://docs.extole.com/reference/updaterewardsupplier.md): Updates the reward supplier on the client. Only fields present in the request body are changed. Returns the updated supplier. - [Update a Salesforce coupon reward supplier](https://docs.extole.com/reference/updatesalesforcecouponrewardsupplier.md): Updates the Salesforce coupon reward supplier on the client. Only fields present in the request body are changed. Returns the updated supplier. - [Update a Tango reward supplier](https://docs.extole.com/reference/updatetangorewardsupplier.md): Updates the Tango reward supplier on the client. Only fields present in the request body are changed. Returns the updated supplier. - [Upload manual coupons file](https://docs.extole.com/reference/uploadmanualcouponsfile.md): Uploads a coupon code file (CSV or text) to the manual coupon supplier's pool. - [Archive the client logo](https://docs.extole.com/reference/archivelogo.md): Archives the current client logo, removing it from active use. Returns the archived logo metadata. - [Upload a client logo](https://docs.extole.com/reference/createlogo.md): Uploads a new logo image for the client via multipart form upload. Returns the created logo metadata. - [Create a timeline entry](https://docs.extole.com/reference/createtimelineentry.md): Creates a new named milestone in the campaign timeline visible in the console. Returns the created entry with its server-assigned name. - [Delete a timeline entry](https://docs.extole.com/reference/deletetimelineentry.md): Removes the campaign timeline entry for the specified name. Returns the deleted entry. - [Download logo image](https://docs.extole.com/reference/downloadlogoimage.md): Downloads the client logo as a PNG image binary. - [Get the client logo](https://docs.extole.com/reference/getlogo.md): Returns the current logo image metadata for the client. - [Get a timeline entry](https://docs.extole.com/reference/gettimelineentry.md): Returns the campaign timeline entry for the specified name. - [List timeline entries](https://docs.extole.com/reference/listtimelineentries.md): Returns all campaign timeline entries for the client, optionally filtered by tags. - [Update a timeline entry](https://docs.extole.com/reference/updatetimelineentry.md): Updates the campaign timeline entry for the specified name. Only fields present in the request body are changed. Returns the updated entry. - [Create a notification snooze for the caller](https://docs.extole.com/reference/createsnooze.md): Creates a snooze rule that suppresses portal notifications matching the supplied tags for the calling portal user until the `expires_at` timestamp. Returns the newly created snooze with its assigned id. To create a snooze for a different user, use `createSnoozeByUser`. - [Create a notification snooze for a user](https://docs.extole.com/reference/createsnoozebyuser.md): Creates a snooze rule that suppresses portal notifications matching the supplied tags for the Extole portal user identified by `userId` until the `expires_at` timestamp. Returns the newly created snooze with its assigned id. - [Delete a notification snooze for the caller](https://docs.extole.com/reference/deletesnooze.md): Removes the snooze rule identified by `snoozeId` belonging to the calling portal user. Returns the deleted snooze. Notifications previously suppressed by this rule will resume immediately. To delete a snooze for a different user, use `deleteSnoozeByUser`. - [Delete a notification snooze for a user](https://docs.extole.com/reference/deletesnoozebyuser.md): Removes the snooze rule identified by `snoozeId` belonging to the Extole portal user identified by `userId`. Returns the deleted snooze. Notifications previously suppressed by this rule will resume immediately. - [Get notification read cursor](https://docs.extole.com/reference/getnotificationcursor.md): Returns the timestamp up to which the calling user has read their notifications. Use this cursor to determine which notifications are unread (those created after the returned timestamp). Advance the cursor with `updateNotificationCursor`. - [Get notification read cursor for a user](https://docs.extole.com/reference/getnotificationcursorbyuser.md): Returns the timestamp up to which the Extole portal user identified by `userId` has read their notifications. Requires the `USER_SUPPORT` scope. Use `updateNotificationCursorByUser` to advance the cursor. - [Get a notification snooze for the caller](https://docs.extole.com/reference/getsnooze.md): Returns the snooze rule identified by `snoozeId` belonging to the calling portal user. Returns the tags being snoozed and the expiry timestamp. To retrieve a snooze for a different user, use `getSnoozeByUser`. - [Get a notification snooze for a user](https://docs.extole.com/reference/getsnoozebyuser.md): Returns the snooze rule identified by `snoozeId` belonging to the Extole portal user identified by `userId`. Returns the tags being snoozed and the expiry timestamp. - [List local notifications for a user](https://docs.extole.com/reference/listlocalnotificationsbyuser.md): Returns the in-portal notifications for the Extole portal user identified by `userId` from the specific pod handling this request. Use `api-X.extole.io` instead of `api.extole.io` to pin the request to a specific pod when troubleshooting notification delivery. For general use, prefer the non-local endpoint `listNotificationsByUser`. - [List recent notifications](https://docs.extole.com/reference/listnotifications.md): Returns the calling user's in-portal notifications sorted newest first. Use the `limit` and `offset` parameters to page through results. Notifications include report completion alerts, campaign status changes, and custom client events fired via `createClientEvent`. - [List notifications for a user](https://docs.extole.com/reference/listnotificationsbyuser.md): Returns the in-portal notifications for the Extole portal user identified by `userId`, sorted newest first. Requires the `USER_SUPPORT` scope. Use the `limit` and `offset` parameters to page through results. - [List notification snoozes for the caller](https://docs.extole.com/reference/listsnoozes.md): Returns all active notification snooze rules for the calling portal user, sorted newest first. A snooze rule suppresses notifications matching specified tags until its expiry time. To list snoozes for a different user, use `listSnoozesByUser`. - [List notification snoozes for a user](https://docs.extole.com/reference/listsnoozesbyuser.md): Returns all active notification snooze rules for the Extole portal user identified by `userId`, sorted newest first. A snooze rule suppresses notifications matching specified tags until its expiry time. - [Mark notifications as read](https://docs.extole.com/reference/updatenotificationcursor.md): Advances the read cursor to the supplied timestamp, marking all notifications created at or before that time as read for the calling user. Returns the updated cursor state. Use `getNotificationCursor` to retrieve the current cursor position. - [Mark notifications as read for a user](https://docs.extole.com/reference/updatenotificationcursorbyuser.md): Advances the read cursor to the supplied timestamp for the Extole portal user identified by `userId`, marking all notifications created at or before that time as read. Returns the updated cursor state. - [Create a user subscription](https://docs.extole.com/reference/createusersubscription.md): Creates a new notification subscription for the specified user. The request body specifies the event type to subscribe to and the delivery channel (email, Slack, or webhook). Returns the created subscription. - [Delete a user subscription](https://docs.extole.com/reference/deleteusersubscription.md): Permanently deletes the specified notification subscription. The user will no longer receive notifications for the subscribed event type via that channel. Returns `400 invalid_subscription_id` if the subscription does not exist. - [Get a user subscription](https://docs.extole.com/reference/getusersubscription.md): Returns the specified notification subscription for the given user. Returns `400 invalid_subscription_id` if the subscription does not exist. - [List subscriptions](https://docs.extole.com/reference/listsubscriptions.md): Returns all notification subscriptions for the calling client, optionally filtered by tags. Use `having_any_tags` to match subscriptions that have at least one of the specified tags, or `having_all_tags` to match subscriptions that have all specified tags. - [List user subscriptions](https://docs.extole.com/reference/listusersubscriptions.md): Returns all notification subscriptions for the specified Extole user. Subscriptions define which report or alert events the user wants to be notified about and through which channel (email, Slack, webhook). - [Update a user subscription](https://docs.extole.com/reference/updateusersubscription.md): Updates the specified notification subscription for the given user. Returns `400 invalid_subscription_id` if the subscription does not exist. - [Create a user](https://docs.extole.com/reference/createuser.md): Creates a new staff user account with access to the Extole console. Returns the created user with its server-assigned id. An invitation email is sent to the new user. - [Create a user property](https://docs.extole.com/reference/createuserproperty.md): Creates a new per-user property override for the specified staff user. Returns the created property. - [Delete a user](https://docs.extole.com/reference/deleteuser.md): Deactivates and removes the staff user account, revoking all console access. - [Delete a user property](https://docs.extole.com/reference/deleteuserproperty.md): Removes the per-user property override for the specified staff user and property name. - [Get a user](https://docs.extole.com/reference/getuser.md): Returns the staff user account for the specified id. - [Get a user property](https://docs.extole.com/reference/getuserproperty.md): Returns the per-user property override for the specified user and property name. - [List user properties](https://docs.extole.com/reference/listuserproperties.md): Returns all per-user property overrides for the specified staff user. - [List users](https://docs.extole.com/reference/listusers.md): Returns all staff user accounts with access to the Extole console. Use the `scope` query parameter to restrict results to the current account or retrieve all accessible users. - [Resend user invite email](https://docs.extole.com/reference/resenduserinviteemail.md): Resends the invitation email to a staff user who has not yet accepted their invitation. - [Reset user password](https://docs.extole.com/reference/resetuserpassword.md): Initiates a password reset flow for the staff user identified by the request. A password-reset email is sent to the user's registered address. - [Unlock a user](https://docs.extole.com/reference/unlockuser.md): Unlocks a staff user account that has been locked due to failed login attempts, restoring console access. - [Update a user](https://docs.extole.com/reference/updateuser.md): Updates the staff user account. Only fields present in the request body are changed. Returns the updated user. - [Update user password](https://docs.extole.com/reference/updateuserpassword.md): Updates the password for the authenticated staff user account. - [Update a user property](https://docs.extole.com/reference/updateuserproperty.md): Updates the per-user property override for the specified staff user and property name. Returns the updated property. - [Archive a webhook](https://docs.extole.com/reference/archivewebhook.md): Archives (soft-deletes) the supplied webhook. The webhook stops firing immediately but its definition is retained. Fails with `400 webhook_associated_with_webhook_controller_action` if the webhook is referenced by a controller action, or `400 webhook_associated_with_webhook_user_subscription_channel` if it is referenced by a user subscription channel. Remove those references before archiving. - [Create a webhook](https://docs.extole.com/reference/createwebhook.md): Creates a new webhook definition and returns the persisted record with its server-assigned id. The webhook fires immediately for matching events once created; set `enabled=false` in the request body to create it in a disabled state. - [Get a built webhook](https://docs.extole.com/reference/getbuiltwebhook.md): Returns the fully evaluated (built) runtime form of the supplied webhook, with all evaluatable fields resolved. Returns `400 webhook_not_found` if the id does not exist or is not accessible. - [Get a webhook](https://docs.extole.com/reference/getwebhook.md): Returns the source definition of the supplied webhook, including its URL, headers, event filters, and state. Returns `400 webhook_not_found` if the id does not exist or is not accessible. - [List built webhooks](https://docs.extole.com/reference/listbuiltwebhooks.md): Returns all webhooks in their fully evaluated (built) runtime form, with all evaluatable fields resolved. Supports finer filtering than the source list: `name`, `include_archived`, `limit`, and `offset` are only available on this endpoint. Use this when you need effective endpoint URLs and headers. - [List webhooks](https://docs.extole.com/reference/listwebhooks.md): Returns all webhooks for the client. Filter by `enabled` or `type` to narrow the result set. Use `GET /v6/webhooks/built` for the fully evaluated runtime form. Webhooks are outbound HTTP callbacks Extole fires when specific platform events occur. - [Update a webhook](https://docs.extole.com/reference/updatewebhook.md): Applies a partial update to the supplied webhook. Only the fields present in the body are changed; omitted fields are left intact. Returns the persisted webhook after the update. Returns `400 webhook_not_found` if the id does not exist. ## Changelog - [2025 Year in Review](https://docs.extole.com/changelog/2025-year-in-reivew.md) - [Q2 2024 Releases](https://docs.extole.com/changelog/q2-2024-releases.md) - [Q1 2024 Releases](https://docs.extole.com/changelog/q1-2024-releases.md) - [Q4 2023 Releases + Year in Review](https://docs.extole.com/changelog/year-in-review-2023.md) - [Q3 2023 Releases](https://docs.extole.com/changelog/q3-2023-releases.md)