APIドキュメントまとめ
はじめに
APIドキュメントの読み方
GPaymentsのActiveServer APIのドキュメントには、各APIの許可されるエンドポイントおよびリクエストHTTPメソッドが含まれています。たとえば、/api/v1/auth/3ri
はエンドポイントURLであり、許可されるHTTPメソッドはPOST
です。
エンドポイントの詳細を確認するには、エンドポイント・ボックスのいずれかをクリックし、詳細を表示します。以下のスクリーンショットのように表示されます。このスクリーンショットは、APIドキュメントの読み方を説明しています。
認証API
認証APIを使用すると、加盟店と決済代行会社が3Dセキュア2フローをeコマースサイトに統合できます。すべての認証APIは/api/v1/auth/...
で始まり、RESTFulの命名規則に従っています。利用可能な主な認証フローには3つあります。
アプリベース - 登録されたエージェント(加盟店、デジタル・ウォレットなど)によって指定されたアプリから発生したコンシューマー・デバイス上での取引中の認証。たとえば、コンシューマー・デバイス上の加盟店のアプリ内でチェックアウト・プロセス中に発生したeコマース取引などです。
ブラウザベース - ブラウザを使用してWebサイトから発生したコンシューマー・デバイスまたはコンピュータ上での取引中の認証。たとえば、Webサイト内でチェックアウト・プロセス中に発生したeコマース取引などです。
3DS Requestor Initiated (3RI) - 直接カード会員を介さないアカウント情報の確認。たとえば、アカウントがまだ有効であることを確認するサブスクリプションベースのeコマース加盟店などです。
最新の認証APIはこちらで確認できます。
項目条件の説明
各項目には下記のいずれかの条件が記載されています。
必須 - この項目はリクエストを送信する際に必ず必要です。ActiveServerはこの項目の有無を確認し、妥当性の確認を行います。必須項目には*印が記載されています。
条件付き - 項目に記載された条件が満たされていた場合にはリクエストに定義する必要があります。項目が定義されていればActiveServerは妥当性の確認を行います。送信されたJSONにこの項目が定義されていなければActiveServerは妥当性の確認を行いません。
オプション - オプションでリクエストに定義できます。項目が定義されていればActiveServerは妥当性の確認を行います。送信されたJSONにこの項目が定義されていなければActiveServerは妥当性の確認を行いません。
最新の認証APIはここからアクセスできます。
API認証方法
すべての認証APIエンドポイントは、クライアントとサーバーの手動による認証が必要なX.509認証によって保護されています。これは、ActiveServerによって発行されたクライアント証明書を使用して実行されます。
1.このガイドに従ってインスタンスがアクティブ化されていることを確認します。
2.ダッシュボードの加盟店ページから認証APIのクライアント証明書をダウンロードします。この証明書は.p12
形式です。
3.ユーザープロフィールページからCA証明書チェーンをダウンロードします。CA証明書は、最初の証明書がサーバーCAで、次にGPayments中間CA、最後にGPaymentsルートCAとなっている.pem
形式です。
4.統合ガイドまとめに従って、クライアント証明書を使用して認証APIをコールするように3DSリクエスターをセットアップできます。
Warning
インスタンスがアクティブ化されていない場合、DOWNLOAD
ボタンは表示されません。
管理API
管理APIは、加盟店の管理などの管理タスクの選択を実行するのに利用できます。すべての管理APIは/api/v1/admin/...
で始まり、RESTFulの命名規則に従っています。たとえば、こちらで説明されているcreating merchant
は、POST APIエンドポイント/api/v1/admin/merchants
で実行できます。
最新の管理APIはこちらで確認できます。
API認証方法
API認証はクライアント証明書を使用した認証APIと同様に実行されます。
1.このガイドに従ってインスタンスがアクティブ化されていることを確認します。
2.ダッシュボードのuser profileページから管理APIのクライアント証明書をダウンロードします。この証明書は.p12
形式です。
3.同ページからCA証明書チェーン証明書をダウンロードします。CA証明書は、最初の証明書がサーバーCAで、次にGPayments中間CA、最後にGPaymentsルートCAとなっている.pem
形式です。
4.HTTPクライアント・リクエスト内に含めることで、API認証に対してダウンロードしたクライアント証明書とCAバンドルを使用します。この方法については使用しているHTTPクライアントを参照してください。テストについてはAPIクイック・スタートに従ってください。
管理APIクイック・スタート
cURLを使用してAPIを試すには、opensslを使用し、以下のcurl
コマンドを使用して、X.509証明書をPEM形式に変換する必要があります。
1.https://www.openssl.org/からopensslコマンド ラインをダウンロードしてインストールします。
2.上記の管理API認証方法セクションに従って、クライアント証明書とCA証明書をダウンロードします。
3.ターミナルを開きます。
4.以下のコマンドを使用して.p12
ファイルから秘密鍵を抽出します。要求された場合はパスワードを入力します。
1 2 3 | ```bash openssl pkcs12 -in YOUR_P12_FILE_NAME.p12 -nocerts -out key.pem ``` |
5.以下のコマンドを使用して.p12
ファイルから証明書を抽出します。要求された場合はパスワードを入力します。
1 2 3 | ```bash openssl pkcs12 -in YOUR_P12_FILE_NAME.p12 -clcerts -nokeys -out crt.pem ``` |
6.AS管理APIエントリー ポイントを使用して、cURLリクエストを実行します。この場合、/api/v1/admin/merchants
から加盟店のリストが取得されます。
1 2 3 | ```bash curl -k https://your.server.address:7443/api/v1/admin/merchants --cacert cacerts.pem --cert crt.pem -v --key key.pem ``` |
7.以下のcURLレスポンスが表示されるはずです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | ```bash < HTTP/1.1 200 OK < Expires: 0 < Cache-Control: no-cache, no-store, max-age=0, must-revalidate < X-XSS-Protection: 1; mode=block < Pragma: no-cache < X-Frame-Options: DENY < Date: Mon, 27 May 2019 09:51:59 GMT < X-Total-Count: 1 < Connection: keep-alive < X-Content-Type-Options: nosniff < Strict-Transport-Security: max-age=31536000 ; includeSubDomains < Transfer-Encoding: chunked < Content-Type: application/json;charset=UTF-8 < Link: </api/v1/admin/merchants?page=0&size=20>; rel="last",</api/v1/admin/merchants?page=0&size=20>; rel="first" < * Connection #0 to host your.server.adress left intact [{"bins":"40001 (Test Acquirer)","merchantId":"123456789012345","name":"Test Merchant","status":"ENABLED","merId":"48f3b030-ed1d-4f7f-aa70-85cda288e0cb"}]% ``` |