Get Offers

Main API endpoint to fetch available offers for a particular user. Use this to display offers in your offer wall.

Method: GET Base URL: https://api.adgatemedia.com/v1/user-based-api/offers

Required Query Parameters

ParameterDescriptionTypeExample

aff_id

Your affiliate ID. Can be found on the Offers API page.

Any Integer

60000

api_key

Your API key. Can be found on the Offers API page.

Any String

941bd1fecf7e6596823b895e04df3a0c

wall_code

Wall code that can be found on the AdGate Rewards page

String

nQug

user_id

The affiliate's user ID. Max length 255 bytes

String

user12345

ip

IP v4 or v6. Used to target offers geographically.

String

127.0.0.1

user_agent

The end-user's user agent, used for device targeting.

String

Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0

in_app

Will this placement be inside an app? If string "true", we will only return offers that follow App Store and Play Store guidelines.

"true" or "false"

false

Optional Parameters

ParameterDescriptionTypeExample

rank_method

One of "cpm" or "cr". Determines how the rank field will be calculated.

String

cpm

s2 s3 s4 s5

Four available subIDs the affiliate can pass to us. We will return them in the affiliate's postback.

String

lang

The language as provided by the browser (from Accept-Language HTTP header). Defaults to English if not provided.

String

en-US,en;q=0.5

categories

App metadata categories filter. If provided, we will return the offers that belong to the given app metadata categories. It accepts comma-separated category names with partial matching using asterisk.

String

game*,entertainment

exclude_categories

App metadata categories exclusion filter. If provided, we will return the offers that do not belong to the given app metadata categories. It accepts comma-separated category names with partial matching using asterisk.

String

game*,entertainment

age

User's age. If provided, we will return the offers that meet the given age targetng requirement.

Integer

24

gender

User's gender. If provided, we will return the offers that meet the given gender targetng requirement.

String

male

Response

An array of offers will be returned on success. Each offer will have the following fields:

FieldNoteTypeExample

id

Offer ID

int

341022

anchor

Offer title to display to users

string

Playstation 5

description

Description to display to the user

string

Enter to win a Playstation 5!

disclaimer

A field to display with each offer. Replace the ${sitename} macro yourself.

string

This offer is presented to you by ${sitename} on behalf of a third party merchant

requirements

What the user should do to complete an offer

string

Sign up with valid information and complete the full survey.

confirmation_time

Text that described how long it takes to receive credit

string

Confirms Instantly

pending_time

Time in minutes that a reward will be held from the user following completion

int

60

web2mobile

Whether this offer must be accessed on the user's mobile device. You must send us the devices the user owns via the [POST devices] endpoints. If no devices are stored, web2mobile offers will not be returned.

bool

FALSE

web2mobile_devices

Array of devices the users must access the user on. NULL if not a web2mobile offer. The list of applicable devices is taken from the devices stored for that particular user (see the other devices API endpoint)

array|null

["iphone", "ipad"]

app_metadata.app_id

App ID on the mobile app store. It can be either App Store or Google Play Store app ID.

string|null

1596736236

app_metadata.categories

An array of app metadata categories.

array|null

["Games", "Casual", "Puzzle"]

app_metadata.screenshot_urls

An array of app metadata screenshot URLs.

array|null

["https://is1-ssl.mzstatic.com/image/thumb/Purple126/v4/39/88/3a/39883ae6-4f45-9879-c849-aedb4d5ab40c/2e706b4c-baf0-456b-ad67-81db322f75a8_CLASSIC22_202203_2688x1242_Screenshots_01_en-US.png/643x0w.png"]

app_metadata.video_urls

An array of app metadata video URLs.

array|null

["https://play.google.com/video/lava/web/player/yt:movie:dSg_iqQpKYA?autoplay=1&authuser=0&embed=play"]

is_game

Whether the offer is a game offer

bool

FALSE

click_url

URL to redirect the user to

string

ttps://seek.gg/vc/nQ/users/testing-prodege/offers/360819?source_type=live_offer_api

icon_url

Square icon URL

string

https://main-p.agmcdn.com/offers/1639000851514.jpg

total_points

Total points the user may earn

float

126.72

total_points_promotional

If a promotion is currently in progress, the amount of points they will earn. If not null, this should be used instead of total_points.

float|null

187.9

sticky

If an offer should be pinned to the top of the offer wall

bool

TRUE

rank

The rank of the offer according to the "rank_method" requested

int

1

events

An array of events the user may complete to earn points. Each event is an object.

array

[see below]

events.#.uuid

ID of the event

string

0dc43f54-135a-46a4-a51c-a2c5f3cfdac0

events.#.name

Event name to display to the user

string

Completed

events.#.type

"flat" or "dynamic". Flat events have static point values. Dynamic events will have varying payouts.

string

flat

events.#.payable

Whether the event pays anything to the user

bool

TRUE

events.#.flat_points

Will be 0 if the event is not payable.

float|null

126.72

events.#.flat_payout

Will be 0 if the event is not payable.

float|null

46.22

events.#.flat_promotional_points

Points if there is an ongoing promotion

float|null

187.9

events.#.dynamic_display_type

Either "up_to" or "commission". This determines how the potential points are displayed. "up_to": display "Up to {dynamic points amount} "commission": display "{dynamic points amount} per ${dynamic payout amount}

string|null

up_to

events.#.dynamic_points

Described above

float|null

187.9

events.#.dynamic_payout

For "commission", the dollars amount to use in the phrase above

float|null

1

events.#.dynamic_promotional_points

Described above

float|null

0

events.#.event_type_id

ID used to identify the event type

Integer|null

1

Sample Response

{
    "data": [
        {
            "id": 360819,
            "anchor": "Opinion Labs",
            "requirements": "Enter your profile information and complete one survey from the available options. Fake information will not be credited. Can be completed multiple times.",
            "description": "Answer some profile questions about yourself and our system will determine if the selected survey is a good fit based on your answers. Complete surveys honestly and completely. Get paid for your efforts through your favorite rewards platform. ",
            "confirmation_time": "Confirms Instantly",
            "pending_time": 60,
            "app_metadata": null,
            "is_game": false,
            "web2mobile": false,
            "web2mobile_devices": null,
            "click_url": "https://agm.mobi/vc/nQ/users/user12345/offers/360819?s2=mys2&s3=mys3&source_type=user_based_api",
            "icon_url": "https://main-p.agmcdn.com/offers/1613580417599.gif",
            "categories": [
                "Free"
            ],
            "sticky": false,
            "rank": 1,
            "events": [
                {
                    "uuid": "48097169-5ef7-476a-92ac-869884120096",
                    "name": "Completed",
                    "type": "flat",
                    "payable": true,
                    "flat_points": 125,
                    "flat_payout": 1.25,
                    "flat_promotional_points": null,
                    "dynamic_display_type": null,
                    "dynamic_points": null,
                    "dynamic_payout": null,
                    "dynamic_promotional_points": null,
                    "event_type_id": 2
                }
            ],
            "total_points": 125,
            "total_promotional_points": null
        },
        ...
    ]
}

Offer Event Types

The following table shows the list of offer event type ids that can be retrieved in the API:

IDType

1

Install

2

Event

3

Purchase

NULL

N/A

Last updated