API戻り形式
このページは機械翻訳を使用して翻訳されています。
概要
CoupaのAPIは、デフォルトで多くのデータを返します(例:関連オブジェクトとしての全オブジェクト)。APIが返すペイロードは非常に大きくなる、したがって処理が遅くなる可能性があります。これは、リソースの無駄遣いは言うまでもなく、無関係なデータを必要としないお客様にとって問題となる可能性があります。
処理を簡単にするために、Coupaには、オブジェクトのスキーマ全体およびすべての関連付けの代わりに、限定されたJSONまたはXML応答を返す<b id="i1"><a id="x1" xid="i4.1.1">戻り形式[]があります。</a></b>return_object=shallow
オプションでreturn_objectを指定するという概念は新しいものではなく、新しいのは「浅い」形式の概念だけです。return_objectが指定されていない場合は、完全な戻り値が返されます。
仕組み
オプションのクエリパラメーター return_object
が次の3つの値をサポートするようになりました:
none
:何も返されません。これは、PUTおよびPOSTでのみサポートされます(GETなどの意味のないクエリはサポートされません)。limited
:IDのみが返されます。これはすべてのコマンドでサポートされています。shallow
:このパラメーターは、呼び出されているオブジェクトのすべての属性/フィールドと、1深型関連付けのIDおよび自然キーのみを返します。
パラメーター return_object=shallow
は以下でサポートされています。
- POSTコマンド
- PUTコマンド
- GETコマンド
<b id="i8"><a id="x8" xid="i14.1.1">クエリ演算子[]を</a></b>使用すると、レスポンスの本文に必要なフィールドを渡すことができます。fields
fields
値の形式はJSONです。以下の例を参照してください。
?fields=["id","invoice_number",{"invoice_lines":["id","line_num"]}]
オブジェクトを返す
return_object
パラメータを使用して、基本的な作成、更新、またはクエリ呼び出しの応答本文の形式を制御できます。
作成および更新時にサポートされるreturn_object値は、なし、制限あり、浅いです。
クエリ呼び出しでサポートされている値は、制限された浅いです。
例:クエリに対する制限された応答
Query: https://example.coupahost.com/api/expense_reports?return_object=limited Response Code: 200 Response Body: {“id”:1}
例:作成時に応答なし
POST: https://example.coupahost.com/api/ex...rn_object=none Request Body: { "id":2, "currency":{ "code":"USD" }, "expense-lines":[ { "description":"Airfare to Reno", "merchant":"American Airlines", "reason":"", "amount":"255.0", "expense-date":"2010-02-05T00:00:00-08:00", "start-date":"2010-02-05T00:00:00-08:00", "expense-category":{ "name":"Airfare", } }, ], } Response Code: 200 Response Body:
例:作成時の浅い応答
Query: https://example.coupahost.com/api/ex...object=shallow Response Code: 200 Response Body: { "id":158, "created-at":"2010-09-22T20:42:57-07:00", "updated-at":"2014-04-24T14:56:49-07:00", "title":"", "status":"pending_approval", "submitted-at":"2014-04-24T14:56:49-07:00", "auditor-note":null, "reject-reason":null, "paid":false, "total":"567.07", "audit-score":26, "exported":false, "last-exported-at":null, "external-src-ref":null, "external-src-name":null, "currency":{ "id":1, "code":"USD" }, "expensed-by":{ "id":20, "login":"user_login", "email":"user_login@coupa.com" }, "created-by":{ "id":20, "login":"user_login", "email":"user_login@coupa.com" }, "updated-by":{ "id":20, "login":"user_login", "email":"user_login@coupa.com" }, "expense-lines":[ { "id":546, "external-src-ref":null }, { "id":547, "external-src-ref":null }, { "id":548, "external-src-ref":null }, { "id":549, "external-src-ref":null } ], "comments":[ ] }