business-data
Skill1 starsChanged 50 days agoMITView on GitHub
Pull and combine business data from any of the 350+ sources connected to Windsor.ai inside a coding workflow, for example writing campaign or CRM data to a local JSON or CSV file, generating typed data for a dashboard, or joining ad spend with revenue. Use when the user wants Windsor.ai data in code or files rather than a one-off report.
In this repository33 other files it gives its agents.
- crm-insightsSkill
- crm-manageSkill
- ecommerce-insightsSkill
- ecommerce-manageSkill
- facebook-adsSkill
- facebook-organicSkill
- finance-insightsSkill
- gohighlevelSkill
- google-adsSkill
- google-analytics-4Skill
- google-business-profileSkill
- google-merchant-centerSkill
- google-search-consoleSkill
- hubspotSkill
- instagram-publicSkill
- instagramSkill
- klaviyoSkill
- linkedin-adsSkill
- linkedin-pagesSkill
- microsoft-adsSkill
- social-media-createSkill
- social-media-insightsSkill
- tiktok-adsSkill
- tiktok-organicSkill
- web-analytics-insightsSkill
- windsor-connectSkill
- windsor-createSkill
- windsor-exportSkill
- windsor-get-startedSkill
- windsor-insightsSkill
- windsor-manageSkill
- windsor-optimizeSkill
- youtubeSkill
The file
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 2 are distinctive, and 6 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 9
Use this skill whenever the user needs business data — marketing analytics, sales metrics, CRM data, ecommerce transactions, financial …
- Very specific: line 61
Meta Ads (
facebook): create, update, pause or enable campaigns, ad sets and ads. - Very specific: line 69
Call list_actions with the connector ID and read the parameter schema of the action you need.
- Very specific: line 71
Call execute_action with the action name and parameters.
- Distinctive: line 74
Create actions default to paused (Google Ads, Meta Ads) or draft (LinkedIn creatives).
- Very specific: line 93
Always check get_options first since available fields vary by connector.
- Very specific: line 97
When building dashboards or charts, pull data with get_data and write it to a local JSON/CSV file the app can read
- Very specific: line 99
Use date_preset for quick queries: "last_7d", "last_30d", "this_month"
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Windsor.ai Business Data Skill
Use this skill whenever the user needs business data — marketing analytics, sales metrics, CRM data, ecommerce transactions, financial data, or any other data available through Windsor.ai's 350+ connectors.
When to Use
- User is building a dashboard, report, or data visualization that needs business data from any source
- User asks about ad spend, campaign performance, ROAS, CTR, CPC, or conversion metrics
- User needs CRM, sales, ecommerce, or financial data in their codebase
- User needs to explore what data sources or fields are available
- User wants to seed a project with real data (e.g. for testing, prototyping, or generating fixtures)
- User is building an integration with any platform supported by Windsor.ai
- User asks about Google Ads search terms, keywords, quality score, impression share or negative keywords
- User asks about Instagram post reach, saves, engagement or follower growth
- User wants to change something on an ad platform or Instagram (pause, enable, budgets, bids, new campaigns, negative keywords, posts, comments)
Available Tools
The four read tools are below. Write actions are covered in the next section.
get_connectors
Lists all connected platforms and their account IDs. Always call this first if you don't know what accounts are available.
get_options
Returns available fields, date filters, and options for a specific connector. Use this to discover what data can be queried before calling get_data.
Parameters:
connector(required): Platform ID like"google_ads","facebook","tiktok","linkedin","googleanalytics4","hubspot","salesforce","searchconsole","instagram","youtube","google_my_business","shopify","stripe","quickbooks", and 300+ moreaccounts(required): List of account IDs fromget_connectors
get_fields
Returns detailed metadata about specific fields — data types, descriptions, available values. Use this when you need to understand the schema before writing code that processes the data.
Parameters:
connector(required): Platform IDfields(required): List of field IDs like["campaign", "spend", "clicks"]
get_data
Retrieves actual data. This is the main query tool.
Parameters:
connector(required): Platform IDaccounts(required): List of account IDsfields(required): Fields to retrieve, e.g.["campaign", "date", "spend", "clicks", "impressions"]date_from/date_to: Date range as"YYYY-MM-DD"date_preset: Shorthand like"last_7d","last_30d","this_month","last_3m"filters: Conditions like[["spend", "gt", 100], "and", ["campaign", "contains", "Sale"]]options: Connector-specific options like{"attribution_window": "7d_view,1d_click"}
Write Actions
Windsor.ai can also make changes on some connected platforms:
- Google Ads (
google_ads): create campaigns, ad groups and responsive search ads; pause or enable campaigns, ad groups and ads; set campaign budget, bidding strategy, target CPA, target ROAS, max CPC and CPC bid ceiling; add, update or remove keywords; push or remove negative keywords at campaign or ad group level; set geo, language and ad schedule targeting; manage Customer Match lists - Meta Ads (
facebook): create, update, pause or enable campaigns, ad sets and ads; duplicate ad sets; set campaign and ad set budgets; edit ad creatives; upload ad images and videos; boost an organic post - Instagram (
instagram): publish image posts, carousels, video posts (reels) and stories; comment on a post; reply to, hide, unhide or delete comments - TikTok Ads (
tiktok): pause or enable campaigns, ad groups and ads; set campaign and ad group budgets - LinkedIn Ads (
linkedin): pause or enable campaign groups, campaigns and creatives; set campaign group and campaign budgets; rename campaigns; set campaign schedule and targeting; create a creative from an existing post - Microsoft Ads (
bing): pause or enable campaigns and ad groups; set campaign budget
The live list is whatever list_actions returns for a connector, so never assume an action exists.
- Call
list_actionswith the connector ID and read the parameter schema of the action you need. - Show the user exactly what will change (account, object, old value, new value) and wait for an explicit yes.
- Call
execute_actionwith the action name and parameters. - Report the result, including any error the platform returns.
Create actions default to paused (Google Ads, Meta Ads) or draft (LinkedIn creatives). Keep that default unless the user asks otherwise. Instagram accounts connected before comment access was added return a permission error on comments until they are reconnected in Windsor.ai.
Workflow Pattern
- Discover → Call
get_connectorsto see what's connected - Explore → Call
get_optionsto see available fields for a connector - Understand → Call
get_fieldsfor field metadata if building typed interfaces - Query → Call
get_datato pull the actual data
Common Field Patterns
Fields vary by connector type. Here are some common examples:
Marketing/Ads connectors: campaign, adgroup, ad, date, device, country, spend, clicks, impressions, conversions, revenue, ctr, cpc, cpm, roas
CRM connectors: deal, contact, company, stage, owner, amount, close_date
Ecommerce connectors: order_id, product, quantity, price, customer, status
Always check get_options first since available fields vary by connector.
Tips
- When building dashboards or charts, pull data with
get_dataand write it to a local JSON/CSV file the app can read - For TypeScript projects, use
get_fieldsto generate accurate type definitions - Use
date_presetfor quick queries:"last_7d","last_30d","this_month" - Combine filters for focused queries:
[["spend", "gt", 0], "and", ["campaign", "ncontains", "test"]] - You can join data from different connectors (e.g. ad spend + CRM revenue) by pulling from each and merging in code
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

