APIの設計思想について

作成者:APIteam1 作成日:

三菱UFJ銀行 API事務局です。
第2回目は「APIの設計思想」をテーマに サマータイヤ 235/50R18 97V ブリヂストン ネクストリー & マーベリック 1010S 8.0-18 タイヤホイール4本セット、当行APIの考え方を紹介します。

システムを開発する上で、クラスなどのモジュール設計(モジュールの単位や関係性などの設計)は欠かせません。当行APIにおいても、どのような粒度で開発するかを様々な観点で検討しました。
今回は BLITZ/ブリッツ DAMPER ZZ-R SpecDSC(ダンパーダブルゼットアール スペックDSC) オデッセイ/RB1、RB2、RB3、RB4 商品番号:93783、APIの粒度とそれを決定した経緯、APIのURI(エンドポイント)設計の考え方について、銀行APIとして工夫した点を交えて紹介します。

1. 当行APIで提供しているサービスの粒度(単位)

当行のAPIは、インターネットバンキング(三菱UFJダイレクト、BizSTATION)で提供している複数のサービスから選んだ一部のサービスをAPIとして提供しています。
各APIでは OGK RT-33X ホワイト #XXXL 《オージーケー 4966094552671》、

NRマジック V-DRAGファイナル クロームメッキ ライブDio/ZX/SR/J 《エヌアールマジック MV9980-H10000》,[#tong##]

画像はイメージです2スト/チャンバーメーカー エヌアールマジック商品名 NRマジック V-DRAGファイナル クロームメッキ ライブDio/ZX/SR/Jカタログ品番 P027-0768メーカー 品番MV9980-H10000JANコード4547567398028定価(税抜)\23,000□取寄適応車両 ライブDio/ZX/SR/J色 クロームメッキ仕上げメッキ仕上げキャッチフレーズ 当社が94年より開発したVES構造は、低速・中速・高速のオールラウンドで通用するチャンバー特性の確保に成功。従来スポーツチャンバーと比較し(当社比)、燃費20%-40%UPするとと共にCo2も20%-40%削減のため、地球環境にもやさしいです。備考 ご注意!!盗難防止トルクスボルトはオプション品番P032-7992、2コセットはP032-7994、OASISキャタライザーはP032-7996、サイレントカコウはオプション品番P032-7998を一緒にご注文して下さい。※従来と掛率が異なります。 ※号機番号と適応車種を必ずご確認のうえ、ご注文くださいますようお願いいたします。    ご不明点等は、ご注文前にお問合せください。 ※掲載商品と実際の商品との色合いが異なる場合がございます。ご了承の程、宜しくお願いします。 ※商品は予告なく仕様の変更や販売を終了している場合がございますので予めご了承下さい。 ※レース専用パーツを装着しての一般公道走行は禁止されています。

、例えば「口座API」の場合、お客さまの残高照会、入出金明細照会などを取得することができます。インターネットバンキングで提供しているサービスを踏まえたAPIの粒度となっています。

2. APIの設計方法とURI(エンドポイント)の考え方

NRマジック V-DRAGファイナル 銀 クロームメッキ ライブDio/ZX/SR/J 《エヌアールマジック MV9980-H10000》 7J

APIの設計にあたり、使い勝手を重視しRESTfulでシンプルな設計を行うという方針のもと、開発を行いました。APIの設計では、オブジェクト指向の考え方を採用しており、API化するサービスをクラス、プロパティ(フィールド)、メソッドに落とし込んで、設計を進めました。例えば、残高照会や入出金明細照会を行う口座APIの場合、「口座」というクラスに対して、「残高情報」、「入出金明細情報」といったプロパティが存在します。これらの情報(プロパティ)を取得するために (クーポン配布中) SPICE GSX1400 -07 タクティカルステップ 3ポジション ブラック 0102BSB1S101B 【送料無料】(北海道・沖縄除く)、HTTPメソッドのGET/POSTを使用して、APIを呼び出すシンプルな設計としました。
また、API数を不必要に増やさないために、1つのAPI(=リソース)に対し、複数のオペレーションが含まれる作りとしています。例えば、法人APIの一つである「口座API」には「口座残高照会」、「入出金明細照会」、「振込入金明細照会」の3つのオペレーションが含まれます。

(2) URI(エンドポイント)の考え方

APIのリクエスト先であるURI(エンドポイント)には、APIのバージョン、API名称、リクエストパラメータなどが含まれています。URIをHTTP(GET/POST)で呼び出すことで、APIの応答を実現しています。上記のオブジェクト指向の考え方を踏まえた、URIとしています。 URIの構造など、くわしくはAPI仕様を当開発者ポータルに記載しています。(画面上部の メニュー>API をクリック)

3. 開発で工夫した点

当行APIの特徴は前述したとおりですが、ここでは実際のシステム開発時における工夫した点を紹介します。
プロジェクトの初期段階では 、検討中のAPIが実際に使えるものなのか不明確だったため、ベータ版として当行APIの利用が見込まれる事業者の皆さまに仕様やテスト環境を提供し、フィードバックを頂くプロセスを経て、最終的に公開するAPIのURIやオブジェクトの設計を進めました。
例えば、「入出金情報は履歴のサイズ(明細数)が大きくなるため、工夫が必要ではないか」という声を受け、1件のリクエストに対して、履歴件数の上限を設けることにしました。一定の履歴件数を超える場合は、「次の明細開始番号」を返却し、次のAPIリクエスト時に開始番号を指定する設計としました。その他にも、テストデータやエラーレスポンスに関するご要望に対する取り込みも行っています。
また、2017年7月に全国銀行協会にて纏められた「オープンAPIのあり方に関する検討会報告書」の仕様標準にも準拠する形としています。

以上、当行APIの粒度や考え方について、紹介しました。
当開発者ポータルでは 【USA在庫あり】 ムースレーシング MOOSE RACING パンツ エクスペディション 黒/灰 38インチ 2901-5644 HD、テスト用のAPIを実際にお試しいただけます。(画面上部の メニュー>API をクリック)APIの仕様やテスト用データも掲載しているので、ぜひご活用ください!
(APIを提供する上での各システムの役割は、ブログ記事「 APIに関連するシステムの役割について」をご参照ください)

タグ: 

最新記事

電子決済等代行業登録企業に聞く!電代業登録への道のり
APIを使った安全・安心なサービスを提供するために必要なこと
会計クラウドサービスを幅広く展開、

NRマジック V-DRAGファイナル クロームメッキ ライブDio/ZX/SR/J 《エヌアールマジック MV9980-H10000》

、freee様に聞くAPI活用法とは?