{"adoption": {"forks": 656, "observed_at": "2026-08-28T04:07:38.861957+00:00", "stars": 3029}, "canonical_url": "https://ross.abutalabs.com/products/chatgptproxyapi", "card": {"archived": true, "artifact_type": "service", "description": "🔥 使用cloudflare 搭建免费的 OpenAI api代理 ，解决网络无法访问问题。支持流式输出", "domain": ["large-language-models", "apis", "self-hosted", "censorship-circumvention"], "enriched": true, "function": ["proxy", "http-server", "llm-inference"], "health_score": 10, "homepage": "https://chatai.451024.xyz", "language": "HTML", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["x-dr/chatgptProxyAPI"], "name": "x-dr/chatgptProxyAPI", "platform": ["cloud", "self-hosted"], "pushed_at": "2025-06-24T11:58:01+00:00", "repo": "x-dr/chatgptProxyAPI", "stars": 3029, "tags": ["openai-api-proxy", "cloudflare-workers", "cloudflare-pages", "reverse-proxy", "streaming", "free-tier", "web-server", "docker"], "topics": ["chatgpt", "cloudflare-workers", "free", "openai-api", "cloudflare-pages"], "urls": [], "use_cases": ["access the OpenAI API from regions where it is blocked", "proxy api.openai.com through my own Cloudflare domain", "deploy a free OpenAI API reverse proxy on Cloudflare Workers", "set up a streaming OpenAI chat completions proxy", "self-host an OpenAI API endpoint for my apps", "check OpenAI API balance via a proxied endpoint"], "what_it_is": "A self-deployable reverse proxy for the OpenAI API built on Cloudflare Workers and Cloudflare Pages, letting users replace api.openai.com with their own domain to bypass network restrictions. It supports streaming output and includes a Docker deployment option for overseas VPS hosts.", "when_to_avoid": ["you need a production-grade proxy with rate limiting and auth controls", "you cannot deploy on Cloudflare and lack an overseas VPS", "you need Docker deployment with SSE streaming support (not supported)", "you expect heavy public usage of someone else's demo instance"], "when_to_choose": ["you need to reach api.openai.com from a network that blocks it", "you want a free, serverless proxy using Cloudflare's free tier", "you need streaming (SSE) responses through the proxy", "you want to bind the proxy to your own custom domain"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/chatgptproxyapi", "repo": "x-dr/chatgptProxyAPI", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:38.861957+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:29:51.032819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ddcbd63b437a2d8ea8177409913ee820277bfc1016c8c6cf6e9ca99fb6509b38", "fetched_at": "2026-08-28T04:07:38.861957+00:00", "kind": "readme", "missing": false, "url": "https://github.com/x-dr/chatgptProxyAPI"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 28, "longevity": 91, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1280, "days_push": 435, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}