データ フォーマットと HTTP コード
任意の API 呼び出しに対して入力または出力された応答データは、JSON 形式で表示できます。JSON (JavaScript Object Notation)は、軽量のデータ交換形式です。JSON 形式で応答を取得するには、application/json 値を持つ Accept リクエスト ヘッダを追加します。
cad140jp
データ応答の形式
任意の API 呼び出しに対して入力または出力された応答データは、JSON 形式で表示できます。JSON (JavaScript Object Notation)は、軽量のデータ交換形式です。JSON 形式で応答を取得するには、application/json 値を持つ Accept リクエスト ヘッダを追加します。
以下は、JSON 形式の標準アイテムの例です。
[{"item_id":"1","product_id":"1","stock_id":"1","qty":"99.0000","low_stock_date":null},{"item_id":"2","product_id":"2","stock_id":"1","qty":"100.0000","low_stock_date":null}]
HTTP の応答コード
SCIM 標準では、操作の成功または失敗を示すのに HTTP 応答コードを使用します。JSON 形式のすべてのリクエストに対し、エラーを説明する該当の HTTP ステータス コードと本文が返されます。
エラー応答は、「スキーマ」URI 「urn:ietf:params:scim:api:messages:2.0:Error」を使用して識別されます。
発生しうる一般的な HTTP ステータス コードを下表に示します。
HTTP ステータス コード | 説明 |
200 (OK) | 成功を示します |
201 (作成済み) | POST または PUT リクエストを使用してリソースが正常に作成された場合。ロケーション ヘッダを使用して、新しく作成されたリソースへのリンクを返します。 |
307 (一時的リダイレクト) | クライアントが指定された場所で同じ HTTP リクエストを繰り返すように要求された場合。クライアントは、レスポンスで指定された場所をリソースへの永続的な参照として使用せず、元のリクエストの URI を引き続き使用する必要があります。 |
308 (永続的なリダイレクト) | クライアントが指定された場所で同じ HTTP リクエストを繰り返すように指示された場合。クライアントは、レスポンスで指定された場所をリソースへの永続的な参照として使用する必要があります。 |
204 (内容なし) | 応答の本文が空である場合。たとえば、DELETE リクエストなどです。 |
400 (不正なリクエスト) | 無効な入力が行われたことを示します。たとえば、検証エラーやデータがなかった場合です。SCIM に固有のエラー タイプについては、RFC 7644 を参照してください。 |
401 (認証が必要) | ユーザが無効または不正な認証トークンを使用していることを示します。 |
403 (禁止) | ユーザには使用されているメソッドへのアクセス権がないことを示します。たとえば、管理者権限なしでの削除アクセスなどです。 |
404 (存在しない) | メソッドが使用できないことを示します。 |
409 (競合) | メソッド実行中の競合状態を示します。たとえば、重複したエントリの追加などです。 |
412 (前提条件での失敗) | 更新に失敗したことを示します。リソースは、サーバ上で変更されています。 |
500 (内部サーバ エラー) | メソッドの実行中にサーバが何らかの例外をスローしたことを示します。 |
501 (未実装) | リクエストされた操作は、サービス プロバイダによってサポートされていません。 |
以下の例は、存在しない GET リクエストに対する応答に含まれるエラーです。JSON 形式で表示されています。
HTTP/1.1 404 Not Found{"schemas": ["urn:ietf:params:scim:api:messages:2.0:Error"],"detail":"Resource 2819c223-7f76-453a-919d-413861904646 not found","status": "404"}
以下の例は、PUT リクエストに対する応答に含まれるエラーです。
HTTP/1.1 400 Bad Request{"schemas": ["urn:ietf:params:scim:api:messages:2.0:Error"],"scimType":"mutability""detail":"Attribute 'id' is readOnly","status": "400"}