Skip to main content

Universal HTTP API client supporting GitHub, GitLab, Bitbucket and other platforms

Project description

Universal HTTP API Client

Universal HTTP API client with platform-specific adapters for GitHub, GitLab, Slack, and Notion.

Features

  • Multi-Platform Support: GitHub, GitLab, Slack, Notion APIs
  • Smart Caching: Automatic request caching with configurable TTL
  • Rate Limiting: Built-in rate limiting with platform-specific rules
  • Error Handling: Comprehensive error handling with custom exceptions
  • Async Support: Full async/await support for all operations
  • Type Safety: Complete type annotations with mypy support

Installation

pip install universal-http-api-client

Quick Start

from universal_http_api_client import HTTPAPIClient, Platform

# GitHub API
client = HTTPAPIClient(Platform.GITHUB, "your-token")
repo = client.get_repository("owner/repo")
client.close()

# Slack API
slack_client = HTTPAPIClient(Platform.SLACK, "your-slack-token")
response = slack_client.send_message("channel", "Hello World!")
slack_client.close()

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yeonjae_universal_http_api_client-1.0.3.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file yeonjae_universal_http_api_client-1.0.3.tar.gz.

File metadata

File hashes

Hashes for yeonjae_universal_http_api_client-1.0.3.tar.gz
Algorithm Hash digest
SHA256 33c2b90e928062c4d1bf61f93fd29b0b6c20e297a81eded271f8ec317b52a487
MD5 1f569d2fde3c16fd310fb353883a7ec2
BLAKE2b-256 ed17d6471c916f86f3d23bff3b1aad2713bb6502e1fd9f139d9ea78bdc9407c8

See more details on using hashes here.

File details

Details for the file yeonjae_universal_http_api_client-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for yeonjae_universal_http_api_client-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 bf9779a3044cf2fc1f63427872347f2be709fe7a9d720c37ddcc8ca5d7926fbb
MD5 ef8c133e4ba20e70fc65722e38c51ca4
BLAKE2b-256 cabf253467cc955c281e796abb5ec43c9947d4cc49f7397e2096b1411313a1fd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page