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,totalSize
X-Goog-FieldMask
HTTP ヘッダー: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
エラーが発生します。