API v2
APIの呼び出し
WebSocketAPI以外の全てのAPIは、承認情報(APIキー又は、OAuth2のアクセストークン)を指定する必要があります。 決済情報の取得や、アカウント情報、契約情報の更新等にはOAuth2のアクセストークンが必要です。
APIキーはコントロールパネルから、発行ができます。
各種APIにはそれぞれ権限(スコープ)が必要となります。 APIキー、及びOAuth2にそれぞれ紐づけられた権限が不足している場合、APIはエラーを返します。
APIキーの権限等の変更は最大5分間反映されません。
APIキーの指定の仕方
リクエストヘッダー
リクエストヘッダーにAuthorizationを使用します。
Authorization: Basic BasicBase64
BasicBase64には、UserにAPIキーを、Passwordは無しとして使用します。
BasicはUserとPasswordをコロンで結合しBase64でエンコードしたもです。
クエリパラメータ
または、URLにクエリパラメータとして渡します。※非推奨
https://api.dmdata.jp/v2/telegram?key=APIキー
アクセストークンの指定の仕方
リクエストヘッダーにAuthorizationを使用します。
Authorization: Bearer アクセストークン
URLパラメータ
APIはリソースを明確に指定する方法として、URLにIDなどを指定してリソースを取得・更新・削除するものがあります。
例
リソースID: 2500
リファレンス上のURL: https://api.dmdata.jp/v2/apikey/:id
とした場合、下記のようにURLを作成します。
https://api.dmdata.jp/v2/apikey/2500
カーソルトークン
このAPIでは、1回のレスポンスで返しきれない情報があり、その場合レスポンス内にnextToken
を含めます。このnextToken
を同じエンドポイントにクエリパラメータcursorToken
に指定すると、続きの情報がレスポンスされます。
また、Telegram List v2 や、JmaFile List v2 ではPuLLで取得する際の通信量、処理量削減のため、レスポンス内のnextPooling
を、次回のクエリパラメータcursorToken
に指定してください。
これらのnextToken
、nextPooling
には次のリソース参照情報が含まれていますが、API検索クエリパラメータなどの情報は含まれないため、他のAPI検索クエリパラメータを指定していた場合、cursorToken
を使用する際にも前回と同様にAPI検索クエリパラメータを指定してください。
例
電文リストの続きを取得したい場合 ※承認情報は省略
1回目 リクエスト
https://api.dmdata.jp/v2/telegram?type=VXSE53
レスポンス
{
"responseId": "66d23c0cede77d82",
"responseTime": "2021-04-01T00:00:00.000Z",
"status": "ok",
"items": [{},{},{}],
"nextToken": "AAAAAA0000",
"nextPooling": "....."
}
2回目 リクエスト
https://api.dmdata.jp/v2/telegram?type=VXSE53&cursorToken=AAAAAA0000
とする。
標準エラー
APIは標準的なエラーを次の通り返答します。
{
"responseId": "66d23c0cede77d82",
"responseTime": "2021-04-01T00:00:00.000Z",
"status": "error",
"error": {
"message": "Authentication required.",
"code": 401
}
}