--- id: apiclient version: "1.0.4" license: MIT license_treatment: permissive maintenance: abandoned --- # apiclient — Framework for making good API client libraries using urllib3. License: permissive · Maintenance: abandoned · Downloads: 140.7K/mo ## What it is and what it does apiclient is a minimal framework for building HTTP API client libraries on top of urllib3. It provides a base APIClient class that handles connection reuse with Keep-Alive, thread-safe request execution, and built-in rate limiting via a RateLimiter utility. You subclass APIClient, set a BASE_URL, and call the inherited call() method to make requests; the framework handles URL composition, response parsing (JSON by default), and connection management. The package is designed for simplicity and extensibility—you can override methods like _compose_url() or _handle_response() to adapt the client to different API conventions (JSON encoding, YAML responses, custom authentication). However, the project has been abandoned since 2019 with no active maintenance, and Python 3 support was last updated in 2016, making it risky for production use on modern Python versions. Use it for: - Build a lightweight REST API client for a third-party service without heavy framework overhead. - Implement rate limiting on outbound API calls to respect API quotas and avoid throttling. - Create a thread-safe HTTP client that reuses connections efficiently for high-concurrency scenarios. - Extend the base client class to handle non-standard API response formats or authentication schemes. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. A lightweight framework for building HTTP API client libraries with connection pooling, rate limiting, and thread-safe request handling via urllib3. No. The package is abandoned (last release 2019-03-21, no commits in 2703 days) and has not been tested against modern Python versions since 2016. High install friction combined with no active maintenance makes it unsuitable for new projects. Consider modern alternatives like requests, httpx, or aiohttp instead. ## Install pip install apiclient uv add apiclient poetry add apiclient ## Installing apiclient Before you install: High install friction reported. Package is abandoned as of 2019-03-21 with no maintenance activity in 2703 days; last Python 3 fixes were in 2016. No runtime dependencies, but age and lack of maintenance signal risk for modern Python versions. License in practice: MIT license (permissive) places no restrictions on use, modification, or distribution. Suitable for commercial and open-source projects without obligation to share modifications. Quickstart: from apiclient import APIClient class MyAPI(APIClient): BASE_URL = 'https://api.example.com/' client = MyAPI() response = client.call('/endpoint', params={'key': 'value'}) Package is abandoned and untested against modern Python versions; Python 3 compatibility was last addressed in 2016. Verify before relying: - Whether the package works reliably with current Python 3.x versions given no maintenance since 2016. - Whether urllib3 dependency is implicitly required or if it must be installed separately. - Current state of the codebase regarding security or compatibility issues not tracked in OSV. ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: high - Maintenance: abandoned - Downloads: 140.7K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags api client framework, http client library builder, rate limiting http client, urllib3 wrapper, rest api client, connection pooling http, threadsafe http requests, abandoned, legacy-http [View on SkillFed](https://skillfed.io/packages/apiclient) · [View on PyPI](https://pypi.org/project/apiclient/)