# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Customers.google Ads API version: 1.0.0 extends: openapi/google-ads-customers-googleads-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-02' generator: build-phrasing.py label: Generated by API Evangelist operations: 3 - target: $.paths['/v25/customers/{customersId}/googleAds:mutate'].post update: x-apievangelist-phrasing: intent: Apply many changes across resource types atomically effect: write questions: - Can I create a campaign and its budget in a single atomic request? - Is there one call that changes several resource types together? - How do I test a multi-resource change without committing it? instructions: - text: Apply mutate operations {operations} to account {customer} as one transaction. slots: operations: requestBody.mutateOperations customer: path.customersId - text: Validate the combined changes {operations} for account {customer} without saving. slots: operations: requestBody.mutateOperations customer: path.customersId method: generated generated: '2026-10-02' - target: $.paths['/v25/customers/{customersId}/googleAds:search'].post update: x-apievangelist-phrasing: intent: Run a paged GAQL report query effect: read questions: - How do I pull campaign performance with a Google Ads Query Language query? - Can I page through report rows a set number at a time? instructions: - text: Run query {query} against account {customer}. slots: query: requestBody.query customer: path.customersId - text: Search account {customer} with {query}, {size} rows per page. slots: customer: path.customersId query: requestBody.query size: requestBody.pageSize method: generated generated: '2026-10-02' - target: $.paths['/v25/customers/{customersId}/googleAds:searchStream'].post update: x-apievangelist-phrasing: intent: Stream all rows of a GAQL query effect: read questions: - What's the best way to pull a very large report in one streamed response? - Can a streamed query include a summary row of totals? instructions: - text: Stream every row for query {query} from account {customer}. slots: query: requestBody.query customer: path.customersId - text: Stream {query} for account {customer} with summary row setting {summary}. slots: query: requestBody.query customer: path.customersId summary: requestBody.summaryRowSetting method: generated generated: '2026-10-02'