돌연변이

대부분의 리소스는 Mutate를 사용하여 수정 (생성, 업데이트 또는 삭제)됩니다. 메서드를 사용하여 축소하도록 요청합니다. Mutate 메서드는 리소스별 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 객체를 포함할 수 있습니다. 차례로 각 연산은 중: 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": [
    ...
  ]
}

대부분의 서비스는 단일 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 표현이 있는 객체 (예: 이전 API 호출에서 반환된 경우)하지만 특정 필드만 변경하려고 할 때 유용합니다. JSON 객체를 프루닝하는 대신 대상 필드 이름을 updateMask에서 수정하고 전체 JSON 객체를 전송합니다.

아래 예에서는 namestatus 주어진 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 Ads 상태를 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"
    }
  ]
}