Skip to main content
Activity Rewards lets you reward users for in-app behavior and server-side events emitted directly from your product or infrastructure. This is the primary mechanism for tying real usage—rather than campaign-page interactions—to incentives. You’ll find this under Campaign Sidebar → API Activity Tracking → Activity Rewards.

Adding an API activity

Click Add Activity in the top-right corner. You’ll see a list of all registered API events currently being sent into Absinthe from your workspace. If an event you need does not appear, you can:
  • Register new events at the workspace level under the API section
  • Or create them programmatically via the Activity API (see Developer Guide)
A search bar is available to quickly locate specific events. Once you select an event, the configuration view shows recent example payloads so you can clearly understand what data is being sent and what behavior you are about to reward.

Reward logic

After selecting an event, you define how points are issued when that event is received. There are two reward models: Issue points per event A fixed number of points is issued every time the event is received. The amount field in the event payload is ignored. This is best suited for discrete actions such as logins, feature usage, session starts, or milestone completions. Multiplier The value in the amount field of the event payload is multiplied by a number you specify. If you want a direct 1:1 conversion from the raw metric to points, set the multiplier to 1. Higher or lower multipliers allow you to scale raw activity into your campaign’s incentive economy.

Caps and limits

Because API events can be high-frequency, Activity Rewards supports full cap controls to prevent runaway issuance. You can configure:
  • A per-user cap, limiting how many total points a user can earn from this activity
  • Event-level caps, including daily, weekly, monthly, and all-time limits across all users
Caps are enforced regardless of reward logic.

Understanding raw metrics vs rewards

API events send raw activity data, not the reward values. Examples:
  • Games may send battles won, monsters killed, or levels completed
  • Products may send sign-ins, session duration, clicks, or purchases
These raw metrics are inputs. The reward logic you configure in Activity Rewards determines how (or if) they convert into points. This separation is intentional. It allows you to:
  • Change incentive logic without changing your instrumentation
  • Reuse the same events across multiple campaigns
  • Keep analytics and incentives decoupled
When designing your data pipeline at the workspace level, choose amount values that accurately represent real behavior. Incentive tuning happens at the campaign level.

Beyond raw activity

Activity Rewards is often combined with milestones, tiers, and higher-level modules to create structured progression rather than purely linear rewards. These abstractions are covered separately in the relevant documentation. Activity Rewards is the backbone of mid-funnel and bottom-funnel incentives, allowing campaigns to reward sustained usage, meaningful engagement, and real value creation inside your product.

When to use API-based ingestion vs Adapters

In some cases, teams choose API-based data ingestion instead of using Absinthe’s native on-chain adapters. This is often a pragmatic decision when engineering bandwidth is limited or when running a small, time-bound campaign that does not justify a deeper integration. With API-based ingestion, your backend validates and processes on-chain activity and then sends the resulting events to Absinthe via the server-to-server Activity API. Absinthe trusts the events you emit and converts them into incentives based on your campaign configuration. This approach is faster to implement but comes with trade-offs. You lose some flexibility, fine-grained visibility, and long-term extensibility, since correctness and interpretation of on-chain data live entirely on your side rather than within Absinthe. Using adapters, on the other hand, shifts responsibility for correctness, normalization, and event granularity to Absinthe. Adapters enable richer gamification logic, more transparent data, and easier iteration over time without changing your backend. They are the preferred option for long-running programs and deeper product integrations. If you decide to ingest on-chain activity via the API for a specific campaign instead of using adapters, refer to the following guide for setup and best practices: API-Based On-Chain Activity Ingestion Guide
Choose API-based ingestion for speed and simplicity. Choose adapters for durability, flexibility, and long-term value.