Другие способы

Хотя Mutate, Search и SearchStream – самые распространенные методы в Google Ads API, есть и другие, предназначенные для определенных целей. Все сервисы и их API описаны в справочной документации.

Сопоставление RPC буфера протокола с REST

Все конечные точки сервисов (как REST, так и gRPC) определяются в файлах.proto пакета services с помощью языка определения интерфейсов proto3.

Пример: ListAccessibleCustomers

Например, файл customer_service.proto определяет метод ListAccessibleCustomers в дополнение к стандартному методу Mutate. Аннотация google.api.http описывает, как метод сопоставляется с HTTP. Он использует HTTP-метод GET с пользовательским глаголом: listAccessibleCustomers:

rpc ListAccessibleCustomers(ListAccessibleCustomersRequest)
    returns (ListAccessibleCustomersResponse) {
  option (google.api.http) = {
    get: "/v26/customers:listAccessibleCustomers"
  };
}

Это соответствует методу REST customers.listAccessibleCustomers.

Пример: CreateCustomerClient

Ещё один пример из customer_service.proto – метод CreateCustomerClient. Аннотация google.api.http описывает HTTP-запрос POST с использованием пользовательского глагола createCustomerClient:

rpc CreateCustomerClient(CreateCustomerClientRequest)
    returns (CreateCustomerClientResponse) {
  option (google.api.http) = {
    post: "/v26/customers/{customer_id=*}:createCustomerClient"
    body: "*"
  };
  option (google.api.method_signature) = "customer_id,customer_client";
}

Это соответствует методу REST customers.createCustomerClient.