openapi: 3.2.0
info:
title: AppstoreSpy App Store API
description: "# Authentication\n\nThe Appstorespy API uses API-KEY authentication.
\n\nIf you do not have an API Key token, you can get it on your account page [https://appstorespy.com/account](https://appstorespy.com/account).
\n\nAn API Key is required to be sent as part of every request in request header.\n\n```\n\n -H 'accept: application/json'\n\n -H 'API-KEY: '\n\n```\n\n\n\n# Fields\n\nUse the fields parameter to specify which fields should be returned.
\n\nExample:\n\n```\n\n Request: fields=name,developer_name,ipd,downloads,...\n\n Response: {name: ..., developer_name: ..., ipd: ..., downloads: ..., ...}\n\n```\n\nDon`t use fields parameter if you need to get all fields.
\n\n\n\n\n\n# Sort\n\nWhen you use search, you can add a sort parameter.\n\n```\n\n Request: sort=ratingCount\n\n Response: [{name: app1, ratingCount: 4.2}, {name: app2, ratingCount: 4.4}, ...]\n\n```\n\nIf you need DESC sorting add \"-\" before sort parametr.\n\n```\n\n Request: sort=-ratingCount\n\n Response: [{name: app2, ratingCount: 4.4}, {name: app1, ratingCount: 4.2}, ...]\n\n```\n\n\n\n# County & Language params\n\n...\n\n\n\n# Status codes / Error codes\n\n* 200 OK.\n\n* 202 Accepted - The app was not present in our databases and has been submitted for crawling. If the app is available anywhere, it will be available soon.\n\n* 204 No Content - No data for requested country.\n\n* 403 Forbidden - Your access token is not valid.\n\n* 429 Too Many Requests - Your request rate is over the limit.\n"
version: 0.0.1
servers:
- url: https://api.appstorespy.com/v1
tags:
- name: App Store
paths:
/ios/apps/{id}:
get:
tags:
- App Store
summary: Get App Store app by ID.
operationId: get_app_details_ios_apps__id__get
parameters:
- description: App ID
required: true
schema:
type: string
title: Id
description: App ID
example: '333903271'
name: id
in: path
- description: Fields to return separated by comma(,)
required: false
schema:
type: string
title: Fields
description: Fields to return separated by comma(,)
name: fields
in: query
- description: 'Country for which return data. By default: US.'
required: false
schema:
allOf:
- $ref: '#/components/schemas/AppCountries'
description: 'Country for which return data. By default: US.'
name: country
in: query
- description: 'Language of meta data. By default: store default language.'
required: false
schema:
allOf:
- $ref: '#/components/schemas/AppLanguages'
description: 'Language of meta data. By default: store default language.'
name: language
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/IosApp'
'206':
description: Partial Content
content:
application/json:
schema:
$ref: '#/components/schemas/IosApp'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/apps:
get:
tags:
- App Store
summary: Search App Store apps by query.
operationId: get_app_search_ios_apps_get
parameters:
- description: Word or phrase for search.
required: false
schema:
type: string
title: Q
description: Word or phrase for search.
example: Twitter
name: q
in: query
- description: Country for specific country fields. Default - US.
required: false
schema:
allOf:
- $ref: '#/components/schemas/AppCountries'
description: Country for specific country fields. Default - US.
name: country
in: query
- description: Fields to return separated by comma(,)
required: false
schema:
type: string
title: Fields
description: Fields to return separated by comma(,)
name: fields
in: query
- description: Sort params separated by comma(,)
required: false
schema:
type: string
title: Sort
description: Sort params separated by comma(,)
example: -revenue
name: sort
in: query
- description: Count per page
required: false
schema:
type: integer
maximum: 1000.0
title: Limit
description: Count per page
default: 10
name: limit
in: query
- description: Page
required: false
schema:
type: integer
title: Page
description: Page
default: 1
name: page
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IosApp'
type: array
title: Response Get App Search Ios Apps Get
text/csv: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/apps/{id}/reviews:
get:
tags:
- App Store
summary: Get App Store app reviews by app ID.
operationId: get_reviews_ios_apps__id__reviews_get
parameters:
- description: App ID
required: true
schema:
type: string
title: Id
description: App ID
example: '333903271'
name: id
in: path
- description: App storefront
required: false
schema:
allOf:
- $ref: '#/components/schemas/AppCountries'
description: App storefront
name: country
in: query
- description: Fields to return separated by comma(,)
required: false
schema:
type: string
title: Fields
description: Fields to return separated by comma(,)
name: fields
in: query
- description: Count of reviews per page
required: false
schema:
type: integer
maximum: 1000.0
minimum: 1.0
title: Limit
description: Count of reviews per page
default: 10
name: limit
in: query
- description: Sort params separated by comma(,)
required: false
schema:
type: string
title: Sort
description: Sort params separated by comma(,)
example: rating,-date
name: sort
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IosReview'
type: array
title: Response Get Reviews Ios Apps Id Reviews Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/apps/query:
post:
tags:
- App Store
summary: Get Filter Search
description: '|**Fields**||||
|---|---|---|---|
|**Name** |**Type** |**Sort**|**Description**|
|name |string |- |Name|
|bundle |string |- |Bundle|
|description_full |string |- |Full Description|
|published |boolean |- |Published|
|listing_visible |boolean |- |Published in request country|
|category |string |- |Сategory|
|category_type |string |- |Type|
|revenue_month |integer |+ |Monthly Revenue|
|revenue_lifetime |integer |- |Lifetime Revenue|
|downloads_month |integer |+ |Monthly Downloads|
|downloads_lifetime|integer |- |Lifetime Downloads|
|update_date |date ISO8601|+ |Last Updated|
|release_date |date ISO8601|+ |Release date|
|developer_name |string |- |Developer name|
|description_short|string |- |Short description|
|whatsnew |string |- |Whatsnew|
|icon |string |- |Image|
|video |string |- |Trailer|
|screenshots |[]string |- |Screenshots|
|removal_date |date ISO8601|+ |Removal date|
|version |string |- |Version|
|size |float |- |Size|
|rating_count |integer |+ |Ratings|
|rating_value |float |+ |Rating in request country|
|review_count |integer |+ |Reviews|
|rating_avg |float |+ |Rating|
|iap |boolean |- |Inapp|
|copyright |string |- |Copyright|
|seller |string |- |Seller|
|chart_info |object |+ |App''s chart info: category, collection, country, position for today|
|**Filters**|||
|---|---|---|
|**Name**|**Type**|**Description**|
|name|string|Name|
|published|boolean|Published|
|category_type|string|APP or GAME|
|revenue_month|ValueRange|{"gte": 100, "lte": 500} (In this field you need write values in thousands: 100 = 100000, 500 = 500000)|
|downloads_month|ValueRange|{"gte": 100, "lte": 500} (In this field you need write values in thousands: 100 = 100000, 500 = 500000)|
|update_date|DateRange|{"gte": "2021-01-01", "lte": "2022-01-01"}|
|release_date|DateRange|{"gte": "2021-01-01", "lte": "2022-01-01"}|
|rating_count|ValueRange|{"gte": 1000, "lte": 5000}|
|developer|string|Developer name|
|developer_id|string|Developer id|
|active_countries|[]string|["US", "DE", "FR"] - List of countries where app is available (At least one country)|
|category|string|App Store category: "TRAVEL", "EDUCATION", "GAMES_STRATEGY", "LIFESTYLE" etc|
|review_count|ValueRange|{"gte": 1000, "lte": 5000}|
|rating_avg|ValueRange|{"gte": 3.5, "lte": 5.0}|
|with_ads|boolean|With Ads|
|advertised|boolean|Advertised|'
operationId: get_filter_search_ios_apps_query_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/IosAppSearchBody'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/IosAppListResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/apps/similar:
post:
tags:
- App Store
summary: Get Similar
operationId: get_similar_ios_apps_similar_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/IosSimilarSearchBody'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/IosAppListResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/apps/summary:
post:
tags:
- App Store
summary: Get Summary
operationId: get_summary_ios_apps_summary_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/IosSummarySearchBody'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SummaryResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/apps/{id}/recrawl:
get:
tags:
- App Store
summary: Get Recrawl
operationId: get_recrawl_ios_apps__id__recrawl_get
parameters:
- description: App ID(bundle)
required: true
schema:
type: string
title: Id
description: App ID(bundle)
example: com.twitter.android
name: id
in: path
- description: 'Country for which return data. By default: US.'
required: false
schema:
allOf:
- $ref: '#/components/schemas/AppCountries'
description: 'Country for which return data. By default: US.'
default: US
name: country
in: query
- description: 'Language of meta data. By default: en_US'
required: false
schema:
allOf:
- $ref: '#/components/schemas/AppLanguages'
description: 'Language of meta data. By default: en_US'
default: en_US
name: language
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/estimates:
get:
tags:
- App Store
summary: Get Apps Estimates
description: Get App Store apps estimates
operationId: get_apps_estimates_ios_estimates_get
parameters:
- description: Apps to return separated by comma(,)
required: true
schema:
type: string
title: Id
description: Apps to return separated by comma(,)
example: '333903271'
name: id
in: query
- description: Start date. Format YYYY-MM-DD
required: false
schema:
type: string
format: date
title: Start
description: Start date. Format YYYY-MM-DD
name: start
in: query
- description: Start date. Format YYYY-MM-DD
required: false
schema:
type: string
format: date
title: End
description: Start date. Format YYYY-MM-DD
name: end
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/AppsEstimates'
type: array
title: Response Get Apps Estimates Ios Estimates Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/info/countries:
get:
tags:
- App Store
summary: Get Ios app available countries.
operationId: get_play_app_countries_ios_info_countries_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/StoreCountries'
security:
- APIKeyHeader: []
/ios/info/languages:
get:
tags:
- App Store
summary: Get Ios app available languages.
operationId: get_play_app_languages_ios_info_languages_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/StoreLanguages'
security:
- APIKeyHeader: []
/ios/developers/{id}:
get:
tags:
- App Store
summary: Get Developer
operationId: get_developer_ios_developers__id__get
parameters:
- description: Developer ID
required: true
schema:
type: string
title: Id
description: Developer ID
example: '1641486560'
name: id
in: path
- description: Fields to return separated by comma(,)
required: false
schema:
type: string
title: Fields
description: Fields to return separated by comma(,)
name: fields
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/IosDev'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/developers:
get:
tags:
- App Store
summary: Dev Search
operationId: dev_search_ios_developers_get
parameters:
- description: Query for search
required: false
schema:
type: string
title: Q
description: Query for search
example: hq_country:US
name: q
in: query
- description: Fields to return separated by comma(,)
required: false
schema:
type: string
title: Fields
description: Fields to return separated by comma(,)
name: fields
in: query
- description: Sort params separated by comma(,)
required: false
schema:
type: string
title: Sort
description: Sort params separated by comma(,)
example: -total_apps,-installs
name: sort
in: query
- description: Count per page
required: false
schema:
type: integer
maximum: 1000.0
title: Limit
description: Count per page
default: 10
name: limit
in: query
- description: Page
required: false
schema:
type: integer
title: Page
description: Page
default: 1
name: page
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/IosDev'
type: array
title: Response Dev Search Ios Developers Get
text/csv: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/developers/{id}/estimates:
get:
tags:
- App Store
summary: Get Apps Estimates
description: Get Google Play apps estimates
operationId: get_apps_estimates_ios_developers__id__estimates_get
parameters:
- description: Developer's ids to return separated by comma(,)
required: true
schema:
type: string
title: Id
description: Developer's ids to return separated by comma(,)
example: '296415947'
name: id
in: path
- description: Start date. Format YYYY-MM-DD
required: false
schema:
type: string
format: date
title: Start
description: Start date. Format YYYY-MM-DD
name: start
in: query
- description: Start date. Format YYYY-MM-DD
required: false
schema:
type: string
format: date
title: End
description: Start date. Format YYYY-MM-DD
name: end
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/DevAppsEstimates'
type: array
title: Response Get Apps Estimates Ios Developers Id Estimates Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/ios/rankings:
get:
tags:
- App Store
summary: Get App Store rankings data
operationId: get_ios_rankings_ios_rankings_get
parameters:
- description: Start date (YYYY-MM-DD)
required: false
schema:
type: string
format: date
title: Date Start
description: Start date (YYYY-MM-DD)
name: date_start
in: query
- description: End date (YYYY-MM-DD)
required: false
schema:
type: string
format: date
title: Date End
description: End date (YYYY-MM-DD)
name: date_end
in: query
- description: App IDs (comma-separated)
required: false
schema:
items:
type: integer
type: array
title: App
description: App IDs (comma-separated)
name: app
in: query
- description: Platforms (iPhone/iPad, comma-separated)
required: false
schema:
items:
$ref: '#/components/schemas/IosPlatform'
type: array
description: Platforms (iPhone/iPad, comma-separated)
name: platform
in: query
- description: Country codes (comma-separated)
required: false
schema:
items:
$ref: '#/components/schemas/AppCountries'
type: array
description: Country codes (comma-separated)
name: country
in: query
- description: App categories (comma-separated)
required: false
schema:
items:
$ref: '#/components/schemas/IosCategory'
type: array
description: App categories (comma-separated)
name: category
in: query
- description: Collection types (comma-separated)
required: false
schema:
items:
$ref: '#/components/schemas/Collection'
type: array
description: Collection types (comma-separated)
name: collection
in: query
- description: Minimum rank
required: false
schema:
type: integer
minimum: 1.0
title: Rank Start
description: Minimum rank
name: rank_start
in: query
- description: Maximum rank
required: false
schema:
type: integer
maximum: 10000.0
title: Rank End
description: Maximum rank
name: rank_end
in: query
- description: Count per page
required: false
schema:
type: integer
maximum: 1000.0
title: Limit
description: Count per page
default: 10
name: limit
in: query
- description: Page
required: false
schema:
type: integer
title: Page
description: Page
default: 1
name: page
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse_list_models.responses.response.IosRankingItem__'
text/csv: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
components:
schemas:
IosCategory:
enum:
- GAMES
- GAMES_ACTION
- GAMES_ADVENTURE
- GAMES_ARCADE
- GAMES_BOARD
- GAMES_CARD
- GAMES_CASINO
- GAMES_FAMILY
- GAMES_MUSIC
- GAMES_PUZZLE
- GAMES_RACING
- GAMES_ROLE_PLAYING
- GAMES_SIMULATION
- GAMES_SPORTS
- GAMES_STRATEGY
- GAMES_TRIVIA
- GAMES_WORD
- BOOKS
- BUSINESS
- EDUCATION
- ENTERTAINMENT
- FINANCE
- FOOD_AND_DRINK
- HEALTH_AND_FITNESS
- LIFESTYLE
- MEDICAL
- MUSIC
- NAVIGATION
- NEWS
- PHOTO_AND_VIDEO
- PRODUCTIVITY
- REFERENCE
- SHOPPING
- SOCIAL_NETWORKING
- SPORTS
- TRAVEL
- UTILITIES
- WEATHER
- DEVELOPER_TOOLS
- GRAPHICS_AND_DESIGN
- ALL
title: IosCategory
description: An enumeration.
StoreLanguages:
properties:
languages:
items:
type: string
type: array
title: Languages
type: object
required:
- languages
title: StoreLanguages
AppsEstimates:
properties:
id:
type: string
title: Id
month:
type: string
title: Month
downloads:
type: integer
title: Downloads
revenue:
type: integer
title: Revenue
type: object
required:
- id
- month
title: AppsEstimates
ValueRange:
properties:
lte:
anyOf:
- type: integer
- type: number
title: Lte
gte:
anyOf:
- type: integer
- type: number
title: Gte
type: object
title: ValueRange
AppLanguages:
type: string
enum:
- en_US
- ar
- en_GB
- fr_FR
- es_419
- de_DE
- pt_BR
- it_IT
- ja_JP
- ko_KR
- tr_TR
- ru_RU
- vi
title: AppLanguages
description: An enumeration.
NewIosApp:
properties:
id:
type: string
title: Id
bundle:
type: string
title: Bundle
name:
type: string
title: Name
description_full:
type: string
title: Description Full
published:
type: boolean
title: Published
listing_visible:
type: boolean
title: Listing Visible
category:
type: string
title: Category
category_type:
type: string
title: Category Type
revenue_month:
type: integer
title: Revenue Month
revenue_lifetime:
type: integer
title: Revenue Lifetime
downloads_month:
type: integer
title: Downloads Month
downloads_lifetime:
type: integer
title: Downloads Lifetime
release_date:
type: string
format: date
title: Release Date
update_date:
type: string
format: date
title: Update Date
developer_name:
type: string
title: Developer Name
description_short:
type: string
title: Description Short
whatsnew:
type: string
title: Whatsnew
icon:
type: string
title: Icon
video:
type: string
title: Video
screenshots:
items:
type: string
type: array
title: Screenshots
removal_date:
type: string
format: date
title: Removal Date
version:
type: string
title: Version
size:
type: number
title: Size
rating_count:
type: integer
title: Rating Count
rating_value:
type: number
title: Rating Value
review_count:
type: integer
title: Review Count
rating_avg:
type: number
title: Rating Avg
iap:
type: boolean
title: Iap
chart_info:
$ref: '#/components/schemas/IosChart'
url_appstorespy:
type: string
title: Url Appstorespy
description: Url to AppstoreSpy
email:
items:
type: string
type: array
title: Email
description: App's developer email
url:
type: string
title: Url
description: Link to App Store
policy:
type: string
title: Policy
description: '...'
website:
type: string
title: Website
description: App's website
hosts:
items:
type: string
type: array
title: Hosts
description: App's developer hosts
support:
type: string
title: Support
description: '...'
developer_id:
type: string
title: Developer Id
ads:
allOf:
- $ref: '#/components/schemas/Creatives'
title: Ads
description: App`s ads
advertised:
type: boolean
title: Advertised
description: App is advertised in networks
copyright:
type: string
title: Copyright
description: Copyright
seller:
type: string
title: Seller
description: Seller
transferred:
type: string
title: Transferred
description: The last transfer date as detected by AppstoreSpy
previous_developer_id:
type: string
title: Previous Developer Id
description: Previous developer ID before transfer
previous_developer_name:
type: string
title: Previous Developer Name
description: Previous developer name before transfer
type: object
title: NewIosApp
TypeEnum:
enum:
- APP
- GAME
title: TypeEnum
description: An enumeration.
IosSummarySearchBody:
properties:
q:
type: string
title: Q
description: Query
filter:
$ref: '#/components/schemas/SearchFilterIos'
type: object
required:
- filter
title: IosSummarySearchBody
example:
filter:
name: twitter
published: true
DevAppsEstimates:
properties:
month:
type: string
title: Month
downloads:
type: integer
title: Downloads
revenue:
type: integer
title: Revenue
type: object
required:
- month
title: DevAppsEstimates
Image:
properties:
url:
type: string
title: Url
type: object
title: Image
ApiResponse_list_models.responses.response.IosRankingItem__:
properties:
data:
items:
$ref: '#/components/schemas/IosRankingItem'
type: array
title: Data
errors:
items:
$ref: '#/components/schemas/DetailedError'
type: array
title: Errors
total_count:
type: integer
title: Total Count
default: 0
type: object
title: ApiResponse[list[models.responses.response.IosRankingItem]]
IosSimilarSearchBody:
properties:
limit:
type: integer
title: Limit
description: Count of apps in results
default: 10
page:
type: integer
title: Page
description: Offset page
default: 1
sort:
allOf:
- $ref: '#/components/schemas/IosSortEnum'
description: Field for sort
fields:
items:
type: string
type: array
title: Fields
description: Fields for select, empty for all
default:
- id
- url_appstorespy
- name
- bundle
- description_full
- published
- listing_visible
- category
- category_type
- revenue_month
- revenue_lifetime
- downloads_month
- downloads_lifetime
- update_date
- release_date
- developer_id
- developer_name
- description_short
- whatsnew
- icon
- video
- removal_date
- version
- size
- rating_count
- rating_value
- review_count
- rating_avg
- iap
- hosts
- chart_info
- url
- policy
- email
- support
- advertised
- ads
country:
allOf:
- $ref: '#/components/schemas/AppCountries'
description: Country for which return data
default: US
language:
allOf:
- $ref: '#/components/schemas/AppLanguages'
description: 'Language of meta data. By default: en_US'
filter:
$ref: '#/components/schemas/SearchFilterIos'
id:
type: string
title: Id
link:
$ref: '#/components/schemas/SimilarEnum'
type: object
required:
- filter
- id
- link
title: IosSimilarSearchBody
example:
id: '333903271'
link: from
filter:
published: true
sort: -downloads_month
fields:
- id
- name
- icon
- video
- category_type
- category
- url_appstorespy
language: en_US
ChartFilterIos:
properties:
collection:
$ref: '#/components/schemas/Collection'
country:
type: string
title: Country
date:
type: string
title: Date
category:
$ref: '#/components/schemas/IosCategory'
platform:
$ref: '#/components/schemas/IosPlatform'
type: object
required:
- country
- platform
title: ChartFilterIos
IosRankingItem:
properties:
date:
type: string
title: Date
app:
type: string
title: App
platform:
type: string
title: Platform
country:
type: string
title: Country
category:
type: string
title: Category
collection:
type: string
title: Collection
rank:
type: integer
title: Rank
type: object
required:
- date
- app
- platform
- country
- category
- collection
- rank
title: IosRankingItem
IosDev:
properties:
id:
type: string
title: Id
name:
type: string
title: Name
category:
type: string
title: Category
type:
type: string
title: Type
total_apps:
type: integer
title: Total Apps
published_apps:
type: integer
title: Published Apps
last_updated:
type: string
title: Last Updated
first_released:
type: string
title: First Released
rating_count:
type: integer
title: Rating Count
downloads:
type: integer
title: Downloads
revenue:
type: integer
title: Revenue
top_apps:
items:
type: string
type: array
title: Top Apps
hq_country:
type: string
title: Hq Country
email:
items:
type: string
type: array
title: Email
url:
type: string
title: Url
type: object
title: IosDev
Collection:
enum:
- Free
- Grossing
- Paid
- topselling_free
- topgrossing
- topselling_paid
- topselling_new_free
- topselling_new_paid
- movers_shakers
title: Collection
description: An enumeration.
Error:
properties:
detail:
type: string
title: Detail
type: object
required:
- detail
title: Error
AppCreativeVideo:
properties:
preview:
type: string
title: Preview
video:
type: string
title: Video
url:
type: string
title: Url
type: object
title: AppCreativeVideo
Creatives:
properties:
video:
$ref: '#/components/schemas/AppCreativeVideo'
image:
$ref: '#/components/schemas/Image'
fb:
items:
type: string
type: array
title: Fb
network:
anyOf:
- type: string
- items:
type: string
type: array
title: Network
type: object
required:
- video
- image
- fb
- network
title: Creatives
IosReview:
properties:
id:
type: string
title: Id
description: Review ID
app:
type: string
title: App
description: App ID
country:
type: string
title: Country
description: App storefront
user_name:
type: string
title: User Name
description: Name of the review author
title:
type: string
title: Title
description: Review title
created:
type: string
title: Created
description: Creation date
stars:
type: integer
title: Stars
description: App rating
comment:
type: string
title: Comment
description: Review text
type: object
title: IosReview
SimilarEnum:
enum:
- to
- from
title: SimilarEnum
description: An enumeration.
IosPlatform:
enum:
- iPad
- iPhone
title: IosPlatform
description: An enumeration.
StoreCountries:
properties:
countries:
items:
type: string
type: array
title: Countries
type: object
required:
- countries
title: StoreCountries
IosApp:
properties:
id:
type: string
title: Id
description: App ID
bundle:
type: string
title: Bundle
description: App bundle
country:
type: string
title: Country
description: Requested country
lang:
type: string
title: Lang
description: Requested language
published:
type: boolean
title: Published
description: Published
available:
type: boolean
title: Available
description: Availability in the specified country
available_in:
items: {}
type: array
title: Available In
description: Available in countries
available_not:
items: {}
type: array
title: Available Not
description: Not available in countries
category:
items:
type: string
type: array
title: Category
description: App category.
type:
type: string
title: Type
description: App type - APP | GAME
emails:
items:
type: string
type: array
title: Emails
description: App's developer email
website:
type: string
title: Website
description: App's website
url:
type: string
title: Url
description: Link to App Store
privacy_policy:
type: string
title: Privacy Policy
description: '...'
version:
type: string
title: Version
description: App version.
released:
type: string
title: Released
description: Date of release - YYYY-MM-DD
updated:
type: string
title: Updated
description: Date of update - YYYY-MM-DD
size:
type: integer
title: Size
description: App's size in bytes.
iap:
type: boolean
title: Iap
description: Inapp advertisement
developer_id:
type: string
title: Developer Id
description: App's developer ID
developer_name:
type: string
title: Developer Name
description: Developer name
rating_count:
type: integer
title: Rating Count
description: Number of ratings
rating_value:
type: number
title: Rating Value
description: Rating value in requested country
rating_avg:
type: number
title: Rating Avg
description: Weighted average Rating value
revenue:
type: integer
title: Revenue
downloads:
type: integer
title: Downloads
devices:
items: {}
type: array
title: Devices
description: App's devices list
arcade:
type: boolean
title: Arcade
name:
type: string
title: Name
description: App's name on requested language
short:
type: string
title: Short
description: App's short description on requested language
whatsnew:
type: string
title: Whatsnew
description: App's new version changes on requested language
description:
type: string
title: Description
description: App's full description on requested language
icon:
type: string
title: Icon
description: App's image
trailer:
type: string
title: Trailer
description: App's trailer
languages:
items: {}
type: array
title: Languages
description: App's languages list
crawled:
type: string
title: Crawled
description: Last crawled date
removed:
type: string
title: Removed
description: Date of remove app
default: ''
age:
type: integer
title: Age
description: How long does the application exist in days
screenshots:
items:
type: string
type: array
title: Screenshots
description: Screenshots in the specified language
top_countries_revenue:
items:
type: string
type: array
title: Top Countries Revenue
description: Top 5 revenue country
top_countries_downloads:
items:
type: string
type: array
title: Top Countries Downloads
description: Top 5 downloads country
countries_list:
items:
type: string
type: array
title: Countries List
description: countries
url_appstorespy:
type: string
title: Url Appstorespy
description: Url to AppstoreSpy
ads:
allOf:
- $ref: '#/components/schemas/Creatives'
title: Ads
description: App`s ads
advertised:
type: boolean
title: Advertised
description: App is advertised in networks
transferred:
type: string
title: Transferred
description: The last transfer date as detected by AppstoreSpy
previous_developer_id:
type: string
title: Previous Developer Id
description: Previous developer ID before transfer
previous_developer_name:
type: string
title: Previous Developer Name
description: Previous developer name before transfer
copyright:
type: string
title: Copyright
description: Copyright
seller:
type: string
title: Seller
description: Seller
type: object
title: IosApp
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
IosChart:
properties:
position:
type: integer
title: Position
collection:
type: string
title: Collection
category:
type: string
title: Category
platform:
type: string
title: Platform
type: object
required:
- position
- collection
- category
- platform
title: IosChart
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
type: object
required:
- loc
- msg
- type
title: ValidationError
IosAppSearchBody:
properties:
limit:
type: integer
title: Limit
description: Count of apps in results
default: 10
page:
type: integer
title: Page
description: Offset page
default: 1
sort:
allOf:
- $ref: '#/components/schemas/IosSortEnum'
description: Field for sort
fields:
items:
type: string
type: array
title: Fields
description: Fields for select, empty for all
default:
- id
- url_appstorespy
- name
- bundle
- description_full
- published
- listing_visible
- category
- category_type
- revenue_month
- revenue_lifetime
- downloads_month
- downloads_lifetime
- update_date
- release_date
- developer_id
- developer_name
- description_short
- whatsnew
- icon
- video
- removal_date
- version
- size
- rating_count
- rating_value
- review_count
- rating_avg
- iap
- hosts
- chart_info
- url
- policy
- email
- support
- advertised
- ads
country:
allOf:
- $ref: '#/components/schemas/AppCountries'
description: Country for which return data
default: US
language:
allOf:
- $ref: '#/components/schemas/AppLanguages'
description: 'Language of meta data. By default: en_US'
filter:
$ref: '#/components/schemas/SearchFilterIos'
type: object
required:
- filter
title: IosAppSearchBody
example:
sort: -downloads_month
fields:
- id
- name
- icon
- video
- category_type
- category
- url_appstorespy
language: en_US
filter:
name: twitter
published: true
category_type: APP
release_date:
lte: '2026-08-22'
update_date:
lte: '2026-08-22'
rating_count:
lte: 1000000
gte: 0
active_countries:
- US
DateRange:
properties:
lte:
type: string
format: date
title: Lte
gte:
type: string
format: date
title: Gte
type: object
title: DateRange
IosAppListResponse:
properties:
data:
items:
$ref: '#/components/schemas/NewIosApp'
type: array
title: Data
errors:
items:
$ref: '#/components/schemas/DetailedError'
type: array
title: Errors
total_count:
type: integer
title: Total Count
default: 0
type: object
title: IosAppListResponse
AppCountries:
type: string
enum:
- US
- CA
- AT
- BE
- CY
- CZ
- DK
- FI
- FR
- DE
- GR
- HU
- IE
- IT
- NL
- 'NO'
- PL
- PT
- RU
- ES
- SE
- CH
- TR
- UA
- GB
- EG
- IN
- IL
- MA
- NG
- SA
- ZA
- AE
- AU
- HK
- ID
- JP
- KZ
- KR
- MY
- NZ
- PK
- PH
- SG
- TW
- TH
- VN
- AR
- BR
- MX
title: AppCountries
description: An enumeration.
SummaryResponse:
properties:
total:
type: integer
title: Total
ipd:
type: integer
title: Ipd
revenue:
type: integer
title: Revenue
downloads:
type: integer
title: Downloads
available:
type: integer
title: Available
removed:
type: integer
title: Removed
type: object
required:
- total
- ipd
- revenue
- downloads
- available
- removed
title: SummaryResponse
DetailedError:
properties:
location:
type: string
title: Location
message:
type: string
title: Message
value:
anyOf:
- type: string
- items:
type: string
type: array
title: Value
type: object
required:
- location
- message
title: DetailedError
SearchFilterIos:
properties:
id:
items:
type: string
type: array
title: Id
name:
type: string
title: Name
published:
type: boolean
title: Published
category_type:
$ref: '#/components/schemas/TypeEnum'
revenue_month:
$ref: '#/components/schemas/ValueRange'
downloads_month:
$ref: '#/components/schemas/ValueRange'
release_date:
$ref: '#/components/schemas/DateRange'
update_date:
$ref: '#/components/schemas/DateRange'
rating_count:
$ref: '#/components/schemas/ValueRange'
developer:
type: string
title: Developer
developer_id:
type: string
title: Developer Id
editorial:
type: boolean
title: Editorial
iap:
type: boolean
title: Iap
description: In app purchases
active_countries:
items:
type: string
type: array
title: Active Countries
description_full:
type: string
title: Description Full
description_short:
type: string
title: Description Short
whatsnew:
type: string
title: Whatsnew
description: Updates in app
hosts:
type: string
title: Hosts
with_ads:
type: boolean
title: With Ads
advertised:
type: boolean
title: Advertised
collection_id:
type: string
title: Collection Id
description: Collection ID
discovered:
items:
type: string
format: date
type: array
title: Discovered
website:
type: string
title: Website
description: Website
bundle:
items:
type: string
type: array
title: Bundle
description: App bundle ID(s); accepts a single string or a list
transferred:
type: boolean
title: Transferred
description: Whether the app has been transferred to a new developer at least once
transfer_date:
allOf:
- $ref: '#/components/schemas/DateRange'
title: Transfer Date
description: Date range (gte/lte) of the last developer transfer
removal_date:
allOf:
- $ref: '#/components/schemas/DateRange'
title: Removal Date
description: Date range (gte/lte) of app removal from the store; matches removed (unavailable) apps
category:
$ref: '#/components/schemas/IosCategory'
chart_filter:
$ref: '#/components/schemas/ChartFilterIos'
developer_name:
type: string
title: Developer Name
rating_avg:
$ref: '#/components/schemas/ValueRange'
review_count:
$ref: '#/components/schemas/ValueRange'
copyright:
type: string
title: Copyright
seller:
type: string
title: Seller
similar_apps:
type: string
title: Similar Apps
description: Similars apps
reverse_similar_apps:
type: string
title: Reverse Similar Apps
description: Apps with app in similar`s lists
previous_developer_id:
type: string
title: Previous Developer Id
description: Previous developer ID before transfer
previous_developer_name:
type: string
title: Previous Developer Name
description: Previous developer name before transfer
pre_order:
type: boolean
title: Pre Order
description: Pre-order apps only (True); matches apps whose release date is still in the future
type: object
title: SearchFilterIos
IosSortEnum:
type: string
enum:
- revenue_month
- -revenue_month
- downloads_month
- -downloads_month
- update_date
- -update_date
- release_date
- -release_date
- removal_date
- -removal_date
- downloads_exact
- -downloads_exact
- downloads_mark
- -downloads_mark
- rating_count
- -rating_count
- rating_value
- -rating_value
- review_count
- -review_count
- rating_avg
- -rating_avg
- chart_info
- -chart_info
title: IosSortEnum
description: An enumeration.
securitySchemes:
APIKeyHeader:
type: apiKey
in: header
name: API-KEY