Add LinkedIn Carousel Creative
User wants to add another carousel ad variation to an existing carousel campaign.
Add a new carousel creative to a carousel campaign for A/B testing.
LinkedIn recommends 4+ carousel ad variations per campaign for optimal performance.
DO NOT USE to create a new campaign. For new campaigns:
- Image → create_linkedin_image_campaign
- Video → create_linkedin_video_campaign
- Carousel → create_linkedin_carousel_campaign
- Text → create_linkedin_text_campaign
DO NOT USE for different audiences. For different targeting: → Use add_linkedin_campaign_to_group instead.
Required Parameters:
- campaign_id: Carousel campaign to add creative to
- organization_id: Organization for ad authoring
- cards: Array of 2-10 carousel cards (image_urn/url, headline, landing_page_url)
- introductory_text: Main ad text (max 255 chars)
- landing_page_url: Overall landing page URL
Optional Parameters:
- creative_name: Descriptive name (e.g. “Product Showcase - Carousel Ad 2”)
- call_to_action: CTA label (default: LEARN_MORE)
- account_id: LinkedIn Ad Account ID
AD POLICY: NEVER use “LinkedIn” in ad copy.
Execution time: 5-15 seconds
Authorizations
API key from https://adspirer.ai/keys. Prefix sk_live_. Treat as a secret — never commit.
Headers
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
Body
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 carousel creative to an existing carousel campaign.
Response
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.

