conversation_get
ChatGPTGet a conversation's metadata and messages. Use lastN to limit messages, roles to filter by message role (roles filter is applied before lastN), and includeTimestamps to emit ISO createdAt per message.
conversation_get_last_message
ChatGPTGet the last assistant message from a conversation. Use this to poll for agent results — returns status 'streaming' if the agent is still running, or 'complete' with the final message content. Pass includeToolOutput: true to additionally receive output of allow-listed tools (render_chart) when the agent has the tool configured.
execution_get
ChatGPTGet information about an agent execution by ID. Use summaryOnly when polling background executions — returns status and final output without the full message history.
execution_list
ChatGPTList agent executions with optional filters. Returns execution IDs, status, and metadata.
execution_tree
ChatGPTGet the full execution tree for a root execution, including all child executions.
facebook_get_following
ChatGPTGet the accounts a Facebook profile is following. Returns ~10 per page; use the returned cursor to paginate.
facebook_get_post
ChatGPTGet detailed information about a single Facebook post by URL or ID.
facebook_get_posts
ChatGPTGet the posts of a Facebook user. When using time filters, returns ALL posts within that time range. returned is the number of posts in this response, pagesFetched how many pages were read, and truncated/stopReason say whether the walk was cut short before the window was covered: stopReason: "error" means a vendor failure ended it part-way, so this is a partial read and more posts may exist.
facebook_get_profile
ChatGPTGet the profile of a Facebook user
facebook_search_posts
ChatGPTSearch for Facebook posts. When using time filters, returns ALL matching posts.
facebook_search_users
ChatGPTSearch for Facebook users with advanced filtering options
feed_get
ChatGPTGet feed details by ID including item count
feed_get_items
ChatGPTGet feed items with pagination and filtering. Use filter.status, filter.startDate/endDate, and filter.search.
feed_list
ChatGPTList feeds in a space with optional type filter. Can access public spaces from other workspaces by providing spaceId parameter.
fetch_and_analyze_image
ChatGPTFetch an image from a URL and analyze it
fetch_and_analyze_pdf
ChatGPTFetch a PDF from a URL and extract/analyze its content
fetch_and_analyze_video
ChatGPTFetch a video from a URL and analyze it using Gemini
fetch_google_ad
ChatGPTFetch detailed information about a specific Google Ad using advertiser ID and creative ID.
fetch_page
ChatGPTFetch the text of a page
get_client_accounts
ChatGPTGet a list of the brands the user has in their Waldo workspace. These may be clients, clients products, or competitors to clients. Will have information pertinent to Waldo about the brand, including the client account id.
get_credit_history
ChatGPTReturns a paginated list of credit usage events (projects, chats, agent runs) for the workspace.
get_credit_history_stats
ChatGPTReturns summary statistics for credit usage: active users, total projects, total chats, and total brands.
get_credits_balance
ChatGPTReturns the current workspace's credit balance, subscription plan, and billing period.
get_google_trending_now_news
ChatGPTGet news articles for a trending topic. REQUIRES a news_token from search_google_trending_now results — do NOT pass a topic name or search query.
get_google_trends_categories
ChatGPTGet available Google Trends categories
get_google_trends_locations
ChatGPTGet available Google Trends locations
get_me
ChatGPTReturns the authenticated user and current workspace.
get_meta_ad_details
ChatGPTGet details for a specific ad by page ID and ad ID.
get_meta_ad_search_auto_fill
ChatGPTGet search auto-fill suggestions for keywords, pages, and locations. Use to find advertisers and refine searches with searchMetaAds.
get_meta_ad_summary_details
ChatGPTGet summary details for a collation group.
get_trends_audiences
ChatGPTGet available audience options for filtering trends
get_trends_industries
ChatGPTGet available industry options for filtering trends
get_trends_regions
ChatGPTGet available region options for filtering trends
get_usage_summary
ChatGPTReturns aggregated credit usage for the workspace, optionally filtered by space, agent, or date range.
gwi_audience_insights
ChatGPTChat with GWI (Global Web Index) for audience insights. GWI fuzzy-matches the audience description to one of its predefined survey panels and returns prose insights + structured sources. For sticky-panel behavior within a session, pass the chatId returned by a prior call — GWI retains the resolved panel and conversation context across follow-ups. The returned insightIds can be fed to gwi_insight_detail to retrieve the underlying percentages, indexes, and sample sizes behind each insight. dockedAudiences accepts saved-audience UUIDs from the GWI platform (not the per-request UUIDs in sources.audiences[]) — typically left empty until your team shares specific saved-audience IDs.
gwi_insight_detail
ChatGPTRetrieve the structured data behind a GWI insight. Given an insightId from a gwi_audience_insights response, returns the underlying question calculations — percentage, index (vs benchmark), sample size, and audience — for every attribute that supports the prose insight. Use this when the chat reply asserts a stat (e.g. '85% of Gen Z use Instagram') and you need the actual numbers and provenance.
gwi_list_datasets
ChatGPTList GWI Spark datasets available for scoping audience-insight queries. Returns { code, name, description, url } for each dataset; pass a code as datasetCode on gwi_audience_insights to scope. Defaults are reasonable (ds-core) — only call this when an agent needs a non-default dataset.
image_search
ChatGPTSearch for images on the web
instagram_get_following
ChatGPTGet the accounts an Instagram user is following. Paginated via cursor.
instagram_get_post
ChatGPTGet detailed information about an Instagram post by URL or shortcode.
instagram_get_post_likes
ChatGPTGet the list of users who liked an Instagram post.
instagram_get_posts
ChatGPTGet the posts of an Instagram user. When using time filters, returns ALL posts within that time range in a single call.
instagram_get_profile
ChatGPTGet the profile of an Instagram user
instagram_search_posts
ChatGPTSearch for Instagram posts. When using time filters, returns ALL matching posts in a single call.
instagram_search_users
ChatGPTSearch for Instagram users
linkedin_get_company
ChatGPTGet the details of a LinkedIn company
linkedin_get_company_jobs
ChatGPTGet job listings for a LinkedIn company
linkedin_get_company_people
ChatGPTGet employees/people working at a LinkedIn company
linkedin_get_company_posts
ChatGPTGet company posts/updates from a LinkedIn company. When using time filters, returns ALL posts within that time range. returned is the number of posts in this response, pagesFetched how many pages were read, and truncated/stopReason say whether the walk was cut short before the window was covered: stopReason: "error" means a vendor failure ended it part-way, so this is a partial read and more posts may exist.
linkedin_get_post
ChatGPTGet detailed information about a single LinkedIn post by URL or URN.
linkedin_get_profile
ChatGPTGet the profile data of a LinkedIn user
linkedin_get_profile_education
ChatGPTGet education background for a LinkedIn profile
linkedin_get_profile_experience
ChatGPTGet detailed work experience for a LinkedIn profile
linkedin_get_profile_posts
ChatGPTGet posts/updates from a LinkedIn profile. When using time filters, returns ALL posts within that time range. returned is the number of items in this response, pagesFetched how many pages were read, and truncated/stopReason say whether the walk was cut short before the window was covered: stopReason: "error" means a vendor failure ended it part-way, so this is a partial read and more posts may exist.
linkedin_get_profile_skills
ChatGPTGet professional skills for a LinkedIn profile
linkedin_search_companies
ChatGPTSearch for LinkedIn companies
linkedin_search_jobs
ChatGPTSearch for jobs by keywords on LinkedIn
linkedin_search_posts
ChatGPTSearch for posts on LinkedIn by keywords. When using time filters, returns ALL matching posts.
linkedin_search_users
ChatGPTSearch for LinkedIn users by keywords (job titles, skills, names, etc.)
list_documents
ChatGPTList all documents in a folder
load_skill
ChatGPTLoad detailed instructions for a specialized workflow. Call this before executing tools in a domain you're less familiar with. Returns expert-level guidance on tool usage, search strategies, and methodology.
meta_advertiser_search
ChatGPTSearch Meta Ad Library Page Search to find advertiser pages by keywords and location. Use this to discover advertisers before searching for their specific ads.
read_document
ChatGPTRead the content of a document by its UUID. Use this when you have a document ID from a previous operation (e.g., from a feed query or document creation).
reddit_get_post
ChatGPTGet detailed information about a single Reddit post by URL.
reddit_get_posts
ChatGPTGet detailed information about multiple Reddit posts by URL in one call (up to 100).
reddit_get_user
ChatGPTGet a single Reddit user's public profile by username.
reddit_search_communities
ChatGPTSearch for Reddit communities/subreddits
reddit_search_media
ChatGPTSearch for Reddit media posts (images, videos). Returns at most 10 media posts from the first page of results; returned is the number in this response and truncated says whether more results exist upstream that this call did not return. Reddit reports no match total.
reddit_search_people
ChatGPTSearch for Reddit users/people. returned is the number of results in this response and truncated says whether more exist upstream (fetch them with cursor); Reddit reports no match total.
reddit_search_posts
ChatGPTSearch for Reddit posts. Page size is fixed by the upstream vendor and cannot be set; returned is the number of items in this response, truncated (also exposed as hasNextPage) says whether more results exist, and cursor fetches them. Reddit reports no match total, so none is included.
run_agent__strategy_agent
ChatGPTQuery Fidelity: Always pass the user's query to the relevant skill or tool exactly as provided, verbatim, without modification, rephrasing, or adding context. If additional information is needed to complete the task, ask the user for it before executing. Do not infer or supplement the query on their behalf!
run_sequence
ChatGPTLaunch a sequence by ID with optional variables and space context. Returns a run ID to track progress.
scan_reddit_post_page
ChatGPTFetch and analyze a specific Reddit post page with detailed content and comment discussion tree
screenshot
ChatGPTCapture a screenshot of a webpage. Returns a full-page or viewport screenshot as a base64-encoded PNG by default. Set persist: true to upload the PNG to Waldo storage and return a stable public URL instead — useful when the screenshot needs to outlive the run (e.g. embedded in a rendered report).
search_documents
ChatGPTSearch for documents matching specific criteria
search_events
ChatGPTSearch for real-world events by location, date range, and category. Returns event intelligence data including predicted attendance, impact scores, and timing. Results are sorted by significance with most significant events first. Use time range filters (next_n_days, next_n_weeks, next_n_months) for relative date ranges, or specific start_date/end_date for exact dates.
search_google_ads
ChatGPTSearch Google Ads Transparency Center for advertisements. Must provide either advertiser_id or domain. Costs 1 credit for the search plus 1 per video or image ad on the page (each needs a per-ad details lookup for its headline, link and creative); text ads add nothing. Use num to bound the page.
search_google_trending_now
ChatGPTGet currently trending searches on Google Trends. Shows what people are searching for right now.
search_google_trends
ChatGPTSearch Google Trends for comprehensive trend analysis. Analyze a search term or a Google Trends topic id, optionally compared against up to 4 others. For a brand or entity, a topic id is more precise than a string — resolve one with search_google_trends_topics first.
search_google_trends_topics
ChatGPTLook up Google Trends topic ids for a brand, company, product or other entity, to pass as search_google_trends' query.
search_holidays
ChatGPTSearch for holidays and observances by country code. Returns public holidays, school holidays, and observances (like Valentine's Day, Mother's Day) for specified countries. Sorted chronologically by start date.
search_linkedin_ads
ChatGPTSearch LinkedIn Ad Library to find ads by keywords, advertisers, countries, and time periods
search_meta_ads
ChatGPTSearch for ads on Meta Ad Network (Facebook, Instagram, Messenger, Audience Network) with various filters.
search_tiktok_ads
ChatGPTSearch the TikTok Ad Library for advertisements by keyword or advertiser name. Covers TikTok's EU/EEA + UK + Türkiye ad-transparency dataset (DSA); ads outside those regions are not available.
search_tiktok_trending_creators
ChatGPTGet trending TikTok creators for a specific country with sorting criteria
search_tiktok_trending_hashtags
ChatGPTGet trending TikTok hashtags for a specific country, time period, and industry
search_tiktok_trending_songs
ChatGPTGet trending TikTok songs for a specific country and time period
search_tiktok_trending_videos
ChatGPTGet trending TikTok videos for a specific country, time period, and sorting criteria
search_trends
ChatGPTSearch the trends database for industry insights, consumer behavior patterns, and market trends. Include brand names, product names, or any specific terms directly in the search query for best results. Use filters for industries, audiences, or regions if needed.
search_web
ChatGPTSearch the web (optionally filter by freshness). Results come in Google pages of 10; each page read is a separate search, and credits are 1 per 10 results returned. truncated: true without stopReason: "error" means Google had more results than were read.
select_client_account
ChatGPTSelect one of the brands the user has in their workspace. These may be clients, clients products, or competitors to clients. This is used to determine which brand the user is working with in this chat.
space_list
ChatGPTList spaces available for the team. Returns space names, IDs, and metadata.
tiktok_get_following
ChatGPTGet the accounts a TikTok user is following. Paginated via cursor.
tiktok_get_post
ChatGPTGet detailed information about a single TikTok video/post.
tiktok_get_posts
ChatGPTGet the posts of a TikTok user
tiktok_get_profile
ChatGPTGet the profile of a TikTok user
tiktok_search_posts
ChatGPTSearch for TikTok posts. When using time filters, returns ALL matching posts.
tiktok_search_users
ChatGPTSearch for TikTok users
workspace_list
ChatGPTList available workspaces (teams) you can access. Admins can search all workspaces; non-admins only see their own.
workspace_switch
ChatGPTSwitch the active workspace (team). All subsequent tool calls (including agents, sequences, and builtin tools) will operate against the new workspace.
youtube_enrich_post
ChatGPTEnrich a YouTube post document with full details. Use when channel content returns posts missing publishedAt or description.
youtube_get_channel_about
ChatGPTGet detailed information about a YouTube channel including description, stats, and metadata
youtube_get_channel_content
ChatGPTGet one stream of a YouTube channel's uploads. YouTube splits uploads into two streams: long-form videos and shorts — call this tool once per stream you want and merge results yourself if you need both. When using time filters, returns ALL items in range. returned is the number of items in this response, truncated says whether more exist upstream, and total (when present) is YouTube's reported count for the stream. Items carry no description — this endpoint does not supply one. Each item's publishedAt carries a per-item metadata.datePrecision ("exact", "day", "month", "year", "unknown" when parseable but of unstated granularity, or "unavailable" when there is no usable date, in which case publishedAt is absent) that degrades with the video's age. Use youtube_get_video_details for the description; it will not reliably improve the date, which degrades with age on that endpoint too.
youtube_get_post
ChatGPTGet detailed information about a single YouTube video/post by URL or ID.
youtube_get_video_details
ChatGPTGet detailed information about a YouTube video including metadata and available transcripts
youtube_get_video_transcript
ChatGPTGet the transcript of a YouTube video with timestamps
youtube_search_channels
ChatGPTSearch for YouTube channels by keywords
youtube_search_videos
ChatGPTSearch for videos on YouTube by keywords. When using time filters, returns ALL matching videos. returned is the number of items in this response, truncated says whether more matches exist upstream, and total (when present) is YouTube's reported match total for the query. Each item's publishedAt carries a per-item metadata.datePrecision saying how exactly YouTube stated it — "exact", "day", "month", "year", "unknown" (parseable, granularity not assertable) or "unavailable" (no usable date at all, in which case publishedAt is absent). The granularity degrades with the video's age, so an older item's date is a bucket rendered as midnight UTC and can be months off. youtube_get_video_details will not reliably do better: that endpoint's date degrades with age the same way.