A guide to using Xano’s visual builder to inspect, validate, and iterate on your backend workflows.
This guide walks you through running a pre-built signup endpoint, inspecting the steps, and making a small modification to send a welcome email to new users. Xano gives you a user table and default authentication APIs out of the box, and we’ll use those here.
1
Open up your auth/signup endpoint
Navigate to API in the sidebar, choose the Authentication group, and select your auth/signup endpoint.
2
Test the endpoint
Click Run in the top-right corner.Enter a name, email, and a password to create a new user. You’ll use this later on, so make sure to remember the credentials you enter here. Click Run in the lower-right corner to execute the request.If all goes well, you should see a successful response with an returned.
3
Explore the visual builder
The visual builder has two different views: Canvas and Stack. Canvas presents a node-style view of the steps in your endpoint, while Stack presents a linear, step-by-step list of the same information, more similar to traditional code.
Canvas View
Stack View
Click on a step to see more details about what it does and how it’s configured.
4
Modify the signup endpoint to add a welcome email
Let’s add a step to send a welcome email after signup. We’ll use the Send Email function for this.Click the + Add Step button at the bottom of the stack view, or in between the Create Authentication Token step and the Response in the canvas view.Select the Send Email function.Add a subject and a body for the email. Xano includes free access to Resend for development and testing (up to 100 emails), limited to the email address you signed up for Xano with.Click Save to save the step.
5
Test the modified signup endpoint
Run the signup endpoint again with a different email address. You should receive a welcome email shortly after the run completes.
6
Explore the Run panel
After a run, open the Timing dropdown to view step timing, output, inputs, and variables.Click the > next to the first Get Record step. We can see the first Get Record function returned null, meaning that the user didn’t already exist.
Try to register the same user again to see how the output changes.
Expand the input and vars sections for each step to see how the data changes throughout execution.
Xano will automatically hide information labeled as sensitive, such as password fields, in the run panel.
7
Publish your changes and test externally
Click the dropdown in the upper-right corner and choose Publish Now. This immediately deploys your changes to the live API.Click to copy the endpoint URL.Take it over to your favorite API testing tool, like Postman, Insomnia, or Bruno. Send a POST request to the signup endpoint with the required parameters (name, email, password) in the body.You should see a successful response, just like in Xano, and have received another welcome email.
The account already exists. Try using a different email address to create a new user.
Error Traceback (Most recent call last):at API /auth/signup(Add Record)
Exception: Param: password - Input does not meet minimum length requirement of 8 characters
Password inputs have some default requirements: at least 8 characters, one uppercase letter, and one number. Make sure your password meets these requirements.
Was this page helpful?
{"docsConfig":{"theme":"sequoia","$schema":"https://mintlify.com/docs.json","name":"Xano Documentation","colors":{"primary":"#1b62f8","light":"#3884ff","dark":"#1b62f8"},"logo":{"light":"https://mintcdn.com/xano-997cb9ee/hLg--ImSu58u2jLW/logo/logo_wordmark_blue_1_.svg?fit=max\u0026auto=format\u0026n=hLg--ImSu58u2jLW\u0026q=85\u0026s=487b8933249723b2ebc7bf7b6179ea0c","dark":"https://mintcdn.com/xano-997cb9ee/hLg--ImSu58u2jLW/logo/logo_wordmark_white.svg?fit=max\u0026auto=format\u0026n=hLg--ImSu58u2jLW\u0026q=85\u0026s=2d791d4d44350552266e449b7bea065c"},"favicon":"https://mintcdn.com/xano-997cb9ee/hLg--ImSu58u2jLW/logo/logo_symbol_blue.svg?fit=max\u0026auto=format\u0026n=hLg--ImSu58u2jLW\u0026q=85\u0026s=5d31c3241d161111c202c2ec3afcbcc0","background":{"color":{"light":"#f9f9f9","dark":"#141518"}},"navbar":{"links":[{"href":"/legal","label":"Legal"},{"href":"/updates","label":"Releases"},{"href":"https://status.xano.com/","label":"Status"},{"href":"https://app.xano.com/","label":"Log in"}],"primary":{"type":"button","label":"Get started for free","href":"https://app.xano.com/signup?plan=build\u0026cluster_id=1\u0026segment=eyJhbm9ueW1vdXNJZCI6IjU4NTcwNzY4NDUuODY1MzMwMTE5MCIsInV0bV9tZWRpdW0iOiIiLCJ1dG1fc291cmNlIjoiIiwidXRtX2NhbXBhaWduIjoiIiwidXRtX3Rlcm0iOiIiLCJ1dG1fY29udGVudCI6IiIsInJlZmVycmVyIjoiIn0%3D"}},"footer":{"socials":{"x":"https://x.com/nocodebackend","youtube":"https://www.youtube.com/@nocodebackend","linkedin":"https://www.linkedin.com/company/xano","facebook":"https://www.facebook.com/xanoinc"}},"seo":{"metatags":{"og:type":"website","og:site_name":"Xano Documentation","og:description":"Visual-first unified backend for modern apps. Build APIs, AI Agents, data, logic, auth, \u0026 more—all in one platform."},"indexing":"all"},"styling":{"eyebrows":"breadcrumbs","latex":true},"integrations":{"intercom":{"appId":"abk6h5qu"},"segment":{"key":"manKNsFY6zkgO9hggr91nc5yFYUh2d4B"}},"errors":{"404":{"redirect":false,"title":"Looks like a wire came loose","description":"The page you're looking for doesn't exist, or it moved. Try the search bar above, browse the [documentation home](/), or [contact support](https://xano.com/contact/) if you think something's broken."}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity"],"display":"header"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"xano-997cb9ee","hasAudioNarration":false,"actualSubdomain":"xano-997cb9ee","customDomains":["docs.xano.com"],"gitSource":{"type":"github","owner":"xano-labs","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae49815f49f5b7aedfdc0ee","collectionId":"d2493961-a5f1-4164-96d4-5e25946632d9","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae49815f49f5b7aedfdc0ee"},"feedback":{"thumbs":true,"edits":false,"issues":false,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae49815f49f5b7aedfdc0ee","clientVersion":"0.0.4039","searchFilterCounts":[{"language":"default","tag":"Metadata API","count":208},{"language":"default","tag":"Xano","count":131},{"language":"default","tag":"Build","count":47},{"language":"default","tag":"XanoScript","count":46},{"language":"default","tag":"References","count":32},{"language":"default","tag":"table / schema / type","count":25},{"language":"default","tag":"Test \u0026 Deploy","count":20},{"language":"default","tag":"CLI","count":18},{"language":"default","tag":"Enterprise","count":17},{"language":"default","tag":"Logic \u0026 Workflows","count":13}]},"assistantConfig":{"enableAskAiButton":true,"enableStarterQuestions":true,"enableContextualStarterQuestions":true,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"@keyframes opsai-glow{0%,to{box-shadow:0 0 0 8px rgba(56,132,255,.06)}50%{box-shadow:0 0 0 13px rgba(56,132,255,.03)}}#content-area .link{color:#103b95}.prose img:not([data-rmiz-modal-img]){max-width:60%;height:auto}.w-full aspect-video rounded-xl{max-width:60%!important}[data-rmiz-modal-content] img[data-rmiz-modal-img]{max-width:90vw!important;max-height:90vh!important;object-fit:contain}html.dark #content-area .link{color:#6b99fa}html.dark .mermaid svg g.node .label text,html.dark .mermaid svg g.node span.nodeLabel{fill:#eaf1ff!important;color:#103b95!important}html.dark .mermaid svg g.node circle,html.dark .mermaid svg g.node ellipse,html.dark .mermaid svg g.node path,html.dark .mermaid svg g.node polygon,html.dark .mermaid svg g.node rect{stroke:#8fb3ff!important;stroke-width:15px!important}img{background:0 0!important;background-color:transparent!important}.nodeLabel{font-size:12px}.stickyDiagram{position:sticky;top:var(--scroll-mt);flex:0 0 180px;min-width:100px}@media (max-width:768px){.stickyDiagram{position:static;top:auto;flex:none;width:100%;margin-bottom:1rem}}table{display:table!important;width:100%;table-layout:auto}table td,table th{vertical-align:top;border-left:1px solid #dadada!important;border-right:1px solid #dadada!important;padding:.5rem!important}.table-wrapper{overflow-x:visible}.supportButton{border:0!important}.arcadediv{position:relative;padding-bottom:calc(80.4861% + 41px);height:0;width:100%}.arcadeiframe{position:absolute;top:0;left:0;width:100%;height:100%!important;color-scheme:light}.tab-icon{display:inline-block;border-radius:4px;padding:2px}html.dark .tab-icon{background-color:#bababa!important}h2>span>.icon{position:relative;top:-.1em;margin-right:.4rem;vertical-align:middle}.ui-bubble{gap:.35rem;padding:.2rem .5rem;font-size:.9em!important;font-weight:800!important}html.dark .kb,html.dark .kbd,html.dark .ui-bubble{background-color:#1f2937;border-color:#374151}.ui-bubble .icon{width:1.2em!important;height:1.2em!important;flex-shrink:0;display:inline-block;vertical-align:middle}.kb,.kbd,.ui-bubble{display:inline-flex;align-items:center;margin-bottom:.2rem;margin-left:.2rem;margin-right:.2rem;background-color:var(--mintlify-code-bg, #f3f4f6);border:1px solid var(--mintlify-border-color, #e5e7eb);border-radius:6px;font:inherit;vertical-align:middle}.kb{gap:.35rem;padding:.2rem .5rem;font-size:.8em!important;font-weight:600!important;font-family:ui-monospace,\"SFMono-Regular\",\"Fira Code\",\"Cascadia Code\",Menlo,Consolas,monospace!important}.kb .icon{width:1em!important;height:1em!important;display:inline-block}.kbd{gap:.3rem;padding:.15rem .45rem;border-bottom-width:3px;font-size:.85em!important;font-weight:700!important;line-height:1.4;white-space:nowrap;user-select:none;color:var(--mintlify-content-color, #374151)}html.dark .kbd{border-color:#374151 #374151 #4b5563;color:#e5e7eb}.kb .icon,.kbd .icon,.kbd svg{flex-shrink:0;vertical-align:middle}.kbd .icon{width:1.1em!important;height:1.1em!important;display:inline-block}.kbd svg{width:1em;height:1em}.kbd--linux::before,.kbd--mac::before,.kbd--windows::before{font-family:\"Font Awesome 6 Brands\",\"Font Awesome 6 Free\",FontAwesome;content:\"\\f179\";font-weight:900;font-style:normal;font-size:.95em;margin-right:.25em;vertical-align:middle}.kbd--linux::before,.kbd--windows::before{content:\"\\f17a\";font-weight:400;font-size:.9em}.kbd--linux::before{content:\"\\f17c\";font-size:.95em}:root[data-theme=dark] .prose :where(h1,h2,h3,h4,h5,h6),html.dark .prose :where(h1,h2,h3,h4,h5,h6){color:#fff!important}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0!important;margin-bottom:0!important}.prose :where(h1, h2, h3, h4, h5, h6)[id]{scroll-margin-top:120px!important}.browser-frame{--bf-radius:10px;--bf-shadow:0 8px 24px rgba(0,0,0,.06);--bf-border:#e5e7eb;--bf-bg:#ffffff;--bf-chrome:#f3f4f6;--bf-text:#6b7280;--bf-address-bg:rgba(255,255,255,.75);border:1px solid var(--bf-border);border-radius:var(--bf-radius);background:var(--bf-bg);box-shadow:var(--bf-shadow);overflow:hidden;max-width:100%}.dark .browser-frame{--bf-border:rgba(255,255,255,.12);--bf-bg:#0b0f19;--bf-chrome:#111827;--bf-text:rgba(255,255,255,.70);--bf-address-bg:rgba(255,255,255,.06);--bf-shadow:0 12px 34px rgba(0,0,0,.45)}.browser-frame__top{display:flex;align-items:center;gap:8px;padding:7px 10px;background:var(--bf-chrome);border-bottom:1px solid var(--bf-border)}.browser-frame__controls{display:flex;align-items:center;gap:6px;flex:0 0 auto}.browser-frame__dot{width:10px;height:10px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}.dark .browser-frame__dot{box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}.browser-frame__dot--red{background:#ff5f57}.browser-frame__dot--yellow{background:#febc2e}.browser-frame__dot--green{background:#28c840}.browser-frame__address{flex:1 1 auto;height:22px;border-radius:999px;border:1px solid rgba(0,0,0,.06);background:var(--bf-address-bg);display:flex;align-items:center;justify-content:center;padding:0 10px;font:500 11px/1.2 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;color:var(--bf-text);letter-spacing:.2px;user-select:none}.dark .browser-frame__address{border-color:rgba(255,255,255,.08)}.browser-frame__body{background:var(--bf-bg)}.browser-frame__body img{width:100%;height:auto}.browser-frame__body *{border:0!important;border-radius:0!important;box-shadow:none!important;background:0 0!important}.browser-frame__body pre,.browser-frame__body>*{margin:0!important;padding:0!important}.browser-frame__body .browser-frame__img--light{display:block}.browser-frame__body .browser-frame__img--dark,.dark .browser-frame__body .browser-frame__img--light{display:none}.dark .browser-frame__body .browser-frame__img--dark{display:block}.qs-step{border:1px solid var(--mintlify-border-color, #e5e7eb);border-radius:1rem;padding:2rem;margin-bottom:2rem;position:relative}.qs-step-number{position:absolute;top:-.75rem;left:1.25rem;width:1.75rem;height:1.75rem;border-radius:50%;background:linear-gradient(135deg,#1b62f8,#6366f1);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8rem;font-weight:700;line-height:1}.qs-step h3:first-of-type{margin-top:.25rem}.feature-grid{display:grid;grid-template-columns:1fr 1fr;border:0;margin:.5rem 0}.feature-grid__item{padding:1.25rem 1.5rem;text-align:justify}.feature-grid__item strong{font-size:1.15rem}.feature-grid__item svg{margin-right:.4rem;width:1.75em;height:1.75em;vertical-align:middle;position:relative;top:-.1em}.feature-grid__desc{margin-top:.75rem}.feature-grid__item:nth-child(odd){border-right:1px solid var(--mintlify-border-color, #e5e7eb)}.feature-grid__item:nth-child(n+3){border-top:1px solid var(--mintlify-border-color, #e5e7eb)}html.dark .feature-grid__item:nth-child(odd){border-right-color:rgba(255,255,255,.1)}html.dark .feature-grid__item:nth-child(n+3){border-top-color:rgba(255,255,255,.1)}@media (max-width:640px){.feature-grid{grid-template-columns:1fr}.feature-grid__item:nth-child(odd){border-right:none}.feature-grid__item:nth-child(n+2){border-top:1px solid var(--mintlify-border-color, #e5e7eb)}}html.dark .callout[data-callout-type=tip]{background-color:rgba(5,46,22,.6)!important}.hero-tabs [role=tablist]{display:flex!important;gap:.75rem;border-bottom:none!important;margin-bottom:1.5rem}.hero-tabs [role=tab]{flex:1;text-align:center;padding:.625rem 1rem;border:1px solid var(--mintlify-border-color, #e5e7eb);border-radius:.75rem;font-weight:500;font-size:.9rem;color:#374151;background:var(--mintlify-card-bg, #fff);cursor:pointer;transition:all .15s ease;box-shadow:0 1px 2px rgba(0,0,0,.04)}html.dark .hero-tabs [role=tab]{color:#d1d5db;background:var(--mintlify-card-bg, rgba(255, 255, 255, 0.05));border-color:var(--mintlify-border-color, rgba(255, 255, 255, 0.1));box-shadow:0 1px 2px rgba(0,0,0,.2)}.hero-tabs [role=tab]:hover{border-color:#1b62f8;color:#111827;box-shadow:0 1px 3px rgba(56,132,255,.15)}html.dark .hero-tabs [role=tab]:hover{border-color:#3884ff;color:#f3f4f6;box-shadow:0 1px 3px rgba(56,132,255,.25)}.hero-tabs [role=tab][aria-selected=true]{border-color:#1b62f8;color:#103b95;background:#eef4ff;box-shadow:0 1px 3px rgba(56,132,255,.18)}html.dark .hero-tabs [role=tab][aria-selected=true]{border-color:#6b99fa;color:#eaf1ff;background:rgba(56,132,255,.16);box-shadow:0 1px 3px rgba(0,0,0,.3)}.hero-tabs [role=tab],.hero-tabs [role=tab] *,.opsai-nav a{text-decoration:none!important}.hero-tabs [role=tab] *{border-bottom:none!important}@media (min-width:1024px){#content-area{max-width:1100px!important}}@media (min-width:1280px){#content-area{margin-left:auto!important;margin-right:auto!important}}@media (min-width:1800px){#content-area{max-width:1200px!important}}.opsai-hero{position:relative;display:flex;flex-direction:column;align-items:center;margin:0 0 2.5rem;padding:3.25rem 2rem 3rem;border-radius:1.25rem;overflow:hidden;text-align:center;background:radial-gradient(120% 140% at 50% -20%,rgba(56,132,255,.35) 0,rgba(56,132,255,0) 60%),linear-gradient(160deg,#0b1220 0,#0e1729 55%,#0b1220 100%);border:1px solid rgba(56,132,255,.25)}.opsai-hero::after{content:\"\";position:absolute;inset:0;background-image:linear-gradient(rgba(56,132,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(56,132,255,.06) 1px,transparent 1px);background-size:36px 36px;-webkit-mask-image:radial-gradient(70% 70% at 50% 0,#000 0,transparent 75%);mask-image:radial-gradient(70% 70% at 50% 0,#000 0,transparent 75%);pointer-events:none}.opsai-hero>*{position:relative;z-index:1}.opsai-mark{display:flex;align-items:center;justify-content:center;width:72px;height:72px;margin:0 0 1rem;border-radius:50%;background:rgba(56,132,255,.12);box-shadow:0 0 0 8px rgba(56,132,255,.06);animation:opsai-glow 4.5s ease-in-out infinite}.opsai-mark::before{content:\"\";width:34px;height:34px;background-repeat:no-repeat;background-position:center;background-size:contain;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237db4ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42'/%3E%3C/svg%3E\")}@media (prefers-reduced-motion:reduce){.opsai-mark{animation:none}}.opsai-wordmark{display:flex;justify-content:center;align-items:baseline;width:100%;font-size:3rem!important;font-weight:800!important;letter-spacing:-.04em;line-height:1!important;margin:0!important;padding:0!important;border:0!important;color:#f8fafc!important}.opsai-wordmark .accent{background:linear-gradient(90deg,#1b62f8,#7db4ff);-webkit-background-clip:text;background-clip:text;color:transparent}.opsai-tagline{margin:1.15rem 0 0!important;max-width:40rem;font-size:1.15rem;line-height:1.55;color:#cbd5e1!important}.opsai-tagline strong{color:#f1f5f9;font-weight:700}.opsai-pills{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1.5rem}.opsai-pill{font-size:.8rem;font-weight:600;letter-spacing:.01em;color:#bfdbfe;padding:.35rem .85rem;border-radius:999px;border:1px solid rgba(56,132,255,.35);background:rgba(56,132,255,.1)}.opsai-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:0 0 2.5rem}@media (max-width:720px){.opsai-stats{grid-template-columns:1fr}}.opsai-stat{text-align:center;padding:1.4rem 1rem;border-radius:.9rem;border:1px solid rgba(148,163,184,.18);background:linear-gradient(180deg,rgba(56,132,255,.06),rgba(56,132,255,.01))}.opsai-stat__num{font-size:1.7rem;font-weight:800;letter-spacing:-.03em;background:linear-gradient(90deg,#1b62f8,#7db4ff);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.1}.opsai-stat__label{margin-top:.45rem;font-size:.9rem;color:#94a3b8;line-height:1.45}.opsai-nav{display:flex;gap:1rem;margin-top:3rem}@media (max-width:600px){.opsai-nav{flex-direction:column}}.opsai-nav a{flex:1 1 0;display:block;padding:1rem 1.15rem;border-radius:.75rem;border:1px solid rgba(148,163,184,.22);background:linear-gradient(180deg,rgba(56,132,255,.05),rgba(56,132,255,.01));transition:border-color .15s ease,transform .15s ease}.opsai-nav a:hover{border-color:rgba(56,132,255,.5);transform:translateY(-1px)}.opsai-nav a.opsai-nav--next{text-align:right}.opsai-nav__dir{display:block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.opsai-nav__title{display:block;margin-top:.25rem;font-size:1.02rem;font-weight:600;color:#1b62f8}div:has(>div>.chat-assistant-input){background-color:#eef4ff!important;border-color:#cbd5e1!important;box-shadow:0 2px 12px rgba(16,59,149,.14)!important;transition:border-color .15s ease,box-shadow .15s ease,opacity .25s ease!important}html.chat-dimmed div:has(>div>.chat-assistant-input){opacity:.35}html.chat-dimmed div:has(>div>.chat-assistant-input):focus-within,html.chat-dimmed div:has(>div>.chat-assistant-input):hover{opacity:1}@media (prefers-reduced-motion:reduce){div:has(>div>.chat-assistant-input){transition:none!important}}div:has(>div>.chat-assistant-input):hover{border-color:#94a3b8!important}div:has(>div>.chat-assistant-input):focus-within{border-color:#1b62f8!important;box-shadow:0 4px 18px rgba(16,59,149,.22)!important}html.dark div:has(>div>.chat-assistant-input){background-color:#16203a!important;border-color:rgba(255,255,255,.3)!important;box-shadow:0 2px 14px rgba(0,0,0,.45)!important}html.dark div:has(>div>.chat-assistant-input):hover{border-color:rgba(255,255,255,.5)!important}html.dark div:has(>div>.chat-assistant-input):focus-within{border-color:#6b99fa!important}.chat-assistant-input::placeholder{color:#103b95!important;opacity:1!important;font-weight:600}html.dark .chat-assistant-input::placeholder{color:#9dc0ff!important}.steps [data-component-part=step-number]>div{border-radius:.5rem!important;background-color:#f1f5f9!important;border:1px solid #cbd5e1;color:#0f172a!important;box-shadow:0 1px 2px rgba(15,23,42,.06)}html.dark .steps [data-component-part=step-number]>div{background-color:#1f2937!important;border-color:rgba(255,255,255,.18);color:#f3f4f6!important;box-shadow:none}.steps [data-component-part=step-line]{width:1.5px!important}.steps [data-component-part=step-line]:not([class*=to-transparent]){background-color:#cbd5e1!important}.steps [data-component-part=step-line][class*=to-transparent]{background-color:transparent!important;background-image:linear-gradient(to bottom,#cbd5e1,rgba(203,213,225,0))!important}html.dark .steps [data-component-part=step-line]:not([class*=to-transparent]){background-color:rgba(255,255,255,.18)!important}html.dark .steps [data-component-part=step-line][class*=to-transparent]{background-image:linear-gradient(to bottom,rgba(255,255,255,.18),rgba(255,255,255,0))!important}.steps [data-component-part=step-content]:first-child>h3:first-child{margin-top:0;font-size:1em;line-height:1.75;font-weight:600}nav ul.toc{padding-left:.875rem}nav ul.toc,nav ul.toc li.toc-item>a{position:relative}nav ul.toc li.toc-item>a::after{content:\"\";position:absolute;top:0;bottom:0;left:calc(var(--toc-padding-left, 0rem) - .875rem);width:1.5px;background-color:#e5e7eb;transition:background-color .2s ease}html.dark nav ul.toc li.toc-item>a::after{background-color:rgba(255,255,255,.12)}nav ul.toc .toc-slider{position:absolute;top:0;left:0;z-index:1;list-style:none;width:1.5px;height:0;opacity:0;background-color:#1b62f8;transition:transform .25s cubic-bezier(.4,0,.2,1),height .25s cubic-bezier(.4,0,.2,1),opacity .15s ease;pointer-events:none}html.dark nav ul.toc .toc-slider{background-color:#6b99fa}nav ul.toc .toc-link,nav ul.toc .toc-tracer{position:absolute;top:0;left:0;height:1.5px;list-style:none;pointer-events:none}nav ul.toc .toc-link{background-image:repeating-linear-gradient(to right,#d1d5db 0 2px,transparent 2px 5px)}html.dark nav ul.toc .toc-link{background-image:repeating-linear-gradient(to right,rgba(255,255,255,.22) 0 2px,transparent 2px 5px)}nav ul.toc .toc-tracer{width:0;opacity:0;z-index:1;background-color:#1b62f8;transition:transform .15s cubic-bezier(.4,0,.2,1),width .15s cubic-bezier(.4,0,.2,1),opacity .15s ease}html.dark nav ul.toc .toc-tracer{background-color:#6b99fa}@media (prefers-reduced-motion:reduce){nav ul.toc .toc-slider,nav ul.toc .toc-tracer{transition:none}}html:not(.toc-slide) nav ul.toc li.toc-item[data-active]>a::after{background-color:#1b62f8}html:not(.toc-slide) nav ul.toc li.toc-item[data-active]:has(li.toc-item[data-active])>a::after,html:not(.toc-slide) nav ul.toc li.toc-item[data-active]:has(~li.toc-item[data-active])>a::after{background-color:#e5e7eb}html.dark:not(.toc-slide) nav ul.toc li.toc-item[data-active]>a::after{background-color:#6b99fa}html.dark:not(.toc-slide) nav ul.toc li.toc-item[data-active]:has(li.toc-item[data-active])>a::after,html.dark:not(.toc-slide) nav ul.toc li.toc-item[data-active]:has(~li.toc-item[data-active])>a::after{background-color:rgba(255,255,255,.12)}div.border-l:has(ul.toc){border-left:none!important}.chat-assistant-send-button,.prompt [data-component-part=prompt-icon] svg{background-color:#1b62f8!important}.chat-assistant-send-button:hover{background-color:#1f6dea!important}@font-face{font-family:\"Press Start 2P\";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/press-start-2p-latin.woff2) format(\"woff2\");unicode-range:U+0030-0039}div:has(>#error-badge)::before{content:\"\";display:block;width:100%;max-width:131px;aspect-ratio:262/292;margin:0 auto -.9rem;translate:-5px;z-index:1;background:url(/images/robot-not-found.png) center bottom/contain no-repeat;image-rendering:pixelated}#error-badge{font-family:\"Press Start 2P\",ui-monospace,monospace;font-size:5.5rem;line-height:1;letter-spacing:0;padding:0}.sidebar-group-header .sidebar-title{text-transform:uppercase;font-size:.6875rem;font-weight:600;letter-spacing:.06em}#navigation-items div:has(>.sidebar-group-header):not(:first-child){margin-top:2.5rem}#navigation-items button.group>div:has(>svg.transition-transform){margin-left:auto}#navigation-items li ul li a>div:first-child:has(>:is(svg, img)){display:none}.prompt{padding:1.25rem!important;gap:.875rem!important;border-color:#cfe0ff!important;background:linear-gradient(180deg,#f6faff 0,#edf4ff 100%)!important;box-shadow:0 1px 2px rgba(16,59,149,.06)}html.dark .prompt{border-color:rgba(56,132,255,.28)!important;background:rgba(56,132,255,.08)!important;box-shadow:none}html.dark .prompt [data-component-part=prompt-icon] svg{background-color:#6b99fa!important}.prompt [data-component-part=prompt-description]{font-size:.9375rem;line-height:1.5}.prompt [data-component-part=prompt-actions-wrapper]{flex-basis:100%;justify-content:flex-end;gap:.5rem!important}.prompt [data-component-part=prompt-action-copy-button],.prompt [data-component-part=prompt-action-cursor-button]{padding:.4375rem .875rem!important;font-size:.8125rem!important;line-height:1.25rem!important;border-radius:.625rem!important}.prompt [data-component-part=prompt-action-copy-button]{background-color:#1b62f8!important;box-shadow:0 1px 2px rgba(16,59,149,.18)}.prompt [data-component-part=prompt-action-copy-button]:hover{background-color:#2f6fd9!important}.prompt [data-component-part=prompt-action-cursor-button]{color:#103b95!important;background:#fff!important;border-color:#cfe0ff!important;box-shadow:0 1px 2px rgba(16,59,149,.06)}.prompt [data-component-part=prompt-action-cursor-button]:hover{background:#f3f8ff!important;border-color:#1b62f8!important}html.dark .prompt [data-component-part=prompt-action-cursor-button]{color:#eaf1ff!important;background:rgba(255,255,255,.06)!important;border-color:rgba(56,132,255,.35)!important;box-shadow:none}html.dark .prompt [data-component-part=prompt-action-cursor-button]:hover{background:rgba(56,132,255,.18)!important;border-color:#6b99fa!important}@font-face{font-family:\"Kalam\";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/kalam-latin-400.woff2) format(\"woff2\");unicode-range:U+0000-00FF,U+2018-2019,U+201C-201D,U+2013-2014}.hand-note{position:relative;z-index:5;display:flex;align-items:flex-end;gap:.25rem;margin:1.5rem 0 .75rem;color:#1b62f8;pointer-events:none}.hand-note-right{justify-content:flex-end;padding-right:1rem}.hand-note-left{justify-content:flex-start;padding-left:1rem;flex-direction:row-reverse}html.dark .hand-note{color:#6b99fa}.hand-note-text{font-family:\"Kalam\",\"Comic Sans MS\",cursive;font-size:1.125rem;line-height:1.2;transform:rotate(-3deg)}.hand-note-arrow{width:44px;height:66px;margin-bottom:-44px;flex:none}.hand-note-left .hand-note-arrow{transform:scaleX(-1)}:not(pre)>code{color:#18181b!important;background-color:rgba(17,24,39,.08)!important;border-color:rgba(17,24,39,.1)!important}html.dark :not(pre)>code{color:#f4f4f5!important;background-color:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.14)!important}a :not(pre)>code,a>code{color:inherit!important}details.accordion{border-color:rgba(17,24,39,.08)!important;background:#fff!important}html.dark details.accordion{border-color:rgba(255,255,255,.12)!important;background:0 0!important}details.accordion>summary{padding:1.0625rem 1.5rem!important}details.accordion>summary:hover{background:#f6f8fb!important}details.accordion>[data-component-part=accordion-content]{padding-top:.75rem!important}html.dark details.accordion>summary:hover{background:rgba(255,255,255,.04)!important}.faqx{--faqx-line:var(--gray-200,#e5e7eb);--faqx-fg:var(--gray-900,#111827);--faqx-fg2:var(--gray-500,#6b7280);--faqx-bg:#fff;--faqx-accent:#3884ff;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-bottom:12px}html.dark .faqx{--faqx-line:rgba(255,255,255,.1);--faqx-fg:var(--gray-100,#f3f4f6);--faqx-fg2:var(--gray-400,#9ca3af);--faqx-bg:transparent}.faqx--inline{margin-top:-2.5rem}@media (max-width:640px){.faqx--inline{margin-top:0;justify-content:flex-start}}.faqx-search{position:relative;flex:0 1 260px;min-width:180px}.faqx-search svg{position:absolute;left:9px;top:50%;transform:translateY(-50%);width:13px;height:13px;color:var(--faqx-fg2);pointer-events:none}.faqx-input{width:100%;box-sizing:border-box;font-size:13px;line-height:1.4;color:var(--faqx-fg);background:var(--faqx-bg);border:1px solid var(--faqx-line);border-radius:8px;padding:6px 10px 6px 27px;outline:0;transition:border-color .15s ease,box-shadow .15s ease}.faqx-input::placeholder{color:var(--faqx-fg2)}.faqx-input:focus{border-color:var(--faqx-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--faqx-accent) 18%,transparent)}.faqx-input::-webkit-search-cancel-button{cursor:pointer}.faqx-btn{font-size:13px;line-height:1.4;font-weight:500;color:var(--faqx-fg);white-space:nowrap;background:var(--faqx-bg);border:1px solid var(--faqx-line);border-radius:8px;padding:6px 11px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.faqx-btn:hover{border-color:var(--faqx-accent);color:var(--faqx-accent)}.faqx-btn:focus-visible{outline:2px solid var(--faqx-accent);outline-offset:2px}.faqx-count{font-size:12px;color:var(--faqx-fg2);white-space:nowrap}.faqx--hero{flex-wrap:nowrap;gap:10px;margin:0 0 2rem}.faqx--hero .faqx-search{flex:1 1 auto;min-width:0}.faqx--hero .faqx-search svg{left:14px;width:16px;height:16px}.faqx--hero .faqx-input{font-size:15px;padding:11px 84px 11px 40px;border-radius:12px;box-shadow:0 1px 2px rgba(17,24,39,.05)}.faqx--hero .faqx-btn{font-size:14px;padding:11px 16px;border-radius:12px;flex:none}.faqx--hero .faqx-count{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none}html.dark .faqx--hero .faqx-input{background:rgba(255,255,255,.03);box-shadow:none}.faqx-empty{font-size:14px;color:var(--faqx-fg2);border:1px dashed var(--faqx-line);border-radius:12px;padding:16px;text-align:center;margin-bottom:12px}.accordion-group>details[data-faqx-hidden],.accordion-group[data-faqx-hidden],h2[data-faqx-hidden],h3[data-faqx-hidden]{display:none!important}.accordion-group>details[data-faqx-first]{border-top-width:0!important}::highlight(faqx-hit){background:color-mix(in srgb,#3884ff 22%,transparent);color:inherit;border-radius:2px}html.dark ::highlight(faqx-hit){background:color-mix(in srgb,#3884ff 38%,transparent)}@media (prefers-reduced-motion:reduce){.faqx-btn,.faqx-input{transition:none}}.faqx-count[hidden],.faqx-empty[hidden]{display:none}.xano-hs-trigger{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;line-height:1.25rem;color:#fff;background-color:#3884ff;border:0;border-radius:.5rem;cursor:pointer;transition:background-color .15s ease,transform .15s ease}.xano-hs-trigger:hover{background-color:#2f74e6}.xano-hs-trigger:active{transform:translateY(1px)}.xano-hs-trigger:focus-visible{outline:2px solid #3884ff;outline-offset:2px}.xano-hs-trigger--header{margin-right:.5rem;padding:.375rem .75rem;border-radius:.75rem;font-weight:500;color:#fff;background-color:#3884ff;white-space:nowrap;flex-shrink:0}.xano-hs-trigger--header:hover{background-color:#2f74e6}#page-context-menu{flex-wrap:wrap;row-gap:.5rem}.xano-hs-overlay{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:flex-start;justify-content:center;padding:1.5rem;overflow-y:auto;background-color:rgba(15,17,21,.55);backdrop-filter:blur(2px)}.xano-hs-modal{position:relative;width:100%;max-width:30rem;margin:auto;padding:1.75rem;border-radius:.875rem;background-color:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 24px 48px -12px rgba(0,0,0,.35);color:#1a1c20}html.dark .xano-hs-modal{background-color:#1a1c20;border-color:rgba(255,255,255,.1);color:#f2f3f5}.xano-hs-close{position:absolute;top:.75rem;right:.75rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;line-height:1;color:inherit;opacity:.55;background:0 0;border:0;border-radius:.375rem;cursor:pointer}.xano-hs-close:hover{opacity:1;background:rgba(127,127,127,.14)}.xano-hs-title{margin:0 1.75rem .375rem 0;font-size:1.125rem;font-weight:600;line-height:1.4}.xano-hs-subtitle{margin:0 0 1.25rem}.xano-hs-status,.xano-hs-subtitle{font-size:.875rem;line-height:1.5;opacity:.7}.xano-hs-status--error{color:#dc2626;opacity:1}html.dark .xano-hs-form .hs-error-msgs label,html.dark .xano-hs-status--error{color:#f87171}.xano-hs-row{display:grid;grid-template-columns:1fr 1fr;gap:0 .75rem}@media (max-width:480px){.xano-hs-row{grid-template-columns:1fr}}.xano-hs-form .hs-form-field{margin-bottom:.875rem}.xano-hs-form label{display:block;margin-bottom:.3rem;font-size:.8125rem;font-weight:500}.xano-hs-form .hs-form-required{color:#dc2626;margin-left:.15rem}.xano-hs-form .hs-input:not([type=checkbox]):not([type=radio]){width:100%;box-sizing:border-box;padding:.5rem .7rem;font-size:.875rem;font-family:inherit;color:inherit;background-color:rgba(127,127,127,.07);border:1px solid rgba(127,127,127,.3);border-radius:.5rem}.xano-hs-form .hs-input:focus{outline:0;border-color:#3884ff;box-shadow:0 0 0 3px rgba(56,132,255,.2)}.xano-hs-form .hs-error-msgs{margin:.35rem 0 0;padding:0;list-style:none}.xano-hs-form .hs-error-msgs label{margin:0;font-weight:400;font-size:.8125rem;color:#dc2626}.xano-hs-form .legal-consent-container{font-size:.75rem;line-height:1.5;opacity:.75}.xano-hs-form .hs-button{width:100%;margin-top:.5rem;padding:.55rem 1rem;font-size:.875rem;font-weight:600;font-family:inherit;color:#fff;background-color:#3884ff;border:0;border-radius:.5rem;cursor:pointer}.xano-hs-form .hs-button:hover{background-color:#2f74e6}.xano-hs-form .hs-button:disabled{opacity:.7;cursor:progress}.xano-hs-form .hs-button:focus-visible{outline:2px solid #3884ff;outline-offset:2px}.xano-hs-form .xano-hs-status{margin-bottom:.5rem}.xano-hs-toast{position:fixed;left:50%;bottom:1.5rem;z-index:2147483000;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 2rem);padding:.75rem 1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:#1a1c20;border:1px solid rgba(255,255,255,.1);border-left:3px solid #3884ff;border-radius:.625rem;box-shadow:0 12px 32px -8px rgba(0,0,0,.35)}.xano-hs-toast[hidden]{display:none}html.dark .xano-hs-toast{color:#1a1c20;background-color:#fff;border-color:rgba(0,0,0,.08);border-left-color:#3884ff}"}],"page":{"pagePath":"getting-started-visual","slug":"/getting-started-visual","pageMetadata":{"title":"Building Visually","sidebarTitle":"Building Visually","description":"A guide to using Xano's visual builder to inspect, validate, and iterate on your backend workflows.","icon":"brush","href":"/getting-started-visual"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"A guide to using Xano’s visual builder to inspect, validate, and iterate on your backend workflows.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,blockquote:`blockquote`,code:`code`,p:`p`,strong:`strong`,..._provideComponents(),...props.components},{Accordion,Danger,Frame,Heading,Icon,OptimizedImage,Step,Steps,Tip,Tooltip}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!Danger)_missingMdxReference(`Danger`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Icon)_missingMdxReference(`Icon`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Tooltip)_missingMdxReference(`Tooltip`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`This guide walks you through running a pre-built signup endpoint, inspecting the steps, and making a small modification to send a welcome email to new users. Xano gives you a `,_jsx(_components.code,{children:`user`}),` table and default `,_jsx(_components.code,{children:`authentication`}),` APIs out of the box, and we’ll use those here.`]}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open up your auth/signup endpoint`,children:_jsxs(_components.p,{children:[`Navigate to `,_jsx(`span`,{class:`ui-bubble`,children:`API`}),` in the sidebar, choose the Authentication group, and select your auth/signup endpoint.`]})}),_jsxs(Step,{title:`Test the endpoint`,children:[_jsxs(_components.p,{children:[`Click `,_jsx(`span`,{class:`ui-bubble`,children:`Run`}),` in the top-right corner.`]}),_jsxs(_components.p,{children:[`Enter a name, email, and a password to create a new user. You’ll use this later on, so make sure to remember the credentials you enter here. Click `,_jsx(`span`,{class:`ui-bubble`,children:`Run`}),` in the lower-right corner to execute the request.`]}),_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172818.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=9a9f5569d16d02bbbd5d2bc6953932ce`,alt:`getting-started-visual-20260108-172818`,\"data-og-width\":`1434`,width:`1434`,\"data-og-height\":`515`,height:`515`,\"data-path\":`images/getting-started-visual-20260108-172818.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172818.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=74eeb3a578633a7fd3d4c04d71d64d0d 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172818.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=89664e0d3b9711281cf07e3f971332b5 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172818.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=a0807f9c6e8ab550ea58bd336e26abfd 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172818.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=319d18e887ad0b40e59b05a5edd91325 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172818.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=31ab8f6cfea840f4673e706dc3a45be5 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172818.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=a385afbadf5ec0dc84d67af88f5219b6 2500w`}),_jsxs(_components.p,{children:[`If all goes well, you should see a successful response with an `,_jsx(Tooltip,{tip:`Xano generates JWE tokens for authentication. These tokens are secure and can be used to authenticate API requests.`,children:`\nauthentication token\n`}),` returned.`]}),_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172851.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=97dcb74db07e41e372acbd5dbc332480`,alt:`getting-started-visual-20260108-172851`,\"data-og-width\":`707`,width:`707`,\"data-og-height\":`418`,height:`418`,\"data-path\":`images/getting-started-visual-20260108-172851.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172851.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=068b437809e698617af018d69373c189 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172851.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=2685639dbb2761b39321a7056c5dd0e7 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172851.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=4169097ff80c050c79a76fd76f2845d7 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172851.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=3213cd6614f5b0c8e04e097fb306ee6f 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172851.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=b947fc503276786c0cd7ae18b411125f 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-172851.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=f89c199b5a67814237b80706c3193824 2500w`})]}),_jsxs(Step,{title:`Explore the visual builder`,children:[_jsxs(_components.p,{children:[`The visual builder has two different views: `,_jsx(_components.strong,{children:`Canvas`}),` and `,_jsx(_components.strong,{children:`Stack`}),`. Canvas presents a node-style view of the steps in your endpoint, while Stack presents a linear, step-by-step list of the same information, more similar to traditional code.`]}),_jsx(Frame,{caption:`Canvas View`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175031.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=29fc03a0a0e77c4b9920189c1faee9b7`,alt:`getting-started-visual-20260108-175031`,\"data-og-width\":`1170`,width:`1170`,\"data-og-height\":`841`,height:`841`,\"data-path\":`images/getting-started-visual-20260108-175031.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175031.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=562d6ad72c5c0ba1359e1d3fcbcdf06f 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175031.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=ee00f9a1cbdf971d551ee0dd556bbd1d 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175031.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=f47227ffe80bc430a063004cd9be373b 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175031.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=92af842cfcc9f922686fc1e91a852ee9 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175031.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=1038f36dd8b8ea56d2ead93da483dc1a 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175031.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=a532e3aaa1140728d4c5595b77134868 2500w`})}),_jsx(Frame,{caption:`Stack View`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175050.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=1ae673f6fbf5de9caa417527337c69bb`,alt:`getting-started-visual-20260108-175050`,\"data-og-width\":`948`,width:`948`,\"data-og-height\":`777`,height:`777`,\"data-path\":`images/getting-started-visual-20260108-175050.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175050.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=60e405511be33f409c4a0d7157c37925 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175050.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=b3699aad8afa381949cde77ed93f548f 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175050.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=85873b01979f73b0a22d30723e765853 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175050.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=a4e17ceae8d500e5da24e5d41d843627 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175050.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=75f7cd9e4b01ee6df4fe364b6d1be772 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175050.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=315e0ff05584dede8463515ed142ad3c 2500w`})}),_jsx(_components.p,{children:`Click on a step to see more details about what it does and how it’s configured.`})]}),_jsxs(Step,{title:`Modify the signup endpoint to add a welcome email`,children:[_jsxs(_components.p,{children:[`Let’s add a step to send a welcome email after signup. We’ll use the `,_jsx(_components.strong,{children:`Send Email`}),` function for this.`]}),_jsxs(_components.p,{children:[`Click the `,_jsx(`span`,{class:`ui-bubble`,children:`+ Add Step`}),` button at the bottom of the stack view, or in between the Create Authentication Token step and the Response in the canvas view.`]}),_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175517.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=e0400c3be1c8a6be893a127a9174496a`,alt:`getting-started-visual-20260108-175517`,\"data-og-width\":`746`,width:`746`,\"data-og-height\":`342`,height:`342`,\"data-path\":`images/getting-started-visual-20260108-175517.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175517.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=2e29db0a3a4799c6b8ab1976533596bd 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175517.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=57e9d274ca3ecfa3375a4ed825aab04d 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175517.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=6d6ae9dde6a49e15978fba2ec2933a9a 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175517.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=eb14ccbc4a79e47cc939a8ab527d343d 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175517.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=6ee684ddd06f77c3579fdb8c1a447b1f 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175517.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=432c552317d4b37ff4a33c2943c34926 2500w`}),_jsxs(_components.p,{children:[`Select the `,_jsx(_components.strong,{children:`Send Email`}),` function.`]}),_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175545.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=f419a07ddc6f3abf5afd282c1e767e56`,alt:`getting-started-visual-20260108-175545`,\"data-og-width\":`431`,width:`431`,\"data-og-height\":`249`,height:`249`,\"data-path\":`images/getting-started-visual-20260108-175545.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175545.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=094750e9f1a325f28ab54673cec686f4 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175545.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=f5558107538b590f767183030324f8f1 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175545.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=372c4be2733860f2a91e99b258ffee81 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175545.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=23871bbc88302770a3c3d2fde3350ccb 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175545.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=9ce89e59ac4675ef4939f8456a85c03b 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175545.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=b2128bae22f2e852d05ad37bfbdfbf43 2500w`}),_jsx(_components.p,{children:`Add a subject and a body for the email. Xano includes free access to Resend for development and testing (up to 100 emails), limited to the email address you signed up for Xano with.`}),_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175705.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=983067965d96b790f17aa4a03b19a953`,alt:`getting-started-visual-20260108-175705`,\"data-og-width\":`664`,width:`664`,\"data-og-height\":`930`,height:`930`,\"data-path\":`images/getting-started-visual-20260108-175705.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175705.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=f0f3265c0f17b49a46ea0b96069582bd 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175705.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=058f76f2cbada54594125d0287988a86 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175705.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=f2557ec9d8ed90859cf702402cdea378 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175705.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=fe77e3ea1fcfaf98501702c969da49da 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175705.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=cce2d5a2e5dd6a9e3ef6bb530bfc9811 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-175705.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=64063637c843b6b346027cb845e0db0d 2500w`}),_jsxs(_components.p,{children:[`Click `,_jsx(`span`,{class:`ui-bubble`,children:`Save`}),` to save the step.`]})]}),_jsx(Step,{title:`Test the modified signup endpoint`,children:_jsx(_components.p,{children:`Run the signup endpoint again with a different email address. You should receive a welcome email shortly after the run completes.`})}),_jsxs(Step,{title:`Explore the Run panel`,children:[_jsxs(_components.p,{children:[`After a run, open the `,_jsx(`span`,{class:`ui-bubble`,children:`Timing`}),` dropdown to view step timing, output, inputs, and variables.`]}),_jsxs(_components.p,{children:[`Click the `,_jsx(`span`,{class:`ui-bubble`,children:`>`}),` next to the first Get Record step. We can see the first Get Record function returned `,_jsx(_components.code,{children:`null`}),`, meaning that the user didn’t already exist.`]}),_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-180843.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=3ed640484f3aaf40a67ed7ea4e230621`,alt:`getting-started-visual-20260108-180843`,\"data-og-width\":`653`,width:`653`,\"data-og-height\":`312`,height:`312`,\"data-path\":`images/getting-started-visual-20260108-180843.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-180843.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=33304c7ab0657209b31af502cc8b7c1e 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-180843.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=3e7fd94e47f8e4c1e185e03d9c1e1063 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-180843.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=4e329940fdf984b62bb3084a835b5186 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-180843.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=c8cd4465cbb0f3ec5ace0d6f646ef9d8 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-180843.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=c07530e3e656ef78dbfc2e9585d9fd6f 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-180843.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=218b34d8c5db65e6616e382f3f760421 2500w`}),_jsxs(Tip,{children:[_jsx(_components.p,{children:`Try to register the same user again to see how the output changes.`}),_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260109-090050.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=44509ab70e5af9b5b2ca34fb5f222e0b`,alt:`getting-started-visual-20260109-090050`,\"data-og-width\":`665`,width:`665`,\"data-og-height\":`560`,height:`560`,\"data-path\":`images/getting-started-visual-20260109-090050.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260109-090050.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=804f622613d62633bf1d7690bb7a0dc6 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260109-090050.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=aaae227c3502e21d54006de5bd52e8b5 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260109-090050.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=f23380d65fe260186f046e3632e67bc0 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260109-090050.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=937bac59be7fda5b49a9b446b0cfb8f5 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260109-090050.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=47a8352a96c1f329930ff1cf6bddccf3 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260109-090050.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=9c9a1e61726026962aeaf2901d1d36ee 2500w`})]}),_jsxs(_components.p,{children:[`Expand the `,_jsx(_components.code,{children:`input`}),` and `,_jsx(_components.code,{children:`vars`}),` sections for each step to see how the data changes throughout execution.`]}),_jsx(OptimizedImage,{src:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-181247.png?fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=0e2fdee6acc2b08756973011409b5886`,alt:`getting-started-visual-20260108-181247`,\"data-og-width\":`623`,width:`623`,\"data-og-height\":`620`,height:`620`,\"data-path\":`images/getting-started-visual-20260108-181247.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-181247.png?w=280\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=eefa7fc6a48a3d132d57cfdb11fa20b2 280w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-181247.png?w=560\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=5caa4ec19abd6043ec2955118d57135e 560w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-181247.png?w=840\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=e280da33555996b3497fcae8001a683b 840w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-181247.png?w=1100\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=c3f1e9b2d9d099aa43f520a16f292ceb 1100w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-181247.png?w=1650\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=ee8039d4d36c6c519f7a3beb3d66fa48 1650w, https://mintcdn.com/xano-997cb9ee/TxMj3xizKt6xZHgd/images/getting-started-visual-20260108-181247.png?w=2500\u0026fit=max\u0026auto=format\u0026n=TxMj3xizKt6xZHgd\u0026q=85\u0026s=9636ad8bfed4af5d97252499ea5fe908 2500w`}),_jsx(Tip,{children:_jsx(_components.p,{children:`Xano will automatically hide information labeled as sensitive, such as password fields, in the run panel.`})})]}),_jsxs(Step,{title:`Publish your changes and test externally`,children:[_jsxs(_components.p,{children:[`Click the dropdown in the upper-right corner and choose `,_jsx(`span`,{class:`ui-bubble`,children:`Publish Now`}),`. This immediately deploys your changes to the live API.`]}),_jsxs(_components.p,{children:[`Click `,_jsx(`span`,{class:`ui-bubble`,children:_jsx(Icon,{icon:`link`})}),` to copy the endpoint URL.`]}),_jsxs(_components.p,{children:[`Take it over to your favorite API testing tool, like `,_jsx(_components.a,{href:`https://www.postman.com/`,children:`Postman`}),`, `,_jsx(_components.a,{href:`https://www.insomnia.rest`,children:`Insomnia`}),`, or `,_jsx(_components.a,{href:`https://www.usebruno.com`,children:`Bruno`}),`. Send a `,_jsx(_components.code,{children:`POST`}),` request to the signup endpoint with the required parameters (name, email, password) in the body.`]}),_jsx(_components.p,{children:`You should see a successful response, just like in Xano, and have received another welcome email.`})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`troubleshooting`,children:`Troubleshooting`}),`\n`,_jsx(Accordion,{title:`🛟 I deleted my default authentication APIs; can I get them back?`,id:`i-deleted-my-default-authentication-apis-can-i-get-them-back`,children:_jsxs(Steps,{children:[_jsx(Step,{title:``,children:_jsxs(_components.p,{children:[`Click `,_jsx(`span`,{class:`ui-bubble`,children:`API`}),` in the sidebar.`]})}),_jsx(Step,{title:``,children:_jsxs(_components.p,{children:[`Click the `,_jsx(`span`,{class:`ui-bubble`,children:`+ Create API`}),` button in the top-right corner.`]})}),_jsx(Step,{title:``,children:_jsxs(_components.p,{children:[`Select `,_jsx(`span`,{class:`ui-bubble`,children:`Authentication`})]})}),_jsx(Step,{title:``,children:_jsxs(_components.p,{children:[`Add the three default API endpoints offered: `,_jsx(_components.code,{children:`/signup`}),`, `,_jsx(_components.code,{children:`/login`}),`, and `,_jsx(_components.code,{children:`/me`})]})})]})}),`\n`,_jsxs(Accordion,{title:`🛟 Common Signup Errors`,id:`common-signup-errors`,children:[_jsxs(Danger,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Error Traceback (Most recent call last):`})}),_jsxs(_components.p,{children:[`at `,_jsx(_components.code,{children:`API /auth/signup(Get Record)`}),`\nException: Param: field_value - Missing param: field_value`]})]}),_jsxs(_components.blockquote,{children:[`\n`,_jsx(_components.p,{children:`The required parameters were not provided when running the endpoint — specifically the email. Make sure to enter a name, email, and a password.`}),`\n`]}),_jsxs(Danger,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Error Traceback (Most recent call last):`})}),_jsxs(_components.p,{children:[`at `,_jsx(_components.code,{children:`API /auth/signup(Precondition)`}),`\nException: Access Denied`]})]}),_jsxs(_components.blockquote,{children:[`\n`,_jsx(_components.p,{children:`The account already exists. Try using a different email address to create a new user.`}),`\n`]}),_jsxs(Danger,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Error Traceback (Most recent call last):`})}),_jsxs(_components.p,{children:[`at `,_jsx(_components.code,{children:`API /auth/signup(Add Record)`}),`\nException: Param: password - Input does not meet minimum length requirement of 8 characters`]})]}),_jsxs(_components.blockquote,{children:[`\n`,_jsx(_components.p,{children:`Password inputs have some default requirements: at least 8 characters, one uppercase letter, and one number. Make sure your password meets these requirements.`}),`\n`]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Building Visually","sidebarTitle":"Building Visually","description":"A guide to using Xano's visual builder to inspect, validate, and iterate on your backend workflows.","icon":"brush","href":"/getting-started-visual"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Troubleshooting","slug":"troubleshooting","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/xano-997cb9ee/7ccbde81bbdf9fb7/remark-link-graph.js","/_mintlify/custom/xano-997cb9ee/8b02dc1f3860c4eb/iconvisibility.js","/_mintlify/custom/xano-997cb9ee/8bba6e93fd00475c/chat-dim.js","/_mintlify/custom/xano-997cb9ee/f6ebfcfeda318efb/toc-indicator.js","/_mintlify/custom/xano-997cb9ee/2152a7ac01bb32e6/accordion-hash.js","/_mintlify/custom/xano-997cb9ee/d9385cd9a5429ca0/faq-controls.js"],"subdomain":"xano-997cb9ee","siteName":"Xano Documentation","title":"Building Visually - Xano Documentation","relatedPagesConfig":{"enabled":true,"limit":3,"mode":"automatic"},"contextualStarterQuestions":[{"_id":"6a726824ec4c2e9ce1383034","deploymentId":"680ff9808abe3a2c762b86fa","questionText":"How do I add a welcome email?","status":"active","generatedBy":"contextual","path":"getting-started-visual","createdAt":"2026-08-04T22:31:00.344Z","updatedAt":"2026-08-04T22:31:00.344Z","__v":0},{"_id":"6a726824ec4c2e9ce1383033","deploymentId":"680ff9808abe3a2c762b86fa","questionText":"Where is the auth/signup endpoint?","status":"active","generatedBy":"contextual","path":"getting-started-visual","createdAt":"2026-08-04T22:31:00.344Z","updatedAt":"2026-08-04T22:31:00.344Z","__v":0},{"_id":"6a726824ec4c2e9ce1383032","deploymentId":"680ff9808abe3a2c762b86fa","questionText":"How do I test the signup endpoint?","status":"active","generatedBy":"contextual","path":"getting-started-visual","createdAt":"2026-08-04T22:31:00.344Z","updatedAt":"2026-08-04T22:31:00.344Z","__v":0}],"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-04-20T20:22:00.478Z","originalFileLocation":"getting-started-visual.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"A guide to using Xano\u0026#x27;s visual builder to inspect, validate, and iterate on your backend workflows.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Xano Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Building Visually - Xano Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Visual-first unified backend for modern apps. Build APIs, AI Agents, data, logic, auth, \u0026amp; more—all in one platform.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Xano Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.xano.com/getting-started-visual\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://xano-997cb9ee.mintlify.app/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Building+Visually\u0026amp;description=A+guide+to+using+Xano%27s+visual+builder+to+inspect%2C+validate%2C+and+iterate+on+your+backend+workflows.\u0026amp;theme=69266f7a07374488cfd61b9f\u0026amp;signature=c7104f1e7b6387e83a50c1d0dfc9c83b4ae55c4833d41816b9c4ad80fe48c9fe\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Building Visually - Xano Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Visual-first unified backend for modern apps. Build APIs, AI Agents, data, logic, auth, \u0026amp; more—all in one platform.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://xano-997cb9ee.mintlify.app/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Building+Visually\u0026amp;description=A+guide+to+using+Xano%27s+visual+builder+to+inspect%2C+validate%2C+and+iterate+on+your+backend+workflows.\u0026amp;theme=69266f7a07374488cfd61b9f\u0026amp;signature=c7104f1e7b6387e83a50c1d0dfc9c83b4ae55c4833d41816b9c4ad80fe48c9fe\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/xano-997cb9ee/cgGwIFviWDgTKtuE/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Xano Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1b62f8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.xano.com/getting-started-visual\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/getting-started-visual.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.xano.com/#organization\",\"name\":\"Xano Documentation\",\"url\":\"https://docs.xano.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/xano-997cb9ee/hLg--ImSu58u2jLW/logo/logo_wordmark_blue_1_.svg?fit=max\u0026auto=format\u0026n=hLg--ImSu58u2jLW\u0026q=85\u0026s=487b8933249723b2ebc7bf7b6179ea0c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.xano.com#website\",\"name\":\"Xano Documentation\",\"url\":\"https://docs.xano.com\",\"publisher\":{\"@id\":\"https://docs.xano.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.xano.com/getting-started-visual#webpage\",\"url\":\"https://docs.xano.com/getting-started-visual\",\"name\":\"Building Visually\",\"description\":\"A guide to using Xano's visual builder to inspect, validate, and iterate on your backend workflows.\",\"dateModified\":\"2026-04-20T20:22:00.478Z\",\"isPartOf\":{\"@id\":\"https://docs.xano.com#website\"}},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.xano.com/getting-started-visual#article\",\"headline\":\"Building Visually\",\"name\":\"Building Visually\",\"description\":\"A guide to using Xano's visual builder to inspect, validate, and iterate on your backend workflows.\",\"url\":\"https://docs.xano.com/getting-started-visual\",\"mainEntityOfPage\":{\"@id\":\"https://docs.xano.com/getting-started-visual#webpage\"},\"dateModified\":\"2026-04-20T20:22:00.478Z\",\"publisher\":{\"@id\":\"https://docs.xano.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.xano.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Xano Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Xano Documentation","nav":{"global":null,"tabs":[{"tab":"Xano","icon":"https://mintlify.s3.us-west-1.amazonaws.com/xano-997cb9ee/images/icons/xano.svg","pages":[{"title":"Get Started","icon":"rocket","href":""},{"title":"What's New","icon":"newspaper","href":"/updates"},{"title":"Xano — Features \u0026 Capabilities FAQ","sidebarTitle":"FAQ","icon":"circle-question","href":"/frequently-asked-questions"},{"title":"Navigating Xano","icon":"compass","tag":"NEW","href":"/navigating-xano"},{"group":"Build","pages":[{"title":"Build from your Local Agent","sidebarTitle":"Agentic Development","icon":"robot","href":"/getting-started-ai"},{"title":"Xano Agent","tag":"NEW","icon":"wand-magic-sparkles","href":"/building/xano-agent"},{"title":"Knowledge","tag":"NEW","icon":"brain","href":"/agent-knowledge"},{"group":"Logic \u0026 Workflows","icon":"diagram-project","pages":[{"title":"Logic \u0026 Workflows","sidebarTitle":"Logic \u0026 Workflows","icon":"sitemap","href":"/building/logic/logic"},{"title":"Building APIs in Xano","sidebarTitle":"APIs","href":"/building/logic/apis"},{"title":"Building Custom Functions in Xano","sidebarTitle":"Custom Functions","href":"/building/logic/custom-functions"},{"title":"Background Tasks in Xano","sidebarTitle":"Background Tasks","href":"/building/logic/background-tasks"},{"title":"Triggers","href":"/building/logic/triggers"},{"title":"Middleware","href":"/building/logic/middleware"},{"title":"Inputs","sidebarTitle":"Inputs","href":"/building/logic/core-components/inputs"},{"title":"Logic","sidebarTitle":"Logic","href":"/building/logic/core-components/logic"},{"title":"Functions","sidebarTitle":"Functions","href":"/building/logic/core-components/functions"},{"title":"Variables","sidebarTitle":"Variables","href":"/building/logic/working-with-data/variables"},{"title":"Environment Variables","sidebarTitle":"Environment Variables","href":"/building/logic/working-with-data/environment-variables"},{"title":"Filters","sidebarTitle":"Filters","href":"/building/logic/core-components/filters"},{"title":"Response","sidebarTitle":"Response","href":"/building/logic/core-components/response"}]},{"group":"Database","icon":"database","pages":[{"title":"Database Overview","href":"/the-database/database"},{"title":"Database Basics","href":"/the-database/database-basics"},{"title":"Field Types","href":"/the-database/database-basics/field-types"},{"title":"Database Design Fundamentals","href":"/the-database/designing-your-database"},{"title":"Migrating Data to Xano","href":"/the-database/migrating-your-data"},{"title":"Data Sources","href":"/the-database/database-basics/data-sources"},{"title":"Database Views","href":"/the-database/database-basics/database-views"},{"title":"Export And Sharing","href":"/the-database/database-basics/export-and-sharing"},{"title":"Database Performance And Maintenance","href":"/the-database/database-performance-and-maintenance"}]},{"group":"AI Agents","icon":"robot","pages":[{"title":"Agents","href":"/ai-tools/agents"},{"title":"Using OpenTelemetry with AI Agents","sidebarTitle":"OpenTelemetry","href":"/ai-tools/agents/opentelemetry"},{"title":"Templates","href":"/ai-tools/agents/templates"}]},{"group":"MCP Servers","icon":"plug","pages":[{"title":"MCP Builder","sidebarTitle":"MCP Builder","href":"/ai-tools/mcp-builder"},{"title":"Prompts and Resources","href":"/ai-tools/mcp-builder/prompts-and-resources"},{"title":"MCP Functions","href":"/ai-tools/mcp-builder/mcp-functions"},{"title":"Connecting Clients","href":"/ai-tools/mcp-builder/connecting-clients"},{"title":"Require sign-in (OAuth) on an MCP server","sidebarTitle":"OAuth Sign-In","href":"/ai-tools/mcp-builder/sign-in"},{"title":"Bring your own identity provider","sidebarTitle":"Bring Your Own IdP","href":"/ai-tools/mcp-builder/oauth-proxy"}]},{"group":"Authentication","icon":"lock-keyhole","pages":[{"title":"User Auth \u0026 Data","href":"/building-backend-features/user-authentication-and-user-data"},{"title":"Separating User Data","href":"/building-backend-features/user-authentication-and-user-data/separating-user-data"},{"title":"Restricting Access (RBAC)","href":"/building-backend-features/user-authentication-and-user-data/restricting-access-rbac"},{"title":"OAuth (SSO)","href":"/building-backend-features/user-authentication-and-user-data/oauth-sso"},{"title":"Best Practices","icon":"shield-check","href":"/security/best-practices"},{"title":"Getting Answers to Security Questions","sidebarTitle":"Security Questionnaires","icon":"clipboard-question","href":"/security/getting-answers-to-security-questions"}]},{"group":"File Storage","icon":"folder-open","pages":[{"title":"File Storage In Xano","sidebarTitle":"File Storage","href":"/file-storage/file-storage-in-xano"},{"title":"Private File Storage","href":"/file-storage/private-file-storage"}]},{"group":"Realtime","icon":"signal-stream","pages":[{"title":"Realtime","sidebarTitle":"Overview","href":"/realtime/overview"},{"title":"Realtime Servers \u0026 Channels","sidebarTitle":"Servers \u0026 Channels","href":"/realtime/realtime-servers-and-channels"},{"title":"Connecting a Realtime Client","sidebarTitle":"Connecting a Client","href":"/realtime/connecting-a-client"},{"title":"Realtime Messages","sidebarTitle":"Messages","href":"/realtime/messages"},{"title":"Realtime Access Control","sidebarTitle":"Access Control","href":"/realtime/access-control"},{"title":"Realtime Triggers","sidebarTitle":"Triggers","href":"/realtime/realtime-triggers"},{"title":"Publishing to a Channel from Xano","sidebarTitle":"Publishing from Xano","href":"/realtime/publishing-from-xano"},{"title":"Legacy Realtime vs Realtime","sidebarTitle":"Legacy vs Realtime","href":"/realtime/migrating-from-legacy-realtime"}]}]},{"group":"Test \u0026 Deploy","pages":[{"group":"Test","icon":"flask","pages":[{"title":"Test Suites","href":"/testing-debugging/test-suites"},{"title":"Unit Tests","href":"/testing-debugging/unit-tests"},{"title":"Ephemeral Tenants","icon":"hourglass-half","tag":"NEW","href":"/xano-cli/ephemeral"},{"title":"Publishing","href":"/the-function-stack/building-with-visual-development/publishing"},{"title":"Swagger/OpenAPI Docs","href":"/the-function-stack/building-with-visual-development/apis/swagger-openapi-documentation"}]},{"group":"Deploy","icon":"cloud-arrow-up","tag":"NEW","pages":[{"title":"Deployment Readiness","icon":"clipboard-check","href":"/deployment-readiness"},{"title":"Static Hosting","href":"/xano-features/static-hosting"},{"title":"Sandbox Testing","tag":"NEW","href":"/testing-debugging/sandbox"},{"group":"Connecting a Frontend","pages":[{"title":"Connecting a Frontend","icon":"browser","href":"/connecting-to-a-frontend/overview"},{"title":"Custom Coded Apps","href":"/connecting-to-a-frontend/custom-coded-apps"},{"title":"AI App Builders","href":"/connecting-to-a-frontend/ai-app-builders"},{"title":"No-Code App Builders","href":"/connecting-to-a-frontend/no-code-builders"}]},{"title":"Git Sync","sidebarTitle":"Git Sync","href":"/xano-features/workspace-settings/git-sync"}]},{"group":"Monitor \u0026 Troubleshoot","icon":"gauge-high","tag":"NEW","pages":[{"title":"Performance Insights","href":"/maintenance-monitoring-and-logging/performance-insights"},{"title":"Request History","tag":"UPDATED","href":"/maintenance-monitoring-and-logging/request-history"},{"title":"Statement Explorer","href":"/maintenance-monitoring-and-logging/statement-explorer"},{"title":"Error Logs","tag":"NEW","href":"/maintenance-monitoring-and-logging/error-logs"},{"title":"Audit Logs","href":"/xano-features/workspace-settings/audit-logs"},{"title":"What to Do If Your APIs Aren't Responding","href":"/troubleshooting-and-support/my-apis-arent-responding"},{"title":"What to Do If Your Instance Is Down","href":"/troubleshooting-and-support/my-instance-is-down"},{"title":"Error Reference","href":"/troubleshooting-and-support/error-reference"},{"title":"Reporting Potential Bugs and Issues","href":"/troubleshooting-and-support/reporting-potential-bugs-and-issues"}]}]},{"group":"Team Collaboration","pages":[{"title":"Team Collaboration","icon":"users","href":"/team-collaboration/team-collaboration"},{"title":"Managing Team Members","icon":"user-gear","href":"/team-collaboration/managing-team-members"},{"title":"Realtime Collaboration","icon":"arrows-rotate","href":"/team-collaboration/realtime-collaboration"},{"title":"Branching \u0026 Merging","icon":"code-branch","href":"/team-collaboration/branching-and-merging"},{"title":"Role Based Access Control (RBAC)","icon":"user-shield","href":"/team-collaboration/role-based-access-control-rbac"}]},{"group":"Integrations","pages":[{"title":"Browse Integrations","url":"https://www.xano.com/connect/","icon":"puzzle-piece","href":"/connect"},{"title":"Webhooks","icon":"webhook","href":"/building-backend-features/webhooks"},{"title":"Connecting a Frontend","icon":"browser","href":"/connecting-to-a-frontend/overview"},{"title":"Metadata API","icon":"brackets-curly","href":"/xano-features/metadata-api"},{"title":"Xano MCP Server","icon":"share-nodes","href":"/ai-tools/xano-mcp-server"}]},{"group":"Security","pages":[{"title":"Best Practices","icon":"shield-check","href":"/security/best-practices"},{"title":"Securing Your App Before Launch","sidebarTitle":"Pre-Launch Security","icon":"list-check","href":"/security/pre-launch-security-checklist"},{"title":"Getting Answers to Security Questions","sidebarTitle":"Security Questionnaires","icon":"clipboard-question","href":"/security/getting-answers-to-security-questions"},{"title":"GDPR","url":"https://security.xano.com/certifications/gdpr","icon":"earth-europe","href":"/security/gdpr"},{"title":"HIPAA","url":"https://security.xano.com/certifications/hipaa","icon":"suitcase-medical","href":"/security/hipaa"},{"title":"SOC 2","url":"https://security.xano.com/certifications/soc-2","icon":"certificate","href":"/security/soc2"},{"title":"security.xano.com","url":"https://security.xano.com","icon":"shield-halved","href":"/security/security"}]},{"group":"Tutorials","pages":[{"group":"Ready-to-use Building Blocks","icon":"cubes","expanded":false,"pages":[{"title":"Snippets","icon":"scissors","href":"/xano-features/snippets"},{"title":"Actions","icon":"block-brick","href":"/xano-actions/what-are-actions"},{"title":"Browse Actions","url":"https://xano.com/actions","href":"/xano-actions/browse-actions"},{"title":"Browse Snippets","url":"https://xano.com/snippet","href":"/browse-snippets"}]},{"group":"Build-along Guides","icon":"graduation-cap","expanded":false,"pages":[{"title":"User Auth \u0026 Data","href":"/building-backend-features/user-authentication-and-user-data"},{"title":"Emails","href":"/building-backend-features/emails"},{"title":"Webhooks","icon":"webhook","href":"/building-backend-features/webhooks"},{"title":"Fuzzy Search","href":"/building-backend-features/fuzzy-search"},{"title":"Messaging","href":"/building-backend-features/messaging"},{"title":"Chatbots","href":"/building-backend-features/chatbots"},{"title":"Custom Report Generation","href":"/building-backend-features/custom-report-generation"}]}]},{"group":"Enterprise","pages":[{"title":"Tenant Center","icon":"building","href":"/enterprise/enterprise-features/tenant-center"},{"title":"Compliance Center","icon":"clipboard-check","href":"/enterprise/enterprise-features/compliance-center"},{"title":"Security Policy","icon":"file-shield","href":"/enterprise/enterprise-features/security-policy"},{"title":"Instance Activity","icon":"chart-line","href":"/enterprise/enterprise-features/instance-activity"},{"title":"Deployment","icon":"rocket-launch","href":"/enterprise/enterprise-features/deployment"},{"title":"RBAC (Role-based Access Control)","icon":"user-shield","href":"/enterprise/enterprise-features/rbac-role-based-access-control"},{"title":"Xano Link","icon":"link","href":"/enterprise/enterprise-features/xano-link"},{"title":"Resource Management","icon":"sliders-up","href":"/enterprise/enterprise-features/resource-management"},{"group":"Microservices","icon":"boxes-stacked","pages":[{"title":"Microservices","sidebarTitle":"Instance Level Microservices","href":"/enterprise/enterprise-features/microservices"},{"group":"In the Workspace","icon":"sitemap","tag":"NEW","pages":[{"title":"Microservices in the Workspace","sidebarTitle":"Overview","icon":"sitemap","href":"/enterprise/enterprise-features/microservices/workspace-microservices"},{"title":"Creating a Microservice","icon":"plus","href":"/enterprise/enterprise-features/microservices/workspace-microservices/creating-a-microservice"},{"title":"Private Registries","icon":"key","href":"/enterprise/enterprise-features/microservices/workspace-microservices/private-registries"},{"title":"Deploying and Monitoring","icon":"chart-line","href":"/enterprise/enterprise-features/microservices/workspace-microservices/deploying-and-monitoring"},{"title":"Calling from the Function Stack","icon":"code","href":"/enterprise/enterprise-features/microservices/workspace-microservices/calling-from-the-function-stack"},{"title":"Releases and Tenants","icon":"building","href":"/enterprise/enterprise-features/microservices/workspace-microservices/releases-and-tenants"},{"title":"XanoScript Reference","icon":"file-code","href":"/enterprise/enterprise-features/microservices/workspace-microservices/xanoscript-reference"}]},{"title":"Ollama","sidebarTitle":"Example: Ollama","href":"/enterprise/enterprise-features/microservices/ollama"}]}]},{"group":"Agencies","pages":[{"title":"Xano For Agencies","icon":"handshake","href":"/agencies/xano-for-agencies"},{"title":"Agency Features","icon":"briefcase","href":"/agencies/agency-features"}]},{"group":"Account and Settings","pages":[{"title":"Workspace Settings","icon":"gear","href":"/xano-features/workspace-settings"},{"title":"Instance Settings","sidebarTitle":"Instance Settings","icon":"server","href":"/xano-features/instance-settings"},{"title":"Account Settings","icon":"circle-user","href":"/your-xano-account/account-page"},{"title":"Billing","icon":"credit-card","href":"/your-xano-account/billing"},{"title":"Getting Help","sidebarTitle":"Getting Support in Xano","icon":"life-ring","href":"/troubleshooting-and-support/getting-help"}]},{"group":"Legal","pages":[{"title":"Terms \u0026 Conditions","icon":"scale-balanced","href":"/legal"},{"title":"AI Terms","icon":"file-contract","href":"/legal/ai-terms"},{"title":"Privacy Notice","icon":"lock","href":"/legal/privacy-notice"},{"title":"Cookie Policy","icon":"cookie-bite","href":"/legal/cookie-policy"},{"title":"DMCA Policy","icon":"copyright","href":"/legal/dmca-policy"},{"title":"General Disclaimer","icon":"triangle-exclamation","href":"/legal/general-disclaimer"},{"title":"Subprocessors","icon":"sitemap","href":"/legal/xano-subprocessors"},{"title":"Referral Agreement","icon":"file-signature","href":"/legal/referral-program/agreement"},{"title":"FAQ","icon":"question","href":"/legal/referral-program/faq"}]}]},{"tab":"XanoScript","icon":"code","pages":[{"group":"Start","icon":"book-open","pages":[{"group":"Getting Started","icon":"book-open","pages":[{"title":"Intro to XanoScript","href":"/xanoscript/introduction"},{"title":"XanoScript Key Concepts","sidebarTitle":"Key Concepts","href":"/xanoscript/key-concepts"},{"title":"Get the Extension","url":"https://marketplace.visualstudio.com/items?itemName=xano.xanoscript-language-server","icon":"https://mintlify.s3.us-west-1.amazonaws.com/xano-997cb9ee/images/icons/vscode.svg","href":"/vscode-ext"}]},{"title":"XanoScript for the Database","sidebarTitle":"Database","icon":"table","href":"/xanoscript/db"},{"group":"Logic","icon":"function","pages":[{"title":"XanoScript for APIs","sidebarTitle":"APIs","href":"/xanoscript/api"},{"title":"XanoScript for Custom Functions","sidebarTitle":"Custom Functions","href":"/xanoscript/custom-functions"},{"title":"XanoScript for Background Tasks","sidebarTitle":"Background Tasks","href":"/xanoscript/tasks"},{"title":"XanoScript for Triggers","sidebarTitle":"Triggers","href":"/xanoscript/triggers"},{"title":"XanoScript for Middleware","sidebarTitle":"Middleware","href":"/xanoscript/middleware"},{"title":"XanoScript for Addons","sidebarTitle":"Addons","href":"/xanoscript/addons"},{"title":"XanoScript for Tests","sidebarTitle":"Tests","href":"/xanoscript/tests"}]}]},{"group":"AI","icon":"robot","pages":[{"title":"XanoScript for AI Agents","sidebarTitle":"AI Agents","href":"/xanoscript/agents"},{"title":"XanoScript for AI Tools","sidebarTitle":"AI Tools","href":"/xanoscript/ai-tools"},{"title":"XanoScript for MCP Servers","sidebarTitle":"MCP Servers","href":"/xanoscript/mcp-servers"}]},{"group":"References","icon":"book","pages":[{"group":"Functions","icon":"function","pages":[{"title":"Database Operations","href":"/xanoscript/function-reference/database-operations"},{"title":"Security","href":"/xanoscript/function-reference/security"},{"title":"APIs \u0026 Lambdas","href":"/xanoscript/function-reference/apis-and-lambdas"},{"title":"AI Tools","href":"/xanoscript/function-reference/ai-tools"},{"title":"Data Caching (Redis)","href":"/xanoscript/function-reference/data-caching-redis"},{"title":"Custom Functions","href":"/xanoscript/function-reference/custom-functions"},{"title":"Utility Functions","href":"/xanoscript/function-reference/utility-functions"},{"title":"File Storage","href":"/xanoscript/function-reference/file-storage"}]},{"group":"Data Manipulation","icon":"brackets","pages":[{"title":"Arrays","href":"/xanoscript/function-reference/data-manipulation/arrays"},{"title":"Conditionals","href":"/xanoscript/function-reference/data-manipulation/conditionals"},{"title":"Loops","href":"/xanoscript/function-reference/data-manipulation/loops"},{"title":"Math","href":"/xanoscript/function-reference/data-manipulation/math"},{"title":"Objects","href":"/xanoscript/function-reference/data-manipulation/objects"},{"title":"Text","href":"/xanoscript/function-reference/data-manipulation/text"},{"title":"Variables","href":"/xanoscript/function-reference/data-manipulation/variables"}]},{"group":"Cloud Services","icon":"cloud","pages":[{"title":"Algolia","href":"/xanoscript/function-reference/cloud-services/algolia"},{"title":"AWS OpenSearch","href":"/xanoscript/function-reference/cloud-services/aws-opensearch"},{"title":"AWS S3","href":"/xanoscript/function-reference/cloud-services/aws-s3"},{"title":"Azure Blob Storage","href":"/xanoscript/function-reference/cloud-services/azure-blob-storage"},{"title":"Google Cloud Storage","href":"/xanoscript/function-reference/cloud-services/google-cloud-storage"},{"title":"Elasticsearch","href":"/xanoscript/function-reference/cloud-services/elasticsearch"}]},{"group":"Filters","icon":"filter","pages":[{"title":"Manipulation","href":"/xanoscript/filter-reference/manipulation"},{"title":"Math","href":"/xanoscript/filter-reference/math"},{"title":"Timestamp","href":"/xanoscript/filter-reference/timestamp"},{"title":"Text","href":"/xanoscript/filter-reference/text"},{"title":"Array","href":"/xanoscript/filter-reference/array"},{"title":"Transform","href":"/xanoscript/filter-reference/transform"},{"title":"Comparison","href":"/xanoscript/filter-reference/comparison"},{"title":"Security","href":"/xanoscript/filter-reference/security"}]},{"group":"Other References","icon":"book","pages":[{"title":"Field Types Reference","icon":"list-radio","href":"/xanoscript/field-type-reference"},{"title":"Input types","href":"/xanoscript/input-types-reference"},{"title":"Multidoc","sidebarTitle":"Multidoc","icon":"files","href":"/xanoscript/multidoc"}]}]}]},{"tab":"CLI","icon":"terminal","pages":[{"group":"Getting Started","pages":[{"title":"Get Started","icon":"terminal","tag":"NEW","href":"/xano-cli/get-started"}]},{"group":"Core Concepts","pages":[{"title":"Profiles","icon":"user-gear","href":"/xano-cli/profiles"},{"title":"Workspaces \u0026 Branches","icon":"code-branch","href":"/xano-cli/workspaces-and-branches"},{"title":"Push \u0026 Pull","icon":"arrows-rotate","href":"/xano-cli/push-pull"},{"title":"Team Workflows","sidebarTitle":"Team Workflows","icon":"users","tag":"NEW","href":"/xano-cli/team-workflows"},{"title":"Managing Data Schema \u0026 Records","sidebarTitle":"Managing Data","icon":"database","href":"/xano-cli/managing-data"}]},{"group":"Commands","pages":[{"title":"Releases","icon":"tag","href":"/xano-cli/releases"},{"title":"Tenants","icon":"building","href":"/xano-cli/tenants"},{"title":"Deployment Requests","icon":"clipboard-check","href":"/xano-cli/tenant-deploy-requests"},{"title":"Sandbox","icon":"flask","tag":"NEW","href":"/xano-cli/sandbox"},{"title":"Ephemeral Tenants","icon":"hourglass-half","tag":"NEW","href":"/xano-cli/ephemeral"},{"title":"Platforms","icon":"server","href":"/xano-cli/platforms"},{"title":"Testing","icon":"flask-vial","href":"/xano-cli/workflow-tests"},{"title":"Static Hosting","icon":"globe","tag":"UPDATED","href":"/xano-cli/static-hosting"}]},{"group":"Guides","pages":[{"title":"Start from Scratch","icon":"sparkles","href":"/xano-cli/guide-from-scratch"},{"title":"Work from Existing","icon":"download","href":"/xano-cli/guide-from-existing"}]},{"group":"Reference","pages":[{"title":"Cheat Sheet","icon":"bolt","tag":"NEW","href":"/xano-cli/cheatsheet"},{"title":"Command Reference","icon":"rectangle-list","tag":"UPDATED","href":"/xano-cli/command-reference"}]}]},{"tab":"Developer MCP","icon":"robot","pages":[{"group":"Getting Started","pages":[{"title":"Developer MCP","href":"/developer-mcp/get-started"}]},{"group":"Clients","pages":[{"title":"Claude Code","href":"/developer-mcp/clients/claude-code"},{"title":"Claude Desktop","href":"/developer-mcp/clients/claude-desktop"},{"title":"VS Code + AI","href":"/developer-mcp/clients/vs-code"},{"title":"Cursor","href":"/developer-mcp/clients/cursor"},{"title":"Windsurf","href":"/developer-mcp/clients/windsurf"},{"title":"Codex","href":"/developer-mcp/clients/codex"},{"title":"Gemini CLI","href":"/developer-mcp/clients/gemini-cli"},{"title":"opencode","href":"/developer-mcp/clients/opencode"}]},{"group":"Reference","pages":[{"title":"Tools Reference","icon":"wrench","href":"/developer-mcp/tools"},{"title":"Resources \u0026 Library Usage","icon":"book","href":"/developer-mcp/resources"}]}]},{"tab":"Metadata API","icon":"webhook","groups":[{"group":"audit logs","pages":[{"title":"Search audit logs across all workspaces","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /audit_log/search","href":"/api-reference/audit-logs/search-audit-logs-across-all-workspaces"},{"title":"Browse audit logs across all workspaces","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /audit_log","href":"/api-reference/audit-logs/browse-audit-logs-across-all-workspaces"},{"title":"Search workspace audit logs","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/audit_log/search","href":"/api-reference/audit-logs/search-workspace-audit-logs"},{"title":"Retrieve workspace audit logs with pagination support","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/audit_log","href":"/api-reference/audit-logs/retrieve-workspace-audit-logs-with-pagination-support"}]},{"group":"authentication","pages":[{"title":"Retrieve information about the authenticated user including ID, name, and email address.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /auth/me","href":"/api-reference/authentication/retrieve-information-about-the-authenticated-user-including-id-name-and-email-address"}]},{"group":"mcp server","pages":[{"title":"Retrieve MCP server documentation and available commands","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /mcp_server/documentation","href":"/api-reference/mcp-server/retrieve-mcp-server-documentation-and-available-commands"},{"title":"Retrieve a specific MCP server by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/mcp_server/{mcp_server_id}","href":"/api-reference/mcp-server/retrieve-a-specific-mcp-server-by-id"},{"title":"Update MCP server details using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/mcp_server/{mcp_server_id}","href":"/api-reference/mcp-server/update-mcp-server-details-using-xanoscript"},{"title":"Delete a MCP server permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/mcp_server/{mcp_server_id}","href":"/api-reference/mcp-server/delete-a-mcp-server-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all MCP servers in a workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/mcp_server","href":"/api-reference/mcp-server/retrieve-all-mcp-servers-in-a-workspace"},{"title":"Create a new MCP server using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/mcp_server","href":"/api-reference/mcp-server/create-a-new-mcp-server-using-xanoscript"}]},{"group":"addon","pages":[{"title":"Update addon security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/addon/{addon_id}/security","href":"/api-reference/addon/update-addon-security-settings"},{"title":"Retrieve a workspace addon","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/addon/{addon_id}","href":"/api-reference/addon/retrieve-a-workspace-addon"},{"title":"Update a workspace addon","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/addon/{addon_id}","href":"/api-reference/addon/update-a-workspace-addon"},{"title":"Delete a workspace addon","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/addon/{addon_id}","href":"/api-reference/addon/delete-a-workspace-addon"},{"title":"Retrieve all workspace addons","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/addon","href":"/api-reference/addon/retrieve-all-workspace-addons"},{"title":"Add a workspace addon","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/addon","href":"/api-reference/addon/add-a-workspace-addon"}]},{"group":"agent trigger","pages":[{"title":"Update agent trigger security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/agent/trigger/{trigger_id}/security","href":"/api-reference/agent-trigger/update-agent-trigger-security-settings"},{"title":"Retrieve an agent trigger by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/agent/trigger/{trigger_id}","href":"/api-reference/agent-trigger/retrieve-an-agent-trigger-by-id"},{"title":"Update agent trigger using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/agent/trigger/{trigger_id}","href":"/api-reference/agent-trigger/update-agent-trigger-using-xanoscript"},{"title":"Delete an agent trigger permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/agent/trigger/{trigger_id}","href":"/api-reference/agent-trigger/delete-an-agent-trigger-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all agent triggers","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/agent/trigger","href":"/api-reference/agent-trigger/retrieve-all-agent-triggers"},{"title":"Create a new agent trigger using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/agent/trigger","href":"/api-reference/agent-trigger/create-a-new-agent-trigger-using-xanoscript"}]},{"group":"agent","pages":[{"title":"Retrieve a specific agent by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/agent/{agent_id}","href":"/api-reference/agent/retrieve-a-specific-agent-by-id"},{"title":"Update agent details using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/agent/{agent_id}","href":"/api-reference/agent/update-agent-details-using-xanoscript"},{"title":"Delete an agent permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/agent/{agent_id}","href":"/api-reference/agent/delete-an-agent-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all agents in a workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/agent","href":"/api-reference/agent/retrieve-all-agents-in-a-workspace"},{"title":"Create a new agent using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/agent","href":"/api-reference/agent/create-a-new-agent-using-xanoscript"}]},{"group":"api group / api","pages":[{"title":"Generate OpenAPI specification for a specific API endpoint","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/apigroup/{apigroup_id}/api/{api_id}/openapi","href":"/api-reference/api-group-api/generate-openapi-specification-for-a-specific-api-endpoint"},{"title":"Update API endpoint security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/apigroup/{apigroup_id}/api/{api_id}/security","href":"/api-reference/api-group-api/update-api-endpoint-security-settings"},{"title":"Retrieve a specific API endpoint by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/apigroup/{apigroup_id}/api/{api_id}","href":"/api-reference/api-group-api/retrieve-a-specific-api-endpoint-by-id"},{"title":"Update an API endpoint","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/apigroup/{apigroup_id}/api/{api_id}","href":"/api-reference/api-group-api/update-an-api-endpoint"},{"title":"Delete an API endpoint permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/apigroup/{apigroup_id}/api/{api_id}","href":"/api-reference/api-group-api/delete-an-api-endpoint-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all API endpoints in a group","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/apigroup/{apigroup_id}/api","href":"/api-reference/api-group-api/retrieve-all-api-endpoints-in-a-group"},{"title":"Create a new API endpoint using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/apigroup/{apigroup_id}/api","href":"/api-reference/api-group-api/create-a-new-api-endpoint-using-xanoscript"}]},{"group":"api group","pages":[{"title":"Get OpenAPI spec for an API group","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/apigroup/{apigroup_id}/openapi","href":"/api-reference/api-group/get-openapi-spec-for-an-api-group"},{"title":"Update API group security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/apigroup/{apigroup_id}/security","href":"/api-reference/api-group/update-api-group-security-settings"},{"title":"Retrieve a specific API group","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/apigroup/{apigroup_id}","href":"/api-reference/api-group/retrieve-a-specific-api-group"},{"title":"Update an API group","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/apigroup/{apigroup_id}","href":"/api-reference/api-group/update-an-api-group"},{"title":"Delete an API group","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/apigroup/{apigroup_id}","href":"/api-reference/api-group/delete-an-api-group"},{"title":"Retrieve all API groups in a workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/apigroup","href":"/api-reference/api-group/retrieve-all-api-groups-in-a-workspace"},{"title":"Create a new API group","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/apigroup","href":"/api-reference/api-group/create-a-new-api-group"}]},{"group":"branch","pages":[{"title":"Set a branch as the live (active) branch for the workspace.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/branch/{branch_label}/live","href":"/api-reference/branch/set-a-branch-as-the-live-active-branch-for-the-workspace"},{"title":"Retrieve a specific branch by label.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/branch/{branch_label}","href":"/api-reference/branch/retrieve-a-specific-branch-by-label"},{"title":"Update a workspace branch","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/branch/{branch_label}","href":"/api-reference/branch/update-a-workspace-branch"},{"title":"Delete a workspace branch","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/branch/{branch_label}","href":"/api-reference/branch/delete-a-workspace-branch"},{"title":"Retrieve all branches in a workspace.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/branch","href":"/api-reference/branch/retrieve-all-branches-in-a-workspace"},{"title":"Create a new branch by cloning an existing branch.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/branch","href":"/api-reference/branch/create-a-new-branch-by-cloning-an-existing-branch"}]},{"group":"workspace","pages":[{"title":"Generate full workspace context","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/context","href":"/api-reference/workspace/generate-full-workspace-context"},{"title":"Export database table schemas and branch configuration as a file","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/export-schema","href":"/api-reference/workspace/export-database-table-schemas-and-branch-configuration-as-a-file"},{"title":"Export complete workspace data and configuration as an archive","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/export","href":"/api-reference/workspace/export-complete-workspace-data-and-configuration-as-an-archive"},{"title":"Import database schema into a new branch with optional deployment","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/import-schema","href":"/api-reference/workspace/import-database-schema-into-a-new-branch-with-optional-deployment"},{"title":"Replace workspace content and configuration with imported archive","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/import","href":"/api-reference/workspace/replace-workspace-content-and-configuration-with-imported-archive"},{"title":"Retrieve workspace-wide OpenAPI spec","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/openapi","href":"/api-reference/workspace/retrieve-workspace-wide-openapi-spec"},{"title":"Retrieve detailed information about a specific workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}","href":"/api-reference/workspace/retrieve-detailed-information-about-a-specific-workspace"},{"title":"Update an existing workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}","href":"/api-reference/workspace/update-an-existing-workspace"},{"title":"Delete a workspace permanently","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}","href":"/api-reference/workspace/delete-a-workspace-permanently"},{"title":"Retrieve all accessible workspaces for the authenticated user","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace","href":"/api-reference/workspace/retrieve-all-accessible-workspaces-for-the-authenticated-user"},{"title":"Create a new workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace","href":"/api-reference/workspace/create-a-new-workspace"}]},{"group":"convert","pages":[{"title":"Convert from XanoScript to JSON","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/convert/fromXS","href":"/api-reference/convert/convert-from-xanoscript-to-json"},{"title":"Convert from JSON to XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/convert/toXS","href":"/api-reference/convert/convert-from-json-to-xanoscript"}]},{"group":"workspace / datasource","pages":[{"title":"Update an existing data source's label and color properties","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/datasource/{label}","href":"/api-reference/workspace-datasource/update-an-existing-data-sources-label-and-color-properties"},{"title":"Delete a data source permanently. This action cannot be undone.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/datasource/{label}","href":"/api-reference/workspace-datasource/delete-a-data-source-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all external data sources for a workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/datasource","href":"/api-reference/workspace-datasource/retrieve-all-external-data-sources-for-a-workspace"},{"title":"Create a new external data source with custom label and color","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/datasource","href":"/api-reference/workspace-datasource/create-a-new-external-data-source-with-custom-label-and-color"}]},{"group":"file","pages":[{"title":"Delete multiple files permanently. This action cannot be undone.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/file/bulk_delete","href":"/api-reference/file/delete-multiple-files-permanently-this-action-cannot-be-undone"},{"title":"Delete a file permanently. This action cannot be undone.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/file/{file_id}","href":"/api-reference/file/delete-a-file-permanently-this-action-cannot-be-undone"},{"title":"Retrieve workspace files","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/file","href":"/api-reference/file/retrieve-workspace-files"},{"title":"Upload files to workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/file","href":"/api-reference/file/upload-files-to-workspace"}]},{"group":"function","pages":[{"title":"Update function security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/function/{function_id}/security","href":"/api-reference/function/update-function-security-settings"},{"title":"Retrieve a specific function by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/function/{function_id}","href":"/api-reference/function/retrieve-a-specific-function-by-id"},{"title":"Update a function","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/function/{function_id}","href":"/api-reference/function/update-a-function"},{"title":"Delete a function permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/function/{function_id}","href":"/api-reference/function/delete-a-function-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all functions in a workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/function","href":"/api-reference/function/retrieve-all-functions-in-a-workspace"},{"title":"Create a new function using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/function","href":"/api-reference/function/create-a-new-function-using-xanoscript"}]},{"group":"request history","pages":[{"title":"Search function request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/function_history/search","href":"/api-reference/request-history/search-function-request-history"},{"title":"Retrieve API function request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/function_history","href":"/api-reference/request-history/retrieve-api-function-request-history"},{"title":"Search middleware request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/middleware_history/search","href":"/api-reference/request-history/search-middleware-request-history"},{"title":"Retrieve middleware request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/middleware_history","href":"/api-reference/request-history/retrieve-middleware-request-history"},{"title":"Search API request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/request_history/search","href":"/api-reference/request-history/search-api-request-history"},{"title":"Retrieve API request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/request_history","href":"/api-reference/request-history/retrieve-api-request-history"},{"title":"Search task request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/task_history/search","href":"/api-reference/request-history/search-task-request-history"},{"title":"Retrieve task request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/task_history","href":"/api-reference/request-history/retrieve-task-request-history"},{"title":"Search tool request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/tool_history/search","href":"/api-reference/request-history/search-tool-request-history"},{"title":"Retrieve tool request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/tool_history","href":"/api-reference/request-history/retrieve-tool-request-history"},{"title":"Search trigger request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/trigger_history/search","href":"/api-reference/request-history/search-trigger-request-history"},{"title":"Retrieve trigger request history","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/trigger_history","href":"/api-reference/request-history/retrieve-trigger-request-history"}]},{"group":"mcp server trigger","pages":[{"title":"Update MCP server trigger security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/mcp_server/trigger/{trigger_id}/security","href":"/api-reference/mcp-server-trigger/update-mcp-server-trigger-security-settings"},{"title":"Retrieve an MCP server trigger by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/mcp_server/trigger/{trigger_id}","href":"/api-reference/mcp-server-trigger/retrieve-an-mcp-server-trigger-by-id"},{"title":"Update an MCP server trigger using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/mcp_server/trigger/{trigger_id}","href":"/api-reference/mcp-server-trigger/update-an-mcp-server-trigger-using-xanoscript"},{"title":"Delete an MCP server trigger permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/mcp_server/trigger/{trigger_id}","href":"/api-reference/mcp-server-trigger/delete-an-mcp-server-trigger-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all MCP server triggers","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/mcp_server/trigger","href":"/api-reference/mcp-server-trigger/retrieve-all-mcp-server-triggers"},{"title":"Create a new MCP server trigger using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/mcp_server/trigger","href":"/api-reference/mcp-server-trigger/create-a-new-mcp-server-trigger-using-xanoscript"}]},{"group":"middleware","pages":[{"title":"Update middleware security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/middleware/{middleware_id}/security","href":"/api-reference/middleware/update-middleware-security-settings"},{"title":"Retrieve a specific middleware by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/middleware/{middleware_id}","href":"/api-reference/middleware/retrieve-a-specific-middleware-by-id"},{"title":"Update a middleware","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/middleware/{middleware_id}","href":"/api-reference/middleware/update-a-middleware"},{"title":"Delete a middleware permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/middleware/{middleware_id}","href":"/api-reference/middleware/delete-a-middleware-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all middlewares in a workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/middleware","href":"/api-reference/middleware/retrieve-all-middlewares-in-a-workspace"},{"title":"Create a new middleware using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/middleware","href":"/api-reference/middleware/create-a-new-middleware-using-xanoscript"}]},{"group":"xanoscript","pages":[{"title":"Retrieve XanoScript multidoc","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/multidoc","href":"/api-reference/xanoscript/retrieve-xanoscript-multidoc"},{"title":"Push XanoScript multidoc","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/multidoc","href":"/api-reference/xanoscript/push-xanoscript-multidoc"}]},{"group":"realtime trigger","pages":[{"title":"Update realtime trigger security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/realtime/channel/trigger/{trigger_id}/security","href":"/api-reference/realtime-trigger/update-realtime-trigger-security-settings"},{"title":"Retrieve a realtime trigger by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/realtime/channel/trigger/{trigger_id}","href":"/api-reference/realtime-trigger/retrieve-a-realtime-trigger-by-id"},{"title":"Update realtime trigger using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/realtime/channel/trigger/{trigger_id}","href":"/api-reference/realtime-trigger/update-realtime-trigger-using-xanoscript"},{"title":"Delete a realtime trigger permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/realtime/channel/trigger/{trigger_id}","href":"/api-reference/realtime-trigger/delete-a-realtime-trigger-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all realtime triggers","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/realtime/channel/trigger","href":"/api-reference/realtime-trigger/retrieve-all-realtime-triggers"},{"title":"Create a new realtime trigger using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/realtime/channel/trigger","href":"/api-reference/realtime-trigger/create-a-new-realtime-trigger-using-xanoscript"}]},{"group":"realtime","pages":[{"title":"Retrieve a realtime channel","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/realtime/channel/{channel_id}","href":"/api-reference/realtime/retrieve-a-realtime-channel"},{"title":"Update realtime channel details using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/realtime/channel/{channel_id}","href":"/api-reference/realtime/update-realtime-channel-details-using-xanoscript"},{"title":"Delete a realtime channel permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/realtime/channel/{channel_id}","href":"/api-reference/realtime/delete-a-realtime-channel-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all realtime channels","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/realtime/channel","href":"/api-reference/realtime/retrieve-all-realtime-channels"},{"title":"Create a new realtime channel using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/realtime/channel","href":"/api-reference/realtime/create-a-new-realtime-channel-using-xanoscript"},{"title":"Retrieve real-time operational metrics and connection details","deprecated":true,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/realtime","href":"/api-reference/realtime/retrieve-real-time-operational-metrics-and-connection-details"},{"title":"Update real-time settings and connection configuration","deprecated":true,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/realtime","href":"/api-reference/realtime/update-real-time-settings-and-connection-configuration"}]},{"group":"static host","pages":[{"title":"Update static hosting environment","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/static_host/{static_host}/build/{build_id}/env","href":"/api-reference/static-host/update-static-hosting-environment"},{"title":"Retrieve a specific build for a static host","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/static_host/{static_host}/build/{build_id}","href":"/api-reference/static-host/retrieve-a-specific-build-for-a-static-host"},{"title":"Delete a static host build","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/static_host/{static_host}/build/{build_id}","href":"/api-reference/static-host/delete-a-static-host-build"},{"title":"Retrieve builds for a static host","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/static_host/{static_host}/build","href":"/api-reference/static-host/retrieve-builds-for-a-static-host"},{"title":"Create a static host build","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/static_host/{static_host}/build","href":"/api-reference/static-host/create-a-static-host-build"},{"title":"Retrieve workspace static hosts","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/static_host","href":"/api-reference/static-host/retrieve-workspace-static-hosts"}]},{"group":"table trigger","pages":[{"title":"Update table trigger security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/table/trigger/{trigger_id}/security","href":"/api-reference/table-trigger/update-table-trigger-security-settings"},{"title":"Retrieve a specific table trigger by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/table/trigger/{trigger_id}","href":"/api-reference/table-trigger/retrieve-a-specific-table-trigger-by-id"},{"title":"Update table trigger using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/table/trigger/{trigger_id}","href":"/api-reference/table-trigger/update-table-trigger-using-xanoscript"},{"title":"Delete a table trigger permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/table/trigger/{trigger_id}","href":"/api-reference/table-trigger/delete-a-table-trigger-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all table triggers","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/table/trigger","href":"/api-reference/table-trigger/retrieve-all-table-triggers"},{"title":"Create a new table trigger using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/trigger","href":"/api-reference/table-trigger/create-a-new-table-trigger-using-xanoscript"}]},{"group":"table","pages":[{"title":"Update table autocomplete settings","deprecated":true,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/table/{table_id}/autocomplete","href":"/api-reference/table/update-table-autocomplete-settings"},{"title":"Update table properties","deprecated":true,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/table/{table_id}/meta","href":"/api-reference/table/update-table-properties"},{"title":"Configure table security rules","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/table/{table_id}/security","href":"/api-reference/table/configure-table-security-rules"},{"title":"Retrieve detailed information for a specific table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/table/{table_id}","href":"/api-reference/table/retrieve-detailed-information-for-a-specific-table"},{"title":"Update a workspace table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/table/{table_id}","href":"/api-reference/table/update-a-workspace-table"},{"title":"Delete a database table and all its data permanently","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/table/{table_id}","href":"/api-reference/table/delete-a-database-table-and-all-its-data-permanently"},{"title":"Retrieve all tables in a workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/table","href":"/api-reference/table/retrieve-all-tables-in-a-workspace"},{"title":"Create a new database table with optional schema definition","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table","href":"/api-reference/table/create-a-new-database-table-with-optional-schema-definition"}]},{"group":"table / content","pages":[{"title":"Delete multiple records by their IDs in a single operation","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/content/bulk/delete","href":"/api-reference/table-content/delete-multiple-records-by-their-ids-in-a-single-operation"},{"title":"Update multiple records in a single batch operation","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/content/bulk/patch","href":"/api-reference/table-content/update-multiple-records-in-a-single-batch-operation"},{"title":"Create multiple records in a single batch operation","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/content/bulk","href":"/api-reference/table-content/create-multiple-records-in-a-single-batch-operation"},{"title":"Delete all records matching specified search criteria","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/content/search/delete","href":"/api-reference/table-content/delete-all-records-matching-specified-search-criteria"},{"title":"Update all records matching specified search criteria","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/content/search/patch","href":"/api-reference/table-content/update-all-records-matching-specified-search-criteria"},{"title":"Search table records","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/content/search","href":"/api-reference/table-content/search-table-records"},{"title":"Retrieve a specific record by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/table/{table_id}/content/{content_id}","href":"/api-reference/table-content/retrieve-a-specific-record-by-id"},{"title":"Update a specific record by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/table/{table_id}/content/{content_id}","href":"/api-reference/table-content/update-a-specific-record-by-id"},{"title":"Delete a specific record by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/table/{table_id}/content/{content_id}","href":"/api-reference/table-content/delete-a-specific-record-by-id"},{"title":"Retrieve paginated records from a table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/table/{table_id}/content","href":"/api-reference/table-content/retrieve-paginated-records-from-a-table"},{"title":"Create a new record in the table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/content","href":"/api-reference/table-content/create-a-new-record-in-the-table"},{"title":"Truncate a database table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/table/{table_id}/truncate","href":"/api-reference/table-content/truncate-a-database-table"}]},{"group":"table / index","pages":[{"title":"Create a btree index on table columns","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/index/btree","href":"/api-reference/table-index/create-a-btree-index-on-table-columns"},{"title":"Create a full-text search index on table columns","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/index/search","href":"/api-reference/table-index/create-a-full-text-search-index-on-table-columns"},{"title":"Create a spatial index on a table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/index/spatial","href":"/api-reference/table-index/create-a-spatial-index-on-a-table"},{"title":"Create a unique index on table columns","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/index/unique","href":"/api-reference/table-index/create-a-unique-index-on-table-columns"},{"title":"Create a vector index on a table column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/index/vector","href":"/api-reference/table-index/create-a-vector-index-on-a-table-column"},{"title":"Delete a specific table index. This action cannot be undone.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/table/{table_id}/index/{index_id}","href":"/api-reference/table-index/delete-a-specific-table-index-this-action-cannot-be-undone"},{"title":"Retrieve all indexes for a database table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/table/{table_id}/index","href":"/api-reference/table-index/retrieve-all-indexes-for-a-database-table"},{"title":"Replace all indexes for a database table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/table/{table_id}/index","href":"/api-reference/table-index/replace-all-indexes-for-a-database-table"}]},{"group":"table / schema","pages":[{"title":"Rename a column in a table's schema","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/rename","href":"/api-reference/table-schema/rename-a-column-in-a-tables-schema"},{"title":"Retrieve details for a specific column in a table's schema","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/table/{table_id}/schema/{schema_name}","href":"/api-reference/table-schema/retrieve-details-for-a-specific-column-in-a-tables-schema"},{"title":"Delete a column from a table's schema. This action cannot be undone.","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/table/{table_id}/schema/{schema_name}","href":"/api-reference/table-schema/delete-a-column-from-a-tables-schema-this-action-cannot-be-undone"},{"title":"Retrieve the complete schema definition for a database table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/table/{table_id}/schema","href":"/api-reference/table-schema/retrieve-the-complete-schema-definition-for-a-database-table"},{"title":"Replace the entire schema definition for a database table","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/table/{table_id}/schema","href":"/api-reference/table-schema/replace-the-entire-schema-definition-for-a-database-table"}]},{"group":"table / schema / type","pages":[{"title":"Create an attachment column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/attachment","href":"/api-reference/table-schema-type/create-an-attachment-column"},{"title":"Create an audio column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/audio","href":"/api-reference/table-schema-type/create-an-audio-column"},{"title":"Create a boolean column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/bool","href":"/api-reference/table-schema-type/create-a-boolean-column"},{"title":"Create a date column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/date","href":"/api-reference/table-schema-type/create-a-date-column"},{"title":"Create a decimal column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/decimal","href":"/api-reference/table-schema-type/create-a-decimal-column"},{"title":"Create an email column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/email","href":"/api-reference/table-schema-type/create-an-email-column"},{"title":"Create an enum column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/enum","href":"/api-reference/table-schema-type/create-an-enum-column"},{"title":"Create a geographic linestring column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/geo_linestring","href":"/api-reference/table-schema-type/create-a-geographic-linestring-column"},{"title":"Create a geographic multilinestring column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/geo_multilinestring","href":"/api-reference/table-schema-type/create-a-geographic-multilinestring-column"},{"title":"Create a geographic multipoint column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/geo_multipoint","href":"/api-reference/table-schema-type/create-a-geographic-multipoint-column"},{"title":"Create a geographic multipolygon column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/geo_multipolygon","href":"/api-reference/table-schema-type/create-a-geographic-multipolygon-column"},{"title":"Create a geographic point column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/geo_point","href":"/api-reference/table-schema-type/create-a-geographic-point-column"},{"title":"Create a geographic polygon column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/geo_polygon","href":"/api-reference/table-schema-type/create-a-geographic-polygon-column"},{"title":"Create an image column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/image","href":"/api-reference/table-schema-type/create-an-image-column"},{"title":"Create an integer column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/int","href":"/api-reference/table-schema-type/create-an-integer-column"},{"title":"Create a JSON column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/json","href":"/api-reference/table-schema-type/create-a-json-column"},{"title":"Create an object column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/object","href":"/api-reference/table-schema-type/create-an-object-column"},{"title":"Create a password column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/password","href":"/api-reference/table-schema-type/create-a-password-column"},{"title":"Create a UUID-based table reference column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/tablerefuuid","href":"/api-reference/table-schema-type/create-a-uuid-based-table-reference-column"},{"title":"Create a table reference column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/tableref","href":"/api-reference/table-schema-type/create-a-table-reference-column"},{"title":"Create a text column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/text","href":"/api-reference/table-schema-type/create-a-text-column"},{"title":"Create a timestamp column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/timestamp","href":"/api-reference/table-schema-type/create-a-timestamp-column"},{"title":"Create a UUID column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/uuid","href":"/api-reference/table-schema-type/create-a-uuid-column"},{"title":"Create a vector column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/vector","href":"/api-reference/table-schema-type/create-a-vector-column"},{"title":"Create a video column","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/table/{table_id}/schema/type/video","href":"/api-reference/table-schema-type/create-a-video-column"}]},{"group":"task","pages":[{"title":"Update scheduled task security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/task/{task_id}/security","href":"/api-reference/task/update-scheduled-task-security-settings"},{"title":"Retrieve a specific scheduled task by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/task/{task_id}","href":"/api-reference/task/retrieve-a-specific-scheduled-task-by-id"},{"title":"Update a scheduled task","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/task/{task_id}","href":"/api-reference/task/update-a-scheduled-task"},{"title":"Delete a scheduled task permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/task/{task_id}","href":"/api-reference/task/delete-a-scheduled-task-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all scheduled tasks in a workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/task","href":"/api-reference/task/retrieve-all-scheduled-tasks-in-a-workspace"},{"title":"Create a new scheduled task using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/task","href":"/api-reference/task/create-a-new-scheduled-task-using-xanoscript"}]},{"group":"tool","pages":[{"title":"Update tool security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/tool/{tool_id}/security","href":"/api-reference/tool/update-tool-security-settings"},{"title":"Retrieve a specific tool by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/tool/{tool_id}","href":"/api-reference/tool/retrieve-a-specific-tool-by-id"},{"title":"Update a tool","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/tool/{tool_id}","href":"/api-reference/tool/update-a-tool"},{"title":"Delete a tool permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/tool/{tool_id}","href":"/api-reference/tool/delete-a-tool-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all tools in a workspace","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/tool","href":"/api-reference/tool/retrieve-all-tools-in-a-workspace"},{"title":"Create a new tool using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/tool","href":"/api-reference/tool/create-a-new-tool-using-xanoscript"}]},{"group":"workspace trigger","pages":[{"title":"Update workspace trigger security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/trigger/{trigger_id}/security","href":"/api-reference/workspace-trigger/update-workspace-trigger-security-settings"},{"title":"Retrieve a specific workspace trigger by ID","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/trigger/{trigger_id}","href":"/api-reference/workspace-trigger/retrieve-a-specific-workspace-trigger-by-id"},{"title":"Update a workspace trigger","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/trigger/{trigger_id}","href":"/api-reference/workspace-trigger/update-a-workspace-trigger"},{"title":"Delete a workspace trigger permanently. This action cannot be undone","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/trigger/{trigger_id}","href":"/api-reference/workspace-trigger/delete-a-workspace-trigger-permanently-this-action-cannot-be-undone"},{"title":"Retrieve all workspace triggers","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/trigger","href":"/api-reference/workspace-trigger/retrieve-all-workspace-triggers"},{"title":"Create a new workspace trigger using XanoScript","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/trigger","href":"/api-reference/workspace-trigger/create-a-new-workspace-trigger-using-xanoscript"}]},{"group":"workflow_test","pages":[{"title":"Update workflow test security settings","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/workflow_test/{workflow_test_id}/security","href":"/api-reference/workflow_test/update-workflow-test-security-settings"},{"title":"Retrieve a workflow test","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/workflow_test/{workflow_test_id}","href":"/api-reference/workflow_test/retrieve-a-workflow-test"},{"title":"Update a workflow test","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json put /workspace/{workspace_id}/workflow_test/{workflow_test_id}","href":"/api-reference/workflow_test/update-a-workflow-test"},{"title":"Delete a workflow test","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json delete /workspace/{workspace_id}/workflow_test/{workflow_test_id}","href":"/api-reference/workflow_test/delete-a-workflow-test"},{"title":"Retrieve all workflow tests","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json get /workspace/{workspace_id}/workflow_test","href":"/api-reference/workflow_test/retrieve-all-workflow-tests"},{"title":"Add a workflow test","deprecated":null,"version":null,"openapi":"/apispec_meta_instance.json post /workspace/{workspace_id}/workflow_test","href":"/api-reference/workflow_test/add-a-workflow-test"}]}]}]},"basePath":"","title":"Building Visually - Xano Documentation","buildId":"dpl_77Hw7ZuAABM8E3WMbYAf2ohQCr3v","deploymentId":"dpl_77Hw7ZuAABM8E3WMbYAf2ohQCr3v","dynamics":["a74be98ba7","07c022d89b"],"chunks":["zoom-image-lightbox-CqbnXZMj.js","lightbox-handle-r17bVUz3.js","Frame-CNMfPRAk.js","DynamicMarkdown-D9cdbgj9.js"]}