New: Adspirer is now an official Claude plugin. Search "adspirer" in Claude Code or Cowork to install. See what's new →
New: Adspirer is now an official Claude plugin. Search "adspirer" in Claude Code or Cowork to install. See what's new →
Combined update for ad content (headlines, descriptions, and/or final URLs).
Use this for efficiency when updating multiple ad elements at once. Single API call with combined field mask.
Parameters:
At least one of headlines, descriptions, or final_urls is required.
Execution time: 2-4 seconds
Example: User: “Update both headlines and descriptions for my ad” Agent: Uses update_ad_content with both headlines and descriptions in one call
curl --request POST \
--url https://api.adspirer.ai/api/v1/tools/update_ad_content/execute \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"arguments": {
"ad_group_id": "string",
"ad_id": "string",
"customer_id": "string",
"descriptions": [
"string"
],
"final_urls": [
"string"
],
"headlines": [
"string"
]
}
}
'{
"data": {
"quota": {
"limit": 150,
"period_end": "2026-05-01",
"tier": "plus",
"used": 42
},
"text": "(tool-specific textual output for update_ad_content)"
},
"success": true,
"tool": "update_ad_content"
}Documentation Index
Fetch the complete documentation index at: https://www.adspirer.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
API key from https://adspirer.ai/keys. Prefix sk_live_. Treat as a secret — never commit.
Client-generated UUID to make writes idempotent. Strongly recommended for write tools. A repeat call with the same key returns the cached result instead of re-executing. Example: 550e8400-e29b-41d4-a716-446655440000
All tool arguments are wrapped in an arguments object. The fields accepted inside arguments are listed below — required fields are marked with a red asterisk.
Input schema for combined ad content update
Show child attributes
Tool executed successfully. data.text carries the human-readable result (markdown-friendly). data.quota shows your current usage against the plan limit. data.structured appears when the tool emits machine-parseable structured content. data.content appears for tools that return non-text blocks (images, resources).
Returned on HTTP 200. data.text is the primary human-readable output. data.quota is always present for billable calls. data.structured is set only when the tool emits machine-parseable structured content. data.content is set only when the tool emits non-text content blocks.
Was this page helpful?
curl --request POST \
--url https://api.adspirer.ai/api/v1/tools/update_ad_content/execute \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"arguments": {
"ad_group_id": "string",
"ad_id": "string",
"customer_id": "string",
"descriptions": [
"string"
],
"final_urls": [
"string"
],
"headlines": [
"string"
]
}
}
'{
"data": {
"quota": {
"limit": 150,
"period_end": "2026-05-01",
"tier": "plus",
"used": 42
},
"text": "(tool-specific textual output for update_ad_content)"
},
"success": true,
"tool": "update_ad_content"
}