{"version":"1.4.0","lastUpdated":"2026-09-07T06:01:11.999Z","project":"docs","pages":[{"path":"/forward","name":"Forward Docs Home","sections":["header","hero","getting-started","sidebar"]},{"path":"/forward/[...slug]","name":"Forward Docs Page","sections":["header","sidebar","breadcrumbs","content","toc","pagination","feedback"]},{"path":"/classic","name":"Classic Docs Home","sections":["header","hero","getting-started","sidebar"]},{"path":"/classic/[...slug]","name":"Classic Docs Page","sections":["header","sidebar","breadcrumbs","content","toc","pagination","feedback"]},{"path":"/api-reference","name":"API Reference Index","sections":["header","sidebar","content"]},{"path":"/api-reference/[...slug]","name":"API Reference Page","sections":["header","sidebar","content","parameters","responses","examples"]},{"path":"/sql-reference","name":"SQL Reference Index","sections":["header","sidebar","content"]},{"path":"/sql-reference/[...slug]","name":"SQL Reference Page","sections":["header","sidebar","content","toc"]},{"path":"/changelog","name":"Changelog Index","sections":["header","content","changelog-list"]},{"path":"/changelog/[slug]","name":"Changelog Entry","sections":["header","content"]},{"path":"/community","name":"Community Page","sections":["header","content","slack-form"]},{"path":"/live","name":"Live Stream Page","sections":["header","content","video-player"]}],"events":[{"name":"docs_search","enumKey":"SEARCH","category":"search","categoryName":"Search Events","description":"Tracks when a user performs a search in the documentation search modal.","trigger":"Fires after debounced search input when Pagefind returns results.","pages":["all"],"sections":["header"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"search_term","type":"string","description":"The search query entered by the user","required":true,"exampleValues":["kafka connector","ingest data","API token"]},{"name":"search_version","type":"string","description":"Docs generation searched by Pagefind","required":true,"exampleValues":["forward","classic"]},{"name":"result_count","type":"number","description":"Number of Pagefind results returned before docs UI ranking and trimming","required":true,"exampleValues":["24","0"]}]},{"name":"docs_search_result_clicked","enumKey":"SEARCH_RESULT_CLICKED","category":"search","categoryName":"Search Events","description":"Tracks which search result or default suggestion a user selects from the documentation search modal.","trigger":"Fires when a user clicks a search result link.","pages":["all"],"sections":["header"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"search_term","type":"string","description":"The search query active when the result was clicked","required":true,"exampleValues":["kafka connector","ingest data",""]},{"name":"result_title","type":"string","description":"Title or label of the selected result","required":true,"exampleValues":["Kafka Connector","Development workflow"]},{"name":"result_url","type":"string","description":"Destination URL of the selected result","required":true,"exampleValues":["/forward/ingest-data/kafka?q=kafka"]},{"name":"result_type","type":"string","description":"Result content type shown in the search UI","required":true,"exampleValues":["docs","api","sql","changelog"]},{"name":"result_position","type":"number","description":"One-based visual position of the selected result group","required":true,"exampleValues":["1","4"]},{"name":"is_default_suggestion","type":"string","description":"Whether the click came from the default suggestions shown before search results","required":true,"exampleValues":["true","false"]}]},{"name":"docs_code_button_clicked","enumKey":"CODE_BUTTON_CLICKED","category":"code","categoryName":"Code Interaction Events","description":"Tracks when a user clicks a code block action button, such as copy or Explain with AI.","trigger":"Fires when a user clicks a button in a Markdoc code block.","pages":["all"],"sections":["content"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"button","type":"string","description":"The code action button clicked","required":true,"exampleValues":["copy","explain"]},{"name":"code_language","type":"string","description":"Normalized language of the code block","required":false,"exampleValues":["sql","typescript","python","bash"]},{"name":"code_snippet","type":"string","description":"First 100 characters of the code block, used to identify the snippet","required":false},{"name":"code_title","type":"string","description":"Optional title shown above the code block","required":false,"exampleValues":["datasource.datasource","query.pipe"]}]},{"name":"docs_code_tab_clicked","enumKey":"CODE_TAB_CLICKED","category":"code","categoryName":"Code Interaction Events","description":"Tracks regular code snippet tab changes that do not change the user's CLI or SDK method preference.","trigger":"Fires when a user clicks a non-method tab in a Markdoc code tabs component.","pages":["all"],"sections":["content"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"tab","type":"string","description":"Selected tab label","required":true,"exampleValues":["cURL","JavaScript","Result"]},{"name":"previous_tab","type":"string","description":"Previously selected tab label","required":true,"exampleValues":["SQL","Python"]},{"name":"variant","type":"string","description":"Tabs visual variant","required":true,"exampleValues":["code"]}]},{"name":"docs_method_changed","enumKey":"METHOD_CHANGED","category":"preference","categoryName":"Preference Events","description":"Tracks when a user changes their preferred docs method between Tinybird CLI, TypeScript SDK, and Python SDK.","trigger":"Fires from the sidebar method selector or from method tabs in code examples.","pages":["all"],"sections":["sidebar","content"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"from_method","type":"string","description":"Previously selected method preference","required":true,"exampleValues":["cli","typescript","python"]},{"name":"to_method","type":"string","description":"Newly selected method preference","required":true,"exampleValues":["cli","typescript","python"]},{"name":"source","type":"string","description":"UI surface where the method changed","required":true,"exampleValues":["sidebar_select","method_tab"]}]},{"name":"form_submitted","enumKey":"FORM_SUBMITTED","category":"feedback","categoryName":"Feedback Events","description":"Tracks when a user submits the Slack community invitation form.","trigger":"Fires when HubSpot form is submitted on the community page.","pages":["/community"],"sections":["content"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"user-agent","type":"string","description":"Browser user agent string","required":true,"exampleValues":["Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)"]},{"name":"locale","type":"string","description":"User's browser locale","required":true,"exampleValues":["en-US","es-ES","fr-FR"]},{"name":"location","type":"string","description":"User's country based on timezone","required":true,"exampleValues":["US","ES","GB"]},{"name":"referrer","type":"string","description":"The referring URL","required":true,"exampleValues":["https://google.com","https://tinybird.co"]},{"name":"pathname","type":"string","description":"The current page pathname","required":true,"exampleValues":["/community"]},{"name":"href","type":"string","description":"The full URL of the page","required":true,"exampleValues":["https://www.tinybird.co/docs/community"]}]},{"name":"page_hit","enumKey":"PAGE_HIT","category":"core","categoryName":"Core Events","description":"Tracks every page view for Tinybird analytics with detailed metadata and UTM attribution (session + first-touch).","trigger":"Fires on every page navigation via Next.js router.","pages":["all"],"sections":[],"properties":[{"name":"user-agent","type":"string","description":"Browser user agent string","required":true,"exampleValues":["Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36"]},{"name":"locale","type":"string","description":"User's browser locale","required":true,"exampleValues":["en-US","es-ES"]},{"name":"location","type":"string","description":"User's country based on timezone","required":true,"exampleValues":["US","ES","GB"]},{"name":"referrer","type":"string","description":"The referring URL","required":true,"exampleValues":["https://google.com",""]},{"name":"pathname","type":"string","description":"The current page pathname","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"href","type":"string","description":"The full URL of the page","required":true,"exampleValues":["https://www.tinybird.co/docs/forward/get-started/quick-start"]},{"name":"utm_source","type":"string","description":"Current session UTM source parameter from the landing URL","required":false,"exampleValues":["google","newsletter","twitter"]},{"name":"utm_medium","type":"string","description":"Current session UTM medium parameter from the landing URL","required":false,"exampleValues":["cpc","email","social"]},{"name":"utm_campaign","type":"string","description":"Current session UTM campaign parameter from the landing URL","required":false,"exampleValues":["spring_launch","product_update"]},{"name":"utm_content","type":"string","description":"Current session UTM content parameter from the landing URL","required":false,"exampleValues":["hero_cta","sidebar_link"]},{"name":"utm_term","type":"string","description":"Current session UTM term parameter from the landing URL","required":false,"exampleValues":["real-time analytics","data pipeline"]},{"name":"ft_source","type":"string","description":"First-touch UTM source from the user's very first visit with UTM parameters","required":false,"exampleValues":["google","producthunt"]},{"name":"ft_medium","type":"string","description":"First-touch UTM medium from the user's very first visit with UTM parameters","required":false,"exampleValues":["cpc","referral"]},{"name":"ft_campaign","type":"string","description":"First-touch UTM campaign from the user's very first visit with UTM parameters","required":false,"exampleValues":["launch_2025","awareness"]},{"name":"ft_content","type":"string","description":"First-touch UTM content from the user's very first visit with UTM parameters","required":false,"exampleValues":["hero_cta","banner"]},{"name":"ft_term","type":"string","description":"First-touch UTM term from the user's very first visit with UTM parameters","required":false,"exampleValues":["streaming analytics","clickhouse alternative"]},{"name":"ft_referrer","type":"string","description":"The referring URL from the user's very first visit, stored alongside first-touch UTMs","required":false,"exampleValues":["https://google.com","https://news.ycombinator.com"]}]},{"name":"$pageview","enumKey":"PAGEVIEW","category":"core","categoryName":"Core Events","description":"Standard PostHog pageview event for analytics and session tracking.","trigger":"Fires on every page navigation via Next.js router.","pages":["all"],"sections":[],"properties":[{"name":"$current_url","type":"string","description":"The full URL of the current page (PostHog standard)","required":true,"exampleValues":["https://www.tinybird.co/docs/forward/get-started/quick-start"]},{"name":"referrer","type":"string","description":"The referring URL","required":true,"exampleValues":["https://google.com",""]}]},{"name":"web_vital","enumKey":"WEB_VITAL","category":"performance","categoryName":"Performance Events","description":"Tracks Core Web Vitals metrics (CLS, FCP, INP, LCP, TTFB) for performance monitoring.","trigger":"Fires when web-vitals library reports a metric, with reportAllChanges for CLS, LCP, INP.","pages":["all"],"sections":[],"properties":[{"name":"name","type":"string","description":"The name of the web vital metric","required":true,"exampleValues":["LCP","FCP","CLS","INP","TTFB"]},{"name":"value","type":"number","description":"The metric value in milliseconds or unitless (CLS)","required":true,"exampleValues":["1234.56","0.05"]},{"name":"delta","type":"number","description":"The change in value since last measurement","required":true,"exampleValues":["100.5","0.01"]},{"name":"rating","type":"string","description":"Performance rating based on thresholds","required":true,"exampleValues":["good","needs-improvement","poor"]},{"name":"id","type":"string","description":"Unique identifier for this metric instance","required":true,"exampleValues":["v3-1234567890123-1234567890123"]},{"name":"navigationType","type":"string","description":"Type of navigation that triggered the metric","required":true,"exampleValues":["navigate","reload","back-forward","prerender"]},{"name":"pathname","type":"string","description":"The current page pathname","required":true,"exampleValues":["/forward/get-started"]},{"name":"href","type":"string","description":"The full URL of the page","required":true,"exampleValues":["https://www.tinybird.co/docs/forward/get-started"]},{"name":"user-agent","type":"string","description":"Browser user agent string","required":true,"exampleValues":["Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)"]},{"name":"locale","type":"string","description":"User's browser locale","required":true,"exampleValues":["en-US"]},{"name":"location","type":"string","description":"User's country based on timezone","required":true,"exampleValues":["US"]},{"name":"referrer","type":"string","description":"The referring URL","required":true,"exampleValues":["https://google.com"]}]},{"name":"live_mode_on","enumKey":"LIVE_MODE_ON","category":"live","categoryName":"Live Stream Events","description":"Tracks when a live stream becomes active and the PiP video widget appears.","trigger":"Fires when getCurrentLive() returns a live stream and user hasn't closed the widget.","pages":["all"],"sections":["pip-widget"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]}]},{"name":"live_mode_close","enumKey":"LIVE_MODE_CLOSE","category":"live","categoryName":"Live Stream Events","description":"Tracks when a user closes the PiP live video widget.","trigger":"Fires when user clicks the close button on the PiP widget.","pages":["all"],"sections":["pip-widget"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]}]},{"name":"live_mode_go_to","enumKey":"LIVE_MODE_GO_TO","category":"live","categoryName":"Live Stream Events","description":"Tracks when a user clicks the PiP widget to navigate to the live page.","trigger":"Fires when user clicks the PiP widget (not close or play).","pages":["all"],"sections":["pip-widget"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]}]},{"name":"pip_video_clicked","enumKey":"PIP_VIDEO_CLICKED","category":"live","categoryName":"Live Stream Events","description":"Tracks when a user clicks to play the PiP live video.","trigger":"Fires when user clicks the play button on the PiP video.","pages":["all"],"sections":["pip-widget"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]}]},{"name":"docs_toc_link_clicked","enumKey":"TOC_LINK_CLICKED","category":"navigation","categoryName":"Navigation Events","description":"Tracks when a user clicks an item in the right-side table of contents.","trigger":"Fires when a user clicks an On this page link.","pages":["all"],"sections":["table-of-contents"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"heading_id","type":"string","description":"Anchor id of the selected heading","required":true,"exampleValues":["create-a-pipe","examples"]},{"name":"heading_text","type":"string","description":"Visible heading text in the table of contents","required":true,"exampleValues":["Create a Pipe","Examples"]},{"name":"heading_level","type":"number","description":"Heading level of the selected table of contents item","required":true,"exampleValues":["2","3"]}]},{"name":"docs_heading_permalink_clicked","enumKey":"HEADING_PERMALINK_CLICKED","category":"navigation","categoryName":"Navigation Events","description":"Tracks when a user clicks the permalink symbol next to a documentation heading.","trigger":"Fires when a user clicks a heading permalink.","pages":["all"],"sections":["content"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"heading_id","type":"string","description":"Anchor id of the heading","required":true,"exampleValues":["create-a-pipe","examples"]},{"name":"heading_text","type":"string","description":"Visible heading text","required":true,"exampleValues":["Create a Pipe","Examples"]},{"name":"heading_level","type":"number","description":"Heading level of the permalink","required":true,"exampleValues":["1","2","3"]}]},{"name":"docs_external_link_clicked","enumKey":"EXTERNAL_LINK_CLICKED","category":"navigation","categoryName":"Navigation Events","description":"Tracks when a user clicks an external link rendered from docs content.","trigger":"Fires when a user clicks a Markdoc link with an external hostname.","pages":["all"],"sections":["content"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"href","type":"string","description":"External link URL clicked by the user","required":true,"exampleValues":["https://github.com/tinybirdco/tinybird-cli"]},{"name":"hostname","type":"string","description":"Hostname of the external destination","required":true,"exampleValues":["github.com","cloud.google.com"]},{"name":"link_text","type":"string","description":"Visible link text when it is plain text","required":false,"exampleValues":["Tinybird CLI","Google Cloud"]},{"name":"section","type":"string","description":"Docs UI section where the external link was clicked","required":true,"exampleValues":["content"]}]},{"name":"docs_page_action_clicked","enumKey":"PAGE_ACTION_CLICKED","category":"ui","categoryName":"UI Interaction Events","description":"Tracks page-level actions for copying Markdown, viewing Markdown, or opening the page in AI tools.","trigger":"Fires when a user clicks an action in the page actions dropdown or primary copy button.","pages":["all"],"sections":["page-header"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"action","type":"string","description":"Page action clicked by the user","required":true,"exampleValues":["copy_markdown","view_markdown","open_chatgpt","open_claude","open_perplexity"]},{"name":"source","type":"string","description":"Button surface that triggered the action","required":true,"exampleValues":["primary_button","dropdown"]},{"name":"markdown_path","type":"string","description":"Resolved Markdown URL path used by Markdown view and AI tool actions","required":false,"exampleValues":["/docs/md/forward/quickstarts"]}]},{"name":"docs_ask_ai_clicked","enumKey":"ASK_AI_CLICKED","category":"ai","categoryName":"AI Interaction Events","description":"Tracks when a user opens the floating Ask AI chat button.","trigger":"Fires when a user clicks Ask AI while the chat modal is closed.","pages":["all"],"sections":["ask-ai-button"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"action","type":"string","description":"Ask AI action performed by the user","required":true,"exampleValues":["open"]}]},{"name":"theme_changed","enumKey":"THEME_CHANGED","category":"preference","categoryName":"Preference Events","description":"Tracks when a user changes the docs theme between light and dark.","trigger":"Fires when a user clicks the theme toggle.","pages":["all"],"sections":["header"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"from_theme","type":"string","description":"Theme before the user clicked the toggle","required":true,"exampleValues":["light","dark"]},{"name":"to_theme","type":"string","description":"Theme selected by the user","required":true,"exampleValues":["light","dark"]}]},{"name":"announcement_bar_dismiss","enumKey":"ANNOUNCEMENT_BAR_DISMISS","category":"ui","categoryName":"UI Interaction Events","description":"Tracks when a user dismisses the announcement bar toast.","trigger":"Fires when user clicks the close button on the announcement bar.","pages":["all"],"sections":["announcement-bar"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"announcement_id","type":"string","description":"Unique identifier for the announcement (CONFIG.id)","required":true,"exampleValues":["launch-week-2026-03"]},{"name":"announcement_title","type":"string","description":"Title text of the announcement (CONFIG.title)","required":true,"exampleValues":["⏩️ A new Forward experience for the agentic era"]}]},{"name":"announcement_bar_link_clicked","enumKey":"ANNOUNCEMENT_BAR_LINK_CLICK","category":"ui","categoryName":"UI Interaction Events","description":"Tracks when a user clicks the announcement bar link to navigate to the linked content.","trigger":"Fires when user clicks anywhere on the announcement bar card.","pages":["all"],"sections":["announcement-bar"],"properties":[{"name":"page_path","type":"string","description":"Current page URL path (auto-injected by tracking context)","required":true,"exampleValues":["/forward/get-started/quick-start","/classic/overview"]},{"name":"announcement_id","type":"string","description":"Unique identifier for the announcement (CONFIG.id)","required":true,"exampleValues":["launch-week-2026-03"]},{"name":"announcement_title","type":"string","description":"Title text of the announcement (CONFIG.title)","required":true,"exampleValues":["⏩️ A new Forward experience for the agentic era"]},{"name":"link_url","type":"string","description":"Destination URL of the announcement link (CONFIG.buttonLink)","required":true,"exampleValues":["https://www.tinybird.co/launch-week"]}]}],"sharedComponents":[{"name":"Search","events":["docs_search","docs_search_result_clicked"],"usedOn":["all"]},{"name":"PageView","events":["page_hit","$pageview"],"usedOn":["all"]},{"name":"WebVitalsTracking","events":["web_vital"],"usedOn":["all"]},{"name":"AnnouncementBar","events":["announcement_bar_dismiss","announcement_bar_link_clicked"],"usedOn":["all"]},{"name":"LiveContext","events":["live_mode_on","live_mode_close","live_mode_go_to","pip_video_clicked"],"usedOn":["all"]},{"name":"Code","events":["docs_code_button_clicked"],"usedOn":["all"]},{"name":"Tabs","events":["docs_code_tab_clicked","docs_method_changed"],"usedOn":["all"]},{"name":"SelectMethod","events":["docs_method_changed"],"usedOn":["all"]},{"name":"CopyPage","events":["docs_page_action_clicked"],"usedOn":["all docs pages with Markdown actions"]},{"name":"TableOfContents","events":["docs_toc_link_clicked"],"usedOn":["all docs pages with table of contents"]},{"name":"Heading","events":["docs_heading_permalink_clicked"],"usedOn":["all docs pages"]},{"name":"Link","events":["docs_external_link_clicked"],"usedOn":["all Markdoc content pages"]},{"name":"ThemeSwitch","events":["theme_changed"],"usedOn":["all"]},{"name":"InkeepChatButton","events":["docs_ask_ai_clicked"],"usedOn":["all"]},{"name":"SlackForm","events":["form_submitted"],"usedOn":["/community"]}]}