料金計算API概要#
はじめに#
料金計算サービスが提供するAPIを利用するためには、API認証が発行するトークンが必要です。
詳しくはこちらをご参照ください。
接続情報#
Host#
business-support-k5.jp-east-1.paas.cloud.global.fujitsu.com
各APIはHTTPSで提供します。
URL例#
https://business-support-k5.jp-east-1.paas.cloud.global.fujitsu.com/API/v2/api/creditcount
API一覧#
No | API名 | Method | URI |
---|---|---|---|
1 | 利用実績を登録する | POST | /API/v2/api/userecords |
2 | 利用実績を取り消す | DELETE | /API/v2/api/userecords |
3 | 利用実績を無効化する | PUT | /API/v2/api/userecords |
4 | 利用実績の件数を取得する | GET | /API/v2/api/userecordscount |
5 | 利用実績を検索する | GET | /API/v2/api/userecordlist |
6 | 重複した利用実績の件数を取得する | GET | /API/v2/api/userecordsoverlapcount |
7 | 重複した利用実績を検索する | GET | /API/v2/api/userecordsoverlap |
8 | 非同期処理状況を取得する | GET | /API/v2/api/asyncprocessstatus |
9 | 非同期処理のエラー情報を取得する | GET | /API/v2/api/asyncerror |
10 | 債権情報を削除する | POST | /API/v2/api/credit |
11 | 債権の件数を取得する | GET | /API/v2/api/creditcount |
12 | 債権を検索する | GET | /API/v2/api/credit |
13 | 債権明細の件数を取得する | GET | /API/v2/api/creditdetail |
14 | 債権明細を検索する | GET | /API/v2/api/creditdetaillist/{credit_id} |
15 | サービス料金情報を検索する | GET | /API/v2/api/servicepricemaster |
16 | サービス料金情報を編集する | POST | /API/v2/api/servicepricemaster |
17 | エラー情報の詳細を検索する | GET | /API/v2/api/errorinformation |
18 | エラー情報を検索する | GET | /API/v2/api/errorinformationlist |
19 | バッチを手動実行する | POST | /API/v2/api/manualexecute/calculations |
共通仕様#
No | 各APIにおける共通の仕様についての説明 |
---|---|
1 | 文字コードについて |
2 | null項目の返却値 |
3 | 更新系APIでの未設定項目処理 |
4 | 「version_info」について |
5 | ページング指定方法 |
6 | ソート項目 |
7 | フリー項目定義 |
8 | フリー項目1~フリー項目10定義 |
9 | 管理番号 |
1. 文字コードについて#
リクエストデータの文字コードはUTF-8を使用してください。
レスポンスデータの文字コードはUTF-8を使用しています。
2. null項目の返却#
API実行時、nullの項目は項目自体返却しません。
3. 更新系APIでの未設定項目処理#
各種更新系API実行時、未設定の項目はnullが設定されます。
4.「version_info」について#
「version_info」は排他制御に使用しています。 事前に取得した変更前情報の「version_info」を設定してください。 排他制御は「楽観的排他制御」です。
5. ページング指定方法#
APIにて取得可能な件数が多い場合、取得したい結果の件数を限定することが可能です。例えば、「開始位置」に「100」「終了位置」に「200」と指定することにより、検索結果の100件目から200件目のレコードが取得できます。また、検索結果の総件数を知りたい場合は件数検索を行うAPIを利用します。件数検索APIにて総件数を確認しその後ページング指定の検索を行うことにより、一覧画面のページングが実現できます。
ページング指定が可能なAPIは以下です。
No | API名 |
---|---|
1 | 利用実績を検索する |
2 | 重複した利用実績を検索する |
3 | 債権を検索する |
4 | サービス料金情報を検索する |
ページング時に設定するリクエストパラメータは以下です。
No | リクエストパラメータ |
---|---|
1 | start_position (開始位置) |
2 | end_position (終了位置) |
6. ソート項目#
検索APIにて、ソート項目として指定可能な項目名を「ソート項目名」の値として定義し、それぞれに「ソート順」を指定することで取得結果のソートが可能です。 ソート項目として指定可能な項目は以下の通りです。
No | API名 | ソート項目名 |
---|---|---|
1 |
service_contract_id |
|
use_start_date |
||
use_start_time |
||
receipt_code |
||
use_record_id |
||
2 |
service_contract_id |
|
use_start_date |
||
use_start_time |
||
receipt_code |
||
use_record_id |
||
3 |
target_month |
|
bill_to_id |
||
4 |
entry_system_date |
|
entry_id |
||
update_system_date |
||
update_id |
||
service_code |
||
service_name |
||
service_division |
||
apply_start_date |
||
apply_end_date |
||
reception_start_date |
||
reception_end_date |
||
release_start_date |
||
release_end_date |
||
basic_product_id |
||
administration_number |
||
product_type |
||
category_id |
||
status |
||
display_priority |
||
free_item1 |
||
free_item2 |
||
free_item3 |
||
free_item4 |
||
free_item5 |
||
free_item6 |
||
free_item7 |
||
free_item8 |
||
free_item9 |
||
free_item10 |
7. フリー項目定義#
APIの仕様として既に準備されている項目以外にAPI利用者が任意の項目を「フリー項目」部分に定義し登録することが可能です。
フリー項目の設定または取得が可能なAPIは以下です。
No | API名 |
---|---|
1 | サービス料金情報を検索する |
2 | サービス料金情報を編集する |
フリー項目の定義の仕方#
以下は、「サービス料金情報を編集する」の入力パラメータです。 任意に定義可能な部分は「free_item」オブジェクトの中です。 オブジェクト内であれば、配列やオブジェクトを任意に定義することが可能です。ただし、「free_item」自体は必ずオブジェクトとして定義する必要があります。
「free_item」の定義例
{ "service_code":"0000000001", "service_division":"0", "apply_start_date":"20170801", "apply_end_date":"20170831", "reception_start_date":"20170801", "reception_end_date":"20170831", "product_type":"1", "administration_number":"3", "free_item": { -- ここから "free1":"100", "free2":"テスト", |- 項目名、項目数含め任意に定義可能 "free3":"ABC" }, -- ここまでがオブジェクト "free_item1": "任意項目1", "free_item2": "任意項目2", "free_item3": "任意項目3" }
「free_item」の誤った定義例「配列として定義」
{ "service_code":"0000000001", "service_division":"0", "apply_start_date":"20170801", "apply_end_date":"20170831", "reception_start_date":"20170801", "reception_end_date":"20170831", "product_type":"1", "administration_number":"3", "free_item":[ -- オブジェクトではなく、配列として定義するのはNG { "free1":"100", "free2":"テスト", "free3":"ABC" } ], "free_item1": "任意項目1", "free_item2": "任意項目2", "free_item3": "任意項目3" }
「free_item」の誤った定義例「単一の項目として定義」
{ "service_code":"0000000001", "service_division":"0", "apply_start_date":"20170801", "apply_end_date":"20170831", "reception_start_date":"20170801", "reception_end_date":"20170831", "product_type":"1", "administration_number":"3", "free_item":"テスト", -- オブジェクトではなく、単一の項目として定義するのはNG "free_item1": "任意項目1", "free_item2": "任意項目2", "free_item3": "任意項目3" }
フリー項目の変更の仕方#
任意に定義されたフリー項目はAPIの内部では、1つの文字列として扱います。そのため、任意に定義されたフリー項目の一部の項目のみを変更することは行えません。
登録時のデータを以下です。
{ "free_item":{ "free1":"100", "free2":"テスト", "free3":"ABC" } }
変更を行いたい項目「free2」のみを変更したい場合は以下ように一部の項目ではなく、free_itemの全体の内容も定義する必要があります。
{ "free_item":{ "free1":"100", "free2":"富士通太郎", -- 変更する項目 "free3":"ABC" } }
その他注意事項#
フリー項目の登録可能文字数は各APIに定義されています。カウントされる文字は項目の定義、設定値だけでなく、{}や"",:[]も対象です。
クレジットカード情報を登録する場合は、お客様責任で登録をお願いします。
8. フリー項目1~フリー項目10定義#
API利用者が任意の設定値を「フリー項目1~フリー項目10」部分に登録することが可能です。
また「フリー項目1~フリー項目10」を指定した検索も可能です。
フリー項目1~フリー項目10の設定または取得が可能なAPIは以下です。
No | API名 |
---|---|
1 | サービス料金情報を検索する |
2 | サービス料金情報を編集する |
フリー項目1~フリー項目10の登録の仕方#
以下は、「サービス料金情報を編集する」の入力パラメータです。 任意に登録可能な部分は「free_item1」~「free_item10」の中です。
「free_item1」~「free_item10」の定義例
{ "service_code":"0000000001", "service_division":"0", "apply_start_date":"20170801", "apply_end_date":"20170831", "reception_start_date":"20170801", "reception_end_date":"20170831", "product_type":"1", "administration_number":"3", "free_item": { "free1":"100", "free2":"テスト", "free3":"ABC" }, "free_item1": "任意項目1", -- 「free_item」と異なりオブジェクトではなく、単一の項目として定義します "free_item2": "任意項目2", "free_item3": "任意項目3" }
その他注意事項#
クレジットカード情報を登録する場合は、お客様責任で登録をお願いします。
9. 管理番号#
「サービス料金情報を編集する」APIにて、登録時に採番される一意のIDに対してそれぞれ異なる「管理番号」を登録できます。たとえば、管理番号ごとに「申請」、「承認」など異なるステータスの保持や、登録内容の変更を行うごとに異なる管理番号を付与することで変更履歴の保持ができます。
・登録は必須です。値は「1」から「999」の間で任意に付与できます。
・一意のIDに対して同じ「管理番号」の値を登録することはできません。
・登録済みの「管理番号」の値の変更はできません。
イメージ例:異なるステータスの保持
管理番号が登録可能なAPIと、各APIで採番される一意のIDは以下の通りです。
No | API名 | 採番されるID |
---|---|---|
1 | サービス料金情報を編集する | サービスコード、料金プランコード、料金コード、計算要素コード、計算要素連番、料金表連番、割引表通番 |
リクエストヘッダー情報#
各API共通ヘッダー
Name | Type | Description |
---|---|---|
Access-Token | object | アクセストークン取得APIで取得したトークン |
locale | object | ロケール情報の設定 |
Content-Type | object | application/json |
エラー情報#
API実行エラーの際、レスポンスのボディーに返却されます。
Name | Type | Description | |
---|---|---|---|
errorLevel |
string |
エラーレベル |
|
framework |
object |
フレームワークオブジェクト |
|
systemErrorCode |
string |
システムエラーコード |
|
business |
object |
業務オブジェクト |
|
businessErrorInfo |
string |
業務エラー情報 |
|
responseErrorCode |
string |
応答エラーコード |
|
embeddedString |
string |
エラーメッセージ |