Ad Manager REST API では、部分的な読み取りと書き込みにフィールド マスクが使用されます。これにより、 転送するデータの量を制限してパフォーマンスを向上させる。フィールド マスク フィールド名のカンマ区切りリストで表されます。例:
startTime,endTime,targeting.geoTargeting
読み取りマスク
読み取りマスクは、API レスポンスに含まれるフィールドを制御します。1 対 1 やグループの会話での 次の 2 つの方法でリクエストに対して読み取りマスクを使用できます。
fieldsクエリ パラメータ:curl https://admanager.googleapis.com/v1/networks/123456/adUnits?fields=adUnits,nextPageToken,totalSizeX-Goog-FieldMaskHTTP ヘッダー:curl -H "X-Goog-FieldMask: adUnits,nextPageToken,totalSize" \ https://admanager.googleapis.com/v1/networks/123456/adUnits
デフォルトの読み取りマスク
一部の API メソッドには、コストの高いフィールド用のデフォルトのフィールド マスクが含まれています
返されます。リストメソッドはその一例です。デフォルトでは、
totalSize
表示されます。
これらのフィールドは、フィールド マスクで名前または
* ワイルドカードを使用します。
マスクを更新する
更新マスクは、更新で変更されるフィールドを制御します(PATCH)
リクエストできます。更新マスクが設定されている場合、リクエスト本文に設定されているフィールドに関係なく、マスク内のフィールドのみが更新されます。
更新マスクがクエリ パラメータとして設定されている。例:
curl -X PATCH https://admanager.googleapis.com/v1/networks/1234/order/4567?updateMask=displayName
フィールド トラバーサル
フィールド マスクでは、. 文字を使用してエンティティ内のフィールドを指定できます。
ありますこれは、Terraform で使用した構文と
フィルタ。
フィールド マスクは、常にレスポンス オブジェクトに関連しています。たとえば、ラベル付きの
LineItem の読み取りには primaryGoal.units が含まれる場合があります。対応するマスク
リスティング用
LineItems は lineItems.primaryGoal.units です。
フィールド全体またはサブフィールドのいずれかを指定できます。両方
primaryGoal と primaryGoal.units は有効です。
これは繰り返しフィールドにも適用されます。次の LineItem フィールド マスク
creativePlaceholders.size は有効で、size フィールドのみが含まれています
(各 CreativePlaceholder)
ワイルドカード
フィールド マスクでは、メッセージ内のすべてのフィールドを示す * 文字を使用できます。
次の例は、list を実行するときにワイルドカードを使用する方法を示しています。
Orders。このメソッドには、デフォルトの読み取りマスクがあります。
total_size フィールドを含めないでください。
| 例 | 意味 |
|---|---|
* |
total_size を含むすべてのフィールドが含まれます |
orders |
orders フィールドとそのすべてのサブフィールドのみを含めます。 |
orders.* |
orders フィールドとそのすべてのサブフィールドのみを含めます。 |
無効な項目があります
存在しない値をフィールド マスクが参照すると、API が応答する
INVALID_ARGUMENT エラーが発生します。