{"adoption": {"forks": 473, "observed_at": "2026-08-28T04:03:11.030144+00:00", "stars": 1003}, "canonical_url": "https://ross.abutalabs.com/products/wuzapi", "card": {"archived": false, "artifact_type": "service", "description": "Simple RESTful API for WhatsApp in Golang (using the Whatsmeow multi device library)", "domain": ["messaging-platforms", "apis", "backend", "developer-tools"], "enriched": true, "function": ["http-server", "api-framework", "webhook", "chatbot", "middleware"], "health_score": 98, "homepage": null, "language": "Go", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["asternic/wuzapi"], "name": "asternic/wuzapi", "platform": ["go", "self-hosted", "windows", "cross-platform"], "pushed_at": "2026-08-12T14:54:55+00:00", "repo": "asternic/wuzapi", "stars": 1003, "tags": ["whatsapp", "whatsmeow", "rest-api", "messaging", "multi-device", "qr-login", "hmac-webhooks", "automation", "docker", "linux", "macos"], "topics": [], "urls": [], "use_cases": ["send whatsapp messages from my application via api", "self-hosted whatsapp rest api without puppeteer", "receive whatsapp messages via webhook", "manage whatsapp groups programmatically", "run multiple whatsapp sessions concurrently", "send whatsapp media and stickers through an api", "integrate whatsapp notifications into my backend"], "what_it_is": "WuzAPI is a self-hosted RESTful API service for WhatsApp built on the Whatsmeow multi-device library in Go. It exposes endpoints for sessions, messages, groups, users, and webhooks, communicating directly with WhatsApp's WebSocket servers without a browser or emulator.", "when_to_avoid": ["you need an officially supported commercial solution - use the WhatsApp Business API instead", "you cannot tolerate breakage when WhatsApp changes its protocol", "you plan to send spam or bulk unsolicited messages, risking number bans"], "when_to_choose": ["you need a lightweight, fast WhatsApp API without headless Chrome or Android emulators", "you want multi-device support with concurrent sessions", "you prefer a self-hosted Go service with Docker support", "you need webhook events with HMAC signature verification"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/wuzapi", "repo": "asternic/wuzapi", "role": "main", "score": 86}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "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:03:11.030144+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:11.030144+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:13:49.956402+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1822ad98141aadc268290b2ef0b71c0b96b3c471d3edb9d0d3003d66d76e6f8", "fetched_at": "2026-08-28T04:03:11.030144+00:00", "kind": "readme", "missing": false, "url": "https://github.com/asternic/wuzapi"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 100, "rhythm": 65}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1588, "days_push": 21, "days_rel": 23, "gap_med": null, "n_releases_24m": 1}, "score": 86, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}