Skip to main content

Web Offerwall Integration Guide

There are two available methods to integrate the AdGem Offer Wall into your website or app:

  1. Direct Link - Opens the offer wall in a new tab/window
  2. iFrame / WebView - Embeds the offer wall within your page

Requirements

Before You Begin

Account Requirements:

App Approval:

  • Your app has been approved in the AdGem system
Important

By default, your app will not have access to AdGem's offers until you complete the initial integration steps and your app is approved. Contact your dedicated Publisher Support Advocate with any questions about the approval process.

:::

Platform Requirements

iOS SDK Requirements
  • iOS 15.8 or higher
  • Swift 5 or Objective-C
  • Xcode 11 or higher
Android SDK Requirements
  • Android API level 28 (Android 9.0) or higher
  • Target SDK 34 or higher
  • Android Studio with Gradle support
Unity SDK Requirements
  • Unity 2020.3 or higher
  • iOS or Android build target configured
  • For iOS: Xcode 11+
  • For Android: Android Studio with Gradle
Web Offerwall Requirements
  • Modern web browser with JavaScript enabled
  • HTTPS-enabled website (recommended for production)
  • Server-side postback endpoint
Platform Support
  • Android: 9.0 and higher
  • iOS: 15.8 and higher

Step 1 - Create a New Property

  1. Click on Properties & Apps in the left navigation
  2. Click on the New Property button
  3. Select Desktop/Web from the Platform dropdown
  4. Complete the form and create the property
note

You must have a unique Property/App ID for each website you want to integrate the Offer Wall on. For example, if you have multiple website URLs, they each must be set up separately from the AdGem Dashboard.

  1. Click Options > Edit on your property
  2. Navigate to the Offerwall tab

Once on the Offerwall settings page, you can find the integration links to add to your website:

  • Direct Link - Labeled "Web Offerwall Direct Link"
  • iFrame - Labeled "Full Screen iFrame Code"

Required Parameters

Player ID

Setting the Player ID

IMPORTANT: The Player ID is Required

The player_id parameter must be set with a unique identifier for each user in your application. This identifies the player so that virtual currency can be attributed to their account via the postback request. The player ID must remain constant for each unique player to:

  • Prevent players from completing an offer more than once
  • Ensure players receive their rewards correctly

Missing Player ID

Tracking URL clicks that do not contain a player_id value will be redirected to a 404 error page.

Player ID Structure Requirements

RequirementDetails
CaseLetters must be lowercase
CharactersAlphanumeric characters, hyphens, and underscores only
Max Length256 characters
ForbiddenEmojis, special characters, uppercase letters

Good Examples:

  • abc-123-efg-456
  • user_12345
  • player-a1b2c3d4

Bad Examples:

  • aBc-123-Efg-456 (contains uppercase)
  • player@123! (contains special characters)
  • user-😀 (contains emoji)

Mobile Advertising IDs (for in-app traffic)

When possible, please append the following parameters:

ParameterDescription
gaidGoogle Advertising ID, available when using Google Play Services
idfaApple Advertising ID, available when the user has not limited ad tracking

Optional Parameters

note

All parameter names and their values are case-sensitive.

ParameterDescription
limitLimit the amount of offers returned to a set number
app_versionThe version of your app where the click originated
deviceThe user's device type (e.g., "Moto E Plus")
device_nameThe user's device name
ipThe IP Address for the user
useragentThe User Agent from the user's default browser app
os_versionThe user's Operating System version number
platformThe platform the user's device is using (e.g., "ios")
player_ageThe user's age as set by the publisher
player_genderThe user's gender as set by the publisher
player_payerA boolean value indicating if user has made purchases
player_iap_total_usdTotal in-app purchase amount in USD
player_created_atA datetime stamp without the time zone
player_levelThe level achieved by the player
placementInteger value representing the ad unit placement
c1 - c5Custom parameter values as set by the publisher

Example Integration

<a href="https://api.adgem.com/v1/wall?appid=YOUR_APP_ID&playerid=USER_ID" target="_blank">
Open Offers
</a>

iFrame

<iframe
src="https://api.adgem.com/v1/wall?appid=YOUR_APP_ID&playerid=USER_ID"
width="100%"
height="600"
frameborder="0">
</iframe>
Best Practice

Ensure the iFrame or WebView is scalable according to device resolution. Include a header image or divider to clearly indicate where your site ends and the offerwall begins.


Additional Information

Customization

You can customize the offer wall appearance including virtual currency name, icon, and multiplier. See the Customization Guide for details.

Postback Setup

If you have opted for a "Server Postback", on each successful offer completion AdGem will send a request to your server. Please visit our guide on Server Postback Setup to learn more.


Updated on August 26, 2024