以下の共通APIをTable単位で個別提供します。
API | Method | サポートTable | URL, リクエスト/レスポンスのヘッダ/ボディ | 例 | |||
---|---|---|---|---|---|---|---|
主キーで特定 | GET | QEntity | URL | http://.../(資源名)/(主キー) | http://.../qtypes/設備管理 | ||
リクエスト | ヘッダ | なし | なし | ||||
ボディ | なし | なし | |||||
レスポンス | ヘッダ | ETag: "バージョン" | ETag: "4" | ||||
ボディ | JSON形式の特定結果資源 | {name:"設備管理", version:4} | |||||
検索 | GET | QType | URL | http://.../(資源名)? | http://.../qtypes? | ||
リクエスト | ヘッダ | なし | なし | ||||
ボディ | なし | なし | |||||
レスポンス | ヘッダ | なし | なし | ||||
ボディ | JSON形式の検索結果オブジェクト。 class 結果 { | {unlimitedRecordCount:210, | |||||
登録 | POST | QEntity | URL | http://.../(資源名) | http://.../qtypes | ||
リクエスト | ヘッダ | なし | なし | ||||
ボディ | JSON形式の資源 | {name:"設備管理", version:-1} | |||||
レスポンス | ヘッダ | ETag: "バージョン" | ETag: "1" | ||||
ボディ | JSON形式の登録後資源 | {name:"設備管理", version:1} | |||||
削除 | DELETE | QType | URL | http://.../(資源名)/(主キー) | http://.../qtypes/設備管理 | ||
リクエスト | ヘッダ | If-Match: "バージョン" | If-Match: "5" | ||||
ボディ | なし | なし | |||||
レスポンス | ヘッダ | なし | なし | ||||
ボディ | なし | なし |
ポイント
ヘッダの「なし」は、「データ管理WebAPIが積極的に付加するヘッダはなし」の意味です。HTTPの一般的なヘッダと、JSPN形式でのリクエスト・レスポンスを示す[Content-Type:application/json][Accept:application/json]は存在しています。
上記のレスポンスは、正常時の説明です。
APIが返し得るHTTPステータスコードは、以下のとおり、API種別毎に決まります。
コード | 意味(W3C) | 意味(製品) | id特定 | 検索 | 登録 | 削除(DEL) |
---|---|---|---|---|---|---|
200 | OK | 処理成功 | ○ | ○ | ○ | |
201 | Created | 生成処理成功 | ○ | |||
400 | Bad Request | リクエスト違反 | ○ | ○ | ○ | ○ |
404 | Not Found | リソースがない | ○ | ○ | ||
412 | Precondition Failed | オプティミスティック同時実行制御による拒絶 | ○ | |||
500 | Internal Server Error | その他のエラー | ○ | ○ | ○ | ○ |
ポイント
上記ステータスコードは、Interstage AR Processing Serverが返すコードです。以下のようなコードはInterstage AR Processing Serverではなく、WEBサーバ/JavaEE実行環境が返す場合があります。
「401 Unauthorized」等のHTTPの正常系ステータスコード。
HTTPメッセージフォーマット/パスフォーマット/JSONフォーマット/値型違反を表す400/500番台の異常系ステータスコード
上記ステータスコードのうち、200番台以外で返る場合は、レスポンスボディに、以下のような例外情報が入ります。例外情報につきましては、マニュアル「メッセージ集」を参照してください。
説明 | 例 |
---|---|
JSON形式の例外オブジェクト。 class 例外 { messageは、メッセージ出力形式のコンポーネント名以降の出力と同じ。 | {"message":"QDWEB: ERROR: 13201: QType does not exist."} |