# API リファレンス ## クライアント ```python class Client(api_key=None, timeout=30, retry=True) ``` API と相互作用するためのメインクライアントクラス。 **パラメータ:** - `api_key` (str): 認証用の API キー - `timeout` (int): リクエストのタイムアウト(秒) - `retry` (bool): 失敗時の自動再試行を有効にする ### メソッド #### get(endpoint, params=None) GET リクエストを実行します。 **パラメータ:** - `endpoint` (str): API エンドポイント パス - `params` (dict): クエリ パラメータ **戻り値:** レスポンス オブジェクト **例外:** API がエラーを返す場合、APIError を発生させます ```python response = client.get('/users/123') ``` #### post(endpoint, data=None) POST リクエストを実行します。 **パラメータ:** - `endpoint` (str): API エンドポイント パス - `data` (dict): リクエスト本文データ **戻り値:** レスポンス オブジェクト ```python data = {'name': 'John', 'email': 'john@example.com'} response = client.post('/users', data=data) ``` #### put(endpoint, data=None) PUT リクエストを実行します。 **パラメータ:** - `endpoint` (str): API エンドポイント パス - `data` (dict): リクエスト本文データ **戻り値:** レスポンス オブジェクト ```python updates = {'name': 'Jane'} response = client.put('/users/123', data=updates) ``` #### delete(endpoint) DELETE リクエストを実行します。 **パラメータ:** - `endpoint` (str): API エンドポイント パス **戻り値:** レスポンス オブジェクト ```python response = client.delete('/users/123') ``` ## レスポンス API レスポンスを表します。 **属性:** - `status_code` (int): HTTP ステータス コード - `data` (dict): レスポンス本文データ - `headers` (dict): レスポンス ヘッダー ### メソッド #### json() レスポンスを JSON として解析します。 **戻り値:** 解析された JSON データ ## 例外 ### APIError API がエラーを返す場合に発生します。 ### NetworkError ネットワーク エラーが発生した場合に発生します。 ### AuthenticationError 認証に失敗した場合に発生します。 ### RateLimitError レート制限を超えた場合に発生します。 ## 定数 ### API_BASE_URL API リクエストのベース URL。 ```python API_BASE_URL = 'https://api.example.com' ``` ### API_VERSION 現在の API バージョン。 ```python API_VERSION = 'v1' ``` ## 例 ### 初期化 ```python from your_package import Client client = Client(api_key='your-key') ``` ### リソースの取得 ```python response = client.get('/users/123') if response.status_code == 200: print(response.data) ``` ### リソースの作成 ```python data = {'name': 'John', 'email': 'john@example.com'} response = client.post('/users', data=data) ``` ### エラーハンドリング ```python try: response = client.get('/users/123') except APIError as e: print(f"エラー:{e}") ```