Caution: You are viewing documentation for the API's REST interface. Most of our official client libraries use gRPC. See the
REST Introduction for details.
Other Methods
Stay organized with collections
Save and categorize content based on your preferences.
While Mutate
, Search
, and SearchStream
are the most common methods
in the Google Ads API, there are many others for specific purposes. All services and
their APIs are documented in the
reference documentation.
Protocol buffer RPC to REST mappings
All the service endpoints (whether using REST and gRPC) are ultimately defined
in the
.proto files of the services package
using the
proto3 Interface Definition Language.
Example: ListAccessibleCustomers
For example, the customer_service.proto
file
defines a ListAccessibleCustomers
method, in addition to the standard Mutate
. Its google.api.http
annotation describes
how the method maps to HTTP. It uses an HTTP GET
with the custom verb
listAccessibleCustomers
:
rpc ListAccessibleCustomers(ListAccessibleCustomersRequest)
returns (ListAccessibleCustomersResponse) {
option (google.api.http) = {
get: "/v21/customers:listAccessibleCustomers"
};
}
This maps to the
customers.listAccessibleCustomers
REST method.
Example: CreateCustomerClient
Another example from customer_service.proto
is
the CreateCustomerClient
method. Its google.api.http
annotation describes an
HTTP POST
using the custom verb createCustomerClient
:
rpc CreateCustomerClient(CreateCustomerClientRequest)
returns (CreateCustomerClientResponse) {
option (google.api.http) = {
post: "/v21/customers/{customer_id=*}:createCustomerClient"
body: "*"
};
option (google.api.method_signature) = "customer_id,customer_client";
}
This maps to the customers.createCustomerClient
REST method.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-25 UTC.
[null,null,["Last updated 2025-08-25 UTC."],[[["\u003cp\u003eWhile \u003ccode\u003eMutate\u003c/code\u003e, \u003ccode\u003eSearch\u003c/code\u003e, and \u003ccode\u003eSearchStream\u003c/code\u003e are commonly used, the Google Ads API offers a wide range of methods for specific tasks, all documented in the REST reference documentation.\u003c/p\u003e\n"],["\u003cp\u003eAll Google Ads API service endpoints, including REST and gRPC, are defined in .proto files using the proto3 Interface Definition Language.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003egoogle.api.http\u003c/code\u003e annotation within these .proto files details how each method maps to HTTP for RESTful interactions, including examples like \u003ccode\u003eListAccessibleCustomers\u003c/code\u003e and \u003ccode\u003eCreateCustomerClient\u003c/code\u003e.\u003c/p\u003e\n"]]],["The Google Ads API includes various methods beyond `Mutate`, `Search`, and `SearchStream`, all detailed in REST documentation. Service endpoints are defined in `.proto` files using proto3. `ListAccessibleCustomers` is a GET method, mapped using the `google.api.http` annotation in the `customer_service.proto` file, and uses custom verb `listAccessibleCustomers`. Similarly, `CreateCustomerClient`, a POST method, uses custom verb `createCustomerClient`, also defined in the same file.\n"],null,["# Other Methods\n\nWhile `Mutate`, `Search`, and `SearchStream` are the most common methods\nin the Google Ads API, there are many others for specific purposes. All services and\ntheir APIs are documented in the\n[reference documentation](/google-ads/api/reference/rpc/v21/overview).\n\nProtocol buffer RPC to REST mappings\n------------------------------------\n\nAll the service endpoints (whether using REST and gRPC) are ultimately defined\nin the\n[.proto files of the services package](https://github.com/googleapis/googleapis/tree/master/google/ads/googleads/v21/services)\nusing the\n[proto3 Interface Definition Language](//cloud.google.com/apis/design/proto3).\n\n### Example: ListAccessibleCustomers\n\nFor example, the [`customer_service.proto`](https://github.com/googleapis/googleapis/tree/master/google/ads/googleads/v21/services/customer_service.proto) file\ndefines a `ListAccessibleCustomers` method, in addition to the standard `Mutate`\n. Its [`google.api.http`](//google.aip.dev/127) annotation describes\nhow the method maps to HTTP. It uses an HTTP `GET` with the custom verb\n`listAccessibleCustomers`: \n\n```css+lasso\nrpc ListAccessibleCustomers(ListAccessibleCustomersRequest)\n returns (ListAccessibleCustomersResponse) {\n option (google.api.http) = {\n get: \"/v21/customers:listAccessibleCustomers\"\n };\n}\n```\n\nThis maps to the\n[customers.listAccessibleCustomers](/google-ads/api/reference/rpc/v21/CustomerService/ListAccessibleCustomers)\nREST method.\n\n### Example: CreateCustomerClient\n\nAnother example from [`customer_service.proto`](https://github.com/googleapis/googleapis/tree/master/google/ads/googleads/v21/services/customer_service.proto) is\nthe `CreateCustomerClient` method. Its `google.api.http` annotation describes an\nHTTP `POST` using the custom verb `createCustomerClient`: \n\n```css+lasso\nrpc CreateCustomerClient(CreateCustomerClientRequest)\n returns (CreateCustomerClientResponse) {\n option (google.api.http) = {\n post: \"/v21/customers/{customer_id=*}:createCustomerClient\"\n body: \"*\"\n };\n option (google.api.method_signature) = \"customer_id,customer_client\";\n}\n```\n\nThis maps to the [customers.createCustomerClient](/google-ads/api/reference/rpc/v21/CustomerService/CreateCustomerClient)\nREST method."]]