{
  "added_at": "2026-11-08",
  "category": "reconstruction-cases",
  "class": "apps",
  "description_en": "gpcli reconstructs the MyGP Android subscriber app's API behavior as a Python command-line client. Based on decompiled APK and smali analysis, it implements authentication, balances, packs, purchases, recharge, billing and other account flows; the author reports live validation of read paths and selected transactions.",
  "description_zh": "gpcli 将 MyGP Android 用户应用的 API 行为重建为 Python 命令行客户端。项目依据反编译 APK 和 smali 分析，实现登录、余额、套餐、购买、充值、账单等流程；作者报告已在线核对读取流程及部分真实交易。",
  "entry_url": "https://awesomerea.org/resources/gpcli-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/gpcli-case/",
  "evidence_class": 2,
  "evidence_status": "observed",
  "evidence_url": "https://github.com/hopfian/gpcli/blob/067cd1dd256989f019ba3ddbf9d337eaa1d0aceb/README.md",
  "group": "cases",
  "id": "gpcli-case",
  "json_url": "https://awesomerea.org/resources/gpcli-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/gpcli-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/gpcli-case/index.md",
  "name": "gpcli: reconstructing MyGP subscriber app API flows",
  "name_zh": "gpcli：重建 MyGP 用户应用 API 流程",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "prerequisites",
    "limits",
    "license"
  ],
  "requirements": [
    "Python 3.10 or newer and a MyGP account for subscriber operations.",
    "Plain wallet recharge without a pack remains untested.",
    "MIT."
  ],
  "requirements_zh": [
    "需要 Python 3.10 或更新版本；用户账户操作需要 MyGP 账户。",
    "不购买套餐的普通钱包充值尚未测试。",
    "许可证为 MIT。"
  ],
  "scope": "unknown",
  "targets": [
    "app"
  ],
  "url": "https://github.com/hopfian/gpcli",
  "verification": "source-reviewed",
  "verified_at": "2026-11-06"
}
