Note: All fields are required and must be included in the payload.
Field | Type | Description | Example | Validation | Required |
| Guid | Ensures idempotency and handles concurrency scenarios. | 3fa85f64-5717-4562-b3fc-2c963f66afa6 | Must be a valid UUID format | true |
| string | Specifies the operation type (e.g., Synchronize). | Synchronize | Allowed values: Synchronize,Insert | true |
| array | List of offers to create or update. | Must contain at least one item | true |
Offers Array Structure
Note: All fields in the Offers Array are required and must be included in the payload. Fields marked as nullable can have a value of null.
Parameter | Type | Description | Example | Nullable |
| string | Unique identifier for the offer. | "12345" | false |
| array | List of offer details |
| false |
| string | URL link to the offer. | false | |
| string | The tracking system from which conversions will be received. | "AppsFlyer" | false |
| string | Name of the offer. | "Special Discount Offer" | false |
| string | Name of the campaign provided by the advertiser | Campaign_test_ios | true |
| string | Short headline for the offer. | "Big Sale Now!" | false |
| string | Brief description of the offer. | "Get a 50% discount on all items." | true |
| string | Key points to highlight the offer. | "Limited time only!" | true |
| string | Detailed information about the offer. | "Offer valid till stock lasts." | false |
| string | Terms and disclaimers related to the offer. | "Terms apply." | true |
| string | URL to creative files related to the offer. | true | |
| array | A list of creative asset associated with the offer. | [{},{},{}...] | false |
| integer | Index position of the creative in the array, starting at 0. | "1" | false |
| string | A URL linking to a creative asset associated with the offer, such as an image or video. | false | |
| string | Optional metadata about the creative. Can be | "banner" | false |
| boolean | Flag to mark the offer as featured. | true | false |
| boolean | Indicates if the offer is paused. | false | false |
| string | Name of the advertiser. | "Advertiser Inc." | false |
| string | Categories under which the offer falls. | "Electronics" | false |
| string | Type of the offer: SingleEvent,MultiEvent | "SingleEvent" | false |
| integer | Maximum number of times the offer can be completed per day
| 100 | true |
| integer | Maximum number of times the offer can be completed per week | 500 | true |
| integer | Maximum number of times the offer can be completed per month | 2000 | true |
| integer | Maximum number of times the offer can be completed in total (lifetime) | 10000 | true |
| integer | Minimum age of users eligible for the offer | 18 | true |
| integer | Maximum age of users eligible for the offer | 99 | true |
| boolean | Indicates whether the same user can complete the offer multiple times | false | false |
| string | List of genders eligible for the offer | ["Male","Female"] | false |
| array | List of offer event details for MultiEvent | false | |
| string | Budget type: Daily,Total | "Daily" | false |
| number | Budget allocated for the offer. | 5000 | false |
| string | Offer launch date. | "2025-01-01" | false |
| string | Offer end date. | "2025-12-31" | true |
| array | List of applicable country codes. | ["US", "UK", "DE"] | false |
| array | Supported device types: IOS,Android,MacOS,Browser,All | ["IOS", "ANDROID"] | false |
| number | Expected revenue from the offer. | 10000 | false |
| number | Reward for completing the offer. | 500 | false |
| string | Type of reward distribution. Manual,Automatic | "Manual" | false |
| number | Time the conversion remains in pending status. | 24 | false |
| number | Epc value. | 1 | false |
| boolean | Flag to lock baseline EPC. | true | false
|
Offer Events Structure
Note: All fields in the Offer Events Array are required and must be included in the payload. Fields marked as nullable can have a value of null.
Parameter | Type | Description | Example | Nullable |
| string | Unique identifier for the event | 0 | false |
| string | Name of the event | Install | false |
| boolean | Flag to determine whether this event should be displayed on the Offer Wall | true | false |
| integer | The order of the event in a multi-event flow (e.g., 1 for the first event) | 1 | false |
| integer | Minimum time (in minutes) that must pass after the previous event to count as valid | 2 | false |
| integer | Number of days the user has to complete this event after the offer is started | 10 | false |
| integer | Time the conversion remains in pending status. | 7 | false |
| number | Expected revenue from the event. | 10 | false |
| number | Reward for completing the event. | 500 | false |
| boolean | If TRUE, the reward will be automatically calculated based on the platform’s default ratio | true | false |
| integer | Maximum number of times the offer can be completed per day
| 100 | true |
| integer | Maximum number of times the offer can be completed per week | 500 | true |
| integer | Maximum number of times the offer can be completed per month | 2000 | true |
| integer | Maximum number of times the offer can be completed in total (lifetime) | 10000 | true |
| boolean | Indicates whether the same user can complete the offer multiple times | false | false |
JSON Example:
{
"concurrencyRequestId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"operation": "Synchronize",
"offers": [
{
"externalId": "string",
"offerData": {
"offerLink": "string",
"trackingSystem": "AppsFlyer",
"name": "string",
"headline": "string",
"shortDescription": "string",
"keyPoints": "string",
"offerDetails": "string",
"termsAndDisclaimers": "string",
"creativeFileExternalUrl": "string",
"creatives": [
{
"order": 0,
"url": "string",
"metadata": "string"
}
],
"isFeatured": true,
"isPaused": true,
"advertiserName": "string",
"categoryNames": [
"string"
],
"offerType": "SingleEvent",
"dailyCap": 0,
"weeklyCap": 0,
"monthlyCap": 0,
"allTimeCap": 0,
"ageFrom": 0,
"ageTo": 0,
"allowRepetitions": true,
"genders": [
"string"
],
"offerEvents": [
{
"eventId": "string",
"name": "string",
"showOnOfferWall": true,
"displayOrder": 0,
"sequenceNumber": 0,
"minTimeFromPreviousEvent": 0,
"deadlineDays": 0,
"pendingTime": 0,
"revenue": 0,
"reward": 0,
"useDefaultRatio": true,
"dailyCap": 0,
"weeklyCap": 0,
"monthlyCap": 0,
"allTimeCap": 0,
"allowRepetitions": true
}
],
"budgetType": "Daily",
"budgetAmount": 0,
"launchDate": "2025-10-16T17:48:58.927Z",
"endDate": "2025-10-16T17:48:58.927Z",
"countryCodes": [
"string"
],
"deviceTypes": [
"IOS"
],
"revenue": 0,
"reward": 0,
"rewardingType": "Manual",
"pendingTime": 0,
"baselineEpc": 0,
"lockBaselineEpc": true
}
}
]
}