ほとんどのリソースは、Mutate
を使用して変更(作成、更新、削除)されます。
メソッドを呼び出します。Mutate
メソッドは、リソース固有の API への HTTP POST
として呼び出されます。
リソース名のパターンに一致する、末尾のリソース ID のない URL。
代わりに、変更対象のリソースの ID が JSON リクエストで送信されます。
できます。これにより、複数のオペレーションを含む単一の API 呼び出しを送信できます。
異なるリソースを使用します。
たとえば、キャンペーンのリソース名は次の形式になります。
customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID
キャンペーンの変更に使用する URL を導き出すには、末尾のリソース ID と
:mutate
を追加します。
https://googleads.googleapis.com/v17/customers/CUSTOMER_ID/campaigns:mutate
Mutate
メッセージに、operations
配列を持つ最上位の JSON オブジェクトが含まれる
多数の operation
オブジェクトを含めることができます。また、各オペレーションは 1 つの
create
、update
、remove
のいずれか。これが唯一の変換です
必要があります。
POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "operations": [ ... ] }
ほとんどのサービスでは、1 回の API 呼び出しで数千ものオペレーションがサポートされています。システム 上限については、 制限があることがわかります。
単一の API リクエスト内のオペレーションは、
すべて同時に成功するか、バッチ全体が失敗するかのいずれかです。
失敗します一部のサービスでは
partialFailure
属性
この動作を変更できます。リソースのミューテーションをご覧ください。
変換オペレーションのセマンティクスの詳細については、こちらをご覧ください。
作成
作成オペレーションでは新しいエンティティが生成され、完全な JSON を含める必要があります。 名前を指定します。
POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "operations": [ { "create": { "name": "An example campaign", "status": "PAUSED", "campaignBudget": "customers/CUSTOMER_ID/campaignBudgets/CAMPAIGN_BUDGET_ID", "advertisingChannelType": "SEARCH", "networkSettings": { "targetGoogleSearch": true, "targetSearchNetwork": true, "targetContentNetwork": true, "targetPartnerSearchNetwork": false }, "target_spend": {} } } ] }
更新
更新オペレーションは、既存のリソースに対してスパース アップデートを実行します。必要なのは、 変更するフィールドを指定します。
更新するフィールドを指定するには、updateMask
属性を次のように設定します。
フィールド名のカンマ区切りリストを指定します。これは特に
オブジェクトの完全な形式の JSON 表現がすでに存在します(例:
特定のフィールドのみを変更したい場合。
JSON オブジェクトをプルーニングする代わりに、抽出するフィールド名を
JSON オブジェクト全体を送信します。updateMask
次の例では、次を含む既存のキャンペーンの name
と status
を変更します。
指定された resourceName
。
POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "operations": [ { "updateMask": "name,status", "update": { "resourceName": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID", "name": "My renamed campaign", "status": "PAUSED", } } ] }
削除
削除オペレーションは実質的にオブジェクトを削除し、その Google 広告のステータスを
REMOVED
。削除が必須なのは resourceName
のみです。
POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "operations": [ { "remove": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID" } ] }