{"adoption": {"forks": 759, "observed_at": "2026-08-28T04:11:03.007356+00:00", "stars": 13276}, "canonical_url": "https://ross.abutalabs.com/products/api", "card": {"archived": false, "artifact_type": "service", "description": "Documentation and Samples for the Official HN API", "domain": ["apis", "developer-tools", "social-media"], "enriched": true, "function": ["http-client", "json", "web-scraping"], "health_score": 20, "homepage": null, "language": null, "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["HackerNews/API"], "name": "HackerNews/API", "platform": ["cross-platform"], "pushed_at": "2025-01-01T07:55:30+00:00", "repo": "HackerNews/API", "stars": 13276, "tags": ["hacker-news", "firebase", "public-api", "documentation", "rest-api", "web-server", "android", "ios"], "topics": [], "urls": [], "use_cases": ["fetch hacker news stories and comments programmatically", "build a hacker news client app", "track new posts on hacker news in real time", "get comment threads for a hacker news article", "retrieve user profiles and submissions from hacker news"], "what_it_is": "Official documentation and samples for the Hacker News public API, hosted on Firebase. It describes how to access HN items (stories, comments, jobs, polls) and user data as JSON over versioned URIs.", "when_to_avoid": ["you need a convenient high-level API - the v0 API is a raw dump of in-memory structures requiring manual tree traversal", "you need backward-compatible guarantees across versions", "you want filtering or querying features - only basic item/user endpoints exist"], "when_to_choose": ["you want official, near-real-time access to Hacker News data", "you can use Firebase client libraries for efficient event-driven updates", "you need free API access with no rate limit"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/api", "repo": "HackerNews/API", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "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:11:03.007356+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:11:03.007356+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:21:05.066613+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b18a63ba29dbeb54cbda7bf9c294f5139646552793d5a6660b9da4b9b8ecd32d", "fetched_at": "2026-08-28T04:11:03.007356+00:00", "kind": "readme", "missing": false, "url": "https://github.com/HackerNews/API"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4353, "days_push": 609, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}