String docs
Site integrations

App Store

Apple's App Store: an app's catalog record and its customer reviews by track id, on any one of Apple's storefronts.

Call these actions with your String API key; see Authentication. Every call answers with the envelope described in Responses & errors, whose data holds the rows below.

  • Site: appstore
  • Version: 1.1.0
  • Reads from: apps.apple.com, itunes.apple.com
ActionDescriptionListed price
appRead Apple's published App Store catalog for one app, on any storefront: name, bundle id, artist and seller, description, version and release dates, ratings and their counts for the app and its current version, price, genres, age rating, minimum OS, build size, screenshots and features. Give a track id or an apps.apple.com app URL.Billed per request at your plan's rates
reviewsRead an app's customer reviews from the App Store's ratings and reviews page, on any storefront, most recent, most helpful, most favorable or most critical first: the reviewer's name, 1 to 5 stars, title, text, the review's last update, whether it was edited, and the developer's reply. Up to 20 reviews a page, up to 50 pages a storefront and sort.Billed per request at your plan's rates

app

Read Apple's published App Store catalog for one app, on any storefront: name, bundle id, artist and seller, description, version and release dates, ratings and their counts for the app and its current version, price, genres, age rating, minimum OS, build size, screenshots and features. Give a track id or an apps.apple.com app URL.

POST https://request.usestring.ai/v1/integrations/appstore/app

Input

Unknown fields are rejected.

FieldTypeDescription
appstringRequired. An App Store track id, or an apps.apple.com /app/ URL whose country path names the storefront. At least 1 character.
countrystringA two-letter App Store storefront code, such as us. Defaults to us; an app URL's country path applies when this is omitted. Matches ^[a-zA-Z]{2}$.

Output

data is an array of rows, one per result. Each row has:

FieldTypeDescription
appIdintegerThe app's track id.
countrystringThe storefront this record is from.
urlstring | nullThe app's canonical apps.apple.com page.
namestring | null—
bundleIdstring | null—
artiststring | nullThe developer whose app this is.
artistUrlstring | nullThe developer's apps.apple.com page.
sellerUrlstring | nullThe developer's own site.
descriptionstring | null—
releaseNotesstring | nullThe current version's notes; null on a disclosure Apple does not carry.
versionstring | nullThe current version's number.
releaseDatestring | nullWhen the app was first published, ISO 8601.
currentVersionReleaseDatestring | nullWhen the current version shipped, ISO 8601.
ratingnumber | nullAverage star rating across the storefront, out of 5; null on an app with no ratings yet.
ratingCountinteger | nullHow many ratings across the storefront.
currentVersionRatingnumber | nullAverage star rating of the current version; null on an app with no ratings yet.
currentVersionRatingCountinteger | nullHow many ratings the current version has.
pricenumber | nullIn the storefront's currency.
formattedPricestring | nullThe price as the storefront shows it, such as Free.
currencystring | nullThe price's ISO currency code.
primaryGenrestring | null—
genresstring[]—
contentAdvisoryRatingstring | nullThe storefront's age rating, such as 4+.
minimumOsVersionstring | null—
fileSizeBytesinteger | nullThe current build's size.
screenshotUrlsstring[]iPhone screenshots.
ipadScreenshotUrlsstring[]iPad screenshots.
featuresstring[]—

Example

curl https://request.usestring.ai/v1/integrations/appstore/app \
  -H "Authorization: Bearer $STRING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "app": "814456780"
  }'

data starts with these rows:

[
  {
    "appId": 814456780,
    "country": "us",
    "url": "https://apps.apple.com/us/app/nu-everyday-mobile-banking/id814456780?uo=4",
    "name": "Nu: Everyday mobile banking",
    "bundleId": "com.nu.iphone",
    "artist": "NU PAGAMENTOS S/A INSTITUICAO DE PAGAMENTO",
    "artistUrl": "https://apps.apple.com/us/developer/nu-pagamentos-s-a-instituicao-de-pagamento/id814456783?uo=4",
    "sellerUrl": "https://nu.com/us",
    "description": "The world's most loved digital banking platform, now also available in the US and many other countries.\n\nNu is one of the largest digital financial services platforms in the world, already trusted and loved by over 140 million people. Powerful tech, elegant design, and premium products, with protection built into every step.\n\nFor US customers, Nu offers:\n- An account where every dollar earns 3.50% APY*\n- Unlimited 1.5% cashback on your no-fee metal credit card\n- Real-time card management and fraud protection\n- Award-winning 24/7 customer support\n\nNu is the recipient of numerous world-class awards, including, Forbes World's Best Banks, Time 100 Most Influential Companies, and Fast Company's Most Innovative Companies.\n______________________________\n\nIn the United States, Nu is a financial technology company, not a bank. Banking services and the Nu Credit Card are provided by Lead Bank, Member FDIC. Lead Bank is the FDIC-insured bank. Deposit insurance covers the failure of an insured bank; certain conditions must be satisfied for deposit insurance to apply. Nu is a brand of Nu United States LLC.\n\n*Annual Percentage Yield (APY) is the percentage your balance earns over a year. Interest is paid to your account daily. The rate may change over time, but we’ll always show the current rate in the app.\n\n3.50% Annual Percentage Yield (APY), current as of Sep 10, 2026.\n\n1.5% cashback on eligible settled purchases; some transaction types and merchant categories don't qualify. See Cashback Program Agreement.",
    "releaseNotes": "Nu is now available in the US and many other countries. Learn more at nu.com.\n\nBug fixes may not sound exciting, but each one makes the app run better for you. That's exactly what we did this week - making managing your money easier, faster, and more delightful.",
    "version": "8.0.17",
    "releaseDate": "2014-04-24T20:53:33Z",
    "currentVersionReleaseDate": "2026-10-26T20:08:57Z",
    "rating": 4.83085,
    "ratingCount": 25900,
    "currentVersionRating": 4.83085,
    "currentVersionRatingCount": 25900,
    "price": 0,
    "formattedPrice": "Free",
    "currency": "USD",
    "primaryGenre": "Finance",
    "genres": ["Finance", "Productivity"],
    "contentAdvisoryRating": "4+",
    "minimumOsVersion": "15.0",
    "fileSizeBytes": 251096064,
    "screenshotUrls": ["https://is1-ssl.mzstatic.com/image/thumb/PurpleSource211/v4/a0/30/55/a0305522-a70a-509f-9b19-f91f07f17ae7/1_1242x2208.png/392x696bb.png", "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource221/v4/3c/9a/41/3c9a416d-8eaa-4b4f-683b-360b11165bd3/2_1242x2208.png/392x696bb.png", "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource211/v4/46/60/84/46608433-7b4b-52a6-dfc8-2bf7258f633a/3_1242x2208.png/392x696bb.png", "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource211/v4/74/5c/74/745c746b-3c27-bb4f-6b63-12f84984d724/4_1242x2208.png/392x696bb.png", "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource221/v4/fc/33/1c/fc331c59-cc17-ac65-f58a-66f676c0ea13/5_1242x2208.png/392x696bb.png", "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource211/v4/81/d9/66/81d966b8-3190-8741-51c5-5d69acbe90a9/6_1242x2208.png/392x696bb.png", "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource211/v4/31/37/2c/31372cb1-d833-e489-38c3-9ffc718d0b14/7_1242x2208.png/392x696bb.png", "https://is1-ssl.mzstatic.com/image/thumb/PurpleSource211/v4/b3/11/3b/b3113b20-7755-5640-36ff-e470d18b5a5c/8_1242x2208.png/392x696bb.png"],
    "ipadScreenshotUrls": [],
    "features": []
  }
]

Requests and billing

  • Requests: 1 Web Access request per call.
  • Billing: passthrough. Each request the action makes bills at its own rate on your plan; there is no separate charge for the action. See Pricing.

reviews

Read an app's customer reviews from the App Store's ratings and reviews page, on any storefront, most recent, most helpful, most favorable or most critical first: the reviewer's name, 1 to 5 stars, title, text, the review's last update, whether it was edited, and the developer's reply. Up to 20 reviews a page, up to 50 pages a storefront and sort.

POST https://request.usestring.ai/v1/integrations/appstore/reviews

Input

Unknown fields are rejected.

FieldTypeDescription
appstringRequired. An App Store track id, or an apps.apple.com /app/ URL whose country path names the storefront. At least 1 character.
countrystringA two-letter App Store storefront code, such as us. Defaults to us; an app URL's country path applies when this is omitted. Matches ^[a-zA-Z]{2}$.
sortmostrecent mosthelpful mostfavorable mostcriticalmostrecent (the default), mosthelpful, mostfavorable or mostcritical. The orders barely overlap: mosthelpful surfaces older high-vote reviews mostrecent's newest misses.
pagesintegerHow many pages of up to 20 reviews to read, from 1 to 50. From 1 to 50.

Output

data is an array of rows, one per result. Each row has:

FieldTypeDescription
appIdstring—
countrystringThe storefront the review was written in.
reviewIdstring—
userNamestringThe reviewer's display name.
scoreinteger | nullThe review's 1 to 5 stars; null when the review is not rated.
titlestring—
contentstring—
versionstring | nullThe app version the review is of. Null since 2026-10-29: the App Store's reviews page no longer names it.
atstring | nullWhen the review was last updated, ISO 8601 UTC; null when the review is not dated.
sortstringThe order these pages were read in.
urlstringThe app's canonical apps.apple.com page.
editedboolean | nullWhether the reviewer edited the review after first posting it; null when the page does not say.
developerResponsestring | nullThe developer's public reply to the review; null when there is none.
developerResponseAtstring | nullWhen the developer's reply was last modified, ISO 8601 UTC; null when there is no reply.

Example

curl https://request.usestring.ai/v1/integrations/appstore/reviews \
  -H "Authorization: Bearer $STRING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "app": "814456780",
    "country": "us",
    "sort": "mostrecent",
    "pages": 1
  }'

data starts with these rows:

[
  {
    "appId": "814456780",
    "country": "us",
    "reviewId": "14691397840",
    "userName": "Cuba973",
    "score": 1,
    "title": "They froze me US bank Account",
    "content": "I opened a NU US bank account. I needed to file a dispute and NU responds by closing my account. What bank closes your account for needing to file a dispute? NU is not trustworthy!!",
    "version": null,
    "at": "2026-10-21T01:02:54Z",
    "sort": "mostrecent",
    "url": "https://apps.apple.com/us/app/id814456780",
    "edited": false,
    "developerResponse": null,
    "developerResponseAt": null
  },
  {
    "appId": "814456780",
    "country": "us",
    "reviewId": "14687730398",
    "userName": "Ignacio 0095",
    "score": 1,
    "title": "Me rebotan los pagos",
    "content": "Maldita aplicación inútil, cada transferencia que hago me a devuelven .",
    "version": null,
    "at": "2026-10-20T02:31:22Z",
    "sort": "mostrecent",
    "url": "https://apps.apple.com/us/app/id814456780",
    "edited": false,
    "developerResponse": null,
    "developerResponseAt": null
  }
]

Requests and billing

  • Requests: 1 Web Access request per result page.
  • Billing: passthrough. Each request the action makes bills at its own rate on your plan; there is no separate charge for the action. See Pricing.