Skip to main content

SdkOfferWall - GET Offer Details

Written by GoKart Support

Endpoint

api/v1/offer-wall/offer-details

This endpoint retrieves complete details for a specific offer, along with a unique viewId generated when the user views that offer’s details.

It’s designed to display an offer's details to the user and is essential for tracking user engagement at the offer-view level.

Use this endpoint when you need:

  • The full data set for a single offer, including headlines, descriptions, terms, and creative assets.

  • A viewId for tracking when a user opens the offer details page


Key Details

  • Supports all query parameters here

  • Returns the general response schema here

  • For details on how to handle new fields in our API schema, please see our SDK API Schema Disclaimer.

  • Default Sorting: Offers are sorted using GoKart’s EPC algorithm unless otherwise specified.

  • Required Parameters: listed in table below

Field Name

Type

Description

Examples

offerId

string/text

A required parameter that specifies the unique ID of the offer to be retrieved.

3fa85f64-5717-4562-b3fc-2c963f66afa6

pub_member_id

string/integer

A unique identifier for the publisher’s user. Used to personalize offers and track user interactions.

2173


Default Response Fields

Field Name

Type

Description

Examples

viewId

string/text

A unique identifier for the View that was created when User viewed Offer Details.

256d76ef-1d76-4f91-8df5-d48a6cd17f8c

offerData

array

A list of Offer Details described below

isOfferAvailable

boolean

A flag indicating whether the offer is still active

true/false

isUserCompleted

boolean

A flag indicating whether the user has completed the associated offer.

true/false

userCompletedAt

date (string/text),null

The date and time when the user completed the offer. This field is nullable, meaning it may contain null if the offer has not been completed yet.

2024-10-21T09:26:32.369306+00:00, null

rewardStatus

string/text,null

The status of the reward associated with the offer. Can have values: Completed, Pending, or null

Completed, null

sessionId

string/text

A unique identifier for the user's session

events

array

Array containing event objects in a multi-event offer.

[{},{},{}...]

events.rewardStatus

string/text,null

The status of the reward associated with the event. Can have values: Completed, Pending, or null

Completed, null

events.deadlineExpiresAt

date (string/text),null

The date and time by which the user must complete the event. This is calculated by adding deadlineDays to the timestamp of when the user completed the sequence 1 event. Conversions completed after this deadline will be rejected.

2024-10-21T09:26:32.369306+00:00, null

events.isUserCompleted

boolean

A flag indicating whether the user has completed the associated event.

true/false

events.userCompletedAt

date (string/text),null

The date and time when the user completed the event. This field is nullable, meaning it may contain null if the event has not been completed yet.

2024-10-21T09:26:32.369306+00:00, null

events.offerEventId

string/text

Unique identifier for the offer event.

e9623b92-4d90-404d-beaf-6b27a7ac66ac

events.name

string/text

Name of the offer event.

Install

events.displayOrder

number (floating)

Number that indicates the position in which the event should be displayed within the offer or event list.

2

events.sequenceNumber

number (floating),null

Sequence number of the event within the offer, starting at 1. A value of null means the event is independent and not part of the ordered sequence.

3

events.reward

number (floating),null

The reward amount for completing the event.

30, null

events.deadlineDays

number (floating),null

The number of days a user has to complete the event, relative to the completion of the sequence 1 event.

30, null

events.rewardPendingDays

number (floating),null

The number of days a reward will remain in a pending status. If the field is null, the reward is immediately available.

30, null

events.allowRepetitions

boolean

Indicates if the event can be repeated.

false

id

string/text

A unique identifier for the offer in the form of a UUID.

3fa85f64-5717-4562-b3fc-2c963f66afa6

name

string/text

The name of the offer, typically used as a title.

SiriusXM

headline

string/text

A brief, attention-grabbing statement or headline summarizing the offer.

Get 3 months of streaming for only $1

shortDescription

string/text

A concise description providing key information about the offer.

Stream sports, music, podcasts and more

keyPoints

string/text

Highlights or main points of the offer.

Subscribe for 3 month trial for $1 Stream daily for your first 7 days

offerDetails

string/text

A detailed explanation of the offer.

Download Bingo <br/> Blitz Complete Level "Rome" Collect Coins!

termsAndDisclaimers

string/text

The legal terms, conditions, and disclaimers associated with the offer.

Must make first trade. Award within 30 days

creativeFileUrl

string/text

A URL linking to a creative asset associated with the offer, such as an image or video.

offerSource

string/text

Indicates whether the origin of the offer is tenant-owned or comes from an integration.

RevU

conversionType

string/text

Revenue model (FlatRate, RevShare).

FlatRate

allowRepetitions

boolean

Indicates if the offer can be completed multiple times.

false

reward

number (floating),null

The reward amount for completing the offer.

30, null

rewardPendingDays

number (floating),null

The number of days a reward will remain in a pending status. If the field is null, the reward is immediately available.

10, null

offerType

enum (string/text)

Can have values: SingleEvent or MultiEvent

SingleEvent

launchDate

string/text

The date the offer launched

2025-02-27T23:00:00+00:00

endDate

string/text

The date the offer expires

2025-02-27T23:00:00+00:00

deviceTypes

array

A list of devices targeted to the offer

IOS
Android

MacOS

Browser

baselineEpc

number

The EPC value the offer is assigned when first launched until the true EPC can be determined

5

lockBaselineEpc

boolean

Indicates if EPC is locked.

false

advertiserId

string/text

A unique identifier for the advertiser in the form of a UUID.

3fa85f64-5717-4562-b3fc-2c963f66afa6

advertiserName

string/text

The name of the advertiser

Agency1

creatives

array

A list of creative asset associated with the offer.

[{},{},{}...]

creatives.order

integer

Index position of the creative in the array, starting at 0.

1

creatives.url

string/text

A URL linking to a creative asset associated with the offer, such as an image or video.

creatives.metadata

string/text

Optional metadata about the creative. Can be null. Metadata can only be set via the OfferProviders API

banner

categories

array

This array contains all categories associated with an offer

[{},{},{}...]

categories.id

string/text

Unique identifier for the category

744d754b-17c5-45b0-bdee-c65458f983f7

categories.name

string/text

Name of the category

Other

placements

array

This array contains all placements associated with an offer

[{},{},{}...]

placements.id

string/text

Unique identifier for the placement

744d754b-17c5-45b0-bdee-c65458f983f7

placements.name

string/text

Name of the placement

Homepage

placements.pinnedPosition

number

Position of the offer within the placement

1


Example

Request:

GET https://api.[YOUR_TENANT].getgokart.ai/api/v1/offer-wall/offer-details?offerId=6bd57ffe-3eda-404c-9c7c-1bd466a18886&pub_member_id=23213&pub_age=18&pub_geo_country=US&pub_geo_state=CA

Response:

{
"responseId": "963b3083-fd33-43c9-80c9-21b162123456",
"isSuccessful": true,
"responseTitle": "Success",
"responseType": "Success",
"messages": []
"data": {
"viewId": "744d754b-17c5-45b0-bdee-c65458f983f7",
"offerData": {
"id": "f3f66231-a50e-4deb-a123-49ba12345678",
"name": "Free Play - iOS",
"headline": "Install and Sign Up",
"shortDescription": "",
"keyPoints": "<p>FreePlay offers a fun and engaging way to discover new products, services, and experiences. Check out our exclusive deals and amazing rewards, making your time on FreePlay even more enjoyable!</p>\n<p></p>\n<p></p>\n",
"offerDetails": "",
"termsAndDisclaimers": "<p>New Users only.</p>\n",
"creativeFileUrl": "https://example.com/image.png",
"offerSource": "GoKart",
"conversionType": "FlatRate",
"allowRepetitions": true,
"reward": 0.5,
"rewardPendingDays": null,
"offerType": "MultiEvent",
"launchDate": "2025-02-28T05:00:00+00:00",
"endDate": null,
"deviceTypes": [
"IOS"
],
"baselineEpc": 0,
"lockBaselineEpc": true,
"advertiserId": "c123c8f-1234-4d91-b38f-a08b7e867677",
"advertiserName": "Brown Boots",
"creatives": [
{
"order": 0,
"url": "https://example.com/image.png",
"metadata": ""
}
],
"events": [
{
"rewardStatus": "Success",
"deadlineExpiresAt": null,
"isUserCompleted": true,
"userCompletedAt": "2025-08-11T06:13:27.837752+00:00",
"offerEventId": "c123c8f-1234-4d91-b38f-a08b7e867677",
"name": "Install",
"sequenceNumber": 1,
"reward": 0.25,
"deadlineDays": null,
"rewardPendingDays": 0
"allowRepetitions": true,
},
{
"rewardStatus": null,
"deadlineExpiresAt": null,
"isUserCompleted": false,
"userCompletedAt": null,
"offerEventId": "e9623b92-4d90-404d-beaf-6b27a7ac66ac",
"name": "Sign Up",
"sequenceNumber": 2,
"reward": 0.25,
"deadlineDays": null,
"rewardPendingDays": 0
"allowRepetitions": true,
}
],
"categories": [
{
"id": "744d754b-17c5-45b0-bdee-c65458f983f7",
"name": "Shopping"
}
],
"placements": [
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"name": "string",
"pinnedPosition": 0
}
],
"isOfferAvailable": true,
"isUserCompleted": false,
"userCompletedAt": null,
"rewardStatus": "InProgress",
"sessionId": null,
}
}
}

Did this answer your question?