Другие методы

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

Сопоставление протоколов RPC и REST через Protocol Buffer

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

Пример: ListAccessibleCustomers

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

rpc ListAccessibleCustomers(ListAccessibleCustomersRequest)
    returns (ListAccessibleCustomersResponse) {
  option (google.api.http) = {
    get: "/v23/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: "/v23/customers/{customer_id=*}:createCustomerClient"
    body: "*"
  };
  option (google.api.method_signature) = "customer_id,customer_client";
}

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