3 APIの呼び出し方法

Mercury Cloud OpenAPIの呼び出し方法について記載しています。

3.1 ベースURL

基本サービスエンドポイントはこのような記述です。

https://domain.com/openapi/face/v1

Mercury Cloud APIはデータプライバシーを確保するために、HTTPS経由でのAPIのみ提供しています。

domain.comは、お客様のサービス地域によって異なる場合があります。この情報に関しては、「サービス開始のご連絡」メールで提供されています。

3.2 共通パラメータ

各APIの呼び出しには、いくつかの共通パラメーター、HTTPメソッド、アプリID、アクセスキー、およびシークレットキーが必要です。

GETPOSTDELETE は、Mercury Cloudで使用されるHTTPメソッドです。各APIのメソッドの詳細については、APIリファレンスを参照してください。こちらのHTTPメソッドはAPI認証の部分でも使用されます。

アプリIDやアクセスキー、およびシークレットキーは、「サービス開始のご連絡」メールで提供されています。 これらは安全な場所に保管し、他人に開示しないでください。 これらはAPI URLの設定とAPI認証トークンの計算時に使用されます。

3.3 API認証

すべてのMercuryAPIは、クライアント検証するためにAPI認証トークンを必要とします。各APIを呼び出す際に、2つのヘッダー(x-dateとAuthorization)が必要です。それらが含まれていない場合、401のHTTPエラーコードが表示されます。

x-dateヘッダー

x-dateヘッダーは、RFC-7231形式でのUTC日付と時刻の形式を使用します。

例:

これは「2021-07-09T01:51:02Z」の時間を示しています。x-dateは現地時間ではなく、GMTタイムゾーンの時間であることにご注意ください。

Authorizationヘッダー

Authorizationヘッダーは指定されたAPIパス、HTTPメソッド、アプリID、アクセスキー、およびシークレットキーに基づいて生成されます。特徴DBに関連する一部のAPIではDB IDも必要となります。Authorizationは次のフォーマットに従います。

一般的なAuthorizationヘッダー例は次のとおりです。

hmac username はアクセスキーです。この例にある005c5acf-5ea9-499c-8d3e-690413f9b5b9 は、お客様のアクセスキーに置換してください。

signature はHMAC-SHA256によって暗号化され、さらにbase64でエンコードされた文字列です。

ステップバイステップで手順を説明します。

まず暗号化される前のmessageを組み立てます。暗号化前の一般的なmessageの例は次のとおりです。

x-datethe x-date headerで作成される内容と同様です。

POST はHTTPメソッドです。使用するAPIのHTTPメソッドと一致させてください。

/openapi/face/v1/abc1a8a7-038f-4f9a-b98a-5b602978b135/detect はURLパスです。abc1a8a7-038f-4f9a-b98a-5b602978b135はアプリIDです。ここはお客様のアプリIDに置換ください。またAPIのURLパスも使用するAPIに置換してください。一部のAPIではDB IDも必要です。

例:

aed37153-16b6-4f19-a479-302049e44000 はDB IDです。

シークレットキーblFWSvhp9pRz2JnRHnfvkFeAuApClhKgを使用して、最初に作成した以下のメッセージを暗号化にします。

以下の内容が出力されます。

最後にbase64でエンコードすると、signatureは次のように完成されます。

このsignatureを使用すると、上記と同じようなのAuthorizationヘッダーが完成されます。

これで、x-date HeaderAuthorization Headerを利用して、/openapi/face/v1/{app_id}/detectのAPI呼び出しができます。

3.4 ヘッダー作成ツールサンプル

3.5 SwaggerHubで"Try it out"

SwaggerHubでは、「Try it out」ボタンを使用してブラウザーから直接API呼び出しをテストできるインタラクティブな方法を提供しています。Mercury Cloud Interactive APIドキュメントでは、この機能を使用する前に特別な認証を行うことが必要です。ここでは、Mercury Cloud InteractiveAPIドキュメントの「Try it out」機能を使用するための方法を解説します。

3.5.1 ヘッダーを準備

ヘッダー作成ツールで、x-dateヘッダーAuthorizationヘッダーを準備します。

3.5.2 サーバーを選択

"Servers"のドロップダウンリストをクリックして、サービスエリアに応じたサーバーを選択してください。

サーバーを選択

3.5.3 Authorizationヘッダーで認証

サーバーリストの右側にある「Authorize」ボタンをクリックしてください。

Authorize

次の画面が表示されます。Authorizationヘッダーを「Value」に貼り付けて、「Authorize」ボタンをクリックしてください。

Authorizationを有効

これでAuthorizationヘッダーが設定されました。再認証するには「Logout」ボタンをクリックして、上記の手順をやり直してください。

Authorizationヘッダーは時間に依存するため、APIを呼び出す度に再承認する必要があります。

Authorizationを取り消し

3.5.4 パラメータを入力して試してみてください

これでAPI呼び出しを試すことができます。 List Feature DatabaseのAPIを例として試してみます。

Try it outボタン

「Try it out」ボタンをクリックすると「Execute」ボタンが表示されます。x-dateとapp_idパラメータを入力し、「Execute」ボタンをクリックしてください。

Execute

APIのレスポンスおよびいくつかの関連情報が表示されます。

実施結果

Last updated

Was this helpful?