contact_windsor
ChatGPTWindsor.ai: Send feedback, a support request, or a feature request. Reports a problem, shares feedback, or suggests a feature. Inquiries are recorded in English. Returns a reference ID the user can share with Windsor.ai support.
create_custom_field
ChatGPTWindsor.ai: Create a custom (formula) field on a connector. A custom field is a user-defined metric or dimension computed from a connector's existing fields; once created it behaves like a normal field in get_fields, get_data and scheduled exports. Useful for recreating calculated fields when migrating from another platform. Call get_fields first for the connector's valid source field ids, and get_custom_fields to avoid creating a duplicate. This stores configuration in the user's Windsor.ai account — confirm the field with the user before creating it.
create_destination_task
ChatGPTWindsor.ai: Create a scheduled export of connector data to a destination. Call get_destinations and get_destination_setup_info first for the destination_type, its target fields and a credential_id, and get_fields for the source field ids. This creates recurring external state, and each run replaces matching rows in the destination target, deleting what was there — confirm the source, destination target, and schedule with the user before calling. Only works when the destination's create_in_chat is true; otherwise use its setup_url. Never put secrets in config; the user enters those in the dashboard form.
execute_action
ChatGPTWindsor.ai: Execute a write action on a connector account. Runs an action id from list_actions against an account id from get_connectors, with params matching the action's JSON schema. This modifies external platform state — confirm intent with the user before invoking.
get_connector_authorization_url
ChatGPTGet the URL to connect or authorize the tiktok connector. Returns a browser URL to set up tiktok (OAuth or manual credentials). The user's existing Windsor.ai session signs them in; if it has expired they are asked to sign in first. Any notes (a provider-specific step, e.g. which account to pick) follow the URL after a blank line, starting with "Notes:"; repeat them to the user verbatim. Use this for connect, grant access, authorize, add, replace, or reconnect requests, including adding another account to this already-connected connector. Do not substitute prose dashboard navigation steps for this link.
get_connector_connect_info
ChatGPTDescribe how the user grants access to the tiktok connector. Returns the auth type, a connect_url the user opens to grant access, any provider-specific notes, and (for manual connectors) the credential fields tiktok requires. Hand the user the connect_url, repeating notes verbatim when present; never ask them to paste secrets into the chat. If get_connectors still shows no tiktok account afterwards, the connection is not finished: after an OAuth sign-in an account still has to be selected, with a login that can access it; for manual connectors the form was not saved. Send them back to the connect_url. Use this for connect, grant access, authorize, add, replace, or reconnect requests, including adding another account to this already-connected connector. Do not substitute prose dashboard navigation steps for the connect_url.
get_connectors
ChatGPTWindsor.ai: List connectors, their accounts, write actions, and options. By default returns only connectors that have connected accounts; pass include_not_yet_connected=True for every available connector. Accounts carry an id and, when available, a name. Connectors that support write actions carry an actions list of action ids for execute_action, or for upload_files when the action takes files (see list_actions). Connectors that expose read options carry an options list of option ids that change what a get_data read returns (call get_options for their meaning and values). Covers 350+ sources: advertising (Meta Ads, Google Ads, TikTok Ads, LinkedIn Ads), analytics (Google Analytics 4), CRM and e-commerce (HubSpot, Shopify), payments (Stripe), warehouses (BigQuery, Snowflake), and more.
get_current_user
ChatGPTWindsor.ai: Get the authenticated user's username, email and plan. plan_id, plan_name and is_paid come from the live Windsor.ai profile; they are null when the profile lookup fails, which means the plan is unknown — not that the user is on a free plan.
get_custom_fields
ChatGPTWindsor.ai: List the user's custom (formula) fields across connectors. A custom field is a user-defined metric or dimension computed from a connector's existing fields with a formula (for example spend times a margin, or a CPA). Each entry reports the connector it belongs to, its field_name, the generated field_id used in get_data/get_fields, its type (NUMERIC or TEXT), and the formula. Call this before create_custom_field to see which fields already exist and avoid creating duplicates.
get_data
ChatGPTWindsor.ai: Retrieve data from the tiktok connector. Call get_fields first — field IDs must come from it. Use all requested days for calculations; always use code for numerical computations.
get_destination_setup_info
ChatGPTWindsor.ai: Describe how to set up a scheduled export to a destination. Always call get_destinations first to get the correct destination id. Returns the auth type, the target fields describing where data is written, the allowed schedules, reusable credentials (OAuth or service account), and a setup_url link to the dashboard form. Sensitive fields (service accounts, passwords, keys) are entered by the user in the setup_url form — never ask them to paste secrets into chat. When create_in_chat is true, collect the non-sensitive target fields and call create_destination_task; otherwise hand the user the setup_url.
get_destination_tasks
ChatGPTWindsor.ai: List the scheduled export tasks the user has created. A destination task is a recurring export of a connector's data to a destination. Each entry reports its id, destination type and name, alias, source connector, schedule, and status (active, paused, or deactivated), plus a manage_url to open it in the dashboard. Use this when the user asks what exports, syncs, or destination tasks they already have, or before creating one to avoid duplicates.
get_destinations
ChatGPTWindsor.ai: List destinations that can receive scheduled data exports. A destination is where Windsor.ai repeatedly writes a connector's data on a schedule — BigQuery, Google Sheets, Snowflake, a database, or cloud storage. Each entry reports its type, whether a task can be created here (create_in_chat), and any reusable credentials the user already has (an OAuth connection or a stored service account). Call this first when the user wants to export, send, sync, or schedule connector data, then get_destination_setup_info for the chosen destination.
get_fields
ChatGPTWindsor.ai: Discover valid field IDs for a connector. Returns field IDs with descriptions, types, and tables. Omit "fields" to list all. Required before get_data: field IDs passed to get_data must come from this tool — do not guess field names.
get_options
ChatGPTWindsor.ai: Get fields, date-filter columns, and options for a connector. Returns available field IDs, per-table date-filter columns, and connector-specific options for the given connector and accounts.
get_windsor_login_url
ChatGPTWindsor.ai: Get a URL into the Windsor.ai dashboard. The user opens it in their browser and is signed in by their existing Windsor.ai session; if that has expired they are asked to sign in first. next_path optionally deep-links to a specific page.
list_actions
ChatGPTWindsor.ai: List a connector's write actions with their param JSON schemas. Meta Ads ("facebook"): create/pause/enable campaigns, ad sets, and ads; set campaign and ad set budgets; boost an organic post. Google Ads ("google_ads"): create campaigns, ad groups, and responsive search ads; pause/enable campaigns, ad groups, and ads; set campaign budget, bidding strategy, target CPA, max CPC, and CPC bid ceiling; push negative keywords. TikTok Ads ("tiktok"): pause/enable campaigns, ad groups, and ads; set campaign and ad group budgets. LinkedIn Ads ("linkedin"): pause/enable campaign groups, campaigns, and creatives; set campaign group and campaign budgets. Microsoft Ads / Bing ("bing"): pause/enable campaigns and ad groups; set campaign budget. Instagram ("instagram"): create an image post; comment on a post — an account connected before comment access was added returns a permission error until it is reconnected. Other connectors return an empty list. The actual set is whatever this tool returns — do not assume an action exists. Inspect an action's schema before execute_action.