SensorTower API
The SensorTower API connector syncs selected Sensor Tower market, app metadata, review, keyword, featured, usage, and sales estimate endpoints into Extract.
Source Setup Guide
To connect SensorTower API to Extract, provide a SensorTower Auth Token from Sensor Tower API Settings.
The source can be saved and authenticated before report configs are added. During login, Extract validates the token with Sensor Tower's API usage endpoint and does not require app IDs.
Report Configs
Report configs define which apps and countries Extract should request from Sensor Tower. Each config should have a stable Config Name because the name is added to extracted rows and is used by stream keys.
Each report config supports:
- Config Name: Stable label for the requested app group.
- iOS App IDs: Comma-separated App Store numeric IDs, for example
389801252. - Android App IDs: Comma-separated package names, for example
com.instagram.android. - Countries: Optional comma-separated Sensor Tower country codes, for example
US,GB,DE. Leave empty to use Sensor Tower defaults for endpoints where country is optional. - iOS/Unified Categories: Optional multi-select Sensor Tower category IDs for Creative Gallery Top streams. Leave empty to use
0(Overall). - Android Categories: Optional multi-select Sensor Tower category IDs for Creative Gallery Top streams. Leave empty to use
all(Overall). - Date Granularity: Used by sales estimate streams. Supported values are
daily,weekly,monthly, andquarterly.
Supported Countries
| Code | Country |
|---|---|
| AE | United Arab Emirates |
| AR | Argentina |
| AT | Austria |
| AU | Australia |
| BE | Belgium |
| BR | Brazil |
| CA | Canada |
| CH | Switzerland |
| CL | Chile |
| CN | China |
| CO | Colombia |
| CZ | Czech Republic |
| DE | Germany |
| DK | Denmark |
| EC | Ecuador |
| ES | Spain |
| FR | France |
| GB | United Kingdom |
| GR | Greece |
| HK | Hong Kong |
| ID | Indonesia |
| IL | Israel |
| IN | India |
| IT | Italy |
| JP | Japan |
| KR | South Korea |
| LU | Luxembourg |
| MX | Mexico |
| MY | Malaysia |
| NG | Nigeria |
| NL | Netherlands |
| NO | Norway |
| NZ | New Zealand |
| PA | Panama |
| PE | Peru |
| PH | Philippines |
| PL | Poland |
| PT | Portugal |
| RO | Romania |
| RU | Russia |
| SA | Saudi Arabia |
| SE | Sweden |
| SG | Singapore |
| TH | Thailand |
| TR | Turkey |
| TW | Taiwan |
| UA | Ukraine |
| US | US |
| VN | Vietnam |
| ZA | South Africa |
unified_app_ids may still appear in older saved configs, but the current connector now uses it for unified streams such as unified_ad_intel_creatives. Add iOS, Android, and/or unified app IDs as needed.
Some Sensor Tower endpoints require country input. Review streams (ios_get_reviews and android_get_reviews) require at least one country in the report config.
Connection Setup Guide
Once SensorTower API is connected to a destination, configure:
- Connection Pull Schedule: Determines how frequently data is extracted.
- Backfill (Days): Re-requests recent date windows so updated Sensor Tower data replaces previously pulled rows.
- Destination Settings: Destination-specific settings such as target schema or dataset.
- Schema Migration Policy: Controls how Extract handles schema changes.
Connector Notes
- Extract redacts the Sensor Tower auth token from request error logs.
- Streams backed by app-specific endpoints only run when the matching iOS or Android app IDs are configured.
- Streams that do not require app IDs, such as
custom_field_list,custom_fields_values,featured_today_stories, andtrending_searches, can run without report configs. - Sensor Tower API access is plan-dependent. A
401 Not authorizedresponse usually means the token is valid but the account is not entitled to that endpoint or app/report type. - Removed unsupported streams include Sensor Tower sales report, acquisition buyers, retained installers, uninstalls, source metrics, unified sales reports, downloads by source, tags for apps, user apps, and unified apps.
Supported Streams
App Metadata
ios_appsandroid_appsios_unified_appsandroid_unified_appsios_top_in_app_purchases
App History and Versions
ios_app_history_summaryandroid_app_history_summaryios_app_update_timelineandroid_app_update_timelineios_version_historyandroid_version_history
Reviews and Ratings
ios_get_reviewsandroid_get_reviewsios_get_ratingsandroid_get_ratings
Keywords
ios_get_current_keywordsandroid_get_current_keywordstrending_searches
Featured Content
featured_today_storiesios_featured_creativesandroid_featured_creativesios_ad_intel_creativesandroid_ad_intel_creativesunified_ad_intel_creativesios_ad_intel_creatives_topandroid_ad_intel_creatives_topunified_ad_intel_creatives_topios_featured_impactsandroid_featured_impacts
Usage
ios_usage_demographicsandroid_usage_demographicsios_usage_retentionandroid_usage_retention
Sales Estimates
ios_sales_report_estimatesandroid_sales_report_estimates
Custom Fields
custom_field_listcustom_fields_values