USE THIS TOOL WHEN: User wants to add a new campaign with DIFFERENT targeting/audience to an EXISTING campaign group. This is the LinkedIn equivalent of Meta’s add_ad_set.
LinkedIn hierarchy: Campaign Group → Campaign → Creative.
Common scenarios:
CRITICAL: Each create_linkedin_campaign creates a new Campaign Group (unless campaign_group_id is passed). To add more campaigns to the SAME group, you MUST use this tool or pass campaign_group_id to create tools. NEVER call create_linkedin_campaign without campaign_group_id for the same group.
KEY DISTINCTION:
Supports all 4 ad types: image, video, carousel, text. Each campaign has INDEPENDENT: targeting, budget, schedule. Shared from campaign group: objective, group name.
Workflow:
Execution time: 15-120 seconds (depends on ad type)
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 adding a new campaign (with different targeting) to an existing campaign group. This is the LinkedIn equivalent of Meta's add_meta_ad_set tool.
LinkedIn hierarchy: Campaign Group → Campaign → Creative This tool creates: Campaign + first Creative under an EXISTING Campaign Group.
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.