{"id":132188,"url":"https://github.com/api-wrappers/awesome-api-wrappers","name":"awesome-api-wrappers","description":"Curated list of high-quality API wrapper libraries across languages, ecosystems, and domains.","projects_count":47,"last_synced_at":"2026-06-10T12:00:19.607Z","repository":{"id":348697258,"uuid":"1196591428","full_name":"Api-Wrappers/awesome-api-wrappers","owner":"Api-Wrappers","description":"Curated list of high-quality API wrapper libraries across languages, ecosystems, and domains.","archived":false,"fork":false,"pushed_at":"2026-05-16T18:59:34.000Z","size":74,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-24T20:21:47.765Z","etag":null,"topics":["api","api-wrappers","awesome","awesome-list","backend","developer-tools","golang","graphql","javascript","libraries","nodejs","open-source","python","rest-api","rust","sdk","typescript","web-development"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Api-Wrappers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-30T21:06:14.000Z","updated_at":"2026-05-16T18:59:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Api-Wrappers/awesome-api-wrappers","commit_stats":null,"previous_names":["api-wrappers/awesome-api-wrappers"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Api-Wrappers/awesome-api-wrappers","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Api-Wrappers%2Fawesome-api-wrappers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Api-Wrappers%2Fawesome-api-wrappers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Api-Wrappers%2Fawesome-api-wrappers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Api-Wrappers%2Fawesome-api-wrappers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Api-Wrappers","download_url":"https://codeload.github.com/Api-Wrappers/awesome-api-wrappers/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Api-Wrappers%2Fawesome-api-wrappers/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34151276,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-10T02:00:07.152Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"created_at":"2026-05-24T20:11:15.335Z","updated_at":"2026-06-10T12:00:19.608Z","primary_language":null,"list_of_lists":false,"displayable":true,"categories":["Related Lists","Categories","Api-Wrappers Packages"],"sub_categories":["Misc","AI / ML","Payments","Communication","Media / Entertainment","Gaming","Anime / Manga","Social","Cloud / Infrastructure","Developer Tools"],"readme":"\u003ch1 align=\"center\"\u003eAwesome API Wrappers\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  A curated list of API wrappers and SDKs focused on developer experience, type safety, maintenance, and real-world usability.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://awesome.re\"\u003e\u003cimg alt=\"Awesome\" src=\"https://awesome.re/badge.svg\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/Api-Wrappers/awesome-api-wrappers/actions/workflows/validate.yml\"\u003e\u003cimg alt=\"Validation\" src=\"https://github.com/Api-Wrappers/awesome-api-wrappers/actions/workflows/validate.yml/badge.svg\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/Api-Wrappers/awesome-api-wrappers/stargazers\"\u003e\u003cimg alt=\"GitHub Repo stars\" src=\"https://img.shields.io/github/stars/api-wrappers/awesome-api-wrappers\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nFinding an API wrapper is easy. Finding one you can trust in a real project is\nharder.\n\nThis repo collects wrappers and SDKs that make integration work easier:\nauthentication, pagination, retries, typed responses, versioning, webhooks,\nrate limits, and API-specific workflows. The list is intentionally selective\nand favors projects with clear docs, visible maintenance, licenses, package\nlinks, and practical examples.\n\n`Official` means maintained by the API provider. `Community` means maintained\nindependently.\n\n---\n\n## Contents\n\n- [How to Use This List](#how-to-use-this-list)\n- [Api-Wrappers Packages](#api-wrappers-packages)\n- [Categories](#categories)\n  - [Payments](#payments)\n  - [Communication](#communication)\n  - [Media / Entertainment](#media--entertainment)\n  - [Gaming](#gaming)\n  - [Anime / Manga](#anime--manga)\n  - [Social](#social)\n  - [Cloud / Infrastructure](#cloud--infrastructure)\n  - [AI / ML](#ai--ml)\n  - [Developer Tools](#developer-tools)\n  - [Misc](#misc)\n- [How to Get Listed](#how-to-get-listed)\n- [What Makes a Good API Wrapper?](#what-makes-a-good-api-wrapper)\n- [Contribution Rules](#contribution-rules)\n- [Related Lists](#related-lists)\n\n---\n\n## How to Use This List\n\nUse the tables to compare wrappers quickly:\n\n- **API** tells you which upstream service the wrapper targets.\n- **Language** helps you find clients for your stack.\n- **Official / community** shows whether the API provider maintains it.\n- **Package link** takes you to the registry or package documentation.\n- **GitHub link** takes you to source, issues, releases, and license details.\n- **Notes** call out practical strengths without using unverifiable metrics.\n\nThis repo does not track stars, downloads, or latest releases because those\nfields get stale quickly unless they are generated automatically.\n\n---\n\n## Api-Wrappers Packages\n\nThe organization behind this list also maintains a few TypeScript wrappers.\nThey are listed here for discoverability, but the main list uses the same\ncriteria for every project.\n\n| Name | API | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- |\n| anilist-wrapper | AniList | [npm](https://www.npmjs.com/package/@api-wrappers/anilist-wrapper) | [GitHub](https://github.com/Api-Wrappers/anilist-wrapper) | Typed GraphQL workflows for anime, manga, users, staff, characters, and media lists. |\n| igdb-wrapper | IGDB | [npm](https://www.npmjs.com/package/@api-wrappers/igdb-wrapper) | [GitHub](https://github.com/Api-Wrappers/igdb-wrapper) | Type-safe APICalypse queries, OAuth helpers, pagination, and image URL utilities. |\n| tmdb-wrapper | TMDB | [npm](https://www.npmjs.com/package/@api-wrappers/tmdb-wrapper) | [GitHub](https://github.com/Api-Wrappers/tmdb-wrapper) | Typed movie, TV, search, discover, watch-provider, session, and image workflows. |\n\n---\n\n## Categories\n\n### Payments\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| plaid-node | Plaid | TypeScript | Official | [npm](https://www.npmjs.com/package/plaid) | [GitHub](https://github.com/plaid/plaid-node) | Node client generated from Plaid's OpenAPI definition. |\n| plaid-python | Plaid | Python | Official | [PyPI](https://pypi.org/project/plaid-python/) | [GitHub](https://github.com/plaid/plaid-python) | Python client generated from Plaid's OpenAPI definition. |\n| stripe-node | Stripe | TypeScript | Official | [npm](https://www.npmjs.com/package/stripe) | [GitHub](https://github.com/stripe/stripe-node) | Typed Node SDK with webhook helpers and broad Stripe API coverage. |\n| stripe-python | Stripe | Python | Official | [PyPI](https://pypi.org/project/stripe/) | [GitHub](https://github.com/stripe/stripe-python) | Python SDK with async support, typed models, and webhook helpers. |\n\n### Communication\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| discord.js | Discord | TypeScript | Community | [npm](https://www.npmjs.com/package/discord.js) | [GitHub](https://github.com/discordjs/discord.js) | Mature Discord library with gateway, REST, builders, and voice packages. |\n| discord.py | Discord | Python | Community | [PyPI](https://pypi.org/project/discord.py/) | [GitHub](https://github.com/Rapptz/discord.py) | Async-first Discord wrapper with command and extension support. |\n| discordgo | Discord | Go | Community | [pkg.go.dev](https://pkg.go.dev/github.com/bwmarrin/discordgo) | [GitHub](https://github.com/bwmarrin/discordgo) | Go bindings for Discord gateway, REST, interactions, and voice workflows. |\n| node-slack-sdk | Slack | TypeScript | Official | [npm](https://www.npmjs.com/package/@slack/web-api) | [GitHub](https://github.com/slackapi/node-slack-sdk) | Slack Web API client plus packages for events, OAuth, sockets, and Bolt. |\n| python-slack-sdk | Slack | Python | Official | [PyPI](https://pypi.org/project/slack-sdk/) | [GitHub](https://github.com/slackapi/python-slack-sdk) | Python SDK for Slack Web API, OAuth, Socket Mode, and signature handling. |\n| python-telegram-bot | Telegram Bot API | Python | Community | [PyPI](https://pypi.org/project/python-telegram-bot/) | [GitHub](https://github.com/python-telegram-bot/python-telegram-bot) | Telegram bot framework with async handlers, jobs, and persistence helpers. |\n| serenity | Discord | Rust | Community | [docs.rs](https://docs.rs/serenity/latest/serenity/) | [GitHub](https://github.com/serenity-rs/serenity) | Rust Discord library covering gateway events, REST, commands, and cache support. |\n| twilio-node | Twilio | TypeScript | Official | [npm](https://www.npmjs.com/package/twilio) | [GitHub](https://github.com/twilio/twilio-node) | Node helper library for Twilio messaging, voice, Verify, and other APIs. |\n| twilio-python | Twilio | Python | Official | [PyPI](https://pypi.org/project/twilio/) | [GitHub](https://github.com/twilio/twilio-python) | Python helper library for Twilio messaging, voice, Verify, and other APIs. |\n\n### Media / Entertainment\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| spotify-web-api-ts-sdk | Spotify Web API | TypeScript | Official | [npm](https://www.npmjs.com/package/@spotify/web-api-ts-sdk) | [GitHub](https://github.com/spotify/spotify-web-api-ts-sdk) | Official TypeScript SDK for Spotify catalog, playback, playlist, and user APIs. |\n| spotipy | Spotify Web API | Python | Community | [PyPI](https://pypi.org/project/spotipy/) | [GitHub](https://github.com/spotipy-dev/spotipy) | Lightweight Python client for Spotify endpoints and OAuth flows. |\n| tmdb-wrapper | TMDB | TypeScript | Community | [npm](https://www.npmjs.com/package/@api-wrappers/tmdb-wrapper) | [GitHub](https://github.com/Api-Wrappers/tmdb-wrapper) | Typed TMDB v3 client for movies, TV, search, discover, images, and sessions. |\n\n### Gaming\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| helix | Twitch Helix | Go | Community | [pkg.go.dev](https://pkg.go.dev/github.com/nicklaw5/helix/v2) | [GitHub](https://github.com/nicklaw5/helix) | Go client for Twitch Helix endpoints, EventSub verification, and OAuth tokens. |\n| igdb-wrapper | IGDB | TypeScript | Community | [npm](https://www.npmjs.com/package/@api-wrappers/igdb-wrapper) | [GitHub](https://github.com/Api-Wrappers/igdb-wrapper) | Type-safe APICalypse queries, OAuth helpers, pagination, and image utilities. |\n| twurple | Twitch | TypeScript | Community | [npm](https://www.npmjs.com/package/@twurple/api) | [GitHub](https://github.com/twurple/twurple) | Twitch library covering Helix, EventSub, chat, auth, and PubSub packages. |\n\n### Anime / Manga\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| anilist-wrapper | AniList | TypeScript | Community | [npm](https://www.npmjs.com/package/@api-wrappers/anilist-wrapper) | [GitHub](https://github.com/Api-Wrappers/anilist-wrapper) | Typed GraphQL client for anime, manga, users, staff, characters, and lists. |\n| AnilistPython | AniList | Python | Community | [PyPI](https://pypi.org/project/AnilistPython/) | [GitHub](https://github.com/ReZeroE/AnilistPython) | Python library for AniList GraphQL queries and media lookups. |\n\n### Social\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| node-twitter-api-v2 | Twitter/X API | TypeScript | Community | [npm](https://www.npmjs.com/package/twitter-api-v2) | [GitHub](https://github.com/PLhery/node-twitter-api-v2) | TypeScript client for Twitter/X API v1.1, v2, OAuth, streams, and media uploads. |\n| praw | Reddit | Python | Community | [PyPI](https://pypi.org/project/praw/) | [GitHub](https://github.com/praw-dev/praw) | Python Reddit API wrapper with an idiomatic object model. |\n| tweepy | Twitter/X API | Python | Community | [PyPI](https://pypi.org/project/tweepy/) | [GitHub](https://github.com/tweepy/tweepy) | Python Twitter/X API client with OAuth, streaming, and async support. |\n\n### Cloud / Infrastructure\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| aws-sdk-js-v3 | AWS | TypeScript | Official | [npm](https://www.npmjs.com/package/@aws-sdk/client-s3) | [GitHub](https://github.com/aws/aws-sdk-js-v3) | Modular AWS SDK with per-service clients, middleware, and TypeScript types. |\n| boto3 | AWS | Python | Official | [PyPI](https://pypi.org/project/boto3/) | [GitHub](https://github.com/boto/boto3) | Python AWS SDK covering service clients, resources, sessions, and paginators. |\n| firebase-admin-node | Firebase Admin | TypeScript | Official | [npm](https://www.npmjs.com/package/firebase-admin) | [GitHub](https://github.com/firebase/firebase-admin-node) | Admin SDK for Firebase Auth, Firestore, Storage, Messaging, and app checks. |\n\n### AI / ML\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| anthropic-sdk-python | Anthropic | Python | Official | [PyPI](https://pypi.org/project/anthropic/) | [GitHub](https://github.com/anthropics/anthropic-sdk-python) | Python SDK with sync and async clients, streaming, and tool-use support. |\n| anthropic-sdk-typescript | Anthropic | TypeScript | Official | [npm](https://www.npmjs.com/package/@anthropic-ai/sdk) | [GitHub](https://github.com/anthropics/anthropic-sdk-typescript) | TypeScript SDK with typed requests, streaming, and tool-use support. |\n| cohere-python | Cohere | Python | Official | [PyPI](https://pypi.org/project/cohere/) | [GitHub](https://github.com/cohere-ai/cohere-python) | Python SDK for Cohere generation, embeddings, classification, and reranking. |\n| groq-python | Groq | Python | Official | [PyPI](https://pypi.org/project/groq/) | [GitHub](https://github.com/groq/groq-python) | Python SDK for Groq chat completions and low-latency inference workflows. |\n| huggingface_hub | Hugging Face Hub | Python | Official | [PyPI](https://pypi.org/project/huggingface-hub/) | [GitHub](https://github.com/huggingface/huggingface_hub) | Python client for model, dataset, Space, repository, and inference workflows. |\n| openai-node | OpenAI | TypeScript | Official | [npm](https://www.npmjs.com/package/openai) | [GitHub](https://github.com/openai/openai-node) | TypeScript SDK with typed responses, streaming, file uploads, and webhooks. |\n| openai-python | OpenAI | Python | Official | [PyPI](https://pypi.org/project/openai/) | [GitHub](https://github.com/openai/openai-python) | Python SDK with sync and async clients, streaming, uploads, and typed helpers. |\n\n### Developer Tools\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| go-github | GitHub REST API | Go | Community | [pkg.go.dev](https://pkg.go.dev/github.com/google/go-github/v74/github) | [GitHub](https://github.com/google/go-github) | Go client for GitHub REST endpoints with request and response types. |\n| octocrab | GitHub REST API | Rust | Community | [docs.rs](https://docs.rs/octocrab/latest/octocrab/) | [GitHub](https://github.com/XAMPPRocky/octocrab) | Async Rust client for GitHub REST endpoints with typed builders. |\n| octokit.js | GitHub REST and GraphQL APIs | TypeScript | Official | [npm](https://www.npmjs.com/package/octokit) | [GitHub](https://github.com/octokit/octokit.js) | GitHub SDK with REST, GraphQL, pagination, auth, and plugin support. |\n| PyGithub | GitHub REST API | Python | Community | [PyPI](https://pypi.org/project/PyGithub/) | [GitHub](https://github.com/PyGithub/PyGithub) | Python library for GitHub repositories, issues, pull requests, users, and orgs. |\n\n### Misc\n\n| Name | API | Language | Official / community | Package link | GitHub link | Notes |\n| --- | --- | --- | --- | --- | --- | --- |\n| google-maps-services-js | Google Maps Platform | TypeScript | Official | [npm](https://www.npmjs.com/package/@googlemaps/google-maps-services-js) | [GitHub](https://github.com/googlemaps/google-maps-services-js) | Node client for geocoding, directions, distance matrix, elevation, and Places. |\n| mapbox-sdk-js | Mapbox | TypeScript | Official | [npm](https://www.npmjs.com/package/@mapbox/mapbox-sdk) | [GitHub](https://github.com/mapbox/mapbox-sdk-js) | JavaScript SDK for Mapbox web services including geocoding and uploads. |\n\n---\n\n## How to Get Listed\n\n1. Check that the wrapper meets the [contribution rules](#contribution-rules).\n2. Open an issue with the **Add a wrapper** template if you want feedback first.\n3. Add the wrapper to the most specific category in `README.md`.\n4. Keep the row factual, short, and easy to verify from the package and repo links.\n5. Open a pull request using the template.\n\nNew categories should be proposed only when at least three maintained wrappers\nfit the category and do not fit an existing section.\n\n---\n\n## What Makes a Good API Wrapper?\n\nA good API wrapper should reduce integration work without hiding important API\nbehavior. Strong candidates usually have:\n\n- clear install and quickstart docs\n- typed requests and responses, or idiomatic type hints for the language\n- practical coverage of auth, pagination, retries, errors, and rate limits\n- examples for real workflows, not only trivial requests\n- tests or generated clients that track the upstream API\n- visible maintenance and recent compatibility work\n- a license that allows developers to use the project safely\n\n---\n\n## Contribution Rules\n\nSubmissions must:\n\n- be maintained and work with the current upstream API\n- have documentation with usage examples\n- have a license\n- link to both a package page and a GitHub repository\n- describe a wrapper or SDK for a specific public API\n- avoid spam, affiliate links, paid placement, and unverifiable claims\n\nSubmissions should not include:\n\n- general HTTP clients\n- SDK generators without a specific wrapped API\n- abandoned repositories\n- duplicate wrappers for the same API and language unless there is a clear reason\n- stars, downloads, latest release dates, or other fields that are not generated automatically\n\nRead [CONTRIBUTING.md](CONTRIBUTING.md) for the full format and review process.\n\n---\n\n## Related Lists\n\n- [Public APIs](https://github.com/public-apis/public-apis) — if you are looking for APIs to integrate with\n- [Awesome Go](https://github.com/avelino/awesome-go)\n- [Awesome Node.js](https://github.com/sindresorhus/awesome-nodejs)\n- [Awesome Python](https://github.com/vinta/awesome-python)\n\n---\n\n## Contributors\n\nThanks to everyone who has contributed.\n\n[![Contributors](https://contrib.rocks/image?repo=Api-Wrappers/awesome-api-wrappers)](https://github.com/Api-Wrappers/awesome-api-wrappers/graphs/contributors)\n","projects_url":"https://awesome.ecosyste.ms/api/v1/lists/api-wrappers%2Fawesome-api-wrappers/projects"}