API利用方法
CAC-APIの利用方法
CAC-APIは、URLとHTTPリクエストヘッダ、HTTPリクエストボディでパラメータを指定して利用します。お客様が作成されたクライアントプログラムから、以下の要領で、アクセスURLに対してリクエストしてください。
項目 | 規格 |
---|---|
プロトコル | HTTP/1.1 (https) |
HTTPメソッド | GET 、PUT、 POST のいずれか |
レスポンスフォーマット | JSON |
文字コード | UTF-8 |
タイムアウト | 180秒 |
アクセスドメイン | cac.api.iij.jp |
- httpでのリクエストは受け付けません。必ずhttpsを使用してください。APIを呼び出すプログラムは、リクエスト先が正当なものであることを確認するため、SSL証明書を検証することを推奨いたします。
- 短期間に極めて多数のAPIリクエストが行われた場合、サービスの健全性を保つためにAPIのリクエストを制限する場合があります。
APIリクエスト時のパラメータ
CAC-APIでは、パラメータをリクエストのURLやHTTPリクエストで指定します。CAC-APIで指定するパラメータは以下のとおりです。
- 共通/個別: パラメータの区分け
- 共通: すべてのAPIで共通のパラメータ
- API個別: APIごとに指定が異なるパラメータ
- リクエスト個別: リクエストごとに指定が異なるパラメータ
- 指定方法: 共通パラメータの指定方法
- パラメータ: 共通パラメータの名称
- URL: リクエストのURL
- HTTPヘッダ: HTTPリクエストヘッダ
- HTTPボディ: HTTPリクエストボディ
- 意味: 共通パラメータの意味
共通/個別 | 指定方法 | パラメータ | 意味 |
---|---|---|---|
共通 | URL | APIVersion | APIバージョン 参照: API一覧 |
共通 | URL | ServiceCode | サービスコード 参照: サービスコード |
API個別 | URL | API名 | API名称 参照: API一覧 |
リクエスト個別 | HTTPヘッダ | Expire | Signatureの有効期間 書式: YYYY-MM-DDThh:mm:ssZ |
共通 | HTTPヘッダ | SignatureMethod | Singature生成に用いるハッシュアルゴリズム 値: HmacSHA256, HmacSHA1 |
共通 | HTTPヘッダ | SignatureVersion | Signature生成ロジックのバージョン 値: 2 |
共通 | HTTPヘッダ | AccessKeyId | 使用するAccessKey 参照: AccessKey |
リクエスト個別 | HTTPヘッダ | Signature | 認証・リクエストの署名 参照: 認証・リクエストの署名 |
API個別 | HTTPボディ | APIごとに異なる | JSON形式のAPI個別のパラメータ 参照: API一覧 |
リクエスト
各パラメータは以下のように、URLまたはHTTPリクエストで指定します。
- URLに指定する個別パラメータは、個別パラメータが必要なAPIの場合にのみ指定します。
PUT /r/(APIVersion)/(ServiceCode)/(個別パラメータ)/(API名).json Host: cac.api.iij.jp Content-MD5: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Content-Type: application/json Date: Mon, 20 Jan 2014 12:34:56 GMT x-iijapi-Expire: (Expire) x-iijapi-SignatureMethod: (SignatureMethod) x-iijapi-SignatureVersion: (SignatureVersion) Authorization: IIJAPI (AccessKeyId):(Signature) (HTTPリクエストボディ: JSON形式のAPI個別のパラメータ)
レスポンスパラメータ
APIから返されるレスポンスには、すべてのAPIに共通のフィールドと、API毎に定義される個別のフィールドがあります。
以下に共通のフィールドを示します。
フィールド | タイプ | 意味 |
---|---|---|
Result.RequestId | String | APIリクエスト毎に割り当てられるユニークなID |
Result.ServiceCode | String | サービスコード 参照: サービスコード |
- 個別のパラメータはAPI一覧を参照してください