Skip to content

Search Ads Services

This section describes SearchAds.com based API endpoints.

Get Search Ads Integrations ( 1 Credit / Request )

This endpoint provides list of Search Ads API integrations you have on the SearchAds.com. You can find your organization (campaign group) ids to use them on reporting endpoint.

bash
GET /searchads/info/sa-integrations?token=YOUR_API_KEY

Example request

bash
curl "https://api.mobileaction.co/searchads/info/sa-integrations?token=YOUR_API_KEY"

Request Parameters

ParameterDescription
token(required) API key

Response Fields

FieldDescription
successStatus of the request
dataJSON object contains the data
orgNameApple Search Ads Campaign Group Name (same with SearchAds.com Account Name)
orgIdApple Search Ads Campaign Group Id (same with SearchAds.com Account Id)

Example response

json
{
  "data": [
    [
      {
        "id": 1,
        "integId": "b257ac98005aatr38jrff60ad59cc609d4",
        "orgName": "Florist Campaign Group",
        "orgId": 1783948,
        "currency": "USD",
        "timeZone": "America/Los_Angeles",
        "paymentModel": "PAYG",
        "valid": true,
        "roleNames": [
          "API Campaign Manager"
        ],
        "fetchCompleted": true,
        "createDate": "2021-09-19T11:10:10"
      },
      {
        "id": 2,
        "integId": "b357ac980055d4ebaff60ad59cc609d4",
        "orgName": "Test Campaign Group",
        "orgId": 7453620,
        "currency": "USD",
        "timeZone": "America/Los_Angeles",
        "paymentModel": "PAYG",
        "valid": true,
        "roleNames": [
          "API Campaign Manager"
        ],
        "fetchCompleted": true,
        "createDate": "2021-09-19T11:10:10"
      }
    ]
  ],
  "success": true
}

Get MMP Integrations ( 1 Credit / Request )

This endpoint provides list of mmp integrations you have on the SearchAds.com.

bash
GET /searchads/info/v2/mmp-integrations?token=YOUR_API_KEY

Request Parameters

ParameterDescription
token(required) API key

Response Fields

FieldDescription
successStatus of the request
dataJSON object contains the data
trackIdAppStore/PlayStore track id of app
trackerTypeIntegrated MMP name
stateMMP integration state

Example request

bash
curl "https://api.mobileaction.co/searchads/info/v2/mmp-integrations?token=YOUR_API_KEY"

Example response

json
{
  "data": [
    {
      "name": "Uber - Request a ride",
      "trackId": "368677368",
      "iconUrl": "https://is1-ssl.mzstatic.com/image/thumb/Purple116/v4/f6/aa/f4/f6aaf471-4dc9-8653-62f1-7c162c3f200e/AppIcon-0-1x_U007emarketing-0-7-0-sRGB-85-220.png/60x60.png",
      "developerName": "Uber Technologies, Inc.",
      "integrations": [
        {
          "trackerType": "ADJUST",
          "state": "NO_RECENT_EVENT"
        }
      ]
    },
    {
      "name": "Instagram",
      "trackId": "389801252",
      "iconUrl": "https://is1-ssl.mzstatic.com/image/thumb/Purple116/v4/f2/fc/92/f2fc923b-44f5-692c-12cd-901620e1d9b7/Prod-0-0-1x_U007emarketing-0-7-0-85-220.png/60x60.png",
      "developerName": "Instagram, Inc.",
      "integrations": [
        {
          "trackerType": "APPSFLYER",
          "state": "SUCCESSFULLY_INTEGRATED"
        },
        {
          "trackerType": "ADJUST",
          "state": "PENDING_FIRST_EVENT"
        },
        {
          "trackerType": "BRANCH",
          "state": "CREATE_FIRST_GOAL"
        }
      ]
    }
  ],
  "success": true
}

Get Goals ( 1 Credit / Request )

This endpoint provides list of goals you created on the SearchAds.com. You can use ids to fetch MMP reports.

bash
GET /searchads/info/goals?token=YOUR_API_KEY

Request Parameters

ParameterDescription
token(required) API key
trackIds(optional) comma separated track Ids

Response Fields

FieldDescription
successStatus of the request
dataJSON object contains the data
idGoal id to use for report endpoint

Example request

bash
curl "https://api.mobileaction.co/searchads/info/goals?token=YOUR_API_KEY"

Example response

json
{
  "success": true,
  "data": [
    {
      "id": 1,
      "accountId": 1,
      "trackId": 2183740703,
      "trackerType": "APPSFLYER",
      "goalName": "purchase",
      "category": "PURCHASE",
      "currency": "USD",
      "createDate": "2020-06-22T16:01:04",
      "updateDate": "2021-09-16T07:36:36",
      "eventList": [
        {
          "id": 1,
          "eventName": "af_purchase",
          "revenuePolicy": "IN_APP_VALUE"
        }
      ]
    },
    {
      "id": 2,
      "accountId": 1,
      "trackId": 2183740703,
      "trackerType": "APPSFLYER",
      "goalName": "subscription",
      "category": "SUBSCRIPTION",
      "currency": "USD",
      "createDate": "2020-06-23T10:47:35",
      "updateDate": "2022-01-14T03:16:34",
      "eventList": [
        {
          "id": 2,
          "eventName": "af_subscription",
          "revenuePolicy": "FIXED_VALUE",
          "customRevenue": 1.99,
          "customUsdRevenue": 1.99
        }
      ]
    }
  ]
}

Get a Goal ( 1 Credit / Request )

This endpoint provides specific goal details you created on the SearchAds.com.

bash
GET /searchads/info/goals/{id}?token=YOUR_API_KEY

Request Parameters

ParameterDescription
token(required) API key

Response Fields

FieldDescription
successStatus of the request
dataJSON object contains the data
idGoal id to use for report endpoint

Example request

bash
curl "https://api.mobileaction.co/searchads/info/goals/1?token=YOUR_API_KEY"

Example response

json
{
  "success": true,
  "data": {
    "id": 1,
    "accountId": 1,
    "trackId": 2183740703,
    "trackerType": "APPSFLYER",
    "goalName": "purchase",
    "category": "PURCHASE",
    "currency": "USD",
    "createDate": "2020-06-22T16:01:04",
    "updateDate": "2021-09-16T07:36:36",
    "eventList": [
      {
        "id": 1,
        "eventName": "af_purchase",
        "revenuePolicy": "IN_APP_VALUE"
      }
    ]
  }
}

Get Apps ( 1 Credit / Request )

This endpoint provides list of apps you run campaigns for SearchAds.com.

bash
GET /searchads/info/apps?token=YOUR_API_KEY

Request Parameters

ParameterDescription
token(required) API key

Response Fields

FieldDescription
successStatus of the request
dataJSON object contains the data
trackIdAppStore/PlayStore track id of app

Example request

bash
curl "https://api.mobileaction.co/searchads/info/apps?token=YOUR_API_KEY"

Example response

json
{
  "data": [
    {
      "trackId": "368677368",
      "name": "Uber - Request a ride",
      "categoryName": "Travel",
      "categoryId": 6003,
      "subCategories": [
        "Lifestyle"
      ],
      "iconUrl": "https://is2-ssl.mzstatic.com/image/thumb/Purple113/v4/0a/8b/a7/0a8ba7db-928b-d62e-1ec2-044328127448/AppIcon-0-0-1x_U007emarketing-0-0-0-7-0-0-sRGB-0-0-0-GLES2_U002c0-512MB-85-220-0-0.png/60x60bb.png",
      "price": "$0.00",
      "developerId": "368677371",
      "developerName": "Uber Technologies, Inc.",
      "rating": 4.66985,
      "ratingCount": 1200547,
      "lastUpdate": "2020-06-29T18:29:19",
      "releaseDate": "2010-05-21T00:00:00"
    },
    {
      "trackId": "389801252",
      "name": "Instagram",
      "categoryName": "Photo & Video",
      "categoryId": 6008,
      "subCategories": [
        "Social Networking"
      ],
      "iconUrl": "https://is1-ssl.mzstatic.com/image/thumb/Purple123/v4/1d/01/74/1d0174d4-29d4-cb0d-b5f5-5998541905dc/Prod-0-0-1x_U007emarketing-0-0-0-6-0-0-sRGB-0-0-0-GLES2_U002c0-512MB-85-220-0-0.png/60x60bb.png",
      "price": "$0.00",
      "developerId": "389801255",
      "developerName": "Instagram, Inc.",
      "rating": 4.78107,
      "ratingCount": 17356052,
      "lastUpdate": "2020-06-22T17:02:28",
      "releaseDate": "2010-10-06T00:00:00"
    }
  ],
  "success": true
}

Get Bid History Logs ( 20 Credits / Request )

This endpoint provides logs of bid changes on SearchAds.com.

bash
GET /searchads/bid-history-logs?token=YOUR_API_KEY&orgId=ORG_ID&startDate=START_DATE&endDate=END_DATE

Request Parameters

ParameterDescription
token(required) API key
orgId(required) Organization (campaign group) Id ../info/sa-integrations
startDate(required) Start date of logs with ISO Date Format (yyyy-MM-dd)
endDate(required) End date of logs with ISO Date Format (yyyy-MM-dd). The max allowed date range is 1 week.

Response Fields

FieldDescription
successStatus of the request
dataJSON object contains the data

Example request

bash
curl "https://api.mobileaction.co/searchads/bid-history-logs?token=YOUR_API_KEY&orgId=2833500&startDate=2020-06-29&endDate=2020-06-30"

Example response

json
{
  "data": [
    {
      "entityLevel": "KEYWORD",
      "orgId": 2833500,
      "entityId": 230491795,
      "currency": "USD",
      "oldValue": 6.0,
      "newValue": 6.6,
      "date": "2020-06-29T09:01:39",
      "source": "DASHBOARD"
    },
    {
      "entityLevel": "KEYWORD",
      "orgId": 2833500,
      "entityId": 740491789,
      "currency": "USD",
      "oldValue": 6.0,
      "newValue": 6.6,
      "date": "2020-06-29T12:02:47",
      "source": "RULE",
      "ruleName": "Increase Bid %10"
    }
  ],
  "success": true
}

Get Reports ( 20 Credits / Request )

This endpoint provides ASA + MMP reports (REPORT, DAILY or SUMMARY) for different data levels ACCOUNT, APP, CAMPAIGN, AD_GROUP, AD, CPP, KEYWORD, NEGATIVE or SEARCH_TERM

bash
POST /searchads/reports?token=YOUR_API_KEY&page={PAGE_NUMBER}

Request Parameters

ParameterDescription
token(required) API key
page(optional) The cursor of the report data. Default is 0.

Request Body

FieldDescription
reportType(required) Type of report : REPORT, DAILY or SUMMARY
reportLevel(required) Level of report : ACCOUNT, APP, CAMPAIGN, AD_GROUP, AD, CPP, KEYWORD, NEGATIVE or SEARCH_TERM
startDate(required) Start date of reports with ISO Date Format (yyyy-MM-dd)
endDate(required) End date of reports with ISO Date Format (yyyy-MM-dd). The max date range is 1 month per request
orgIdsList of organization (campaign group) ids. You can find your organization ids from ../info/sa-integrations endpoint. It can be null for ACCOUNT and APP level reports but required for other levels. The max allowed number of orgIds is 1 for CAMPAIGN, AD_GROUP, AD, CPP, KEYWORD, NEGATIVE or SEARCH_TERM reports.
goalId(optional) The goal id for the MMP reports. You can find your goal ids from ../info/goals endpoint. If you don't provide the goal Id you can only fetch ASA reports.
reAttrType(optional) To decide to use re-attribution data while calculating metrics. Options: WITH, WITHOUT, ONLY Default: WITH
currency(optional) Three letter currency code that you want to see metrics based on this. Default: USD

Response Fields

FieldDescription
statusStatus of the request
dataJSON object contains the data

Example request

bash
curl "https://api.mobileaction.co/searchads/reports?token=YOUR_API_KEY&page=1"

Example request body

json
{
  "reportType": "REPORT",
  "reportLevel": "CAMPAIGN",
  "startDate": "2020-06-01",
  "endDate": "2020-06-21",
  "orgIds": [
    26320
  ],
  "goalId": 1,
  "reAttrType": "WITH",
  "currency": "EUR"
}

Example response

json
{
  "success": true,
  "data": [
    {
      "pagination": {
        "totalRowCount": 2,
        "limit": 100,
        "offset": 0
      },
      "tableData": [
        {
          "orgId": 1,
          "orgName": "Aykut Karaalioglu",
          "country": "US",
          "currency": "USD",
          "appId": 368677368,
          "appName": "Uber - Request a ride",
          "campaignId": 123456,
          "campaignName": "Brand Campaign",
          "spend": 30.88,
          "impressions": 2500,
          "taps": 31,
          "installs": 1,
          "redownloads": 0,
          "newDownloads": 1,
          "startTime": "2021-10-30T08:00:00",
          "adChannelType": "SEARCH",
          "billingEvent": "TAPS",
          "cpa": 30.88,
          "cpt": 1.0,
          "cpm": 1.22,
          "ttr": 0.12,
          "cr": 3.23,
          "goalRevenue": 0.0,
          "goalRevenue1": 0.0,
          "goalRevenue3": 0.0,
          "goalRevenue7": 0.0,
          "goalRevenue14": 0.0,
          "goalRevenue30": 0.0,
          "goalCount1": 0,
          "goalCount3": 0,
          "goalCount7": 0,
          "goalCount14": 0,
          "goalCount30": 0,
          "numberOfInstall": 0,
          "numberOfGoal": 0,
          "goalRoas": 0.0,
          "goalRoas1": 0.0,
          "goalRoas3": 0.0,
          "goalRoas7": 0.0,
          "goalRoas14": 0.0,
          "goalRoas30": 0.0,
          "cpi": 0.0,
          "attrInstallRate": 0.0,
          "costPerGoal": 0.0,
          "goalsRate": 0.0,
          "revenuePerGoal": 0.0,
          "arpu": 0.0,
          "campaignStatus": "ENABLED",
          "displayStatus": "RUNNING",
          "totalBudget": 100000.0,
          "dailyBudget": 100.0,
          "ltv": 127.4,
          "countries": [
            "US"
          ],
          "countryWithStatus": {
            "US": true
          },
          "supplySources": [
            "APPSTORE_SEARCH_RESULTS"
          ],
          "original": {
            "dailyBudget": 100.0,
            "spend": 30.88,
            "cpa": 30.88,
            "cpt": 1.0,
            "goalRevenue": 0.0,
            "goalRevenue1": 0.0,
            "goalRevenue3": 0.0,
            "goalRevenue7": 0.0,
            "goalRevenue14": 0.0,
            "goalRevenue30": 0.0,
            "goalRoas": 0.0,
            "goalRoas1": 0.0,
            "goalRoas3": 0.0,
            "goalRoas7": 0.0,
            "goalRoas14": 0.0,
            "goalRoas30": 0.0,
            "cpi": 0.0,
            "costPerGoal": 0.0,
            "revenuePerGoal": 0.0,
            "arpu": 0.0
          }
        },
        {
          "orgId": 1,
          "orgName": "Aykut Karaalioglu",
          "country": "US",
          "currency": "USD",
          "appId": 389801252,
          "appName": "Instagram",
          "campaignId": 1234567,
          "campaignName": "Competitor Campaign",
          "spend": 0.0,
          "impressions": 0,
          "taps": 0,
          "installs": 0,
          "redownloads": 0,
          "newDownloads": 0,
          "startTime": "2022-10-30T08:00:00",
          "adChannelType": "DISPLAY",
          "billingEvent": "TAPS",
          "cpa": 0.0,
          "cpt": 0.0,
          "cpm": 0.0,
          "ttr": 0.0,
          "cr": 0.0,
          "goalRevenue": 0.0,
          "goalRevenue1": 0.0,
          "goalRevenue3": 0.0,
          "goalRevenue7": 0.0,
          "goalRevenue14": 0.0,
          "goalRevenue30": 0.0,
          "goalCount1": 0,
          "goalCount3": 0,
          "goalCount7": 0,
          "goalCount14": 0,
          "goalCount30": 0,
          "numberOfInstall": 0,
          "numberOfGoal": 0,
          "goalRoas": 0.0,
          "goalRoas1": 0.0,
          "goalRoas3": 0.0,
          "goalRoas7": 0.0,
          "goalRoas14": 0.0,
          "goalRoas30": 0.0,
          "cpi": 0.0,
          "attrInstallRate": 0.0,
          "costPerGoal": 0.0,
          "goalsRate": 0.0,
          "revenuePerGoal": 0.0,
          "arpu": 0.0,
          "campaignStatus": "PAUSED",
          "displayStatus": "PAUSED",
          "servingStatusReasons": "PAUSED_BY_USER",
          "totalBudget": 100000.0,
          "dailyBudget": 100.0,
          "ltv": 127.4,
          "countries": [
            "US"
          ],
          "countryWithStatus": {
            "US": true
          },
          "supplySources": [
            "APPSTORE_SEARCH_TAB"
          ],
          "original": {
            "dailyBudget": 100.0,
            "spend": 0.0,
            "cpa": 0.0,
            "cpt": 0.0,
            "goalRevenue": 0.0,
            "goalRevenue1": 0.0,
            "goalRevenue3": 0.0,
            "goalRevenue7": 0.0,
            "goalRevenue14": 0.0,
            "goalRevenue30": 0.0,
            "goalRoas": 0.0,
            "goalRoas1": 0.0,
            "goalRoas3": 0.0,
            "goalRoas7": 0.0,
            "goalRoas14": 0.0,
            "goalRoas30": 0.0,
            "cpi": 0.0,
            "costPerGoal": 0.0,
            "revenuePerGoal": 0.0,
            "arpu": 0.0
          }
        }
      ]
    }
  ]
}