# Missions

### 🎯 Event-Based Missions

Event-Based Missions are completed automatically, once the user behavior triggers a particular type and/or quantity of Events.&#x20;

**Examples**:

* **Order 10 taxis through the app** to earn 20 loyalty points.
* **Complete 6 workouts** this week to get a discount promo code for a free group lesson.
* **Send your first message** to earn 20 loyalty points.
* **Join 3 new groups** in the community to earn Brand Advocate benefits.
* **Make your first purchase** **using the app** and get 50% off next time you visit our offline store.

These Missions are accessible on your platform, encompassing both mobile and web interactions. This allows users to engage through their preferred channel, creating a cohesive digital journey.

{% hint style="success" %}
System Events are available starting from **Low-code**, while Custom Events are available for API integrations.
{% endhint %}

#### 🧲 Event-Based Missions is a direct link to revenue-driving actions.

**Using this Enable3’s core mechanic, you can:**

* Reward behaviors tied to monetization and activation, such as: Order 10 taxis through the app.

**As a result: Higher transaction frequency, increased customer spending, improved conversion rates.**

* Encourage repeat engagement through structured activity: Complete 6 workouts this week.

**As a result: Higher engagement frequency, stronger habit loops, improved retention.**

* Nudge users toward critical first actions: Send your first message.

**As a result: Faster onboarding, improved time-to-value, reduced churn risk.**

* Ensure users' participation regardless of platform.

**As a result: Seamless user experience, higher participation rates, unified engagement data.**

* Launch quickly with minimal setup or integrate deeply with your product logic.

**As a result: Fast time-to-market for MVP programs, scalability for complex ecosystems.**

#### How to get started with Event-Based Missions

You can choose to **track only pre-made System Events** to determine the Mission completion, or **create Custom Events**.

1️⃣ No-code setup via built-in System Events: Use System Events to trigger Missions based on common user actions, widget logins, referrals, and more.&#x20;

<mark style="color:$primary;">This approach requires no development work and allows rapid experimentation.</mark>

<a href="/pages/mclxwjUvr9hGAhEkARmj" class="button secondary">Learn about System Events</a>

&#x20;2️⃣ Setup via API integration: Connect your app via integration and use Custom Events to trigger rewards from any user action you define.

<mark style="color:$primary;">This gives you full control over what qualifies as mission progress.</mark>

<a href="/pages/xvunEyx7jBrHkmBweYlg" class="button secondary">Learn about Events endpoints</a>

**Steps (after you’ve configured Events):**

Go to the **Missions** section of the Admin Panel and click **Create Mission +**.

In the pop-up, choose to create an **Event-Based Mission** and click Continue.

<figure><img src="/files/7XxaDASCkuFoasgjI6SO" alt=""><figcaption></figcaption></figure>

In the new Event-Based Mission window, specify the Mission’s name and description to explain what users need to do to accomplish this Mission.

<figure><img src="/files/1bBJMRh6WxCBwlQGNn3I" alt=""><figcaption></figcaption></figure>

Upload the images for the Mission’s card and page. Make sure to follow the image size and format recommendations.

This image will show up in the user’s widget in the Mission’s list and on its own page.

![](/files/svlFpISITLFKFcF1s5sv)

*\*As an optional step, you can select a **Quest** to attribute this Mission to and select a Category.*&#x20;

<a href="/pages/E9DLWelYCHpjOfurE8dk" class="button secondary">Learn more about Quests.</a>

Under the **Event Details** section, choose an **Event** to base this Mission on (*e.g., App Login, Widget Open*).

<figure><img src="/files/jJCJW1llx9HSHUmqvrTv" alt=""><figcaption></figcaption></figure>

If you’re creating a Mission based on the **Custom Events**, you can select **Event Tags** that need to be present in order for the Mission to be completed.

<figure><img src="/files/Wzopx98xggmM7W5wlDB0" alt=""><figcaption></figcaption></figure>

**Tags** are automatically generated from the **`eventTags` custom field** included in the JSON payload sent from your system [via the API integration](https://docs.enable3.io/enable3/tech/endpoints).

| <p>Within the <strong>Select Tags block</strong>, you can define how selected Tags should be evaluated when processing incoming events.</p><p>1️⃣ Choose “<strong>Count if any match</strong>” when <strong>multiple Tags</strong> can be viewed as valid.</p><p><strong>In this case, the Mission will be counted if the received Event contains at least one of the selected Tags.</strong></p><p>Example:</p><p>You want to reward your fitness app’s users who do yoga or pilates workouts. Here’s what you do.</p><p>Selected Event: <code>Workout</code></p><p>Selected Tags: “<code>Yoga</code>”, “<code>Pilates</code>”</p><p>✅ The Mission will be counted when a Workout Event is received that includes either a “Yoga” or a “Pilates” Tag (or both). It will NOT be counted if a Workout Event with other Tags (e.g., “Run”) is received.</p><p></p><p>2️⃣ Choose “<strong>Count only if all match</strong>” when only <strong>a particular combination of Tags</strong> is valid.</p><p><strong>In this case, the Mission will be counted for the user only if the received event contains all selected tags.</strong></p><p>Example:</p><p>You want to reward customers who buy rose-scented candles from brand X. Here’s what you do.</p><p>Selected Event: <code>Purchase</code></p><p>Selected Tags: “<code>Candle</code>”, “<code>Rose</code>”, “<code>Brand\_X</code>”</p><p>✅ The Mission will be counted when a Purchase Event is received that includes “Candle”, “Rose”, and “Brand\_X” Tags. It will not be counted if a Purchase Event with other Tags (e.g., “Pefume”) or with only one or two of the selected Tags (“Candle” and “Brand\_X) is received.</p> |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

Now, it’s time to decide on the **Event Conditions**. If you’re creating a Mission based on **any** (System or Custom) **Event**, you must define how that Event should be evaluated.

Do it within the **Choose Event Conditions block**.

<figure><img src="/files/niIMvorJlDE8hbbJJMHZ" alt=""><figcaption></figcaption></figure>

| <p>Two condition types are available: <strong>Count of Events</strong> and <strong>Amount of Events</strong>.</p><p>1️⃣ Choose “<strong>Count of Events</strong>” when the Mission should be completed after the user does a <strong>certain action a specific number of times</strong>.</p><p><strong>In this case, the Mission will be counted once the selected Event is received the configured number of times, regardless of its value.</strong></p><p>Example: </p><p>You want to reward users after they make three deposits. Here’s what you do.</p><ul><li>Selected Event: <code>Deposit</code></li><li>Count of Event: <code>3</code></li></ul><p>✅ The Mission will be counted after the system receives 3 Deposit Events from the user, regardless of the deposit amount.</p><p><img src="/files/mmZmbJUo8l3H2GdfoGC8" alt="" data-size="original"></p><p>2️⃣ Choose “<strong>Amount of Events</strong>” when the Mission should be based on the <strong>Event value</strong>.</p><p>After selecting this option, you can configure:</p><ul><li>Minimum amount of the Event value for the Mission to be complete</li><li>Max amount of the Event value for the Mission to be complete (this one is optional)</li></ul><p>Depending on how you configure these fields, two logic types are available:</p><p><em><strong>→ Accumulation Logic (Only minimum amount configured)</strong></em></p><p>Choose this when the <strong>total value of multiple Events</strong> should accumulate toward the goal.</p><p>Example: </p><p>You want to reward users who deposit at least $100 in total. Here’s what you do.</p><ul><li>Selected Event: <code>Deposit</code></li><li>Min amount of mission goal: <code>100</code></li></ul><p>✅ The Mission will be counted once the total sum of all Deposit Events reaches 100 or more.</p><p><img src="/files/EDKcZDzqaxIEMouINoee" alt=""></p><p><em><strong>→ No-Accumulation Logic (Minimum and maximum amounts are configured)</strong></em></p><p>Choose this when only a <strong>single Event within a specific value range</strong> should count.</p><p>To enable this logic, click <strong>Add Max Amount</strong> and define both minimum and maximum values.</p><p><strong>In this case, the Mission will be completed only when a received Event includes a value within the defined range.</strong> If the Event value falls outside the configured range, the Mission will NOT be counted.</p><p>Example:</p><p>You want to reward users only for medium-sized deposits. Here’s what you do.</p><ul><li>Selected Event: <code>Deposit</code></li><li>Min amount of mission goal: <code>10</code></li><li>Max amount of mission goal: <code>50</code></li></ul><p>✅ The Mission will be counted only if a Deposit Event is received with a value between 10 (inclusive) and 50 (exclusive). Meaning, deposits below $10 or equal to/above $50 will not count.</p><p><img src="/files/sQDIvtFTJCNgWKzWAtJQ" alt=""></p><p><mark style="background-color:$primary;">Why this matters: Configuring both minimum and maximum amounts allows you to create multiple similar Missions with different value ranges.</mark> </p><p>When a user completes a higher-value Mission, lower-value Missions will not be automatically completed, ensuring clear separation between reward Tiers and preventing unintended cross-completion.</p> |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

After defining Event Conditions, you can also choose to create a **Streak**.

<a href="/pages/9LGvyXLoKfi3uRgGOUqO" class="button secondary">Learn more about Streaks</a>

*Additionally, you can choose to turn on the **Action Button** feature.* It provides a way for users to navigate directly to the page where they can accomplish the Mission.

<figure><img src="/files/j71vEkVxHkNaT3JY3uDl" alt=""><figcaption></figcaption></figure>

Next, you’ll need to configure the **rules** that define who can complete the Mission, what reward they receive, and when the Mission is active. You can do it under the **Conditions** section.

<figure><img src="/files/233N766jst8jbVQGCbzL" alt=""><figcaption></figcaption></figure>

First, choose how users will be rewarded for completing the Mission:

* Select **Reward** in points to grant a fixed number of loyalty points. Enter the reward amount in the field below.
* Select **From bonus shop** if the reward should be a specific item configured in your Bonus Shop.

In the **Segment** dropdown, select which user group is eligible for this Mission. By default, the Mission is available to all users, but you can restrict it to a predefined Segment (e.g., only the recently registered users or VIP members).

If your **Tier** system is enabled, you can limit the Mission to users in a specific Tier (e.g., Bronze, Silver, Gold). Leave “All users” selected if the Mission should be available regardless of Tier.

Enable the **Mission Renewability toggle** if you want users to be able to complete the Mission multiple times. Leave it disabled if the Mission should only be completed once per user.

Set a start date if the Mission should become active at a specific time. This is optional – if no date is selected, the Mission will be available immediately after activation.

Set an end date if the Mission should automatically expire. This is optional – if no date is selected, the Mission will remain active until manually disabled.

Enter a **Callback URL** if you want your digital product’s system to receive a notification when the Mission is completed. This is typically used for API-based integrations to sync completion data with your platform.

Once all **Conditions** are configured, **review** your settings and click **Create**.&#x20;

Congratulations! You’re all set.

***

### ✍️ Manual Missions

Allow users to complete missions by manually submitting proof, such as attaching a link, uploading a photo or video, or entering text.&#x20;

Using the configurator, operators can set conditions and requirements for each mission.

{% hint style="success" %}
Available for No-code, Low-code, and API integrations.
{% endhint %}

Examples:

* *Share your workout on social media and add the link.*
* *Upload a picture of your completed workout.*
* *Write a review about our app on the App Store.*
* *Participate in a local community event and share a selfie.*
* *Submit a text review or suggestion for app improvement.*

<figure><img src="/files/14SVfgUPUDNnveF0QYjV" alt="" width="563"><figcaption></figcaption></figure>

***

### 📢 Social Media Missions

**Social Media Missions** reward users for completing engagement actions on platforms like X (Twitter), Discord, and Telegram.\
\
They’re designed to help you grow your community, increase visibility, and strengthen participation across your social ecosystem.<br>

<figure><img src="/files/0Uqgy1UKgwCBgb1KAWua" alt="" width="563"><figcaption></figcaption></figure>

Currently, we support the following Missions (Actions):

<table><thead><tr><th width="262.16015625" valign="top">X  (Twitter)</th><th valign="top">Discord</th><th valign="top">Telegram</th></tr></thead><tbody><tr><td valign="top"><ul><li><em>Follow</em></li><li><em>Like</em></li><li><em>Repost</em></li></ul></td><td valign="top"><ul><li><em>Follow</em></li></ul></td><td valign="top"><ul><li><em>Follow</em></li></ul></td></tr></tbody></table>

<details>

<summary>Installation</summary>

To enable Social Media Missions:

1. Navigate to **My Widget** > **Missions**
2. In the pop-up that appears, switch to the **Installation** tab
3. Install the **Social Media Missions** module

Once installed, the **Social Media Missions** configuration interface becomes available, consisting of two main blocks:

* **Choose Social Media**
* **Configure Integration**

#### **Adding Integrations**

Under **Choose Social Media**, select the desired platform. Then scroll to **Configure Integration** and follow the guided steps to connect each platform.

> ⚠️ Integration steps vary by platform. Follow the instructions for each carefully.

To add more than one account or channel per platform:

* Click **Add Server / Channel / Account** (button label changes based on platform)
* Provide the required credentials or links

</details>

<details>

<summary>Mission Configuration</summary>

Once platforms are integrated, missions can be created via the **Mission Creation** interface:

1. Open the **Mission Creation** page
2. Select **Social Media Mission** from the mission type dropdown
3. Begin configuring the mission using the available options

#### Step 1: Select Platform

Choose one of the connected platforms:

* Telegram
* Discord
* X

#### Step 2: Choose Mission Type

**For Telegram and Discord**

* Only one mission type is currently supported: **Follow**
* The user must join the specified channel to complete the mission

**For X (Twitter)**

The following mission types are available:

* **Like** – Engage with a specific tweet
* **Repost** – Retweet a specific tweet
* **Follow** – Follow a specific account
* **Comment** – Reply to a specific tweet
* **Post** – Publish a prewritten tweet from the user’s account

Depending on the mission type, additional fields may appear:

| Mission Type                | Additional Input Required         |
| --------------------------- | --------------------------------- |
| **Follow**                  | Select the X account to follow    |
| **Like / Repost / Comment** | Paste the link to the tweet       |
| **Post**                    | Enter the text the user must post |

***

</details>

<details>

<summary>Publishing and Completion</summary>

Once the configuration is complete and the mission is activated in the admin panel, it becomes available in the widget.

End users will see the mission, complete the required social media action, and receive rewards upon successful verification.

> ✅ Support for real-time verification and proof-of-action depends on platform capabilities.

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.enable3.io/enable3/missions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
