Pgyer APIpgyer.com ↗
Retrieve public app metadata from any pgyer.com distribution page: name, version, build, size, platform, icon URL, and rating via a single endpoint.
What is the Pgyer API?
The Pgyer.com API exposes 8 structured fields from any pgyer.com app distribution page through a single get_app_info endpoint. Pass a shortcut code — the path segment from a pgyer.com URL — and get back the app's display name, version string, build number, package size, platform, icon URL, internal app key, and QR-code image URL. It covers both iOS and Android apps listed on the platform.
curl -X GET 'https://api.parse.bot/scraper/cb225f12-a2fd-4aa8-8969-07523c00a475/get_app_info?shortcut=8Doqi2' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace pgyer-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: look up a pgyer.com app page by its short code."""
from parse_apis.pgyer_com_api import Pgyer, AppNotFound
client = Pgyer()
# Fetch public metadata for an app distributed via pgyer.com
try:
app = client.apps.get(shortcut="8Doqi2")
except AppNotFound:
print("App page not found for the given shortcut")
raise
print(f"{app.name} ({app.platform}) v{app.version} build {app.build}")
print(f"Size: {app.size} Published: {app.published_at}")
print(f"Category: {app.category}")
print(f"Rating: {app.rating_value} ({app.rating_count} ratings)")
print(f"Page: {app.page_url}")
print("exercised: apps.get")
Returns the public metadata shown on a pgyer.com app distribution page: app name, platform, version and build, package size, publish date, icon URL, store-style category and aggregate rating, plus the app's internal key and QR-code image URL. One page fetch per call. The version/build/size/publish date are read from the page's 'About' section with labels pinned to English. A short code that resolves to no app page returns a stale_input (input_not_found) error. The iOS install manifest (itms-services plist with the IPA download URL) is not returned: the site only issues it to iOS devices.
| Param | Type | Description |
|---|---|---|
| shortcutrequired | string | The app's short code, i.e. the path segment of its pgyer.com page URL (pgyer.com/<shortcut>). Letters, digits, '-' and '_'. |
{
"type": "object",
"fields": {
"name": "app display name",
"size": "package size as displayed (e.g. 59.9 MB)",
"build": "build number string, null when the page shows none",
"app_key": "the site's internal 32-hex app key for this build",
"version": "version string, null when the page shows none",
"category": "schema.org applicationCategory from the page, null when absent",
"icon_url": "app icon image URL without resize parameters, null when absent",
"page_url": "the public app page URL",
"platform": "platform string reported by the page (e.g. ios)",
"shortcut": "the short code that was queried",
"qrcode_url": "URL of the install QR-code image for this page",
"published_at": "publish date YYYY-MM-DD as displayed",
"rating_count": "integer rating count from the page, null when absent",
"rating_value": "aggregate rating number from the page, null when absent"
},
"sample": {
"data": {
"name": "LDCloud",
"size": "59.9 MB",
"build": "1",
"app_key": "22f0001a9e3ce54c1df409527c511adb",
"version": "1.7.1",
"category": "LifestyleApplication",
"icon_url": "https://cdn-app-icon2.pgyer.com/6/c/6/8/8/6c6884dfeaf2b991a3006433a55bd903",
"page_url": "https://www.pgyer.com/8Doqi2",
"platform": "ios",
"shortcut": "8Doqi2",
"qrcode_url": "https://www.pgyer.com/app/qrcode/8Doqi2",
"published_at": "2024-02-05",
"rating_count": 2578,
"rating_value": 4.7
},
"status": "success"
}
}About the Pgyer API
What the API Returns
The get_app_info endpoint accepts one required parameter: shortcut, the short alphanumeric path segment that appears at the end of a pgyer.com app page URL (e.g., pgyer.com/<shortcut>). The response includes the app's display name, platform (e.g., ios or android), version string, and build number — both of which are returned as null when the distribution page omits them. Package size is returned as a human-readable string (e.g., 59.9 MB), matching what is shown to end users on the page.
Additional Fields
Beyond the core version metadata, the response includes icon_url (the full app icon image URL, stripped of resize parameters), page_url (the canonical public URL for the app), app_key (the platform's internal 32-character hex identifier for the specific build), and category (the schema.org applicationCategory value when present, otherwise null). The app_key is useful for correlating builds if you are tracking multiple versions of the same app over time.
Scope and Freshness
Each call targets a single distribution page — there is no batch or search endpoint. The data reflects what is publicly visible on the pgyer.com page at request time, so version and build fields will update when the app owner pushes a new build to the same shortcut URL. If a page has no icon, category, build, or version declared, the corresponding fields come back as null rather than empty strings.
The Pgyer API is a managed, monitored endpoint for pgyer.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when pgyer.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official pgyer.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Monitor when a mobile team pushes a new build to a pgyer.com test distribution link by polling
versionandbuild. - Aggregate package sizes across multiple pgyer.com app links to track binary growth over releases.
- Extract
icon_urlto display app previews in an internal dashboard without manual downloads. - Record
app_keyvalues to maintain a version history log of builds distributed through pgyer.com. - Detect platform type (
iosvsandroid) automatically when cataloguing multi-platform apps shared via pgyer.com links. - Pull
categorymetadata to classify a set of pgyer.com app links without visiting each page manually.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does pgyer.com have an official developer API?+
What does `get_app_info` return when a field is not shown on the pgyer.com page?+
version, build, category, and icon_url fields are nullable. When the distribution page does not display them, the response returns null for those fields rather than omitting them. name, size, platform, shortcut, page_url, and app_key are always present when the page resolves.Can I retrieve the full install history or download count for an app?+
Does the API support looking up multiple apps or searching pgyer.com by keyword?+
shortcut parameter. Bulk queries or keyword search across the pgyer.com catalog are not currently supported. You can fork this API on Parse and revise it to add a search or batch endpoint.How specific is the `shortcut` parameter — can I use a full URL?+
shortcut parameter expects only the path segment at the end of the pgyer.com URL, not the full URL. For example, if the app page is pgyer.com/abc123, supply abc123. Passing the complete URL will not resolve correctly.