Endpoint
PUT /api/v1/sdk-offer-management/{product}/offers/{id}This endpoint allows users to update an existing offer programmatically. It is commonly used for ongoing offer management and supports operational workflows where offers are continuously refined, adjusted, or optimized through external systems.
Product Path Parameter
Name | Type | Description |
| string | Defines the tenant's subscripton context. Must be one of: |
{id} | string (UUID) | The unique identifier of the offer |
Note:
If you’re unsure which value to use for your
{product}path, please reach out to the GoKart support chat for guidance.If the incorrect
{product}value is used, the request will fail with a 403 Forbidden response.
Request Payload Scheme
Field Name | Type | Description | Example | Required |
| string (UUID) | Unique identifier for the offer to update. | 3fa85f64-5717-4562-b3fc-2c963f66afa6 | Yes |
| string | Tracking URL used for the offer redirect. | https://... | Yes |
| string | Attribution provider used for the offer. | Appsflyer | Yes |
| string | Name of the offer (display title). | SiriusXM | Yes |
| string | Name of the campaign provided by the advertiser | Campaign_test_ios | No if |
| string | Short, attention-grabbing summary of the offer. | Get 3 months of streaming for only $1 | Yes |
| string | Brief description of the offer. | Stream sports, music, podcasts and more | No |
| string | Key highlights of the offer. | Subscribe for 3 month trial for $1 | No |
| string | Detailed instructions or requirements for completion. | Download Bingo Blitz Complete Level "Rome" | Yes |
| string | Terms, conditions, and disclaimers. | Must make first trade. Award within 30 days | No |
| string (enum) | Type of offer ( | MultiEvent | Yes |
| string (enum) | Revenue model ( | FlatRate | Yes |
| string (UUID) | Unique identifier for the advertiser. | 3fa85f64-5717-4562-b3fc-2c963f66afa6 | Yes |
| boolean | Indicates whether the offer is featured. | true | No |
| number | Maximum number of daily conversions allowed. | 100 | No |
| number | Maximum number of weekly conversions allowed. | 500 | No |
| number | Maximum number of monthly conversions allowed. | 2000 | No |
| number | Maximum total conversions allowed. | 10000 | No |
| boolean | Indicates if the offer can be completed multiple times. | false | No |
| string | Type of budget applied to the offer. | Daily | Yes |
| number | Budget allocated to the offer. | 1000 | Yes |
| string (ISO 8601) | Date the offer was launched. | 2025-02-27T23:00:00Z | Yes |
| string (ISO 8601) | Date the offer expires. | 2025-02-27T23:00:00Z | No |
| string | array | Supported device types. | iOS, Android | No |
| number | Revenue generated per conversion. | 30 | Yes for Multi-Event |
| number | Reward amount given to the user. | 10 | Yes for Multi-Event |
| string | Defines how rewards are issued. | Automatic | Yes for Multi-Event |
| number | Number of days the conversion status remains Pending | 10 | Yes for Multi-Event |
| string (enum) | The EPC value the offer is assigned when first launched until the true EPC can be determined | 5 | Yes |
| boolean | Indicates if EPC is locked. | false | Yes |
| string (UUID) | Age targeting identifier. | uuid | Yes |
| array (UUID) | List of category IDs. | [uuid1, uuid2] | Yes |
| array (UUID) | List of targeted countries. | [US, CA] | Yes |
| array (UUID) | List of targeted states/regions. | [CA-ON] | No |
| array (string) | List of targeted ZIP/postal codes. | [92801, 90001] | No |
| array (UUID) | List of targeted genders. | [male, female] | No |
| boolean | Controls fallback behavior for gender targeting. | false | No |
| array (UUID) | List of placement identifiers. | [uuid1, uuid2] | No |
| boolean | Indicates if cost data should be sent to Singular/Appsflyer | true | No |
| array | Additional cost/reporting info for the advertiser. |
| No if |
| string | Type of cost model used for reporting. Supported values: CPI, CPA | CPI | No if |
| string | Name of the app associated with the offer. | Coin Game | No if |
| string | App store identifier (e.g., App Store ID or Google Play package name). | com.example.app | No if |
| array | List of event objects for multi-event offers. | [{...}] | Yes for Multi-Event |
| string (UUID) | Unique identifier for the event. | e9623b92-4d90-404d-beaf-6b27a7ac66ac | Yes for Multi-Event |
| string | Name of the event. | Install | Yes for Multi-Event |
| boolean | Indicates if the event is visible on the offer wall. | true | Yes for Multi-Event |
| string | External identifier for the event. | Level 1 | Yes for Multi-Event |
| number | Display order of the event. | 2 | Yes for Multi-Event |
| number | null | Sequence order of the event; null if independent. | 3 | Yes for Multi-Event |
| number | null | Minimum time required after previous event | 24 | No |
| number | null | Days allowed to complete the event. | 30 | No |
| number | null | Number of days the conversion status remains Pending | 30 | Yes for Multi-Event |
| boolean | Indicates if the event has revenue. | true | Yes for Multi-Event |
| number | null | Revenue for the event. | 5 | Yes for Multi-Event |
| boolean | Indicates if the event has a reward. | true | Yes for Multi-Event |
| boolean | Uses default reward/revenue ratio. | true | Yes for Multi-Event |
| number | null | Reward amount for the event. | 2 | Yes for Multi-Event |
| number | null | Daily cap for the event. | 100 | No |
| number | null | Weekly cap for the event. | 500 | No |
| number | null | Monthly cap for the event. | 2000 | No |
| number | null | Total cap for the event. | 10000 | No |
| array | List of creative assets. | [{...}] | Yes |
| integer | Position index of the creative. | 1 | Yes |
| string | URL of the creative asset. | Yes | |
| string | null | Optional metadata for the creative. | banner | No |
Response scheme
Name | Type | Sample | Notes |
Id | Guid | "Id": "a1b2c3d4-..." | The unique identifier of the updated offer. |
