AppStore API endpoint

Retrieve full App Store app details

Returns normalized app metadata from the App Store lookup API. Provide either `id` or `app_id`.

GETapiKey1 credit/requestappstore.appDetailsResponseDoc/appstore/app

Parameters

NameInTypeRequiredEnumExampleDescription
idquerystringNo553834731App Store track ID
app_idquerystringNocom.midasplayer.apps.candycrushsagaApp Store bundle ID
countryquerystringNousTwo-letter storefront country code
langquerystringNoen-usResult language tag
ratingsquerybooleanNoInclude ratings histogram
x-api-keyheaderstringYesAPI key required

Authentication

Send your scraping API key in the x-api-key header. Use the console API Keys page to rotate or select the active key.

Billing

Endpoint usage is metered in credits. The plan prices, included credits, limits, and overage rates below match the active backend billing configuration.

Credit cost
1 credit/request
Charged response
Successful 2xx responses
PlanPriceIncluded creditsDaily capRate limitOverage
Free$0/mo2,000500 daily credits5/minNo overage
Starter$9/mo20,0005,000 daily credits15/min$0.75/1,000 overage credits when enabled
Growth$29/mo100,00025,000 daily credits45/min$0.45/1,000 overage credits when enabled
Pro$79/mo400,000No daily cap120/min$0.30/1,000 overage credits
Business$199/mo1,200,000No daily cap300/min$0.20/1,000 overage credits
Enterprise$499/mo5,000,000No daily cap1,000/min$0.12/1,000 overage credits

MCP

MCP URL
https://mcp.crawlora.net/mcp
Tool name
appstore.app
Transport
Streamable HTTP
Docs resource
docs://index

Failure responses

StatusDescriptionSchema
400Missing or invalid parameters#/definitions/app.Response
404App not found#/definitions/app.Response
429Rate limit exceeded#/definitions/app.Response
500Internal server error#/definitions/app.Response

Example response

{
  "code": 200,
  "msg": "OK",
  "data": {
    "id": "6448311069",
    "title": "ChatGPT",
    "developer": "OpenAI",
    "score": 4.9,
    "ratings": 1200000,
    "version": "1.2026.001",
    "url": "https://apps.apple.com/us/app/chatgpt/id6448311069"
  }
}

Request schema

No body schema

Response schema

#/definitions/appstore.appDetailsResponseDoc

FieldTypeRequiredEnumBoundsExampleDescription
codeintegerNo200
dataappstore.AppNo
data.app_idstringNo
data.appletv_screenshotsarrayNo
data.content_ratingstringNo
data.currencystringNo
data.current_version_reviewsintegerNo
data.current_version_scorenumberNo
data.descriptionstringNo
data.developerstringNo
data.developer_idintegerNo
data.developer_urlstringNo
data.developer_websitestringNo
data.freebooleanNo
data.genre_idsarrayNo
data.genresarrayNo
data.histogramobjectNo
data.iconstringNo
data.idintegerNo
data.ipad_screenshotsarrayNo
data.languagesarrayNo
data.pricenumberNo
data.primary_genrestringNo
data.primary_genre_idintegerNo
data.ratingsintegerNo
data.release_notesstringNo
data.releasedstringNo
data.required_os_versionstringNo
data.reviewsintegerNo
data.scorenumberNo
data.screenshotsarrayNo
data.sizestringNo
data.supported_devicesarrayNo
data.titlestringNo
data.updatedstringNo
data.urlstringNo
data.versionstringNo
msgstringNoOK

Example request

curl -X GET "https://api.crawlora.net/api/v1/appstore/app?id=553834731&app_id=com.midasplayer.apps.candycrushsaga&country=us&lang=en-us" -H "x-api-key: <api-key>"

TypeScript fetch

const url = new URL("https://api.crawlora.net/api/v1/appstore/app");
url.searchParams.set("id", "553834731");
url.searchParams.set("app_id", "com.midasplayer.apps.candycrushsaga");
url.searchParams.set("country", "us");
url.searchParams.set("lang", "en-us");
const headers = new Headers();
headers.set("x-api-key", "<api-key>");
const response = await fetch(url, {
  method: "GET",
  headers,
});
const payload = await response.json();