Documentation Index Fetch the complete documentation index at: https://docs.agentic.scope3.com/llms.txt
Use this file to discover all available pages before exploring further.
v1 is deprecated. August 1, 2026 is the final day these endpoints will be available. Migrate to v2 , which is the current stable API.
Overview
Tactics are containers that organize and execute media buys. They define targeting parameters (channels, countries) and can be linked to one or more campaigns, allowing you to reuse successful media buying tactics across multiple marketing initiatives.
Two-Tier Architecture : Campaign → Tactic → Media Buy
Campaigns : Overall marketing initiative with total budget
Tactics : Targeting configuration and media buy organization
Media Buys : Direct publisher execution at negotiated CPMs
Key Concepts
Tactic Purpose
Tactics serve as organizational containers that:
Define targeting parameters (channels, countries)
Can be linked to multiple campaigns
Organize related media buys under a common tactical approach
Enable reuse of proven media buying approaches
Tactic Configuration
Every tactic includes:
Name : Descriptive identifier for the tactic
Campaign Link : Associated with one or more campaigns
Channel Targeting : Specific channels to target (web, mobile, CTV, etc.)
Geographic Targeting : Country codes for geographic focus
Tactical Brief : Optional prompt describing the tactic’s approach
Tactic Types
All tactics in this API are automatically configured as:
Activity Type : AMP (Agentic Media Protocol)
Tactic Type : INTELLIGENT_CAMPAIGNS
This standardization ensures consistent integration with the platform’s optimization and execution engines.
Working with Tactics
Creating Tactics
Conversational
Programmatic
User: "Create a tactic for CTV and mobile targeting the US market"
Claude: Creating tactic...
✅ Tactic Created Successfully!
🎯 US CTV & Mobile Tactic
Configuration:
• Type: INTELLIGENT_CAMPAIGNS
• Activity: AMP
• Channels: ctv, mobile
• Countries: US
Next: Create media buys with publishers using this tactic
// Create a tactic linked to a campaign
const tactic = await tactic_create ({
name: "US CTV & Mobile Tactic" ,
campaignId: "camp_123" ,
prompt: "Target streaming and mobile users in the US market with premium video inventory" ,
channelCodes: [ "ctv" , "mobile" ],
countryCodes: [ "US" ]
});
// Tactic is now ready for media buy creation
Linking Tactics to Campaigns
Tactics can be associated with multiple campaigns, enabling tactic reuse:
// Link existing tactic to another campaign
await tactic_link_campaign ({
tacticId: "strat_456" ,
campaignId: "camp_789"
});
// The tactic now contributes to both campaigns
// Media buys under this tactic count toward both campaign budgets
Managing Tactics
// List all tactics for a campaign
const tactics = await campaign_list_tactics ({
campaignId: "camp_123"
});
// Get detailed tactic information
const tactic = await tactic_get ({
tacticId: "strat_456"
});
// Update tactic configuration
await tactic_update ({
tacticId: "strat_456" ,
channelCodes: [ "ctv" , "mobile" , "web" ], // Add web channel
countryCodes: [ "US" , "CA" ] // Expand to Canada
});
Tactic Architecture
Multi-Campaign Tactic Sharing
// One tactic can serve multiple campaigns
const sharedTactic = await tactic_create ({
name: "Premium Sports Inventory" ,
campaignId: "camp_q4_sports" ,
channelCodes: [ "ctv" , "web" ],
countryCodes: [ "US" ]
});
// Link to another campaign
await tactic_link_campaign ({
tacticId: sharedTactic . id ,
campaignId: "camp_holiday_sports"
});
// Media buys under this tactic now contribute to both:
// - Q4 Sports Campaign
// - Holiday Sports Campaign
Channel Targeting
Tactics can target specific advertising channels:
Channel Code Description Common Use Cases webDesktop web browsers Standard display advertising mobileMobile web & in-app Mobile-optimized campaigns ctvConnected TV Premium video campaigns socialSocial media platforms Social advertising videoOnline video Video-first campaigns audioStreaming audio/podcasts Audio advertising
// Get available channels
const channels = await channel_list ();
// Create multi-channel tactic
const tactic = await tactic_create ({
name: "Multi-Channel Awareness" ,
campaignId: "camp_123" ,
channelCodes: [ "web" , "mobile" , "ctv" , "video" ],
countryCodes: [ "US" , "CA" , "GB" ]
});
Geographic Targeting
Target specific countries using ISO 2-digit country codes:
// North America focus
const naTactic = await tactic_create ({
name: "North America Tactic" ,
campaignId: "camp_123" ,
channelCodes: [ "web" , "mobile" ],
countryCodes: [ "US" , "CA" , "MX" ]
});
// European focus
const euTactic = await tactic_create ({
name: "European Tactic" ,
campaignId: "camp_123" ,
channelCodes: [ "web" , "ctv" ],
countryCodes: [ "GB" , "DE" , "FR" , "IT" , "ES" ]
});
Best Practices
1. Tactical Organization
Organize tactics by targeting approach:
// Good: Clear tactical differentiation
Campaign : $100K Holiday Sales
├── Tactic : "CTV Premium" ( ctv , US / CA )
│ └── Media Buys : Hulu , Roku , Amazon Fire
├── Tactic : "Mobile Performance" ( mobile , US )
│ └── Media Buys : Google , Meta , TikTok
└── Tactic : "Desktop Remarketing" ( web , US )
└── Media Buys : Trade Desk , Yahoo , CNN
2. Tactic Reuse
Leverage successful tactics across campaigns:
// Create proven tactic once
const provenTactic = await tactic_create ({
name: "High-Performance CTV" ,
campaignId: "camp_q1" ,
channelCodes: [ "ctv" ],
countryCodes: [ "US" ]
});
// Reuse for Q2 campaign
await tactic_link_campaign ({
tacticId: provenTactic . id ,
campaignId: "camp_q2"
});
// Same tactical approach, different campaign budgets
3. Clear Naming
Use descriptive names that indicate targeting:
// Good naming conventions
"US CTV Premium - Sports Content"
"Mobile Web - Retargeting"
"UK Desktop Display - Prospecting"
"Global Video - Brand Awareness"
// Avoid vague names
"Tactic 1"
"Test"
"Main"
4. Geographic Segmentation
Separate tactics by region for better control:
// Regional tactics for global campaign
const usTactic = await tactic_create ({
name: "US Market Tactic" ,
campaignId: "camp_global" ,
countryCodes: [ "US" ]
});
const euTactic = await tactic_create ({
name: "EU Market Tactic" ,
campaignId: "camp_global" ,
countryCodes: [ "GB" , "DE" , "FR" , "IT" , "ES" ]
});
const apacTactic = await tactic_create ({
name: "APAC Market Tactic" ,
campaignId: "camp_global" ,
countryCodes: [ "AU" , "JP" , "SG" , "KR" ]
});
Tactics organize media buys for execution:
// Create tactic
const tactic = await tactic_create ({
name: "Premium Video Tactic" ,
campaignId: "camp_123" ,
channelCodes: [ "ctv" , "video" ],
countryCodes: [ "US" ]
});
// Create media buys under this tactic
const huluBuy = await media_buy_create ({
tacticId: tactic . id ,
name: "Hulu Premium Inventory" ,
products: [{
salesAgentId: "agent_hulu" ,
mediaProductId: "prod_hulu_ctv" ,
budgetAmount: 25000 ,
pricingCpm: 28.00
}],
budget: { amount: 25000 , currency: "USD" }
});
const rokuBuy = await media_buy_create ({
tacticId: tactic . id ,
name: "Roku Streaming" ,
products: [{
salesAgentId: "agent_roku" ,
mediaProductId: "prod_roku_streaming" ,
budgetAmount: 15000 ,
pricingCpm: 24.00
}],
budget: { amount: 15000 , currency: "USD" }
});
// Both media buys inherit tactic's targeting
// Performance rolls up to tactic and campaign
Monitor tactic performance through associated media buys:
// Get tactic details with media buy summary
const tactic = await tactic_get ({
tacticId: "strat_456"
});
// Shows:
// - Linked campaigns
// - Total media buys
// - Aggregate spend and performance
// - Channel and geographic breakdown
API Reference
tactic_create Create Tactic Create new tactic with targeting configuration.
tactic_list List Tactics View all tactics with filtering options.
tactic_get Get Tactic Retrieve detailed tactic information.
tactic_update Update Tactic Modify tactic targeting and configuration.
tactic_link_campaign Link Campaign Associate tactic with additional campaigns.
tactic_unlink_campaign Unlink Campaign Remove campaign association from tactic.
tactic_delete Delete Tactic Remove tactic and associated media buys.
campaign_list_tactics List Campaign Tactics View all tactics linked to a campaign.
channel_list List Channels Get valid channel codes for targeting.
Next Steps
Media Buy Guide Publisher Execution Learn how media buys execute tactic with publishers.
Campaign Guide Campaign Management Understand how campaigns orchestrate multiple tactics.
The Bottom Line
Tactics are containers - They organize media buys with common targeting
Tactics enable reuse - Link one tactic to multiple campaigns
Targeting is simple - Define channels and countries, that’s it
Media buys do the work - Tactics just provide structure and targeting
Keep it organized - Use clear names and logical grouping