Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
The purpose of this API is to provide risk ratings and reputational data for Connected TV applications. The response is a JSON formatted object containing a list of CTV app information partitioned by region and device. Any fields included in the response, but not documented herein are subject to change without notice.
Base URLs:
Email: Pixalate, Inc. Web: Pixalate, Inc.
Code samples
# You can also use wget
curl -X GET https://api.pixalate.com/api/v2/mrt/ctv \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /mrt/ctv
The purpose of this API is to provide metadata information for the connected TV applications in general. The response is a JSON formatted object containing the current user's quota state and the date the Connected TV applications database was last updated.
Name | In | Type | Required | Description |
---|---|---|---|---|
pretty | query | boolean | false | If true, return pretty JSON. Default is false. |
Example responses
200 Response
{
"database": {
"lastUpdated": "2022-04-30"
},
"quota": {
"available": 480,
"used": 520,
"expiry": "2022-05-01T12:45:23.234Z",
"limit": 1000,
"interval": 1000,
"timeUnit": "month"
}
}
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | Metadata |
400 | Bad Request | Bad Request - Invalid parameters in request. | None |
401 | Unauthorized | Unauthorized - Invalid API Key. | None |
403 | Forbidden | Forbidden - Quota has been exhausted, Subscription expired or needs upgrade. | None |
5XX | Unknown | Server Error - The API experienced an internal error. Contact support. | None |
Code samples
# You can also use wget
curl -X POST https://api.pixalate.com/api/v2/mrt/ctv \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
POST /mrt/ctv
The purpose of this API is to provide risk ratings and reputational data across thousands of CTV applications in a batch mode.
Posted data should be in CSV format where each line consists of a single field which is the App ID. The request MIME type should be text/plain
.
Once request data is submitted, a URL to a newline-delimited JSON formatted report is provided as a response. While the resulting resource is public, the URL contains a randomly generated identifier that ensures the data is relatively secure unless the URL itself is made public by the user.
The report will not be available for download at the returned URL location until processing has been completed. While creating the report, a request to retrieve the report using the response URL will return an HTTP status code Not Found (404). Once asynchronous processing has completed, the report is returned as normal. If asynchronous processing of a report fails because of an invalid query the request to retrieve the report using the response URL will return an HTTP status code Bad Request (400). Or, if the submitted file contained more than 5000 App IDs, then an HTTP status code Request Entity Too Large (413) is returned. Or, if the account's quota limit has been exceeded, then an HTTP status code Forbidden (403) is returned. For all other errors, a request to retrieve the report using the response URL will return an HTTP status code Internal Service Error (500). Client systems should poll the response URL until the report is available, or a non 404 HTTP status code is returned.
This operation requires an Enterprise subscription. Please reach out to us at support@pixalate.com for details on how to enable this for your account.
Name | In | Type | Required | Description |
---|---|---|---|---|
pretty | query | boolean | false | If true, return pretty JSON. Default is false. |
Example responses
200 Response
"https://dashboardcdn.pixalate.com/www/exported/Client/2022-04-12/qprdbkr9dfeoostip8ltqgmecd/apps_2022-04-12"
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | string |
400 | Bad Request | Bad Request - Invalid parameters in request. | None |
401 | Unauthorized | Unauthorized - Invalid API Key. | None |
403 | Forbidden | Forbidden - Quota has been exhausted, Subscription expired or needs upgrade. | None |
5XX | Unknown | Server Error - The API experienced an internal error. Contact support. | None |
Code samples
# You can also use wget
curl -X GET https://api.pixalate.com/api/v2/mrt/ctv/{appId} \
-H 'Accept: application/json' \
-H 'x-api-key: API_KEY'
GET /mrt/ctv/{appId}
The purpose of this API is to provide risk ratings and reputational data for CTV applications. The response is a JSON formatted object containing a list of app information partitioned by region and device.
Name | In | Type | Required | Description |
---|---|---|---|---|
appId | path | string | true | The app's unique identifier. |
widget | query | array[string] | false | Filter by comma-separated list of widgets to return. All widgets are returned by default. |
region | query | Region | false | Filter by region. All regions are returned by default. GLOBAL indicates aggregated traffic from all regions. |
device | query | Device | false | Filter by device. All devices are returned by default. |
includeSpoofing | query | boolean | false | A true indicates that spoofing information should be included. |
pretty | query | boolean | false | If true, return pretty JSON. Default is false. |
Parameter | Value |
---|---|
widget | appOverview |
widget | riskOverview |
widget | pixalateAdvisories |
widget | appSpoofing |
widget | appDetails |
widget | developerOverview |
widget | channels |
widget | brandSafety |
widget | trafficOverlap |
widget | authorizedSellers |
widget | invalidTraffic |
widget | inventory |
widget | availableCountries |
widget | rankings |
widget | rankingsByCountry |
widget | coppa |
region | GLOBAL |
region | NA |
region | EMEA |
region | LATAM |
region | APAC |
device | roku |
device | firetv |
Example responses
200 Response
{
"status": "OK",
"numFound": 1,
"docs": [
{
"appId": "B07SM3YB4H",
"region": "GLOBAL",
"device": "roku",
"includeSpoofing": false,
"appOverview": {
"channelId": null,
"appTitle": "Example App",
"description": "An example app.",
"categories": [
"Movies & TV"
],
"screenshotUrls": [
"https://example.com/image/screenshot-1.png",
"https://example.com/image/screenshot-2.png"
]
},
"riskOverview": {
"risk": [
{
"region": "GLOBAL",
"pixalateRisk": "medium",
"pixalateRiskReasons": [
"Significantly Elevated IVT Percentage",
"Ad Traffic Shows Some Suspicious Characteristics"
]
}
],
"ivt": 10.12,
"ivtRisk": "medium",
"ssaiRate": 0.55,
"transaparentSsaiRate": 0.01,
"descriptionBrandSafetyRisk": "low",
"contentBrandSafetyRisk": "low"
},
"pixalateAdvisories": {
"hasAppAdsTxt": false,
"delistedApp": true,
"delistedDate": "2021-10-30",
"privateDomain": false,
"hasTermsAndConditions": true,
"hasPrivacyPolicy": true,
"appAgeRisk": "medium"
},
"appSpoofing": {
"victimOfSpoofing": true,
"spoofingRisk": "medium",
"byFraudType": [
{
"fraudType": "userAgentObfuscation",
"apps": [
{
"detectedBundleId": null,
"declaredBundleId": "B00KDSGIPK",
"sovRisk": "medium"
}
]
}
]
},
"appDetails": {
"appStoreUrl": "https://appstore.example.org/dp/B00KDXXX2PK",
"availableCountries": [
"US",
"ES"
],
"availableLanguages": [
"en",
"es"
],
"keywords": [
"space",
"news"
],
"rating": 84,
"starRatingCount": 517628,
"parentalHint": "Guidance Suggested",
"revenueSources": null,
"cvaaCompliant": true,
"appAgeRisk": "low",
"appAge": 91,
"publishedDate": null,
"appPrivacyPolicy": true,
"appPrivacyPolicyUrl": "http://example.org/privacy-policy/",
"delistedApp": false,
"delistedDate": null,
"bundleIds": [
{
"bundleId": "B00KDXXX2PK",
"sovRatio": 77.43
}
]
},
"developerOverview": {
"developerName": "Acme Apps",
"developerWebsite": "https://www.example.org",
"privateDomain": false,
"hasTermsAndConditions": true,
"hasPrivacyPolicy": true,
"totalApps": 3
},
"channels": [
"Vevo Pop",
"World Tour Poker"
],
"brandSafety": {
"descriptionBrandSafety": {
"advisoriesRisk": "medium",
"adultContentRisk": "high",
"drugContentRisk": "medium",
"alcoholContentRisk": "medium",
"hateSpeechRisk": "low",
"offensiveContentRisk": "medium"
},
"contentBrandSafety": {
"adultRisk": "low",
"violenceRisk": "medium",
"imageData": [
{
"url": "https://example.org/images/kxipXQ3huWkwsqokX66euP.png",
"text": "Weather Radar",
"violenceRisk": "low",
"spoofRisk": "low",
"medicalRisk": "low",
"adultRisk": "low"
}
]
}
},
"trafficOverlap": {
"trafficOverview": {
"spoofingRisk": "low",
"advertisingIvtRisk": "low",
"trustedSeller": "Google AdExchange",
"ivtFreeUsersRate": 96.03,
"estimatedDailyActiveUsers": 4929,
"estimatedMonthlyActiveUsers": 46502,
"adSpend": 69000,
"adDensity": 18377044,
"adDensityRisk": "low",
"adDensityConfidenceScore": 0.95
},
"trafficOverlap": {
"byOverallTraffic": [
{
"appName": "ExampleOrg's - Free TV Drama & Movies",
"developerName": "Example Org",
"impressionOverlap": 0.2,
"deviceOverlap": 0.21,
"risk": "medium"
}
],
"byIvt": [
{
"appName": "ExampleOrg's - Free TV Drama & Movies",
"developerName": "Example Org",
"impressionOverlap": 0.14,
"deviceOverlap": 0.05,
"risk": "low"
}
]
}
},
"authorizedSellers": [
{
"exchange": "Acme Exchange",
"paymentType": "Direct",
"inventory": 30039,
"inventoryRatio": 12.87,
"ivt": 0.9,
"videoInventoryRatio": 1.4,
"displayInventoryRatio": 1.4,
"spoofingRate": 2.6,
"ssaiRate": 0.06,
"transparentSsaiRate": 0.06
}
],
"invalidTraffic": {
"ivt": 7.76,
"givt": 0.29,
"sivt": 7.47,
"givtTypes": [
{
"fraudType": "Data Center",
"givt": 0.29
}
],
"sivtTypes": [
{
"fraudType": "AppSpoofing",
"sivt": 2.78
}
]
},
"inventory": {
"byRegion": [
{
"region": "GLOBAL",
"inventory": null,
"inventoryRatio": 6.39,
"ivt": 2.93,
"ssaiRate": 0.02,
"TransparentssaiRate": 0.01
}
],
"byAdsize": [
{
"adSize": "320x50",
"inventory": null,
"inventoryRatio": 3.47,
"ivt": 12.25,
"ssaiRate": 0.03,
"TransparentssaiRate": 0.02
}
],
"byDma": [
{
"dmaName": "NEW YORK",
"inventory": null,
"inventoryRatio": 5.35,
"ivt": 4.76,
"ssaiRate": 0,
"TransparentssaiRate": 0
}
]
},
"availableCountries": [
"Germany"
],
"rankings": {
"regionRank": 6473,
"category": [
{
"category": "Movies & TV",
"rank": "11"
}
],
"final": {
"grade": "C",
"score": "38"
},
"ivt": {
"grade": "B",
"score": "62"
},
"popularity": {
"grade": "C",
"score": "44"
},
"userEngagement": {
"grade": "A",
"score": "99"
},
"adDensity": {
"grade": "A",
"score": "99"
},
"globalPopularityRank": "234"
},
"rankingsByCountry": {
"reach": [
{
"countryCode": "ZA",
"countryName": "South Africa",
"mauRank": "637",
"mauRankChange": "-372"
}
],
"marketShare": [
{
"countryCode": "GE",
"countryName": "Georgia",
"impressionRank": "359",
"impsRankChange": "N/A"
}
]
},
"coppa": {
"coppaAudience": "General Audience",
"coppaAudienceReason": [
"This app is likely directed to children (including mixed audience) based on manual review"
],
"isReviewedManually": true,
"parentalHint": "Guidance Suggested",
"Categories": [
"Movies & TV"
],
"coppaViolationRisk": "low",
"coppaViolationRiskReason": [
"The COPPA risk is low because the app is likely not directed to children under 13."
],
"privacyPolicyDetected": true,
"transmitsResidentialIP": true,
"passesLocation": true
}
}
]
}
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | OK | AppList |
400 | Bad Request | Bad Request - Invalid parameters in request. | None |
401 | Unauthorized | Unauthorized - Invalid API Key. | None |
403 | Forbidden | Forbidden - Quota has been exhausted, Subscription expired or needs upgrade. | None |
5XX | Unknown | Server Error - The API experienced an internal error. Contact support. | None |
{
"database": {
"lastUpdated": "2022-04-30"
},
"quota": {
"available": 480,
"used": 520,
"expiry": "2022-05-01T12:45:23.234Z",
"limit": 1000,
"interval": 1000,
"timeUnit": "month"
}
}
CTV metadata information.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
database | object | false | none | The CTV Apps database state information. |
» lastUpdated | string(date) | false | none | The date when the CTV Apps database was last updated. The date format is YYYY-MM-DD. |
quota | object | false | none | Quota state information. |
» available | integer | false | none | The amount of quota available for use. |
» used | integer | false | none | The amount of quota used. |
» expiry | string(date) | false | none | The datetime when the quota will be refreshed back to the limit. The datetime format is YYYY-MM-DDTHH:MM:SS.SSSZ. |
» limit | integer | false | none | The amount of quota to be made available for use when the quota is refreshed. |
» interval | integer | false | none | The number of time units used in calculating the quota refresh datetime. |
» timeUnit | string | false | none | The time unit used in calculating the quota refresh datetime. |
Property | Value |
---|---|
timeUnit | minute |
timeUnit | hour |
timeUnit | day |
timeUnit | week |
timeUnit | month |
{
"status": "OK",
"numFound": 1,
"docs": [
{
"appId": "B07SM3YB4H",
"region": "GLOBAL",
"device": "roku",
"includeSpoofing": false,
"appOverview": {
"channelId": null,
"appTitle": "Example App",
"description": "An example app.",
"categories": [
"Movies & TV"
],
"screenshotUrls": [
"https://example.com/image/screenshot-1.png",
"https://example.com/image/screenshot-2.png"
]
},
"riskOverview": {
"risk": [
{
"region": "GLOBAL",
"pixalateRisk": "medium",
"pixalateRiskReasons": [
"Significantly Elevated IVT Percentage",
"Ad Traffic Shows Some Suspicious Characteristics"
]
}
],
"ivt": 10.12,
"ivtRisk": "medium",
"ssaiRate": 0.55,
"transaparentSsaiRate": 0.01,
"descriptionBrandSafetyRisk": "low",
"contentBrandSafetyRisk": "low"
},
"pixalateAdvisories": {
"hasAppAdsTxt": false,
"delistedApp": true,
"delistedDate": "2021-10-30",
"privateDomain": false,
"hasTermsAndConditions": true,
"hasPrivacyPolicy": true,
"appAgeRisk": "medium"
},
"appSpoofing": {
"victimOfSpoofing": true,
"spoofingRisk": "medium",
"byFraudType": [
{
"fraudType": "userAgentObfuscation",
"apps": [
{
"detectedBundleId": null,
"declaredBundleId": "B00KDSGIPK",
"sovRisk": "medium"
}
]
}
]
},
"appDetails": {
"appStoreUrl": "https://appstore.example.org/dp/B00KDXXX2PK",
"availableCountries": [
"US",
"ES"
],
"availableLanguages": [
"en",
"es"
],
"keywords": [
"space",
"news"
],
"rating": 84,
"starRatingCount": 517628,
"parentalHint": "Guidance Suggested",
"revenueSources": null,
"cvaaCompliant": true,
"appAgeRisk": "low",
"appAge": 91,
"publishedDate": null,
"appPrivacyPolicy": true,
"appPrivacyPolicyUrl": "http://example.org/privacy-policy/",
"delistedApp": false,
"delistedDate": null,
"bundleIds": [
{
"bundleId": "B00KDXXX2PK",
"sovRatio": 77.43
}
]
},
"developerOverview": {
"developerName": "Acme Apps",
"developerWebsite": "https://www.example.org",
"privateDomain": false,
"hasTermsAndConditions": true,
"hasPrivacyPolicy": true,
"totalApps": 3
},
"channels": [
"Vevo Pop",
"World Tour Poker"
],
"brandSafety": {
"descriptionBrandSafety": {
"advisoriesRisk": "medium",
"adultContentRisk": "high",
"drugContentRisk": "medium",
"alcoholContentRisk": "medium",
"hateSpeechRisk": "low",
"offensiveContentRisk": "medium"
},
"contentBrandSafety": {
"adultRisk": "low",
"violenceRisk": "medium",
"imageData": [
{
"url": "https://example.org/images/kxipXQ3huWkwsqokX66euP.png",
"text": "Weather Radar",
"violenceRisk": "low",
"spoofRisk": "low",
"medicalRisk": "low",
"adultRisk": "low"
}
]
}
},
"trafficOverlap": {
"trafficOverview": {
"spoofingRisk": "low",
"advertisingIvtRisk": "low",
"trustedSeller": "Google AdExchange",
"ivtFreeUsersRate": 96.03,
"estimatedDailyActiveUsers": 4929,
"estimatedMonthlyActiveUsers": 46502,
"adSpend": 69000,
"adDensity": 18377044,
"adDensityRisk": "low",
"adDensityConfidenceScore": 0.95
},
"trafficOverlap": {
"byOverallTraffic": [
{
"appName": "ExampleOrg's - Free TV Drama & Movies",
"developerName": "Example Org",
"impressionOverlap": 0.2,
"deviceOverlap": 0.21,
"risk": "medium"
}
],
"byIvt": [
{
"appName": "ExampleOrg's - Free TV Drama & Movies",
"developerName": "Example Org",
"impressionOverlap": 0.14,
"deviceOverlap": 0.05,
"risk": "low"
}
]
}
},
"authorizedSellers": [
{
"exchange": "Acme Exchange",
"paymentType": "Direct",
"inventory": 30039,
"inventoryRatio": 12.87,
"ivt": 0.9,
"videoInventoryRatio": 1.4,
"displayInventoryRatio": 1.4,
"spoofingRate": 2.6,
"ssaiRate": 0.06,
"transparentSsaiRate": 0.06
}
],
"invalidTraffic": {
"ivt": 7.76,
"givt": 0.29,
"sivt": 7.47,
"givtTypes": [
{
"fraudType": "Data Center",
"givt": 0.29
}
],
"sivtTypes": [
{
"fraudType": "AppSpoofing",
"sivt": 2.78
}
]
},
"inventory": {
"byRegion": [
{
"region": "GLOBAL",
"inventory": null,
"inventoryRatio": 6.39,
"ivt": 2.93,
"ssaiRate": 0.02,
"TransparentssaiRate": 0.01
}
],
"byAdsize": [
{
"adSize": "320x50",
"inventory": null,
"inventoryRatio": 3.47,
"ivt": 12.25,
"ssaiRate": 0.03,
"TransparentssaiRate": 0.02
}
],
"byDma": [
{
"dmaName": "NEW YORK",
"inventory": null,
"inventoryRatio": 5.35,
"ivt": 4.76,
"ssaiRate": 0,
"TransparentssaiRate": 0
}
]
},
"availableCountries": [
"Germany"
],
"rankings": {
"regionRank": 6473,
"category": [
{
"category": "Movies & TV",
"rank": "11"
}
],
"final": {
"grade": "C",
"score": "38"
},
"ivt": {
"grade": "B",
"score": "62"
},
"popularity": {
"grade": "C",
"score": "44"
},
"userEngagement": {
"grade": "A",
"score": "99"
},
"adDensity": {
"grade": "A",
"score": "99"
},
"globalPopularityRank": "234"
},
"rankingsByCountry": {
"reach": [
{
"countryCode": "ZA",
"countryName": "South Africa",
"mauRank": "637",
"mauRankChange": "-372"
}
],
"marketShare": [
{
"countryCode": "GE",
"countryName": "Georgia",
"impressionRank": "359",
"impsRankChange": "N/A"
}
]
},
"coppa": {
"coppaAudience": "General Audience",
"coppaAudienceReason": [
"This app is likely directed to children (including mixed audience) based on manual review"
],
"isReviewedManually": true,
"parentalHint": "Guidance Suggested",
"Categories": [
"Movies & TV"
],
"coppaViolationRisk": "low",
"coppaViolationRiskReason": [
"The COPPA risk is low because the app is likely not directed to children under 13."
],
"privacyPolicyDetected": true,
"transmitsResidentialIP": true,
"passesLocation": true
}
}
]
}
A list of apps.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
status | Status | false | none | The returned status. |
numFound | integer | false | none | The total number of matching apps. |
docs | [App] | false | none | A list of apps. |
{
"appId": "B07SM3YB4H",
"region": "GLOBAL",
"device": "roku",
"includeSpoofing": false,
"appOverview": {
"channelId": null,
"appTitle": "Example App",
"description": "An example app.",
"categories": [
"Movies & TV"
],
"screenshotUrls": [
"https://example.com/image/screenshot-1.png",
"https://example.com/image/screenshot-2.png"
]
},
"riskOverview": {
"risk": [
{
"region": "GLOBAL",
"pixalateRisk": "medium",
"pixalateRiskReasons": [
"Significantly Elevated IVT Percentage",
"Ad Traffic Shows Some Suspicious Characteristics"
]
}
],
"ivt": 10.12,
"ivtRisk": "medium",
"ssaiRate": 0.55,
"transaparentSsaiRate": 0.01,
"descriptionBrandSafetyRisk": "low",
"contentBrandSafetyRisk": "low"
},
"pixalateAdvisories": {
"hasAppAdsTxt": false,
"delistedApp": true,
"delistedDate": "2021-10-30",
"privateDomain": false,
"hasTermsAndConditions": true,
"hasPrivacyPolicy": true,
"appAgeRisk": "medium"
},
"appSpoofing": {
"victimOfSpoofing": true,
"spoofingRisk": "medium",
"byFraudType": [
{
"fraudType": "userAgentObfuscation",
"apps": [
{
"detectedBundleId": null,
"declaredBundleId": "B00KDSGIPK",
"sovRisk": "medium"
}
]
}
]
},
"appDetails": {
"appStoreUrl": "https://appstore.example.org/dp/B00KDXXX2PK",
"availableCountries": [
"US",
"ES"
],
"availableLanguages": [
"en",
"es"
],
"keywords": [
"space",
"news"
],
"rating": 84,
"starRatingCount": 517628,
"parentalHint": "Guidance Suggested",
"revenueSources": null,
"cvaaCompliant": true,
"appAgeRisk": "low",
"appAge": 91,
"publishedDate": null,
"appPrivacyPolicy": true,
"appPrivacyPolicyUrl": "http://example.org/privacy-policy/",
"delistedApp": false,
"delistedDate": null,
"bundleIds": [
{
"bundleId": "B00KDXXX2PK",
"sovRatio": 77.43
}
]
},
"developerOverview": {
"developerName": "Acme Apps",
"developerWebsite": "https://www.example.org",
"privateDomain": false,
"hasTermsAndConditions": true,
"hasPrivacyPolicy": true,
"totalApps": 3
},
"channels": [
"Vevo Pop",
"World Tour Poker"
],
"brandSafety": {
"descriptionBrandSafety": {
"advisoriesRisk": "medium",
"adultContentRisk": "high",
"drugContentRisk": "medium",
"alcoholContentRisk": "medium",
"hateSpeechRisk": "low",
"offensiveContentRisk": "medium"
},
"contentBrandSafety": {
"adultRisk": "low",
"violenceRisk": "medium",
"imageData": [
{
"url": "https://example.org/images/kxipXQ3huWkwsqokX66euP.png",
"text": "Weather Radar",
"violenceRisk": "low",
"spoofRisk": "low",
"medicalRisk": "low",
"adultRisk": "low"
}
]
}
},
"trafficOverlap": {
"trafficOverview": {
"spoofingRisk": "low",
"advertisingIvtRisk": "low",
"trustedSeller": "Google AdExchange",
"ivtFreeUsersRate": 96.03,
"estimatedDailyActiveUsers": 4929,
"estimatedMonthlyActiveUsers": 46502,
"adSpend": 69000,
"adDensity": 18377044,
"adDensityRisk": "low",
"adDensityConfidenceScore": 0.95
},
"trafficOverlap": {
"byOverallTraffic": [
{
"appName": "ExampleOrg's - Free TV Drama & Movies",
"developerName": "Example Org",
"impressionOverlap": 0.2,
"deviceOverlap": 0.21,
"risk": "medium"
}
],
"byIvt": [
{
"appName": "ExampleOrg's - Free TV Drama & Movies",
"developerName": "Example Org",
"impressionOverlap": 0.14,
"deviceOverlap": 0.05,
"risk": "low"
}
]
}
},
"authorizedSellers": [
{
"exchange": "Acme Exchange",
"paymentType": "Direct",
"inventory": 30039,
"inventoryRatio": 12.87,
"ivt": 0.9,
"videoInventoryRatio": 1.4,
"displayInventoryRatio": 1.4,
"spoofingRate": 2.6,
"ssaiRate": 0.06,
"transparentSsaiRate": 0.06
}
],
"invalidTraffic": {
"ivt": 7.76,
"givt": 0.29,
"sivt": 7.47,
"givtTypes": [
{
"fraudType": "Data Center",
"givt": 0.29
}
],
"sivtTypes": [
{
"fraudType": "AppSpoofing",
"sivt": 2.78
}
]
},
"inventory": {
"byRegion": [
{
"region": "GLOBAL",
"inventory": null,
"inventoryRatio": 6.39,
"ivt": 2.93,
"ssaiRate": 0.02,
"TransparentssaiRate": 0.01
}
],
"byAdsize": [
{
"adSize": "320x50",
"inventory": null,
"inventoryRatio": 3.47,
"ivt": 12.25,
"ssaiRate": 0.03,
"TransparentssaiRate": 0.02
}
],
"byDma": [
{
"dmaName": "NEW YORK",
"inventory": null,
"inventoryRatio": 5.35,
"ivt": 4.76,
"ssaiRate": 0,
"TransparentssaiRate": 0
}
]
},
"availableCountries": [
"Germany"
],
"rankings": {
"regionRank": 6473,
"category": [
{
"category": "Movies & TV",
"rank": "11"
}
],
"final": {
"grade": "C",
"score": "38"
},
"ivt": {
"grade": "B",
"score": "62"
},
"popularity": {
"grade": "C",
"score": "44"
},
"userEngagement": {
"grade": "A",
"score": "99"
},
"adDensity": {
"grade": "A",
"score": "99"
},
"globalPopularityRank": "234"
},
"rankingsByCountry": {
"reach": [
{
"countryCode": "ZA",
"countryName": "South Africa",
"mauRank": "637",
"mauRankChange": "-372"
}
],
"marketShare": [
{
"countryCode": "GE",
"countryName": "Georgia",
"impressionRank": "359",
"impsRankChange": "N/A"
}
]
},
"coppa": {
"coppaAudience": "General Audience",
"coppaAudienceReason": [
"This app is likely directed to children (including mixed audience) based on manual review"
],
"isReviewedManually": true,
"parentalHint": "Guidance Suggested",
"Categories": [
"Movies & TV"
],
"coppaViolationRisk": "low",
"coppaViolationRiskReason": [
"The COPPA risk is low because the app is likely not directed to children under 13."
],
"privacyPolicyDetected": true,
"transmitsResidentialIP": true,
"passesLocation": true
}
}
An app.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
appId | string | false | none | The app's unique identifier. A package name on Google Play or a track id on Apple app Store. |
region | Region | false | none | A geographic region. GLOBAL indicates an aggregate of all regions. |
device | Device | false | none | The device. |
includeSpoofing | boolean | false | none | A true indicates that spoofing information is included. |
appOverview | AppOverview | false | none | General information about the app. |
riskOverview | RiskOverview | false | none | An overview of risk for the app. |
pixalateAdvisories | PixalateAdvisories | false | none | Pixalate app advisories. |
appSpoofing | AppSpoofing | false | none | Spoofing information about the app. |
appDetails | AppDetails | false | none | Detailed information about the app. |
developerOverview | DeveloperOverview | false | none | An overview of app's developer information. |
channels | Channels | false | none | Channels available for apps considered as aggregators or providers of 'skinny bundles' |
brandSafety | BrandSafety | false | none | Brand safety information. |
trafficOverlap | TrafficOverlap | false | none | Overlap traffic illustrates the most common user journeys from app to app. |
authorizedSellers | AuthorizedSellers | false | none | The contribution of various sell side platforms to programmatic ad impressions sold on the app. |
invalidTraffic | InvalidTraffic | false | none | The percentage of invalid traffic associated with each Pixalate's taxonomy of GIVT and SIVT invalid traffic types. |
inventory | Inventory | false | none | The estimated volume of programmatic ad impressions broken down by device, region, country, DMA. |
availableCountries | AvailableCountries | false | none | A list of available countries. |
rankings | Rankings | false | none | Ranking information about the app. |
rankingsByCountry | RankingsByCountry | false | none | The reach and market share of the app broken down by country. |
coppa | Coppa | false | none | Children's Online Privacy Protection Act information. |
{
"channelId": null,
"appTitle": "Example App",
"description": "An example app.",
"categories": [
"Movies & TV"
],
"screenshotUrls": [
"https://example.com/image/screenshot-1.png",
"https://example.com/image/screenshot-2.png"
]
}
General information about the app.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
channelId | string | false | none | The channel identifier. |
appTitle | string | false | none | The app title. |
description | string | false | none | App description. |
categories | [string] | false | none | The categories of the app. |
screenshotUrls | [string] | false | none | A list of app screenshot URLs. |
{
"risk": [
{
"region": "GLOBAL",
"pixalateRisk": "medium",
"pixalateRiskReasons": [
"Significantly Elevated IVT Percentage",
"Ad Traffic Shows Some Suspicious Characteristics"
]
}
],
"ivt": 10.12,
"ivtRisk": "medium",
"ssaiRate": 0.55,
"transaparentSsaiRate": 0.01,
"descriptionBrandSafetyRisk": "low",
"contentBrandSafetyRisk": "low"
}
An overview of risk for the app.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
risk | [object] | false | none | Pixalate's unique overall advertising risk assessment based on blended risk factors including brand safety, invalid traffic and inventory for all regions and devices. It includes risk reasons. And list of possible risk reasons. |
» region | Region | false | none | A geographic region. GLOBAL indicates an aggregate of all regions. |
» pixalateRisk | string | false | none | Pixalate's unique overall risk assessment for the app. |
» pixalateRiskReasons | RiskReasons | false | none | A list of reasons that the app is at risk. |
ivt | number | false | none | Percentage of invalid traffic associated with advertising transactions for the app. |
ivtRisk | string | false | none | The invalid traffic risk. |
ssaiRate | number | false | none | The percentage of traffic observed to utilize server-side-ad-insertion (SSAI) integrations for ad/ad content delivery to the end user. |
transaparentSsaiRate | number | false | none | The SSAI tracked impressions that come from proxies passing X-Device-User-Agent headers for more transparency. |
descriptionBrandSafetyRisk | string | false | none | The overall description risk to advertise brand safety from the app. |
contentBrandSafetyRisk | string | false | none | The overall content risk to advertise brand safety from the app. |
Property | Value |
---|---|
pixalateRisk | low |
pixalateRisk | medium |
pixalateRisk | high |
ivtRisk | low |
ivtRisk | medium |
ivtRisk | high |
descriptionBrandSafetyRisk | low |
descriptionBrandSafetyRisk | medium |
descriptionBrandSafetyRisk | high |
contentBrandSafetyRisk | low |
contentBrandSafetyRisk | medium |
contentBrandSafetyRisk | high |
{
"hasAppAdsTxt": false,
"delistedApp": true,
"delistedDate": "2021-10-30",
"privateDomain": false,
"hasTermsAndConditions": true,
"hasPrivacyPolicy": true,
"appAgeRisk": "medium"
}
Pixalate app advisories.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
hasAppAdsTxt | boolean | false | none | A true indicates that AppAds.txt is enabled for the app's domain. |
delistedApp | boolean | false | none | A true indicates that app has been delisted from the app store. |
delistedDate | string(date) | false | none | If app has been delisted from the app store, then this property is the date when delisted. The date format is YYYY-MM-DD. |
privateDomain | boolean | false | none | A true indicates app's domain is privately registered. |
hasTermsAndConditions | boolean | false | none | A true indicates app has terms and conditions. |
hasPrivacyPolicy | boolean | false | none | A true indicates app has privacy policy. |
appAgeRisk | string | false | none | Risk rating based on the amount of time the app has been listed within the app store. Apps which have been listed for an extended period of time may present less risk than those recently published. (low/medium/high) |
Property | Value |
---|---|
appAgeRisk | low |
appAgeRisk | medium |
appAgeRisk | high |
{
"victimOfSpoofing": true,
"spoofingRisk": "medium",
"byFraudType": [
{
"fraudType": "userAgentObfuscation",
"apps": [
{
"detectedBundleId": null,
"declaredBundleId": "B00KDSGIPK",
"sovRisk": "medium"
}
]
}
]
}
Spoofing information about the app.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
victimOfSpoofing | boolean | false | none | A true indicates that the app is a victim of spoofing. |
spoofingRisk | string | false | none | Risk of spoofing in this app. (low/medium/high) |
byFraudType | [object] | false | none | Spoofing by fraudType denoting the fraud type with set of apps with detectedBundleId, declaredBundleId, sovRisk |
» fraudType | string | false | none | The fraud type |
» apps | [object] | false | none | The apps designated for this fraud type. |
»» detectedBundleId | string | false | none | The bundle identifier detected for the app. |
»» declaredBundleId | string | false | none | The bundle identifier declared for the app. |
»» sovRisk | string | false | none | The SOV risk for the app. (low/medium/high) |
Property | Value |
---|---|
spoofingRisk | low |
spoofingRisk | medium |
spoofingRisk | high |
sovRisk | low |
sovRisk | medium |
sovRisk | high |
{
"appStoreUrl": "https://appstore.example.org/dp/B00KDXXX2PK",
"availableCountries": [
"US",
"ES"
],
"availableLanguages": [
"en",
"es"
],
"keywords": [
"space",
"news"
],
"rating": 84,
"starRatingCount": 517628,
"parentalHint": "Guidance Suggested",
"revenueSources": null,
"cvaaCompliant": true,
"appAgeRisk": "low",
"appAge": 91,
"publishedDate": null,
"appPrivacyPolicy": true,
"appPrivacyPolicyUrl": "http://example.org/privacy-policy/",
"delistedApp": false,
"delistedDate": null,
"bundleIds": [
{
"bundleId": "B00KDXXX2PK",
"sovRatio": 77.43
}
]
}
Detailed information about the app.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
appStoreUrl | string | false | none | The app page on App Store. |
availableCountries | [string] | false | none | The countries in which the app is available. |
availableLanguages | [string] | false | none | The languages in which the app is available. |
keywords | [string] | false | none | Search terms and keywords typically associated to the app. |
rating | number | false | none | The app's average user-rating within the app store (based on a 5-star scale). |
starRatingCount | integer | false | none | The number of ratings provided within the app store. |
parentalHint | string | false | none | Indicates parental sensitivity considerations for the respective app content. |
revenueSources | [string] | false | none | The primary sources of revenue for the app. |
cvaaCompliant | boolean | false | none | A true indicates that the app is in compliance with the FCC's Communications and Video Accessibility Act (CVAA) Standards. |
appAgeRisk | string | false | none | Risk rating based on the amount of time the app has been listed within the app store.(low/medium/high). |
appAge | number | false | none | The amount of time the app has been listed within the app store. |
publishedDate | string | false | none | The date of original publication within the app store. |
appPrivacyPolicy | boolean | false | none | A true indicates that an app-specific privacy policy is maintained. Apps which do not maintain a privacy policy may be of higher risk to advertisers and sellers. |
appPrivacyPolicyUrl | string | false | none | Link to the app-specific privacy policy. |
delistedApp | boolean | false | none | A true indicates that the app was delisted from app store. |
delistedDate | string | false | none | If the app is delisted, then the date app was delisted from app store. The date format is YYYY-MM-DD. |
bundleIds | [object] | false | none | The SOV ratio broken down by bundle identifier. |
» bundleId | string | false | none | The bundle identifier. |
» sovRatio | number | false | none | The SOV ratio. |
Property | Value |
---|---|
appAgeRisk | low |
appAgeRisk | medium |
appAgeRisk | high |
{
"developerName": "Acme Apps",
"developerWebsite": "https://www.example.org",
"privateDomain": false,
"hasTermsAndConditions": true,
"hasPrivacyPolicy": true,
"totalApps": 3
}
An overview of app's developer information.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
developerName | string | false | none | The business name of the app's developer. |
developerWebsite | string | false | none | The website of the app's developer. |
privateDomain | boolean | false | none | A true indicates app's domain is privately registered. |
hasTermsAndConditions | boolean | false | none | A true indicates app has terms and conditions. |
hasPrivacyPolicy | boolean | false | none | A true indicates app has privacy policy. |
totalApps | integer | false | none | Total number of apps published by this developer. |
[
"Vevo Pop",
"World Tour Poker"
]
Channels available for apps considered as aggregators or providers of 'skinny bundles'
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
name | string | false | none | The channel name. |
{
"descriptionBrandSafety": {
"advisoriesRisk": "medium",
"adultContentRisk": "high",
"drugContentRisk": "medium",
"alcoholContentRisk": "medium",
"hateSpeechRisk": "low",
"offensiveContentRisk": "medium"
},
"contentBrandSafety": {
"adultRisk": "low",
"violenceRisk": "medium",
"imageData": [
{
"url": "https://example.org/images/kxipXQ3huWkwsqokX66euP.png",
"text": "Weather Radar",
"violenceRisk": "low",
"spoofRisk": "low",
"medicalRisk": "low",
"adultRisk": "low"
}
]
}
}
Brand safety information.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
descriptionBrandSafety | object | false | none | App descriptive text is processed through natural language algorithms and comprehensive categorical dictionaries to predict the advertiser brand safety risk. |
» advisoriesRisk | string | false | none | The risk to brand safety derived from the app's content advisories. |
» adultContentRisk | string | false | none | The risk to brand safety from adult themed content based on textual analysis of the app and its descriptive content. |
» drugContentRisk | string | false | none | The risk to brand safety from drug themed content based on textual analysis of the app and its descriptive content. |
» alcoholContentRisk | string | false | none | The risk to brand safety from Alcohol themed content based on textual analysis of the app and its descriptive content. |
» hateSpeechRisk | string | false | none | The risk to brand safety from hate speech content based on textual analysis of the app and its descriptive content. |
» offensiveContentRisk | string | false | none | The risk to brand safety from content with offensive language based on textual analysis of the app and its descriptive content . |
contentBrandSafety | object | false | none | In-app visual content is processed through an advanced machine learning algorithm and evaluated for risk to advertiser brand safety. |
» adultRisk | string | false | none | The risk to brand safety from potential adult images and content detected within the app. |
» violenceRisk | string | false | none | The risk to brand safety from potential violent imagery and content detected within the app. |
» imageData | [object] | false | none | The image by image breakdown of brand safety risk factors based on advanced image processing and machine learning. |
»» url | string | false | none | A URL to the image. |
»» text | string | false | none | The extracted text. |
»» violenceRisk | string | false | none | The risk to brand safety from potential violence images and any extracted text. |
»» spoofRisk | string | false | none | The risk to brand safety from potential spoofing based on images and any extracted text. |
»» medicalRisk | string | false | none | The risk to brand safety from potential medical images and any extracted text. |
»» adultRisk | string | false | none | The risk to brand safety from potential adult images images and any extracted text. |
Property | Value |
---|---|
advisoriesRisk | low |
advisoriesRisk | medium |
advisoriesRisk | high |
adultContentRisk | low |
adultContentRisk | medium |
adultContentRisk | high |
drugContentRisk | low |
drugContentRisk | medium |
drugContentRisk | high |
alcoholContentRisk | low |
alcoholContentRisk | medium |
alcoholContentRisk | high |
hateSpeechRisk | low |
hateSpeechRisk | medium |
hateSpeechRisk | high |
offensiveContentRisk | low |
offensiveContentRisk | medium |
offensiveContentRisk | high |
adultRisk | low |
adultRisk | medium |
adultRisk | high |
violenceRisk | low |
violenceRisk | medium |
violenceRisk | high |
violenceRisk | low |
violenceRisk | medium |
violenceRisk | high |
spoofRisk | low |
spoofRisk | medium |
spoofRisk | high |
medicalRisk | low |
medicalRisk | medium |
medicalRisk | high |
adultRisk | low |
adultRisk | medium |
adultRisk | high |
{
"trafficOverview": {
"spoofingRisk": "low",
"advertisingIvtRisk": "low",
"trustedSeller": "Google AdExchange",
"ivtFreeUsersRate": 96.03,
"estimatedDailyActiveUsers": 4929,
"estimatedMonthlyActiveUsers": 46502,
"adSpend": 69000,
"adDensity": 18377044,
"adDensityRisk": "low",
"adDensityConfidenceScore": 0.95
},
"trafficOverlap": {
"byOverallTraffic": [
{
"appName": "ExampleOrg's - Free TV Drama & Movies",
"developerName": "Example Org",
"impressionOverlap": 0.2,
"deviceOverlap": 0.21,
"risk": "medium"
}
],
"byIvt": [
{
"appName": "ExampleOrg's - Free TV Drama & Movies",
"developerName": "Example Org",
"impressionOverlap": 0.14,
"deviceOverlap": 0.05,
"risk": "low"
}
]
}
}
Overlap traffic illustrates the most common user journeys from app to app.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
trafficOverview | object | false | none | Traffic volume and ad inventory estimates for the app along with associated advertising risk factors. |
» spoofingRisk | string | false | none | The risk the app may be misrepresented in advertising transactions and ads delivered to a different app or site. |
» advertisingIvtRisk | string | false | none | The risk of advertising impressions delivered to the app being due to invalid traffic (IVT). IVT risk is derived from standardized definitions of invalid traffic maintained by the Media Rating Council, Inc. (MRC) and the Interactive Advertising Bureau (IAB). |
» trustedSeller | string | false | none | Pixalate crunches the data to rate sellers representing this app on the basis of a number of factors including audience reach and invalid traffic risk. |
» ivtFreeUsersRate | number | false | none | The percentage of the app's individual user-base not responsible for presence of invalid traffic. |
» estimatedDailyActiveUsers | integer | false | none | The estimated Daily Active Users (DAU) for the app. |
» estimatedMonthlyActiveUsers | integer | false | none | The estimated Monthly Active Users (MAU) for the app. |
» adSpend | number | false | none | Total estimated monthly ad spend on this app. |
» adDensity | number | false | none | The estimated number of ads displayed to the average user by this app. |
» adDensityRisk | string | false | none | The ad density risk for the application. |
» adDensityConfidenceScore | number | false | none | Confidence of ad density calculations and risk. |
trafficOverlap | object | false | none | Overlap traffic illustrates the most common user journeys from app to app. It leverages shared users to not only connect apps together but also to create relationships between a series of apps. List of apps provided based on overall traffic(byOveralTraffic) and invalid traffic(byIvt). |
» byOverallTraffic | [object] | false | none | Overall traffic overlap broken down by app. |
»» appName | string | false | none | The app name. |
»» developerName | string | false | none | The developer name. |
»» impressionOverlap | number | false | none | The impression overlap with the app. |
»» deviceOverlap | number | false | none | The device overlap with the app. |
»» risk | string | false | none | The overlap risk |
» byIvt | [object] | false | none | IVT traffic overlap broken down by app. |
»» appName | string | false | none | The app name. |
»» developerName | string | false | none | The developer name. |
»» impressionOverlap | number | false | none | The impression overlap with the app. |
»» deviceOverlap | number | false | none | The device overlap with the app. |
»» risk | string | false | none | The overlap risk |
Property | Value |
---|---|
spoofingRisk | low |
spoofingRisk | medium |
spoofingRisk | high |
advertisingIvtRisk | low |
advertisingIvtRisk | medium |
advertisingIvtRisk | high |
adDensityRisk | low |
adDensityRisk | medium |
adDensityRisk | high |
risk | low |
risk | medium |
risk | high |
risk | low |
risk | medium |
risk | high |
[
{
"exchange": "Acme Exchange",
"paymentType": "Direct",
"inventory": 30039,
"inventoryRatio": 12.87,
"ivt": 0.9,
"videoInventoryRatio": 1.4,
"displayInventoryRatio": 1.4,
"spoofingRate": 2.6,
"ssaiRate": 0.06,
"transparentSsaiRate": 0.06
}
]
The contribution of various sell side platforms to programmatic ad impressions sold on the app.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
exchange | string | false | none | The name of the exchange. |
paymentType | string | false | none | The payment type. |
inventory | integer | false | none | The estimated number of monthly impressions this app makes available programmatically by this seller. |
inventoryRatio | number | false | none | The average inventory ratio for ad impressions on the app by this seller. |
ivt | number | false | none | The average IVT for ad impressions on the app by this seller. |
videoInventoryRatio | number | false | none | The average video inventory ratio for ad impressions on the app by this seller. |
displayInventoryRatio | number | false | none | The average display inventory ratio for ad impressions on the app by this seller. |
spoofingRate | number | false | none | The average spoofing rate for ad impressions on the app by this seller. |
ssaiRate | number | false | none | The percentage of traffic observed to utilize server-side-ad-insertion (SSAI) integrations for ad/ad content delivery to the end user. |
transparentSsaiRate | number | false | none | The SSAI tracked impressions that come from proxies passing X-Device-User-Agent headers for more transparency. |
{
"ivt": 7.76,
"givt": 0.29,
"sivt": 7.47,
"givtTypes": [
{
"fraudType": "Data Center",
"givt": 0.29
}
],
"sivtTypes": [
{
"fraudType": "AppSpoofing",
"sivt": 2.78
}
]
}
The percentage of invalid traffic associated with each Pixalate's taxonomy of GIVT and SIVT invalid traffic types.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
ivt | number | false | none | The total percentage of non-human traffic measured on the app. |
givt | number | false | none | GIVT refers to General Invalid Traffic - Deterministically judged to be non-human traffic; high to very high risk. |
sivt | number | false | none | SIVT refers to Sophisticated Invalid Traffic - Probabilistically judged to be non-human traffic using advanced statistical detection methods; moderate to high risk traffic. |
givtTypes | [object] | false | none | The percentage of invalid traffic associated with each Pixalate's taxonomy of GIVT invalid traffic types. |
» fraudType | string | false | none | The type of SIVT fraud. |
» givt | number | false | none | GIVT refers to General Invalid Traffic - Deterministically judged to be non-human traffic; high to very high risk. |
sivtTypes | [object] | false | none | The percentage of invalid traffic associated with each Pixalate's taxonomy of SIVT invalid traffic types. |
» fraudType | string | false | none | The type of SIVT fraud. |
» sivt | number | false | none | SIVT refers to Sophisticated Invalid Traffic - Probabilistically judged to be non-human traffic using advanced statistical detection methods; moderate to high risk traffic. |
{
"byRegion": [
{
"region": "GLOBAL",
"inventory": null,
"inventoryRatio": 6.39,
"ivt": 2.93,
"ssaiRate": 0.02,
"TransparentssaiRate": 0.01
}
],
"byAdsize": [
{
"adSize": "320x50",
"inventory": null,
"inventoryRatio": 3.47,
"ivt": 12.25,
"ssaiRate": 0.03,
"TransparentssaiRate": 0.02
}
],
"byDma": [
{
"dmaName": "NEW YORK",
"inventory": null,
"inventoryRatio": 5.35,
"ivt": 4.76,
"ssaiRate": 0,
"TransparentssaiRate": 0
}
]
}
The estimated volume of programmatic ad impressions broken down by device, region, country, DMA.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
byRegion | [object] | false | none | The estimated volume of programmatic ad impressions broken down by region. |
» region | string | false | none | The region. |
» inventory | integer | false | none | The estimated volume of programmatic ad impressions by region. |
» inventoryRatio | number | false | none | The estimated percentage of inventory by region. |
» ivt | number | false | none | The total percentage of non-human traffic measured on the app by region. |
» ssaiRate | number | false | none | The percentage of traffic observed to utilize server-side-ad-insertion (SSAI) integrations for ad/ad content delivery to the end user by region. |
» TransparentssaiRate | number | false | none | The SSAI tracked impressions that come from proxies passing X-Device-User-Agent headers for more transparency by region. |
byAdsize | [object] | false | none | The estimated volume of programmatic ad impressions broken down by ad size. |
» adSize | string | false | none | The ad size. |
» inventory | integer | false | none | The estimated volume of programmatic ad impressions by ad size. |
» inventoryRatio | number | false | none | The estimated percentage of inventory by ad size. |
» ivt | number | false | none | The total percentage of non-human traffic measured on the app by ad size. |
» ssaiRate | number | false | none | The percentage of traffic observed to utilize server-side-ad-insertion (SSAI) integrations for ad/ad content delivery to the end user by ad size. |
» TransparentssaiRate | number | false | none | The SSAI tracked impressions that come from proxies passing X-Device-User-Agent headers for more transparency by as size. |
byDma | [object] | false | none | The estimated volume of programmatic ad impressions broken down by DMA. |
» dmaName | string | false | none | The DMA name. |
» inventory | integer | false | none | The estimated volume of programmatic ad impressions by DMA. |
» inventoryRatio | number | false | none | The estimated percentage of inventory by DMA. |
» ivt | number | false | none | The total percentage of non-human traffic measured on the app by DMA. |
» ssaiRate | number | false | none | The percentage of traffic observed to utilize server-side-ad-insertion (SSAI) integrations for ad/ad content delivery to the end user by DMA. |
» TransparentssaiRate | number | false | none | The SSAI tracked impressions that come from proxies passing X-Device-User-Agent headers for more transparency by DMA. |
[
"Germany"
]
A list of available countries.
None
{
"regionRank": 6473,
"category": [
{
"category": "Movies & TV",
"rank": "11"
}
],
"final": {
"grade": "C",
"score": "38"
},
"ivt": {
"grade": "B",
"score": "62"
},
"popularity": {
"grade": "C",
"score": "44"
},
"userEngagement": {
"grade": "A",
"score": "99"
},
"adDensity": {
"grade": "A",
"score": "99"
},
"globalPopularityRank": "234"
}
Ranking information about the app.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
regionRank | integer | false | none | The rank of the app within the requested region. |
category | [object] | false | none | The rankings by various categories for the app. |
» category | string | false | none | A category. |
» rank | string | false | none | The rank within the specific category for the app. |
final | object | false | none | The final grade and score for the app. |
» grade | string | false | none | The final grade for the app. |
» score | string | false | none | The final score for the app. |
ivt | object | false | none | The IVT grade and score for the app. |
» grade | string | false | none | The IVT grade for the app. |
» score | string | false | none | The IVT score for the app. |
popularity | object | false | none | The popularity grade and score for the app. |
» grade | string | false | none | The popularity grade for the app. |
» score | string | false | none | The popularity score for the app. |
userEngagement | object | false | none | The user engagement grade and score for the app. |
» grade | string | false | none | The user engagement grade for the app. |
» score | string | false | none | The user engagement score for the app. |
adDensity | object | false | none | The ad density grade and score for the app. |
» grade | string | false | none | The ad density grade for the app. |
» score | string | false | none | The ad density score for the app. |
globalPopularityRank | string | false | none | The overall global popularity ranking of the app. |
{
"reach": [
{
"countryCode": "ZA",
"countryName": "South Africa",
"mauRank": "637",
"mauRankChange": "-372"
}
],
"marketShare": [
{
"countryCode": "GE",
"countryName": "Georgia",
"impressionRank": "359",
"impsRankChange": "N/A"
}
]
}
The reach and market share of the app broken down by country.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
reach | [object] | false | none | The reach of the app broken down by country. |
» countryCode | string | false | none | The ISO ALPHA-2 standard country code. |
» countryName | string | false | none | The country name. |
» mauRank | string | false | none | The current Monthly Active Users (MAU) ranking for the app for this country. |
» mauRankChange | string | false | none | The change in Monthly Active Users (MAU) rank since last assessment. |
marketShare | [object] | false | none | The market chare of the app broken down by country. |
» countryCode | string | false | none | The ISO ALPHA-2 standard country code. |
» countryName | string | false | none | The country name. |
» impressionRank | string | false | none | The current impression ranking for the app for this country. |
» impsRankChange | string | false | none | The change in impression ranking since last assessment. |
{
"coppaAudience": "General Audience",
"coppaAudienceReason": [
"This app is likely directed to children (including mixed audience) based on manual review"
],
"isReviewedManually": true,
"parentalHint": "Guidance Suggested",
"Categories": [
"Movies & TV"
],
"coppaViolationRisk": "low",
"coppaViolationRiskReason": [
"The COPPA risk is low because the app is likely not directed to children under 13."
],
"privacyPolicyDetected": true,
"transmitsResidentialIP": true,
"passesLocation": true
}
Children's Online Privacy Protection Act information.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
coppaAudience | string | false | none | Assesses the likely intended audience of an app based on a variety of factors including app store categories, content ratings, and keywords, etc. |
coppaAudienceReason | [string] | false | none | Describes the specific variables considered when making the audience assessment. |
isReviewedManually | boolean | false | none | Flag which indicates apps that have been evaluated by teachers on Pixalate’s Trust and Safety Advisory Board for child-directedness based on the factors set forth in the COPPA Rule. |
parentalHint | string | false | none | The recommended age rating defined by Amazon’s app store or the Parental Hint provided by Roku store. |
Categories | [string] | false | none | The associated categories of an app according to Roku and Amazon Stores. |
coppaViolationRisk | string | false | none | Pixalate analyzes multiple signals and produces a risk score (low, medium, or high) that captures the potential COPPA risk. |
coppaViolationRiskReason | [string] | false | none | Describes the specific variables considered when making the overall COPPA risk rating assessment. |
privacyPolicyDetected | boolean | false | none | Pixalate determines whether an app has a privacy policy based on information provided in the app stores. Additionally, Pixalate uses crawlers to scan developer websites for privacy policies. |
transmitsResidentialIP | boolean | false | none | Pixalate examines the traffic associated with an app and determines if the end-user IP is transmitted through the advertising pipeline that can expose granular information about the user’s location. |
passesLocation | boolean | false | none | Pixalate examines the traffic associated with an app and determines if the end-users’ GPS coordinates are being transmitted through the advertising pipeline that exposes granular information about the user’s location. |
Property | Value |
---|---|
coppaViolationRisk | low |
coppaViolationRisk | medium |
coppaViolationRisk | high |
"roku"
The device.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | The device. |
Property | Value |
---|---|
anonymous | roku |
anonymous | firetv |
"GLOBAL"
A geographic region. GLOBAL indicates an aggregate of all regions.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | A geographic region. GLOBAL indicates an aggregate of all regions. |
Property | Value |
---|---|
anonymous | GLOBAL |
anonymous | NA |
anonymous | EMEA |
anonymous | LATAM |
anonymous | APAC |
"OK"
The returned status.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | The returned status. |
Property | Value |
---|---|
anonymous | OK |
anonymous | ERR |
"appOverview"
The identifier for a predefined subset of all the app information available. If not supplied, usually indicates all widgets.
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | The identifier for a predefined subset of all the app information available. If not supplied, usually indicates all widgets. |
Property | Value |
---|---|
anonymous | appOverview |
anonymous | riskOverview |
anonymous | pixalateAdvisories |
anonymous | appSpoofing |
anonymous | appDetails |
anonymous | developerOverview |
anonymous | channels |
anonymous | brandSafety |
anonymous | trafficOverlap |
anonymous | authorizedSellers |
anonymous | invalidTraffic |
anonymous | inventory |
anonymous | availableCountries |
anonymous | rankings |
anonymous | rankingsByCountry |
anonymous | coppa |
[
"Significantly Elevated IVT Percentage",
"Ad Traffic Shows Some Suspicious Characteristics"
]
A list of reasons that the app is at risk.
None