← Files Windsor.ai LinkedIn AdsARCHIVED FILE
plugin.json
5.47 KB · Nov 7, 2026 · 13:27 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "windsor-ai-linkedin-ads",
"version": "1.0.0",
"description": "Analyze LinkedIn Ads",
"author": {
"name": "Windsor.ai",
"url": "https://windsor.ai"
},
"homepage": "https://windsor.ai",
"extensions": {
"com.openai": {
"interface": {
"displayName": "Windsor.ai LinkedIn Ads",
"shortDescription": "Analyze LinkedIn Ads",
"longDescription": "Bring your own LinkedIn Ads data into your AI assistant with Windsor.ai, so you can analyze performance and manage campaigns in plain English. Discover connected ad accounts, inspect valid fields and report levels, and query campaign group, campaign, and creative metrics (spend, impressions, clicks, CTR, CPC, leads, and conversions) over any date range, with member demographic breakdowns. On confirmation, it can also pause or enable campaign groups, campaigns, and creatives and set campaign group and campaign budgets.\n\nCommon workflows:\n- Compare spend and cost per lead by campaign for the last 30 days\n- Find an underperforming campaign and pause it, after you confirm\n- Adjust a campaign group budget without leaving the conversation\n\nChanges to your account are made only after you confirm the specific action; everything else is read-only.\n\nWindsor.ai is an independent product and is not affiliated with or endorsed by LinkedIn. LinkedIn is a trademark of LinkedIn Corporation.",
"developerName": "Windsor.ai",
"category": "Business & Operations",
"websiteURL": "https://windsor.ai",
"supportURL": "https://support.windsor.ai",
"privacyPolicyURL": "https://windsor.ai/privacy-statement/",
"termsOfServiceURL": "https://windsor.ai/terms-of-service/",
"brandColor": "#0E2640",
"composerIcon": "./assets/icon.png",
"logo": "./assets/icon.png",
"defaultPrompt": [
"Show my LinkedIn Ads spend, impressions, and clicks by campaign for the last 30 days, broken down by job seniority.",
"Find my LinkedIn Ads campaigns with the lowest click-through rate over the last 30 days, then pause the ones I approve.",
"Raise the daily budget on my top LinkedIn Ads campaign once I confirm the new amount."
]
},
"review": {
"test_cases": {
"positive": [
{
"description": "Discover connected LinkedIn Ads accounts and available actions.",
"prompt": "Which LinkedIn Ads accounts are connected, and what actions can this app run?",
"tools_triggered": "get_connectors",
"expected_behavior": "Lists connected accounts and any supported action IDs so the user can choose what to analyze or change next."
},
{
"description": "Inspect valid LinkedIn Ads fields and options before querying.",
"prompt": "For my LinkedIn Ads account, show the valid fields and report levels for a campaign performance report.",
"tools_triggered": "get_options, get_fields",
"expected_behavior": "Returns usable field IDs, report levels, date filters, and connector options for a campaign report."
},
{
"description": "Query campaign-level LinkedIn Ads performance for a recent date range.",
"prompt": "Analyze LinkedIn Ads spend, impressions, clicks, and conversions by campaign for the last 30 days.",
"tools_triggered": "get_fields, get_data",
"expected_behavior": "Returns campaign-level performance data and a concise analysis using valid fields from the LinkedIn connector."
},
{
"description": "Identify a campaign to pause, gated on explicit confirmation.",
"prompt": "Which of my LinkedIn Ads campaigns is underperforming this month, and what would it take to pause it? Show me the campaign and confirm with me before changing anything.",
"tools_triggered": "get_data, list_actions",
"expected_behavior": "Reads campaign performance, identifies the underperformer, and lists the pause action with the exact change, then waits for explicit user confirmation before running execute_action; it makes no change on its own."
},
{
"description": "Help a user connect the LinkedIn Ads connector.",
"prompt": "I have not connected LinkedIn Ads yet. Give me the setup link for the LinkedIn connector.",
"tools_triggered": "get_connector_authorization_url",
"expected_behavior": "Returns a Windsor.ai setup URL for connecting or authorizing the LinkedIn Ads connector."
}
],
"negative": [
{
"description": "Public benchmark data, not the user's account.",
"prompt": "What is the average cost per lead for LinkedIn Ads in B2B software?"
},
{
"description": "Creative or content generation.",
"prompt": "Write sponsored content copy for my next LinkedIn Ads campaign."
},
{
"description": "General explanation unrelated to connected accounts.",
"prompt": "Explain how LinkedIn Ads audience expansion works."
}
]
},
"commerce": false,
"commerce_description": "Windsor.ai does not sell products, show plans, or process payments in the app."
},
"apps": "./.app.json"
}
}
}
SHA-256: b1843922e4eef1f6de82a463c41e42dfc2a60ec4d618c9c2001ff7ca359a0a5f