<< All versions
Skill v1.0.0
currentAutomated scan100/100googleads/google-ads-api-developer-assistant/assistant-tutorial
──Details
PublishedOctober 25, 2026 at 09:13 AM
Content Hashsha256:f6aecf885be19752...
Git SHAdbb730a199f6
──Files
Files (1 file, 4.5 KB)
SKILL.md4.5 KBactive
SKILL.md · 71 lines · 4.5 KB
version: "1.0.0" name: assistant-tutorial description: An interactive tutorial on how to use the Google Ads API Developer Assistant.
Google Ads API Developer Assistant Tutorial (Interactive Guide)
[!NOTE]* If you want a real-world analogy and conceptual explanation for any Google Ads API concept, use the/explain <concept>command.* If you want to walk through a process or workflow step-by-step, use the/step-by-step <process>command.
Critical Directive for the Agent
When a user invokes /assistant-tutorial or requests this tutorial:
- NO MD SYNOPSIS FILES: You MUST NOT write any markdown files or artifacts summarizing the tutorial.
- ALWAYS INTERACTIVE: You MUST run this tutorial as an interactive, conversational experience.
- TOPIC SELECTION: Start by asking the user which specific topic they want to learn about first using an interactive question or message.
- PROGRESSIVE DISCLOSURE: Present information in small, manageable pieces. Ask checking questions or prompt the user to proceed before moving on to the next step.
- EXPLAIN ANSWER OPTION: Whenever you pose an interactive check question or quiz to the user, include a choice/option that allows them to ask the Assistant to answer and explain the answer.
Tutorial Content Reference
Topic 1: Core Principles & Constraints
- The "NO MUTATE" Read-Only Policy: The Assistant cannot execute mutate operations (such as create, update, or delete) directly. Instead, it provides the code for the mutate in the
~/saved/code/directory, which the user can run themselves or incorporate into their codebase. - API Versioning: All code and GAQL queries target the confirmed version in
config/api_version.txt.
Topic 2: Campaign Creation (Code Generation Workflow)
- Explain the generation & execution workflow.
- Show standard template structures.
- NO MUTATE Execution Warning: Remind the user that the Assistant is designed for read-only operations and cannot execute campaign creation mutate code directly.
Topic 3: Shared Sets (Exclusion Lists)
- Explain
SharedSet(reusable keyword/placement exclusion folders),SharedCriterion(items), andCampaignSharedSet(connector). - Describe relationships and benefits.
Topic 4: Code Quality & Standards
- Detail automated linting (
ruff), type annotations, and error handling (GoogleAdsExceptionwrapper) that the assistant enforces.
Topic 5: Finding Disapproved Ads (Cross-Account Audit)
- Phase 1: Determine Parent Manager Account (MCC) using
customer_manager_link. - Phase 2: Retrieve child accounts recursively using
get_cids_under_mccscript. - Phase 3: Query disapproved ads via
ad_group_adresource.
Topic 6: Creating an AI Max for Search Campaign
- What is AI Max? Refers to "AI Max for Search campaigns", NOT "Performance Max" campaigns.
- Enabling AI Max: Set
ai_max_setting.enable_ai_max = Trueon theCampaignresource. - Campaign Configuration:
advertising_channel_type = SEARCH, budget, bidding strategy like Maximize Conversions. - Ad Creation: RSA in
AdGroupAdusingResponsiveSearchAdInfo.
Topic 7: Creating a Demand Gen Campaign
- What is Demand Gen? Drives action across YouTube, Discover, and Gmail using image and video assets.
- Campaign Configuration:
advertising_channel_type = DEMAND_GEN. - Ad Group Settings:
demand_gen_ad_group_settings.channel_controls.selected_channels.
Topic 8: Writing Prompts to Produce Reports
- Prompting Best Practices: Define main resource, specify metrics, request date/device segments.
- GAQL Validation Protocol: Programmatic 4-step sequence (Schema Discovery, Compatibility Check, Static Analysis, Runtime Dry Run).
Topic 9: Troubleshooting Conversion Problems
- Diagnostic Protocol: Run
troubleshoot_conversions.pyfor conversion upload issues. - Pre-Upload Validation: Run
validate_conversion_upload.pyto validate CSV formatting and logical time checks before uploading.
Topic 10: Obtaining Descriptions of API Concepts and Objects
- Conceptual Explanations: Use
/explainor ask for high-level summaries structured with Big Picture, Analogy, Interconnectedness, and Simple Language. - Structural Inspection: Use
inspect_object.pyto view raw field definitions, types, and Enum values.
Topic 11: Creating a Listing Filter for a Performance Max (PMax) Campaign
- Webpage Listing Filter: Configure webpage exclusion listing trees (
vertical = WEBPAGE) usingcreate_pmax_webpage_filter.py.