GeoSpot Media Console – Reporting API Documentation

  Product Documentation

Getting Started

GeoSpot Media (GSM) Console is accessible through both APIs as well as the user interface. GSM exposes RESTful API endpoints to interact with the platform. This documentation talks about GSM API’s and how to use them in detail

If you have a question please reach out to us via support@geospotmedia.com

Authentication

POST https://api-console.geospotmedia.com/v1/authentication/token

GSM API supports standard OAuth with password grant type. You can use your username and password to get an access token by making a simple POST request like the following:

Sample Request
POST https://api-console.geospotmedia.com/v1/authentication/token

// cURL 
curl -X POST \
'https://api-console.geospotmedia.com/v1/authentication/token' \
-H 'authorization: Basic ' \
-H 'content-type: application/x-www-form-urlencoded' \
-d 'grant_type=password&username=&password='
grant_type password
username email you use while logging into the GSM Console
password your GSM Conole password
Header pass the authorization: Basic header by deriving values from base64 encode of string <API_Key>:<API_Secret_Key>.

To get your API Key and API Secret Key, please click on the top right corner of the interface (as shown below) and click on API Integration to find your API Key and generate your Secret Key

The response to the authentication call is an OAuth token which should be included in the header calls of all future requests as Authorization: Bearer …. (By default the token gets expired in 30 mins)

If your token expires, you will need to implement the OAuth refresh token flow by making the authentication call again and using the newly issued OAuth token for subsequent requests.

Auth Request

curl -X POST \
'https://api-console.geospotmedia.com/v1/authentication/token' \
-H 'authorization: Basic ' \
-H 'content-type: application/x-www-form-urlencoded' \
-d 'grant_type=password&username=&password='
Response
{"access_token":ACCESS_TOKEN,"expires_in":"1799","scope":""}

How to make subsequent calls

Once you get the authentication token, you are required to pass this token as the bearer token in your HTTP headers. A sample to list campaigns has been shown here

Sample Response
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/campaigns?page=1&per_page=25?' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'

Error codes

We support standard HTTP error codes.

In the case of an authentication failure, you will receive one of the following “Authentication error” errors
a. Incorrect username/password– Invalid login credentials
b. Invalid Access Token – Invalid API Key.


Supported Parameters

GSM reporting API allows you to create, update, view and delete your campaign’s performance reports

Supported metricsfilters, and group_by parameters are listed below

Metrics
Metrics Description
wins Total count of auctions won
impressions Total count of ad-impressions served
clicks Total count of clicks
conversions Total count of conversions as defined by a conversion_object
unique_users Total count of unique_users who did a conversion action. Defined as part of conversion_object
ct_installs (deprecated) Total count of click-through attributed installs
vt_installs (deprecated) Total count of view-through attributed installs
installs Total number of installs. Value will change based on selected attribution sources (default: mmp) and attribution type( default: Total). See below for more details
win_rate Value between 0 – 1. Multiply by 100 to get the number in percentage. Win Rate is calculated as Wins/Bids.
ctr Value between 0 – 1. Multiply by 100 to get the number in percentage. CTR is calculated as clicks/impressions
conversion_rate Value between 0 – 1. Multiply by 100 to get the number in percentage. Conversion rate is calculated as installs/clicks
video_start Total count of video start events
video_first_quartile Total count of video first quartile events
video_midpoint Total count of video midpoint events
video_third_quartile Total count of video third quartile events
video_complete Total count of video complete events
advertiser_ecpm Effective cost per thousand impressions
advertiser_ecpc Effective cost per click
advertiser_ecpi Effective cost per install
advertiser_ecpa Effective cost per Conversion action as defined by conversion object
Filters
Filters Description Sample/ Supported Values
tag Array of tags created by the user. Sample Value-

Retargeting,
UA,
Branding

line_item_id Array of line item id’s. Also represented in the UI as Orders Sample Value- 104669
campaign_id Array of unique campaign id’s Sample Value- 138939. Please refer to Campaigns
deal_id Array of unique deal id’s Sample Value- 2349
creative_id Array of unique creative ids Sample Value- 50279679. Please refer to Creatives
exchange_id Array of programmatic exchange id’s Please refer to Exchanges
app_object_id Array of unique advertiser app object id’s Sample Value – [10, 12]. Please refer to App Objects
site_object_id Array of unique advertiser website object id’s Sample Value – [11, 13]. Please refer to Site Objects
app_id Array of publisher app ids: Unique GSM specific id for every publisher app per exchange Sample Value- 63webhaubwajhb27820
app_bundle_id Array of publisher app bundle ids: Unique appstore/playstore bundle ID for publisher app Sample Value- com.forthblue.pool
user_country_id Array of country ids: GSM specified ID’s for every country Please refer to Countries
manufacturer_id Array of manufacturer ids: Unique ID for device manufacturers Please refer to Manufacturers (Device)
traffic_type Type of traffic on which campaign served. Supported Value-

InAPP,
MobileWeb,
Unknown

connection_type Type of user connection. Supported Values-

Carrier Network,
Wifi

Group By
Field Description Sample/ Supported Values
year calendar year Sample Value- 2019
month calendar month Supported Values- 1, 2,12
day calendar date Sample Value- 21 March 2019
line_item_name Name of line items. Line items are represented as Orders in the UI Sample Value- Test Order
line_item_id ID of line items. Line items are represented as Orders in the UI Sample Value- 104669
campaign_name Name of the campaigns Sample Value- Test Campaign
campaign_id Unique ID of the campaign Sample Value- 138939
dealid Unique PMP deal id’s Sample Value- 2349
campaign_type Optimization algorithm that the campaign is using. Supported Values- CPM, CPC, CPI
creative_name Creative name in the platform Sample Value- Test Creative
creative_id Unique ID per creative Sample Value- 50279679
creative_type Type/format of creative Supported Values- Image, HTML, Native, Video
is_ssl Specify whether creative’s click and impression URL were secure URLs or not Supported Values-

0 – Non-Secure
1- Secure

video_duration Length of video file. Example: 15sec, 30sec, 45sec Sample Value- 15, 29, 30
video_resume Total count of video resume events Sample Value- 139282
exchange_name Name of programmatic exchanges integrated with GSM Platform Please refer to Exchanges
exchange_id Unique ID for programmatic exchanges on GSM platform Please refer to Exchanges
app_name Exchange specific publisher app name. Same app might have different names across exchanges Sample Value- Pool Billiards Pro
app_id Exchange specific Unique ID for publisher apps. Same app will have different app_id across exchanges Sample Value- 3b01c74ab91c8f7f78caae7c38428434
app_bundle_id Playstore/App store bundle id/app id for the publisher app com.king.candycrushsaga
app_object_name Advertiser app name in Playstore / AppStore Sample Value – Angry Birds 2
site_object_name Advertiser site URL Sample Value – https://www.amazon.com/
app_object_store_id Advertiser app’s android package Name / iOS App ID Sample Value –

880047117
com.rovio.baba

user_country_id List of GSM specific Country ID’s Please refer to Countries
country List of Country names Please refer to Countries
country_code Alpha-3 digit ISO country code for every country Sample Value- RUS for Russia
traffic_type Type of traffic on which campaign served Supported Value-

InAPP
MobileWeb
Unknown

os_name Name of the user’s device operating system Please refer to OS- Operating System
os_version_name Operating system version of user’s device Please refer to OS Version
manufacturer_name Device’s manufacturer name Please refer to Manufacturers (Device)
manufacturer_id GSM specific unique ID of device manufacturers Please refer to Manufacturers (Device)
connection_type Type of user connection Supported Values-

Carrier Network,
Wifi

advertiser_name Advertiser name in GSM Platform Sample Value- Test Advertiser
advertiser_id Advertiser ID in GSM Platform Sample Value- 12274
Attribution Sources
Title Description
mmp Values based on MMP attribution. For instance, the install count based on MMP attribution
self Values based on Self-attribution. For instance, the install count based on Self-attribution
assisted Difference between MMP and Self assisted attribution numbers for a given metric. Represented as percentage
Attribution Types
Title Description
click Attribution values based on last Click attribution
view Attribution values based on last view attribution
total Sum of Click through (CT) and View through (VT) attribution


Create New Report

POST https://api-console.geospotmedia.com/v1/reports

o access your campaign performance data via reporting API, you can create a report with necessary parameters as defined below. Please note, once a report is created, you can re-use the same report to fetch the latest data. For instance, if you create a report for the duration as “Last 7 days”, this will be a rolling window and will always fetch last 7 days data depending on when you query the report

Parameters for Creating New Report
Parameter Format Required/ Optional Description
advertiser_id int required Unique ID per advertiser
name string required Name of the report.
report_type_id string required Only supported value is rtb
date_macro string optional Select a specific day or range of days. Supported Values –

today
yesterday
last_three_days
last_seven_days
this_month
last_month

start_date YYYY-MM-DD required Start date of the report, e.g.: 2019-01-01
end_date YYYY-MM-DD required End date of reports, e.g.: 2019-01-31
time_zone_id int required Get report data as per a specific time_zone selected. Refer to Timezone
metrics array of string required Array of supported metrics. Please refer to Supported Parameters
filters JSON Object optional JSON object with key as reporting filter property and value as array of filter values. Please refer to Supported Parameters
group_by array of string(required) required List of dimensions to group by. Please refer to Supported Parameters
attribution_sources array of strings optional Values –

mmp
self
assisted

attribution_types array of strings optional Values –

click
view
total

Sample Request
curl -X POST \
'https://api-console.geospotmedia.com/v1/reports' \
-d '{ 
      "report" : {  
                   "name":"test_report",
                   "report_type_id":"rtb",
                   "time_zone_id":11,
                   "metrics":["wins","impressions","clicks"],
                   "filters":{"campaign_id":[108996]},
                   "group_by":["day","campaign_id"],
                   "date_macro":"last_seven_days",
                   "start_date":"2019-04-19",
                   "end_date":"2019-04-25",
                   "attribution_sources":["mmp", "self"],
                   "attribution_types":["click","view"]
                  }
    }' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "id":2641,
   "advertiser_id":10928,
   "name":"Report 1",
   "start_date":"2019-04-19",
   "end_date":"2019-04-25",
   "date_macro":"last_seven_days",
   "time_zone_id":11,
   "metrics":[  
      "wins",
      "impressions",
      "clicks"
   ],
   "filters":{  
      "campaign_id":[  
         108996
      ]
   },
   "group_by":[  
      "day",
      "campaign_id"
   ],
   "attribution_types":[
     "click",
     "view"
   ],
   "attribution_sources":[
     "mmp",
     "self"
   ],
   "created_at":"2019-04-24T21:45:33.000Z",
   "last_updated_at":null,
   "time_zone_name":"(GMT+00:00) UTC"
}

List Reports

GET https://api-console.geospotmedia.com/v1/reports

Use this API to get a list of all the existing reports or search for a specific report.

See below for supported fields and param

Field Param Required/ Optional Description
advertiser_id int required

Unique ID per advertiser account

q string optional

Search query parameter. Returns results for a specific report. If no value is specified, then all reports data will be returned

page int optional

Returns page number. If nothing is selected, by default it will fetch 1 page

per_page int optional

Set number of rows per page. Default Value- 20 entries

sort_field string optional

Field to use for sort by function

sort_direction asc/desc optional

Show results in ascending or descending order.Default value -‘desc’ order

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/reports?q=Report_test_&page=1&per_page=25&report_type%5B%5D=rtb&sort_direction=desc&sort_field=id' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":2635,
         "advertiser_id":10298,
         "report_type_id":"rtb",
         "name":"Report_test",
         "start_date":"2019-01-01",
         "end_date":"2019-01-31",
         "date_macro":"last_month",
         "time_zone_id":11,
         "created_at":"2019-01-03T10:46:44.000Z",
         "time_zone_name":"(GMT+00:00) UTC"
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":1
   }
}

Update Existing Report

PUT https://api-console.geospotmedia.com/v1/reports/:id

You can update an already existing report. All the parameters which are used while creating a report can be updated and modified

Parameters for Updating Existing Report
Field Param Required/ Optional Description
advertiser_id int required Unique ID per advertiser account
name string required Name of the report
report_type_id string required Only supported value is rtb
date_macro string optional Select specific day or range of days. Supported Values –
today
yesterday
last_three_days
last_seven_days
this_month
last_month
start_date YYYY-MM-DD required Start date of report eg: 2019-01-01
end_date YYYY-MM-DD required End date of report eg: 2019-01-31
metrics array of string required Array of supported metrics. Please refer to Supported Parameters
filters JSON Object/Hash optional JSON object with key as reporting filter property and value as an array of filter values. Please refer to Supported Parameters
group_by array of string required List of dimensions to group by. Please refer to Supported Parameters

 

Sample Request
curl -X PUT \
'https://api-console.geospotmedia.com/v1/reports/:id' \
-d '{
  "id": 2641,
  "name": "Report 1",
  "report_type_id": "rtb",
  "time_zone_id": 11,
  "metrics": [
    "wins",
    "impressions",
    "clicks",
    "win_rate",
    "advertiser_spend"
  ],
  "filters": {
    "campaign_id": [
      108996,
      108997
    ]
  },
  "group_by": [
    "day",
    "line_item_id",
    "campaign_id"
  ],
  "attribution_sources":[
    "mmp",
    "assisted"
  ],
  "attribution_types":[
    "click",
    "total"
   ],
  "date_macro": "last_seven_days",
  "start_date": "2019-04-19",
  "end_date": "2019-04-25"
}' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "id":2641,
   "advertiser_id":10298,
   "name":"Report 1",
   "start_date":"2019-04-19",
   "end_date":"2019-04-25",
   "date_macro":"last_seven_days",
   "time_zone_id":11,
   "metrics":[  
      "wins",
      "impressions",
      "clicks",
      "win_rate",
      "advertiser_spend"
   ],
   "filters":{  
      "campaign_id":[  
         108996,
         108997
      ]
   },
   "group_by":[  
      "day",
      "line_item_id",
      "campaign_id"
   ],
   "attribution_sources":[
     "mmp",
     "assisted"
   ],
   "attribution_types":[
     "click",
     "total"
   ],
   "created_at":"2019-04-24T21:45:33.000Z",
   "last_updated_at":null,
   "time_zone_name":"(GMT+00:00) UTC"
}

Show Report

GET https://api-console.geospotmedia.com/v1/reports/:id

Use this API to get the report’s metadata and query parameters like report filters, metrics, group_by etc

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/reports/2641' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "id":2641,
   "advertiser_id":10298,
   "name":"Report 1",
   "start_date":"2019-04-19",
   "end_date":"2019-04-25",
   "date_macro":"last_seven_days",
   "time_zone_id":11,
   "metrics":[  
      "wins",
      "impressions",
      "clicks",
      "installs",
      "win_rate",
      "ctr",
      "conversion_rate",
      "advertiser_ecpm",
      "advertiser_ecpi",
      "advertiser_ecpc",
      "advertiser_spend",
      "advertiser_margin",
      "advertiser_margin_per"
   ],
   "filters":{  
      "campaign_id":[  
         108996,
         108997
      ]
   },
   "group_by":[  
      "day",
      "line_item_id",
      "campaign_id"
   ],
   "attribution_types":[
     "click",
     "view"
   ],
   "attribution_sources":[
     "mmp",
     "self"
   ],
   "created_at":"2019-04-24T21:45:33.000Z",
   "last_updated_at":null,
   "time_zone_name":"(GMT+00:00) UTC"
}

Report Results

GET https://api-console.geospotmedia.com/v1/reports/:report_id/report_results

Returns results of a specific report. You should pass the report_id in the sample request to fetch the results for a specific report. To know your report_id, please refer toList Reports(idin show reports is a synonym for report_id)

See below for supported fields and param

Field Param Required/ Optional Description
page int optional Returns page number. Default Value- 1
per_page int optional Set number of rows per page. Default Value- 20
sort_field string optional Field to use for sort by function.
sort_direction asc/desc optional Show results in ascending or descending order.Default value -‘desc’ order
start_date YYYY-MM-DD optional The start date of a specific report can be changed while viewing the report results. eg: 2019-01-01
end_date YYYY-MM-DD optional The end date of a specific report can be changed while viewing the report results. eg: 2019-03-01
Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/reports/2641/report_results?end_date=2019-03-01&page=1&per_page=25&sort_direction=desc&start_date=2019-03-01' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "day":"2019-03-01",
         "wins":"601373",
         "impressions":"332826",
         "clicks":"60000000",
         "installs":{
           "click":{
             "mmp":"87550",
             "self":"90000"
           },
           "view":{
             "mmp":"90000",
             "self":"96000"
           }
         },
         "win_rate":0.548,
         "ctr":180.2744,
         "conversion_rate":{
           "click":{
             "mmp":"0.0015",
             "self":"0.0012"
           }
         }
         "advertiser_ecpm":278.02,
         "advertiser_ecpi":1.06,{
           "click":{
             "mmp":1.60,
             "self":1.20
           },
           "view":{
             "mmp":1.40,
             "self":1.10
           }
         },
         "advertiser_ecpc":0,
         "advertiser_spend":92532.26
      }
   ],
   "headers":[  
      "day",
      "wins",
      "impressions",
      "clicks",
      "installs",
      "win_rate",
      "ctr",
      "conversion_rate",
      "advertiser_ecpm",
      "advertiser_ecpi",
      "advertiser_ecpc",
      "advertiser_spend",
      "advertiser_margin",
      "advertiser_margin_per"
   ]
}

Delete Report

DELETE https://api-console.geospotmedia.com/v1/reports/:id

Use this API to delete an existing report
Sample Request
curl -X DELETE \
'https://api-console.geospotmedia.com/v1/reports/2641' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
204 (No Content)

Reporting API Meta Data

 

App Objects

GET https://api-console.geospotmedia.com/v1/meta/app_objects

Returns a list of app object names and app object ID’s. If no specific search query is specified, returns all app objects.

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific app name. If no value is specified, then all app objects are returned
per_page int optional Number of rows per page. Default Value- 30 entries
page int optional Returns page number. Default Value- 1 page

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/app_objects?page=1&per_page=25&q=Billionaire' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":10,
         "type":"AppObject",
         "name":"Stark",
         "os_id":12,
         "store_app_id":"1098617974",
         "store_app_url":"https://itunes.apple.com/us/app/Stark/id1098617974",
         "icon_url":"https://is2-ssl.mzstatic.com/image/thumb/Purple113/v4/66/d2/5a/66d25acc-f0f2-6a0c-f672-602e9a0aed5e/source/512x512bb.jpg",
         "rating":"4.5",
         "ad_domain":"http://www.stark.com/"
      },
      {  
         "id":4,
         "type":"AppObject",
         "name":"Stark",
         "os_id":11,
         "store_app_id":"com.stark.casino.texas",
         "store_app_url":"https://play.google.com/store/apps/details?id=com.stark",
         "icon_url":"https://lh3.googleusercontent.com/S9spm5iwnJcbBTCdubC9SHXTrsYsJdumWBuVRaAYXcKu9-4m5VMTWuw4knsay_HrC_k=s180",
         "rating":"4.46",
         "ad_domain":"http://www.stark.com/"
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":2
   }
}

Campaigns

GET https://api-console.geospotmedia.com/v1/meta/campaigns

Returns campaign name and other campaign attributes. If no specific search query is specified, all campaign details are returned
Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific campaign. If no value is specified, then all campaigns data will be returned
per_page int optional Number of rows per page. Default Value- 30 entries
page int optional Returns page number. Default Value- 1 page

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/campaigns?page=1&per_page=25&q=FR_android_banner_CPI_BU' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "status":"running",
         "id":139199,
         "name":"FR_android_banner",
         "detail_id":139199,
         "is_active":true,
         "order_active":true,
         "has_running_creatives":true,
         "creative_statuses":[  
            "running",
            "running",
            "running"
         ],
         "start_time":"2019-05-22T16:01:34.000Z",
         "end_time":"2038-01-01T00:00:00.000Z",
         "cap_type":"none",
         "budget_cap_amount":null,
         "budget_cap_interval":null,
         "objective_cap_amount":null,
         "objective_cap_interval":null,
         "cloned_from":138841,
         "creative_type":"image",
         "total_budget":null,
         "billing_type":null,
         "billing_price":0.0,
         "updated_at":"2019-05-22T15:16:42.000Z",
         "created_at":"2019-05-22T15:16:42.000Z",
         "tags":[  
            {  
               "id":40,
               "name":"autoblacklistOFF"
            },
            {  
               "id":42,
               "name":"Explore"
            },
            {  
               "id":33,
               "name":"User_acquisition"
            }
         ],
         "app_group_id_whitelist":null,
         "app_group_id_blacklist":null,
         "max_bid":4.0,
         "day_budget":60,
         "campaign_type":"cpi",
         "modified_by":{  
            "id":2375,
            "first_name":"Mr",
            "last_name":"API",
            "email":"mr.api@geospotmedia.com",
            "company":"GSM",
            "time_zone":"UTC",
            "status":"active",
            "created_at":"2019-04-15T10:33:38.000Z",
            "system_role":"account_manager",
            "external":false,
            "registered_at":"2019-04-15",
            "role":null
         },
         "created_by":{  
            "id":2375,
            "first_name":"Mr",
            "last_name":"API",
            "email":"mr.api@geospotmedia.com",
            "company":"GSM",
            "time_zone":"UTC",
            "status":"active",
            "created_at":"2019-04-15T10:33:38.000Z",
            "system_role":"account_manager",
            "external":false,
            "registered_at":"2019-04-15",
            "role":null
         },
         "advertiser":{  
            "id":12209,
            "name":"Stark",
            "created_at":"2019-02-20T12:04:52.000Z",
            "status":"active",
            "rtb_margin":"0.0",
            "advertiser_office_id":2,
            "conversion_objects":[  

            ],
            "s2s_enabled":true,
            "mobile_object_enabled":false,
            "advertiser_api_key":{  
               "id":2848,
               "api_key":"e59413db1cb4e10582e0282829989fd889a8d39a",
               "api_secret":null,
               "advertiser_id":12209,
               "created_at":"2019-02-20T12:04:53.000Z",
               "updated_at":"2019-02-20T12:04:53.000Z"
            }
         },
         "enterprise":{  
            "id":10049,
            "name":"GSM",
            "created_at":"2018-12-05T15:23:14.000Z"
         },
         "geolocations":[  

         ]
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":1
   }
}

Countries

GET https://api-console.geospotmedia.com/api/v1/meta/countries

Returns a list of country names and country id’s. If no specific search query is specified, returns all countries.

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific country. If no value is specified, then all countries data will be returned
per_page int optional Number of rows per page. Default Value- 30 entries
page int optional Returns page number.Default Value- 1 page

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/countries?page=1&per_page=25&q=germ' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":93,
         "name":"Germany"
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":1
   }
}

Creatives

GET https://api-console.geospotmedia.com/v1/meta/creatives

Returns a list of creative names and other attributes. If no specific search query is specified, returns all creatives.

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific creative. If no value is specified, then all creative data will be returned
per_page int optional Number of rows per page. Default Value- 30 entries
page int optional Returns page number.Default Value- 1 page
advertiser_id int required Advertiser ID of the user

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/creatives?page=1&per_page=25&q=germ&advertiser_id=10001' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":50266969,
         "name":"CL_Native_test1",
         "type":"native",
         "created_at":"2019-02-18T05:09:37.000Z",
         "campaigns_count":1,
         "height":null,
         "width":null,
         "preview":"",
         "size":null,
         "click_url":"https://www.test.com",
         "pixel_url":null,
         "tracking_url":null,
         "title":"",
         "rating":null,
         "description":"",
         "call_to_action":"",
         "icon_mime":"image/",
         "main_mime":"image/",
         "app_url":"",
         "icon_image":"",
         "icon_width":null,
         "icon_height":null,
         "main_image":"",
         "main_width":null,
         "main_height":null
      },
      {  
         "id":50210107,
         "name":"CL_Native_test2",
         "type":"native",
         "created_at":"2018-05-04T07:17:31.000Z",
         "campaigns_count":5,
         "height":627,
         "width":1200,
         "preview":"https://advert-creatives.s3.amazonaws.com/assets/6f3b26fd-4d32-4659-bb47-0851f28563b.jpeg",
         "size":96431,
         "click_url":"https://www.starktest.com/en",
         "pixel_url":null,
         "tracking_url":null,
         "title":"Your Favorite App",
         "rating":"4.5",
         "description":"Satisfy your hunger",
         "call_to_action":"Order Now",
         "icon_mime":"image/png",
         "main_mime":"image/jpeg",
         "app_url":"",
         "icon_image":"https://advert-creatives.s3.amazonaws.com/assets/794667e7-4daa-4d54-92f8-16567acc9cc.png",
         "icon_width":80,
         "icon_height":80,
         "main_image":"https://advert-creatives.s3.amazonaws.com/assets/6f3b26fd-4d32-4659-bb47-0851f28563b.jpeg",
         "main_width":1200,
         "main_height":627
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":2
   }
}

Exchanges

GET https://api-console.geospotmedia.com/v1/meta/exchanges

Returns a list of exchanges (SSP’s) names and id’s. If no specific search query is specified, returns all exchanges.

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific exchange (SSP). If no value is specified, then all exchanges data will be returned
creative_types string optional Supported Values-
advertiser_id int optional Unique ID per advertiser account
per_page int optional Number of rows per page. Default Value- 30
page int optional Returns page number.Default Value- 1 page

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/exchanges?page=1&per_page=25&q=MoPub' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":23,
         "name":"MoPub",
         "type":"public",
         "status":"enabled",
         "bids_url":null,
         "events_url":null,
         "creative_types":[  
            {  
               "type":"image"
            }
         ]
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":1
   }
}

Device Type

GET https://api-console.geospotmedia.com/v1/meta/device_types

Returns a list of device types (like phone, tablet, ipad) and id’s. If no specific search query is specified, returns all device types.

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific device type. If no value is specified, then all device types are returned
per_page int optional Number of rows per page. Default Value- 30
page int optional Returns page number. Default Value- 1 page

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/device_types?page=1&per_page=25&q=pho' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":11,
         "device_type_id":4,
         "name":"Phone"
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":1
   }
}

Orders

GET https://api-console.geospotmedia.com/v1/meta/line_items

Returns a list of order names and other attributes. If no specific search query is specified, returns all order details

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific order. If no value is specified, then all orders data will be returned
per_page int optional Number of rows per page. Default Value- 30 entries
page int optional Returns page number.Default Value- 1 page

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/line_items?page=1&per_page=25&q=CC_iOS_UK_WL' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":104897,
         "name":"CC_iOS_UK_WL",
         "start_time":"2019-04-29T00:00:00.000Z",
         "end_time":null,
         "day_budget":10000,
         "total_budget":100000,
         "hasoffers_offer_id":null,
         "timezone":11,
         "impression_cap_count":null,
         "impression_cap_days":null,
         "is_active":true,
         "advertiser_id":12251,
         "billing_type":null,
         "billing_price":null,
         "country_ids":[  
            245
         ],
         "os_ids":[  
            12
         ],
         "os_version_ids":null,
         "conversion_object_id":null,
         "block_installed_devices":0,
         "advertiser_mobile_object":null,
         "mobile_object":null
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":1,
      "available_metrics":[  
         "installs",
         "spend"
      ]
   }
}

Manufacturers

GET https://api-console.geospotmedia.com/v1/meta/manufacturers

Returns a list of device manufacturers like Apple, Samsung etc. If no specific search query is specified, returns all device manufacturers.

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific manufacturer. If no value is specified, then all manufacturers data is returned
per_page int optional Number of rows per page. Default Value- 30
page int optional Returns page number. Default Value- 1 page

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/manufacturers?page=1&per_page=25&q=Apple' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":1000,
         "name":"Apple"
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":1
   }
}

Operating System

Returns a list of operating systems and their corresponding id’s. If no specific search query is specified, returns all operating system.

GET https://api-console.geospotmedia.com/v1/meta/os

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific Operating system. If no value is specified, then all operating system’s data will be returned
per_page int optional Number of rows per page. Default Value- 30
page int optional Returns page number. Default Value- 1 page

 

 Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/os?page=1&per_page=25&q=ios' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":12,
         "name":"iOS"
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":1
   }
}

OS Version

Returns a list of OS version names ( example iOS-10.0) and id’s. If no specific search query is specified, returns all OS versions.

GET https://api-console.geospotmedia.com/v1/meta/os_versions

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific operating system version. If no value is specified, then all os versions data will be returned
per_page int optional Number of rows per page. Default Value- 30
page int optional Returns page number. Default Value- 1 page

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/os_versions?page=1&per_page=25&q=iOS-1' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":28,
         "os_id":12,
         "name":"iOS-1.0",
         "alternate_names":"1.0,1.0.0",
         "created_at":"2016-06-23T11:16:36.000Z",
         "version_number":1.0
      },
      {  
         "id":72,
         "os_id":12,
         "name":"iOS-10.0",
         "alternate_names":"10.0,10.0.0,10.0.1,10.0.2,10_0,10_0_1,10_0_2,10.0.3,10.0.2.,10.0.3,10.0.3.,10.0.1,10.0.1.,10_0_3,10",
         "created_at":"2016-08-23T07:41:10.000Z",
         "version_number":10.0
      },
      {  
         "id":74,
         "os_id":12,
         "name":"iOS-10.1",
         "alternate_names":"10.1,10.1.1,10.1.1.,10_1_1,10.1.0,10_1",
         "created_at":"2016-12-23T15:59:14.000Z",
         "version_number":10.1
      },
      {  
         "id":75,
         "os_id":12,
         "name":"iOS-10.2",
         "alternate_names":"10.2,10.2.1,10.2.0,10_2,10_2_1,10.2.2",
         "created_at":"2016-12-23T15:59:15.000Z",
         "version_number":10.2
      },
      {  
         "id":76,
         "os_id":12,
         "name":"iOS-10.3",
         "alternate_names":"10.3,10.3.0,10.3.2,10.3.3,10.3.1,10_3_2,10_3_3,10_3_1,10_3",
         "created_at":"2016-12-23T15:59:16.000Z",
         "version_number":10.3
      },
      {  
         "id":77,
         "os_id":12,
         "name":"iOS-11.0",
         "alternate_names":"11_0,11.0,11.0.0,11.0.1,11.0.2,11.0.3,11_0_1,11_0_2,11_0_3,11",
         "created_at":"2017-10-31T09:55:48.000Z",
         "version_number":11.0
      },
      {  
         "id":78,
         "os_id":12,
         "name":"iOS-11.1",
         "alternate_names":"11.1,11.1.0,11_1,11.1.1,11.1.2,11_1_2,11_1_1",
         "created_at":"2017-10-31T10:00:09.000Z",
         "version_number":11.1
      },
      {  
         "id":79,
         "os_id":12,
         "name":"iOS-11.2",
         "alternate_names":"11.2,11.2.0,11.2.5,11.2.2,11.2.1,11_2_2,11_2_1,11_2_5,11_2,11.2.6,11_2_6",
         "created_at":"2017-10-31T10:00:10.000Z",
         "version_number":11.2
      },
      {  
         "id":81,
         "os_id":12,
         "name":"iOS-11.3",
         "alternate_names":"11.3,11.3.0,11_3,11.3.1,11_3_1,11.1.3",
         "created_at":"2018-02-19T10:58:56.000Z",
         "version_number":11.3
      },
      {  
         "id":82,
         "os_id":12,
         "name":"iOS-11.4",
         "alternate_names":"11.4,11.4.0,11_4,11.4.1,11.4.4,11_4_1",
         "created_at":"2018-04-18T05:39:52.000Z",
         "version_number":11.4
      },
      {  
         "id":83,
         "os_id":12,
         "name":"iOS-12.0",
         "alternate_names":"12.0.1,12.0,12_0,12,12.0.0,12_0_1",
         "created_at":"2018-10-25T08:38:03.000Z",
         "version_number":12.0
      },
      {  
         "id":85,
         "os_id":12,
         "name":"iOS-12.1",
         "alternate_names":"12_1,12_1_2,12_1_3,12_1_1,12.1.0,12.1.2,12.1,12.1.1,12.1.3,12.1.4,12_1_4",
         "created_at":"2019-01-16T09:53:13.000Z",
         "version_number":12.1
      },
      {  
         "id":86,
         "os_id":12,
         "name":"iOS-12.2",
         "alternate_names":"12.2.0,12_2,12.2",
         "created_at":"2019-03-07T06:25:52.000Z",
         "version_number":12.2
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":13
   }
}

Site Objects

GET https://api-console.geospotmedia.com/v1/meta/site_objects

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific site object. If no value is specified, then all site objects data will be returned
per_page int optional Number of rows per page. Default Value- 30
page int optional Returns page number. Default Value- 1 page
Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/site_objects?page=1&per_page=25&q=gsm' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":14,
         "type":"SiteObject",
         "name":"https://geospotmedia.com/",
         "ad_domain":"geospotmedia.com"
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":1
   }
}

Timezone

Returns a list of time zones name and id’s. If no specific search query is given, returns all timezones.

GET https://api-console.geospotmedia.com/v1/meta/time_zones

Field Param Required/ Optional Description
q string optional Search query parameter. Returns result for a specific timezone. If no value is specified, then all timezone data will be returned
country_id int optional GSM specific unique ID for each country
per_page int optional Number of rows per page. Default Value- 30
page int optional Returns page number. Default Value- 1 page

 

Sample Request
curl -X GET \
'https://api-console.geospotmedia.com/v1/meta/time_zones?page=1&per_page=25&q=pacific' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN'
Sample Response
{  
   "data":[  
      {  
         "id":12,
         "name":"Pacific/Samoa",
         "display_name":"(GMT-11:00) American Samoa"
      },
      {  
         "id":13,
         "name":"Pacific/Kwajalein",
         "display_name":"(GMT-11:00) International Date Line West"
      },
      {  
         "id":14,
         "name":"Pacific/Midway",
         "display_name":"(GMT-11:00) Midway Island"
      },
      {  
         "id":15,
         "name":"Pacific/Honolulu",
         "display_name":"(GMT-10:00) Hawaii"
      },
      {  
         "id":138,
         "name":"Pacific/Guam",
         "display_name":"(GMT+10:00) Guam"
      },
      {  
         "id":142,
         "name":"Pacific/Port_Moresby",
         "display_name":"(GMT+10:00) Port Moresby"
      },
      {  
         "id":147,
         "name":"Pacific/Auckland",
         "display_name":"(GMT+12:00) Auckland"
      },
      {  
         "id":148,
         "name":"Pacific/Fiji",
         "display_name":"(GMT+12:00) Fiji"
      },
      {  
         "id":150,
         "name":"Pacific/Fiji",
         "display_name":"(GMT+12:00) Marshall Is."
      },
      {  
         "id":151,
         "name":"Pacific/Auckland",
         "display_name":"(GMT+12:00) Wellington"
      },
      {  
         "id":153,
         "name":"Pacific/Apia",
         "display_name":"(GMT+13:00) Samoa"
      },
      {  
         "id":154,
         "name":"Pacific/Fakaofo",
         "display_name":"(GMT+13:00) Tokelau Is."
      }
   ],
   "meta":{  
      "current_page":1,
      "total_pages":1,
      "total_entries":12
   }
}

Should you have any questions regarding the use of APIs, please feel free to write to support@geospotmedia.com