Promotion tools may not be available in all jurisdictions. Before implementing this functionality, please consult your RubyPlay account manager for further details.
The Gaming Platform (GP) can create campaigns with defined start and end dates (based on time zone), predefined players, games, currencies, campaign prices, and more.
The API implements a three-tier rate limiting system:
- All methods (GET, POST, PUT, PATCH, DELETE): 500 requests/second
- GET methods only: 1000 requests/second
- Campaign participant addition (
/campaign/*/participantPOST): 130 requests/second - Campaign creation (
/campaignPOST): 60 requests/second - All other endpoints: 60 requests/second
- Campaign participant addition (
/campaign/*/participantPOST): 270 requests/second - Campaign creation (
/campaignPOST): 135 requests/second
These limits represent general guidelines and may be further restricted in extreme cases to safeguard stable operations for all customers.
We recommend implementing dynamic throttling or retry mechanisms in your integration to gracefully handle rate limiting and related changes.
If you expect higher volumes, please contact support to discuss capacity planning.
The following limits apply to campaign creation and management:
| Parameter | Limit | Notes |
|---|---|---|
name | 255 characters | Campaign name |
externalCampaignId | 512 characters | Operator-defined campaign ID |
requestId | 36 characters | Idempotency key |
rulesUrl | 2048 characters | URL with campaign rules |
betNumber | 1500 | Maximum free rounds/features per player |
| CSV import (Back Office) | 50,000 rows | Maximum players per CSV import |
- Use the
requestIdparameter for idempotency to safely retry failed requests - For large player lists, use the batch participant endpoint instead of individual additions
- Set realistic campaign durations - campaigns shorter than 24 hours are not typical business scenarios
As part of our promotional tools (Free Rounds and Awarded Features), we provide the following additional configurations related to what is displayed on pop-ups/counter. These options can be enabled or disabled on request at the brand level from the RubyPlay side:
- Show/Hide Value of Promotion (default: Show)
- Show/Hide Final Winning Value (default: Show)
- Show/Hide Campaign/Feature Player Expiry Time (default: Hide)
- Show/Hide Play Later Button (default: Show)
- Show/Hide Bet Value (Awarded Feature only) (default: Hide)
- Show/Hide Opt-Out Button and Function (default: Hide)
The opt-out function is not enabled by default. In regulated markets if this needs to be handled on RubyPlay side, it should be requested. Also note that no information is provided regarding this through integration.
(described in the Rubyplay Seamless Wallet API)
The legacy URL format (/api/v1/freeround/campaign/...) is still supported for backward compatibility. However, we strongly recommend using the new unified format:
/api/v1/campaign/...
This ensures consistency across all campaign types and simplifies integration.
The following diagram illustrates the primary flow for creating and managing promotional campaigns:
When creating an Awarded Feature campaign, the bet value must represent the total cost of the buy feature (base bet × price multiplier), not the base bet alone.
There are three approaches to determine the correct bet value:
This is the simplest approach. The endpoint returns pre-calculated feature costs that can be used directly.
Example Request:
GET /api/v1/awarded-feature-configurations?gameId=rp_140¤cyCode=EURExample Response:
{
"content": [
{ "gameId": "rp_140", "bet": 5.0, "currencyCode": "EUR" },
{ "gameId": "rp_140", "bet": 7.5, "currencyCode": "EUR" },
{ "gameId": "rp_140", "bet": 50.0, "currencyCode": "EUR" },
{ "gameId": "rp_140", "bet": 100.0, "currencyCode": "EUR" }
]
}If you prefer to calculate the feature cost yourself, retrieve the game's buy feature multiplier from the Get Games endpoint and multiply it by the base bet.
Calculation Formula:
Feature Cost = Base Bet × Price Multiplier
Example: 1.0 EUR × 50 = 50 EURIf you have already stored game information (bet sizes and multipliers) in your system, you can calculate the feature cost directly without additional API calls.
For Awarded Feature campaigns, always use the total feature cost (base bet × multiplier) in the bet field.
For example, if you want to award a feature with a 1 EUR base bet on a game with a 50× multiplier, the bet value should be 50 EUR, not 1 EUR.