{ "response": { "data": [ { "id": "7c1d4f0e-3b8a-4d52-9a66-1f0c2e5a9b41", "slug": "discord-bot-js", "origin": "vertra", "visibility": "public", "name": { "pt-br": "Bot de Discord (JavaScript)", "en": "Discord bot (JavaScript)", "es": "Bot de Discord (JavaScript)" }, "description": { "pt-br": "Bot de Discord com discord.js e o comando /ping. Ponto de partida para o seu bot.", "en": "Discord bot with discord.js and a /ping command. A starting point for your bot." }, "category": "bots", "tags": ["discord", "bot", "javascript", "discordjs"], "icon_url": "https://api.vertracloud.app/v1/template-icons/7c1d4f0e-3b8a-4d52-9a66-1f0c2e5a9b41?v=a1b2c3d4", "author_display": null, "links": { "website": "https://discord.js.org", "docs": "https://discordjs.guide" }, "landing": null, "featured": true, "current_version": { "id": "e0b7a2c9-5d14-4f8e-8c3a-92d6b1f47a10", "version": "1.0.0", "security": false, "created_at": "2026-10-26T13:05:00Z" }, "services": [ { "id": "app", "kind": "app", "source_type": "code", "database": null, "blob_visibility": null, "ram": { "min": 256, "recommended": 256 }, "web": "none", "conditional": false } ], "creates_stack": false, "ram_min_total": 256, "byok": false, "required_plan": "economy", "code_view": true, "uses_count": 87, "owner": null, "github": null, "created_at": "2026-10-26T09:00:00Z", "updated_at": "2026-10-26T13:05:00Z", "account": { "fits": true, "reasons": [], "required_ram": 256, "free_ram": 2048, "needs_image_slot": false, "image_slots_free": 0, "in_use": false, "in_use_count": 0 } } ], "total_count": 1, "page": 1, "limit": 10, "total_pages": 1, "has_next_page": false, "has_previous_page": false }}
Returns one page of templates, filtered and sorted as you ask. The public catalog needs no authentication. With a session or an API key (scope templates:read) the answer also includes your private templates and an account block on each template that says whether it fits your account right now. Calls with an Authorization header are always validated: an invalid key or token is a 401, never an anonymous answer. Reads are limited to 60 requests per minute per client.
Only templates of one origin: vertra (made by the platform), community (contributed and reviewed) or private (yours). private lists your personal private templates, or the ones of workspace_id, and only returns something when you are authenticated.
true keeps only the templates that fit your account right now (plan, free memory, limits and image slots). Needs authentication: without it the call fails with AUTH_TOKEN_MISSING.
Includes the private templates of that workspace. The owner of the workspace and members who can read its applications can list them; anyone else gets the workspace error.
The public gallery shows templates that are public or in beta and whose latest version is ready. Hidden and deprecated templates are not listed, but Get Template still serves them by ID or slug.
The services the template creates. Each has id, kind (app, database or blob), source_type (code or image for an app, otherwise null), database (postgres, mysql, mongodb or redis for a database, otherwise null), blob_visibility (private or public for a Blob folder, otherwise null), ram (min, recommended and optional max, in MB; a Blob folder uses none), web (required, optional or none for an app, otherwise null) and conditional (true when the service is only created for some answers).
How many times a catalog template was used: the total of deploys that finished successfully, across every version. Deploys that failed or were rolled back are not counted, and deleting the resulting app does not decrease it. It is an aggregate only, with no information about who used it. null for private templates.
Why it does not fit; empty when it does. Each item has reason and, when it is a number or a plan, required and available. Reasons: no_plan, ram, web_publish, image_plan, image_slots, private_network (a connection of the template is not available over public addresses), blob_plan, min_plan, max_apps, max_databases and deploys_per_hour.
The error code indicating the reason for the failure. Possible values:
VALIDATION_ERROR: A query parameter is not valid, for example an unknown category or a limit above 50 (400).
AUTH_TOKEN_MISSING: fits=true without authentication (401).
API_KEY_SCOPE_DENIED: The API key does not have the templates:read scope (403).
WORKSPACE_NOT_FOUND: The workspace in workspace_id does not exist or you are not part of it (404).
RATE_LIMIT_EXCEEDED: Too many requests (429).
INTERNAL_SERVER_ERROR: Unexpected failure (500).
{ "code": "AUTH_TOKEN_MISSING"}
Last modified on October 30, 2026
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Vertra Cloud","description":"Vertra Cloud is a Brazilian application hosting platform (PaaS): deploy from GitHub or a zip file, isolated containers, managed databases, file storage, snapshots, a CLI and a VS Code extension.","colors":{"primary":"#ff6100","light":"#ff7a24","dark":"#e65700"},"logo":{"light":"https://mintcdn.com/vertracloud/2O7-bfMOIoy6MCUx/logo/light.svg?fit=max\u0026auto=format\u0026n=2O7-bfMOIoy6MCUx\u0026q=85\u0026s=2fcb392041b562c0aab2f07ebef0f12e","dark":"https://mintcdn.com/vertracloud/2O7-bfMOIoy6MCUx/logo/light.svg?fit=max\u0026auto=format\u0026n=2O7-bfMOIoy6MCUx\u0026q=85\u0026s=2fcb392041b562c0aab2f07ebef0f12e"},"favicon":"https://mintcdn.com/vertracloud/2O7-bfMOIoy6MCUx/favicon.svg?fit=max\u0026auto=format\u0026n=2O7-bfMOIoy6MCUx\u0026q=85\u0026s=1bab95e4f8e35419e5901e69c7caa4b2","api":{"playground":{"display":"interactive"},"examples":{"defaults":"required","languages":["curl","javascript","python","go"]},"mdx":{"auth":{"method":"bearer"},"server":"https://api.vertracloud.app"}},"background":{"color":{"light":"#f7f7f6","dark":"#121212"}},"navbar":{"links":[{"href":"mailto:[email protected]","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://vertracloud.app/dashboard"}},"footer":{"socials":{"github":"https://github.com/vertracloud","instagram":"https://instagram.com/vertracloud","x":"https://x.com/vertracloud","youtube":"https://www.youtube.com/@vertracloud","discord":"https://discord.gg/vertracloud"}},"seo":{"metatags":{"og:site_name":"Vertra Cloud Docs","og:type":"website","og:image":"https://docs.vertracloud.app/images/og.png","twitter:card":"summary_large_image","twitter:image":"https://docs.vertracloud.app/images/og.png","description":"Vertra Cloud is a Brazilian application hosting platform (PaaS): deploy from GitHub or a zip file, isolated containers, managed databases, file storage, snapshots, a CLI and a VS Code extension."},"indexing":"navigable"},"fonts":{"family":"Geist"},"contextual":{"options":["copy","view","chatgpt","claude","mcp","cursor","vscode"],"display":"header"},"metadata":{"timestamp":true},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","default":true,"href":""},{"language":"pt-BR","navbar":{"links":[{"href":"mailto:[email protected]","label":"Suporte"}],"primary":{"type":"button","label":"Dashboard","href":"https://vertracloud.app/dashboard"}},"href":"pt-br"},{"language":"es","navbar":{"links":[{"href":"mailto:[email protected]","label":"Soporte"}],"primary":{"type":"button","label":"Panel","href":"https://vertracloud.app/dashboard"}},"href":"es-es"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"vertracloud","hasAudioNarration":false,"actualSubdomain":"vertracloud","customDomains":["docs.vertracloud.app"],"gitSource":{"type":"github","owner":"vertracloud","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adfccf1a2bef6f7629a5c5c","collectionId":"d2809f99-d115-4a9b-850f-551c23e42657","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adfccf1a2bef6f7629a5c5c"},"entitlements":{},"buildId":"6ae51f8fceb92005b37aba26","clientVersion":"0.0.4043","searchFilterCounts":[{"language":"en","tag":"API Reference","count":159},{"language":"es","tag":"Referencia de la API","count":159},{"language":"pt-BR","tag":"Referência da API","count":159},{"language":"en","tag":"Endpoints","count":156},{"language":"es","tag":"Endpoints","count":156},{"language":"pt-BR","tag":"Endpoints","count":156},{"language":"en","tag":"Templates","count":64},{"language":"es","tag":"Plantillas","count":64},{"language":"pt-BR","tag":"Templates","count":64},{"language":"es","tag":"Blob Storage","count":58},{"language":"pt-BR","tag":"Blob Storage","count":58},{"language":"en","tag":"Blob Storage","count":56},{"language":"en","tag":"Applications","count":46},{"language":"en","tag":"Changelog","count":46},{"language":"es","tag":"Aplicaciones","count":46},{"language":"es","tag":"Changelog","count":46},{"language":"pt-BR","tag":"Aplicações","count":46},{"language":"pt-BR","tag":"Changelog","count":46},{"language":"en","tag":"v26","count":35},{"language":"es","tag":"v26","count":35},{"language":"pt-BR","tag":"v26","count":35},{"language":"en","tag":"Blob API reference","count":30},{"language":"es","tag":"Referencia de la API de Blob","count":30},{"language":"pt-BR","tag":"Referência da API do Blob","count":30},{"language":"en","tag":"Workspaces","count":26},{"language":"en","tag":"Tutorials","count":26},{"language":"es","tag":"Workspaces","count":26},{"language":"es","tag":"Tutoriales","count":26},{"language":"pt-BR","tag":"Workspaces","count":26},{"language":"pt-BR","tag":"Tutoriais","count":26}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"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":"turbopuffer-dual-write","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":true},"customCss":[{"filePath":"style.css","content":":root{--gray-50:247 247 246;--gray-100:241 241 240;--gray-200:230 230 228;--gray-300:211 211 209;--gray-400:162 162 162;--gray-500:115 115 115;--gray-600:83 83 83;--gray-700:61 61 61;--gray-800:42 42 42;--gray-900:26 26 26;--gray-950:13 13 13}.vc-home{--vc-orange:#ff6100;--vc-orange-strong:#e65700;--vc-paper:#f7f7f6;--vc-surface:#ffffff;--vc-ink:#141414;--vc-ink-2:#3d3d3d;--vc-muted:#737373;--vc-line:#e6e6e4;color:var(--vc-ink)}.dark .vc-home{--vc-orange-strong:#ff7a24;--vc-paper:#121212;--vc-surface:#1a1a1a;--vc-ink:#f4f4f4;--vc-ink-2:#c6c6c6;--vc-muted:#8e8e8e;--vc-line:#2a2a2a}.vc-hero,.vc-hero-inner{display:flex;flex-direction:column;box-sizing:border-box;margin:0}.vc-hero{min-height:calc(100dvh - 120px);overflow:hidden;border-bottom:1px solid var(--vc-line);background-color:var(--vc-paper)}.vc-hero-inner{flex:0 0 auto;justify-content:center;max-width:40rem;padding:2.75rem 1.25rem 1.75rem;text-align:left}.vc-hero h1{margin:0;color:var(--vc-ink);font-size:clamp(2.15rem,.85rem + 1.9vw,3.15rem);font-weight:600;line-height:1.02;letter-spacing:-.045em;text-wrap:balance}.vc-hero-copy{max-width:36rem;margin:1.15rem 0 0;color:var(--vc-ink-2);font-size:1.05rem;line-height:1.55;text-wrap:pretty}.vc-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.75rem;margin-top:1.75rem}.vc-btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:0 1.15rem;border-radius:.5rem;font-size:.92rem;font-weight:500;line-height:1;text-decoration:none!important;border:1px solid transparent;transition:background-color .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1)}.vc-btn:focus-visible{outline:2px solid var(--vc-orange);outline-offset:2px}.vc-btn-primary{background:var(--vc-orange);color:#fff!important}.vc-btn-primary:hover{background:var(--vc-orange-strong)}.vc-btn-ghost{background:0 0;border-color:var(--vc-line);color:var(--vc-ink)!important}.vc-btn-ghost:hover{border-color:var(--vc-ink)}.vc-hero-art{flex:1 1 auto;min-height:240px;border-top:1px solid var(--vc-line);background:#f4efe4 url(/images/hero-pillar.webp) 70% 68%/cover no-repeat}@media (min-width:1024px){.vc-hero{flex-direction:row;align-items:stretch;min-height:calc(100dvh - 112px)}.vc-hero-inner{flex:.78 1 0;max-width:none;padding:4rem clamp(1.75rem,4vw,4.5rem)}.vc-hero-art{flex:1.22 1 0;min-height:0;border-top:0;border-left:1px solid var(--vc-line);background-position:72% 50%}}.vc-section{max-width:1040px;margin:0 auto;padding:4.5rem 1.5rem 0}.vc-section:last-of-type{padding-bottom:4.5rem}.vc-heading{max-width:620px;margin-bottom:1.75rem}.vc-kicker{color:var(--vc-orange);font:600 .72rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase}.vc-heading h2{margin:.5rem 0 .6rem;color:var(--vc-ink);font-size:clamp(1.55rem,3vw,2.05rem);font-weight:700;letter-spacing:-.03em;text-wrap:balance}.vc-heading p{margin:0;color:var(--vc-muted);line-height:1.65}.vc-home .card{border-radius:.85rem;transition:border-color .18s ease,transform .18s ease}.vc-home a.card:hover{border-color:rgba(255,97,0,.6)!important;transform:translateY(-2px)}.vc-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.6rem}.vc-chip{display:flex;align-items:center;gap:.6rem;padding:.7rem .85rem;border:1px solid var(--vc-line);border-radius:.7rem;background:var(--vc-chip);color:var(--vc-ink)!important;font-size:.9rem;font-weight:500;text-decoration:none!important;transition:border-color .15s ease,transform .15s ease}.vc-chip:hover{border-color:rgba(255,97,0,.6);transform:translateY(-1px)}.vc-chip svg{flex-shrink:0}.vc-help{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.vc-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;max-width:1040px;margin:4.5rem auto 0;padding:1.5rem 1.5rem 3rem;border-top:1px solid var(--vc-line);color:var(--vc-muted);font:.72rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}.vc-footer a{color:var(--vc-ink)!important;text-decoration:none!important}.vc-footer a:hover{color:var(--vc-orange)!important}@media (max-width:760px){.vc-section{padding:3.25rem 1rem 0}}[data-component-part=language-switcher] [data-language=en] a::before{content:'🇺🇸 '}[data-component-part=language-switcher] [data-language=pt-BR] a::before{content:'🇧🇷 '}[data-component-part=language-switcher] [data-language=es] a::before{content:'🇪🇸 '}"}],"page":{"pagePath":"api-reference/endpoint/templates/list","slug":"/api-reference/endpoint/templates/list","pageMetadata":{"title":"List Templates","sidebarTitle":"List Templates","api":"GET https://api.vertracloud.app/v1/templates","authMethod":"bearer","description":"Lists public catalog templates, plus your private ones when authenticated, with filters, sorting, pagination and whether each fits your account.","href":"/api-reference/endpoint/templates/list"},"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: \"Lists public catalog templates, plus your private ones when authenticated, with filters, sorting, pagination and whether each fits your account.\"\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`,code:`code`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Expandable,Heading,ParamField,ResponseField}=_components;if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Returns one page of templates, filtered and sorted as you ask. The public catalog needs `,_jsx(_components.strong,{children:`no authentication`}),`. With a session or an API key (scope `,_jsx(_components.code,{children:`templates:read`}),`) the answer also includes your private templates and an `,_jsx(_components.code,{children:`account`}),` block on each template that says whether it fits your account right now. Calls with an `,_jsx(_components.code,{children:`Authorization`}),` header are always validated: an invalid key or token is a `,_jsx(_components.code,{children:`401`}),`, never an anonymous answer. Reads are limited to 60 requests per minute per client.`]}),`\n`,_jsx(ParamField,{query:`search`,type:`string`,id:`param-search`,children:_jsx(_components.p,{children:`Text to look for in the name, description (in the three languages), slug and tags. Case and accents are ignored. Up to 100 characters.`})}),`\n`,_jsx(ParamField,{query:`category`,type:`string`,id:`param-category`,children:_jsxs(_components.p,{children:[`Only templates of one category: `,_jsx(_components.code,{children:`automation`}),`, `,_jsx(_components.code,{children:`ai-agents`}),`, `,_jsx(_components.code,{children:`bots`}),`, `,_jsx(_components.code,{children:`apis`}),`, `,_jsx(_components.code,{children:`cms`}),`, `,_jsx(_components.code,{children:`monitoring`}),`, `,_jsx(_components.code,{children:`starters`}),`, `,_jsx(_components.code,{children:`databases`}),` or `,_jsx(_components.code,{children:`other`}),`.`]})}),`\n`,_jsx(ParamField,{query:`origin`,type:`string`,id:`param-origin`,children:_jsxs(_components.p,{children:[`Only templates of one origin: `,_jsx(_components.code,{children:`vertra`}),` (made by the platform), `,_jsx(_components.code,{children:`community`}),` (contributed and reviewed) or `,_jsx(_components.code,{children:`private`}),` (yours). `,_jsx(_components.code,{children:`private`}),` lists your personal private templates, or the ones of `,_jsx(_components.code,{children:`workspace_id`}),`, and only returns something when you are authenticated.`]})}),`\n`,_jsx(ParamField,{query:`tag`,type:`string`,id:`param-tag`,children:_jsx(_components.p,{children:`Only templates that carry this tag. Up to 50 characters.`})}),`\n`,_jsx(ParamField,{query:`fits`,type:`boolean`,id:`param-fits`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` keeps only the templates that fit your account right now (plan, free memory, limits and image slots). `,_jsx(_components.strong,{children:`Needs authentication`}),`: without it the call fails with `,_jsx(_components.code,{children:`AUTH_TOKEN_MISSING`}),`.`]})}),`\n`,_jsx(ParamField,{query:`sort`,type:`string`,default:`recommended`,id:`param-sort`,children:_jsxs(_components.p,{children:[`The order: `,_jsx(_components.code,{children:`recommended`}),` (featured first, then most used), `,_jsx(_components.code,{children:`popular`}),` (most used), `,_jsx(_components.code,{children:`newest`}),` or `,_jsx(_components.code,{children:`name`}),`.`]})}),`\n`,_jsx(ParamField,{query:`page`,type:`integer`,default:`1`,id:`param-page`,children:_jsx(_components.p,{children:`The page, starting at 1.`})}),`\n`,_jsx(ParamField,{query:`limit`,type:`integer`,default:`20`,id:`param-limit`,children:_jsx(_components.p,{children:`Templates per page, from 1 to 50.`})}),`\n`,_jsx(ParamField,{query:`workspace_id`,type:`string`,id:`param-workspace-id`,children:_jsx(_components.p,{children:`Includes the private templates of that workspace. The owner of the workspace and members who can read its applications can list them; anyone else gets the workspace error.`})}),`\n`,_jsxs(_components.p,{children:[`The public gallery shows templates that are public or in beta and whose latest version is ready. Hidden and deprecated templates are not listed, but `,_jsx(_components.a,{href:`/api-reference/endpoint/templates/get`,children:`Get Template`}),` still serves them by ID or slug.`]}),`\n`,_jsx(Heading,{level:`3`,id:`response`,children:`Response`}),`\n`,_jsxs(ResponseField,{name:`response`,type:`object`,id:`param-response`,children:[_jsx(_components.p,{children:`A page of templates.`}),_jsxs(Expandable,{title:`Toggle object`,children:[_jsxs(ResponseField,{name:`data`,type:`object[]`,id:`param-data`,children:[_jsx(_components.p,{children:`The templates of the page.`}),_jsxs(Expandable,{title:`Toggle object`,children:[_jsx(ResponseField,{name:`id`,type:`string`,id:`param-id`,children:_jsx(_components.p,{children:`The template ID.`})}),_jsx(ResponseField,{name:`slug`,type:`string`,id:`param-slug`,children:_jsx(_components.p,{children:`A short name, unique among public templates. Accepted wherever a template ID is.`})}),_jsx(ResponseField,{name:`origin`,type:`string`,id:`param-origin-1`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`vertra`}),`, `,_jsx(_components.code,{children:`community`}),` or `,_jsx(_components.code,{children:`private`}),`.`]})}),_jsx(ResponseField,{name:`visibility`,type:`string`,id:`param-visibility`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`public`}),`, `,_jsx(_components.code,{children:`beta`}),`, `,_jsx(_components.code,{children:`hidden`}),` or `,_jsx(_components.code,{children:`deprecated`}),`. A deprecated template cannot be used for new applications; the ones that already run keep running.`]})}),_jsx(ResponseField,{name:`name`,type:`object`,id:`param-name`,children:_jsxs(_components.p,{children:[`The name in the three languages: `,_jsx(_components.code,{children:`pt-br`}),` (always present), `,_jsx(_components.code,{children:`en`}),` and `,_jsx(_components.code,{children:`es`}),` (a missing one falls back to `,_jsx(_components.code,{children:`pt-br`}),`).`]})}),_jsx(ResponseField,{name:`description`,type:`object`,id:`param-description`,children:_jsxs(_components.p,{children:[`The description, with the same shape as `,_jsx(_components.code,{children:`name`}),`.`]})}),_jsx(ResponseField,{name:`category`,type:`string`,id:`param-category-1`,children:_jsx(_components.p,{children:`One of the categories above.`})}),_jsx(ResponseField,{name:`tags`,type:`string[]`,id:`param-tags`,children:_jsx(_components.p,{children:`The tags of the template.`})}),_jsx(ResponseField,{name:`icon_url`,type:`string | null`,id:`param-icon-url`,children:_jsxs(_components.p,{children:[`URL of the icon, or `,_jsx(_components.code,{children:`null`}),` when it has none (private templates have none).`]})}),_jsx(ResponseField,{name:`author_display`,type:`string | null`,id:`param-author-display`,children:_jsxs(_components.p,{children:[`The name shown as the author, or `,_jsx(_components.code,{children:`null`}),` for templates of the platform.`]})}),_jsx(ResponseField,{name:`links`,type:`object`,id:`param-links`,children:_jsxs(_components.p,{children:[`Links of the software the template packages: `,_jsx(_components.code,{children:`website`}),`, `,_jsx(_components.code,{children:`docs`}),`, `,_jsx(_components.code,{children:`source`}),` and `,_jsx(_components.code,{children:`license`}),`, each optional.`]})}),_jsx(ResponseField,{name:`landing`,type:`string | null`,id:`param-landing`,children:_jsx(_components.p,{children:`The slug of the dedicated public page, when there is one.`})}),_jsx(ResponseField,{name:`featured`,type:`boolean`,id:`param-featured`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when the template is highlighted in the gallery.`]})}),_jsx(ResponseField,{name:`current_version`,type:`object`,id:`param-current-version`,children:_jsxs(_components.p,{children:[`The latest version: `,_jsx(_components.code,{children:`id`}),`, `,_jsx(_components.code,{children:`version`}),` (semantic version), `,_jsx(_components.code,{children:`security`}),` (`,_jsx(_components.code,{children:`true`}),` for a security release) and `,_jsx(_components.code,{children:`created_at`}),`.`]})}),_jsx(ResponseField,{name:`services`,type:`object[]`,id:`param-services`,children:_jsxs(_components.p,{children:[`The services the template creates. Each has `,_jsx(_components.code,{children:`id`}),`, `,_jsx(_components.code,{children:`kind`}),` (`,_jsx(_components.code,{children:`app`}),`, `,_jsx(_components.code,{children:`database`}),` or `,_jsx(_components.code,{children:`blob`}),`), `,_jsx(_components.code,{children:`source_type`}),` (`,_jsx(_components.code,{children:`code`}),` or `,_jsx(_components.code,{children:`image`}),` for an app, otherwise `,_jsx(_components.code,{children:`null`}),`), `,_jsx(_components.code,{children:`database`}),` (`,_jsx(_components.code,{children:`postgres`}),`, `,_jsx(_components.code,{children:`mysql`}),`, `,_jsx(_components.code,{children:`mongodb`}),` or `,_jsx(_components.code,{children:`redis`}),` for a database, otherwise `,_jsx(_components.code,{children:`null`}),`), `,_jsx(_components.code,{children:`blob_visibility`}),` (`,_jsx(_components.code,{children:`private`}),` or `,_jsx(_components.code,{children:`public`}),` for a Blob folder, otherwise `,_jsx(_components.code,{children:`null`}),`), `,_jsx(_components.code,{children:`ram`}),` (`,_jsx(_components.code,{children:`min`}),`, `,_jsx(_components.code,{children:`recommended`}),` and optional `,_jsx(_components.code,{children:`max`}),`, in MB; a Blob folder uses none), `,_jsx(_components.code,{children:`web`}),` (`,_jsx(_components.code,{children:`required`}),`, `,_jsx(_components.code,{children:`optional`}),` or `,_jsx(_components.code,{children:`none`}),` for an app, otherwise `,_jsx(_components.code,{children:`null`}),`) and `,_jsx(_components.code,{children:`conditional`}),` (`,_jsx(_components.code,{children:`true`}),` when the service is only created for some answers).`]})}),_jsx(ResponseField,{name:`creates_stack`,type:`boolean`,id:`param-creates-stack`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when using the template creates a stack, which happens with two or more services.`]})}),_jsx(ResponseField,{name:`ram_min_total`,type:`integer`,id:`param-ram-min-total`,children:_jsx(_components.p,{children:`The sum of the minimum memory of every service, in MB.`})}),_jsx(ResponseField,{name:`byok`,type:`boolean`,id:`param-byok`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when you bring the key of the AI model the software uses.`]})}),_jsx(ResponseField,{name:`required_plan`,type:`string`,id:`param-required-plan`,children:_jsx(_components.p,{children:`The lowest plan that can use the template.`})}),_jsx(ResponseField,{name:`code_view`,type:`boolean`,id:`param-code-view`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`false`}),` for a closed template: whoever uses it cannot see or download its code. Public templates are always open.`]})}),_jsx(ResponseField,{name:`uses_count`,type:`integer | null`,id:`param-uses-count`,children:_jsxs(_components.p,{children:[`How many times a catalog template was used: the total of deploys that finished successfully, across every version. Deploys that failed or were rolled back are not counted, and deleting the resulting app does not decrease it. It is an aggregate only, with no information about who used it. `,_jsx(_components.code,{children:`null`}),` for private templates.`]})}),_jsx(ResponseField,{name:`owner`,type:`object | null`,id:`param-owner`,children:_jsxs(_components.p,{children:[`The owner of a private template, with `,_jsx(_components.code,{children:`user_id`}),` and `,_jsx(_components.code,{children:`workspace_id`}),` (`,_jsx(_components.code,{children:`null`}),` when it belongs to the user); `,_jsx(_components.code,{children:`null`}),` for catalog templates.`]})}),_jsx(ResponseField,{name:`github`,type:`object | null`,id:`param-github`,children:_jsxs(_components.p,{children:[`The linked GitHub repository of a private template (`,_jsx(_components.code,{children:`repository`}),` as `,_jsx(_components.code,{children:`owner/name`}),` and `,_jsx(_components.code,{children:`branch`}),`), or `,_jsx(_components.code,{children:`null`}),`.`]})}),_jsx(ResponseField,{name:`created_at`,type:`string`,format:`date-time`,id:`param-created-at`,children:_jsx(_components.p,{children:`When the template was created.`})}),_jsx(ResponseField,{name:`updated_at`,type:`string`,format:`date-time`,id:`param-updated-at`,children:_jsx(_components.p,{children:`When the template was last updated.`})}),_jsxs(ResponseField,{name:`account`,type:`object`,id:`param-account`,children:[_jsx(_components.p,{children:`Present only when the request is authenticated: what using the template would do to your account.`}),_jsxs(Expandable,{title:`Toggle object`,children:[_jsx(ResponseField,{name:`fits`,type:`boolean`,id:`param-fits-1`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when your plan and free resources cover the template.`]})}),_jsx(ResponseField,{name:`reasons`,type:`object[]`,id:`param-reasons`,children:_jsxs(_components.p,{children:[`Why it does not fit; empty when it does. Each item has `,_jsx(_components.code,{children:`reason`}),` and, when it is a number or a plan, `,_jsx(_components.code,{children:`required`}),` and `,_jsx(_components.code,{children:`available`}),`. Reasons: `,_jsx(_components.code,{children:`no_plan`}),`, `,_jsx(_components.code,{children:`ram`}),`, `,_jsx(_components.code,{children:`web_publish`}),`, `,_jsx(_components.code,{children:`image_plan`}),`, `,_jsx(_components.code,{children:`image_slots`}),`, `,_jsx(_components.code,{children:`private_network`}),` (a connection of the template is not available over public addresses), `,_jsx(_components.code,{children:`blob_plan`}),`, `,_jsx(_components.code,{children:`min_plan`}),`, `,_jsx(_components.code,{children:`max_apps`}),`, `,_jsx(_components.code,{children:`max_databases`}),` and `,_jsx(_components.code,{children:`deploys_per_hour`}),`.`]})}),_jsx(ResponseField,{name:`required_ram`,type:`integer`,id:`param-required-ram`,children:_jsx(_components.p,{children:`The memory the template needs: the sum of the minimum memory of the services that would be created, in MB.`})}),_jsx(ResponseField,{name:`free_ram`,type:`integer`,id:`param-free-ram`,children:_jsx(_components.p,{children:`The memory free in your account, in MB.`})}),_jsx(ResponseField,{name:`needs_image_slot`,type:`boolean`,id:`param-needs-image-slot`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when using the template takes an image slot that you do not already hold. It is never `,_jsx(_components.code,{children:`true`}),` for an image of your own private template.`]})}),_jsx(ResponseField,{name:`image_slots_free`,type:`integer`,id:`param-image-slots-free`,children:_jsx(_components.p,{children:`The image slots free in your account.`})}),_jsx(ResponseField,{name:`in_use`,type:`boolean`,id:`param-in-use`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when your account already runs applications created from this template.`]})}),_jsx(ResponseField,{name:`in_use_count`,type:`integer`,id:`param-in-use-count`,children:_jsx(_components.p,{children:`How many applications and stacks of your account came from this template.`})})]})]})]})]}),_jsx(ResponseField,{name:`total_count`,type:`integer`,id:`param-total-count`,children:_jsx(_components.p,{children:`How many templates match the filters, across all pages.`})}),_jsx(ResponseField,{name:`page`,type:`integer`,id:`param-page-1`,children:_jsx(_components.p,{children:`The current page.`})}),_jsx(ResponseField,{name:`limit`,type:`integer`,id:`param-limit-1`,children:_jsx(_components.p,{children:`The page size used.`})}),_jsx(ResponseField,{name:`total_pages`,type:`integer`,id:`param-total-pages`,children:_jsx(_components.p,{children:`The number of pages.`})}),_jsx(ResponseField,{name:`has_next_page`,type:`boolean`,id:`param-has-next-page`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when there is a next page.`]})}),_jsx(ResponseField,{name:`has_previous_page`,type:`boolean`,id:`param-has-previous-page`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when there is a previous page.`]})})]})]}),`\n`,_jsx(_components.p,{children:`An anonymous answer is cacheable for 30 seconds. An authenticated answer is never cached.`}),`\n`,`\n`,`\n`,_jsx(Heading,{level:`3`,id:`error-responses`,children:`Error Responses`}),`\n`,_jsxs(ResponseField,{name:`code`,type:`string`,id:`param-code`,children:[_jsx(_components.p,{children:`The error code indicating the reason for the failure. Possible values:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`VALIDATION_ERROR`}),`: A query parameter is not valid, for example an unknown `,_jsx(_components.code,{children:`category`}),` or a `,_jsx(_components.code,{children:`limit`}),` above 50 (`,_jsx(_components.code,{children:`400`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`AUTH_TOKEN_MISSING`}),`: `,_jsx(_components.code,{children:`fits=true`}),` without authentication (`,_jsx(_components.code,{children:`401`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`API_KEY_SCOPE_DENIED`}),`: The API key does not have the `,_jsx(_components.code,{children:`templates:read`}),` scope (`,_jsx(_components.code,{children:`403`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`WORKSPACE_NOT_FOUND`}),`: The workspace in `,_jsx(_components.code,{children:`workspace_id`}),` does not exist or you are not part of it (`,_jsx(_components.code,{children:`404`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`RATE_LIMIT_EXCEEDED`}),`: Too many requests (`,_jsx(_components.code,{children:`429`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`INTERNAL_SERVER_ERROR`}),`: Unexpected failure (`,_jsx(_components.code,{children:`500`}),`).`]}),`\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":"List Templates","sidebarTitle":"List Templates","api":"GET https://api.vertracloud.app/v1/templates","authMethod":"bearer","description":"Lists public catalog templates, plus your private ones when authenticated, with filters, sorting, pagination and whether each fits your account.","href":"/api-reference/endpoint/templates/list"}}},"mdxSourceWithNoJs":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Expandable,Heading,ParamField,RequestExample,ResponseExample,ResponseField}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!RequestExample)_missingMdxReference(`RequestExample`,true);if(!ResponseExample)_missingMdxReference(`ResponseExample`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Returns one page of templates, filtered and sorted as you ask. The public catalog needs `,_jsx(_components.strong,{children:`no authentication`}),`. With a session or an API key (scope `,_jsx(_components.code,{children:`templates:read`}),`) the answer also includes your private templates and an `,_jsx(_components.code,{children:`account`}),` block on each template that says whether it fits your account right now. Calls with an `,_jsx(_components.code,{children:`Authorization`}),` header are always validated: an invalid key or token is a `,_jsx(_components.code,{children:`401`}),`, never an anonymous answer. Reads are limited to 60 requests per minute per client.`]}),`\n`,_jsx(ParamField,{query:`search`,type:`string`,id:`param-search`,children:_jsx(_components.p,{children:`Text to look for in the name, description (in the three languages), slug and tags. Case and accents are ignored. Up to 100 characters.`})}),`\n`,_jsx(ParamField,{query:`category`,type:`string`,id:`param-category`,children:_jsxs(_components.p,{children:[`Only templates of one category: `,_jsx(_components.code,{children:`automation`}),`, `,_jsx(_components.code,{children:`ai-agents`}),`, `,_jsx(_components.code,{children:`bots`}),`, `,_jsx(_components.code,{children:`apis`}),`, `,_jsx(_components.code,{children:`cms`}),`, `,_jsx(_components.code,{children:`monitoring`}),`, `,_jsx(_components.code,{children:`starters`}),`, `,_jsx(_components.code,{children:`databases`}),` or `,_jsx(_components.code,{children:`other`}),`.`]})}),`\n`,_jsx(ParamField,{query:`origin`,type:`string`,id:`param-origin`,children:_jsxs(_components.p,{children:[`Only templates of one origin: `,_jsx(_components.code,{children:`vertra`}),` (made by the platform), `,_jsx(_components.code,{children:`community`}),` (contributed and reviewed) or `,_jsx(_components.code,{children:`private`}),` (yours). `,_jsx(_components.code,{children:`private`}),` lists your personal private templates, or the ones of `,_jsx(_components.code,{children:`workspace_id`}),`, and only returns something when you are authenticated.`]})}),`\n`,_jsx(ParamField,{query:`tag`,type:`string`,id:`param-tag`,children:_jsx(_components.p,{children:`Only templates that carry this tag. Up to 50 characters.`})}),`\n`,_jsx(ParamField,{query:`fits`,type:`boolean`,id:`param-fits`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` keeps only the templates that fit your account right now (plan, free memory, limits and image slots). `,_jsx(_components.strong,{children:`Needs authentication`}),`: without it the call fails with `,_jsx(_components.code,{children:`AUTH_TOKEN_MISSING`}),`.`]})}),`\n`,_jsx(ParamField,{query:`sort`,type:`string`,default:`recommended`,id:`param-sort`,children:_jsxs(_components.p,{children:[`The order: `,_jsx(_components.code,{children:`recommended`}),` (featured first, then most used), `,_jsx(_components.code,{children:`popular`}),` (most used), `,_jsx(_components.code,{children:`newest`}),` or `,_jsx(_components.code,{children:`name`}),`.`]})}),`\n`,_jsx(ParamField,{query:`page`,type:`integer`,default:`1`,id:`param-page`,children:_jsx(_components.p,{children:`The page, starting at 1.`})}),`\n`,_jsx(ParamField,{query:`limit`,type:`integer`,default:`20`,id:`param-limit`,children:_jsx(_components.p,{children:`Templates per page, from 1 to 50.`})}),`\n`,_jsx(ParamField,{query:`workspace_id`,type:`string`,id:`param-workspace-id`,children:_jsx(_components.p,{children:`Includes the private templates of that workspace. The owner of the workspace and members who can read its applications can list them; anyone else gets the workspace error.`})}),`\n`,_jsxs(_components.p,{children:[`The public gallery shows templates that are public or in beta and whose latest version is ready. Hidden and deprecated templates are not listed, but `,_jsx(_components.a,{href:`/api-reference/endpoint/templates/get`,children:`Get Template`}),` still serves them by ID or slug.`]}),`\n`,_jsx(Heading,{level:`3`,id:`response`,children:`Response`}),`\n`,_jsxs(ResponseField,{name:`response`,type:`object`,id:`param-response`,children:[_jsx(_components.p,{children:`A page of templates.`}),_jsxs(Expandable,{title:`Toggle object`,children:[_jsxs(ResponseField,{name:`data`,type:`object[]`,id:`param-data`,children:[_jsx(_components.p,{children:`The templates of the page.`}),_jsxs(Expandable,{title:`Toggle object`,children:[_jsx(ResponseField,{name:`id`,type:`string`,id:`param-id`,children:_jsx(_components.p,{children:`The template ID.`})}),_jsx(ResponseField,{name:`slug`,type:`string`,id:`param-slug`,children:_jsx(_components.p,{children:`A short name, unique among public templates. Accepted wherever a template ID is.`})}),_jsx(ResponseField,{name:`origin`,type:`string`,id:`param-origin-1`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`vertra`}),`, `,_jsx(_components.code,{children:`community`}),` or `,_jsx(_components.code,{children:`private`}),`.`]})}),_jsx(ResponseField,{name:`visibility`,type:`string`,id:`param-visibility`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`public`}),`, `,_jsx(_components.code,{children:`beta`}),`, `,_jsx(_components.code,{children:`hidden`}),` or `,_jsx(_components.code,{children:`deprecated`}),`. A deprecated template cannot be used for new applications; the ones that already run keep running.`]})}),_jsx(ResponseField,{name:`name`,type:`object`,id:`param-name`,children:_jsxs(_components.p,{children:[`The name in the three languages: `,_jsx(_components.code,{children:`pt-br`}),` (always present), `,_jsx(_components.code,{children:`en`}),` and `,_jsx(_components.code,{children:`es`}),` (a missing one falls back to `,_jsx(_components.code,{children:`pt-br`}),`).`]})}),_jsx(ResponseField,{name:`description`,type:`object`,id:`param-description`,children:_jsxs(_components.p,{children:[`The description, with the same shape as `,_jsx(_components.code,{children:`name`}),`.`]})}),_jsx(ResponseField,{name:`category`,type:`string`,id:`param-category-1`,children:_jsx(_components.p,{children:`One of the categories above.`})}),_jsx(ResponseField,{name:`tags`,type:`string[]`,id:`param-tags`,children:_jsx(_components.p,{children:`The tags of the template.`})}),_jsx(ResponseField,{name:`icon_url`,type:`string | null`,id:`param-icon-url`,children:_jsxs(_components.p,{children:[`URL of the icon, or `,_jsx(_components.code,{children:`null`}),` when it has none (private templates have none).`]})}),_jsx(ResponseField,{name:`author_display`,type:`string | null`,id:`param-author-display`,children:_jsxs(_components.p,{children:[`The name shown as the author, or `,_jsx(_components.code,{children:`null`}),` for templates of the platform.`]})}),_jsx(ResponseField,{name:`links`,type:`object`,id:`param-links`,children:_jsxs(_components.p,{children:[`Links of the software the template packages: `,_jsx(_components.code,{children:`website`}),`, `,_jsx(_components.code,{children:`docs`}),`, `,_jsx(_components.code,{children:`source`}),` and `,_jsx(_components.code,{children:`license`}),`, each optional.`]})}),_jsx(ResponseField,{name:`landing`,type:`string | null`,id:`param-landing`,children:_jsx(_components.p,{children:`The slug of the dedicated public page, when there is one.`})}),_jsx(ResponseField,{name:`featured`,type:`boolean`,id:`param-featured`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when the template is highlighted in the gallery.`]})}),_jsx(ResponseField,{name:`current_version`,type:`object`,id:`param-current-version`,children:_jsxs(_components.p,{children:[`The latest version: `,_jsx(_components.code,{children:`id`}),`, `,_jsx(_components.code,{children:`version`}),` (semantic version), `,_jsx(_components.code,{children:`security`}),` (`,_jsx(_components.code,{children:`true`}),` for a security release) and `,_jsx(_components.code,{children:`created_at`}),`.`]})}),_jsx(ResponseField,{name:`services`,type:`object[]`,id:`param-services`,children:_jsxs(_components.p,{children:[`The services the template creates. Each has `,_jsx(_components.code,{children:`id`}),`, `,_jsx(_components.code,{children:`kind`}),` (`,_jsx(_components.code,{children:`app`}),`, `,_jsx(_components.code,{children:`database`}),` or `,_jsx(_components.code,{children:`blob`}),`), `,_jsx(_components.code,{children:`source_type`}),` (`,_jsx(_components.code,{children:`code`}),` or `,_jsx(_components.code,{children:`image`}),` for an app, otherwise `,_jsx(_components.code,{children:`null`}),`), `,_jsx(_components.code,{children:`database`}),` (`,_jsx(_components.code,{children:`postgres`}),`, `,_jsx(_components.code,{children:`mysql`}),`, `,_jsx(_components.code,{children:`mongodb`}),` or `,_jsx(_components.code,{children:`redis`}),` for a database, otherwise `,_jsx(_components.code,{children:`null`}),`), `,_jsx(_components.code,{children:`blob_visibility`}),` (`,_jsx(_components.code,{children:`private`}),` or `,_jsx(_components.code,{children:`public`}),` for a Blob folder, otherwise `,_jsx(_components.code,{children:`null`}),`), `,_jsx(_components.code,{children:`ram`}),` (`,_jsx(_components.code,{children:`min`}),`, `,_jsx(_components.code,{children:`recommended`}),` and optional `,_jsx(_components.code,{children:`max`}),`, in MB; a Blob folder uses none), `,_jsx(_components.code,{children:`web`}),` (`,_jsx(_components.code,{children:`required`}),`, `,_jsx(_components.code,{children:`optional`}),` or `,_jsx(_components.code,{children:`none`}),` for an app, otherwise `,_jsx(_components.code,{children:`null`}),`) and `,_jsx(_components.code,{children:`conditional`}),` (`,_jsx(_components.code,{children:`true`}),` when the service is only created for some answers).`]})}),_jsx(ResponseField,{name:`creates_stack`,type:`boolean`,id:`param-creates-stack`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when using the template creates a stack, which happens with two or more services.`]})}),_jsx(ResponseField,{name:`ram_min_total`,type:`integer`,id:`param-ram-min-total`,children:_jsx(_components.p,{children:`The sum of the minimum memory of every service, in MB.`})}),_jsx(ResponseField,{name:`byok`,type:`boolean`,id:`param-byok`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when you bring the key of the AI model the software uses.`]})}),_jsx(ResponseField,{name:`required_plan`,type:`string`,id:`param-required-plan`,children:_jsx(_components.p,{children:`The lowest plan that can use the template.`})}),_jsx(ResponseField,{name:`code_view`,type:`boolean`,id:`param-code-view`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`false`}),` for a closed template: whoever uses it cannot see or download its code. Public templates are always open.`]})}),_jsx(ResponseField,{name:`uses_count`,type:`integer | null`,id:`param-uses-count`,children:_jsxs(_components.p,{children:[`How many times a catalog template was used: the total of deploys that finished successfully, across every version. Deploys that failed or were rolled back are not counted, and deleting the resulting app does not decrease it. It is an aggregate only, with no information about who used it. `,_jsx(_components.code,{children:`null`}),` for private templates.`]})}),_jsx(ResponseField,{name:`owner`,type:`object | null`,id:`param-owner`,children:_jsxs(_components.p,{children:[`The owner of a private template, with `,_jsx(_components.code,{children:`user_id`}),` and `,_jsx(_components.code,{children:`workspace_id`}),` (`,_jsx(_components.code,{children:`null`}),` when it belongs to the user); `,_jsx(_components.code,{children:`null`}),` for catalog templates.`]})}),_jsx(ResponseField,{name:`github`,type:`object | null`,id:`param-github`,children:_jsxs(_components.p,{children:[`The linked GitHub repository of a private template (`,_jsx(_components.code,{children:`repository`}),` as `,_jsx(_components.code,{children:`owner/name`}),` and `,_jsx(_components.code,{children:`branch`}),`), or `,_jsx(_components.code,{children:`null`}),`.`]})}),_jsx(ResponseField,{name:`created_at`,type:`string`,format:`date-time`,id:`param-created-at`,children:_jsx(_components.p,{children:`When the template was created.`})}),_jsx(ResponseField,{name:`updated_at`,type:`string`,format:`date-time`,id:`param-updated-at`,children:_jsx(_components.p,{children:`When the template was last updated.`})}),_jsxs(ResponseField,{name:`account`,type:`object`,id:`param-account`,children:[_jsx(_components.p,{children:`Present only when the request is authenticated: what using the template would do to your account.`}),_jsxs(Expandable,{title:`Toggle object`,children:[_jsx(ResponseField,{name:`fits`,type:`boolean`,id:`param-fits-1`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when your plan and free resources cover the template.`]})}),_jsx(ResponseField,{name:`reasons`,type:`object[]`,id:`param-reasons`,children:_jsxs(_components.p,{children:[`Why it does not fit; empty when it does. Each item has `,_jsx(_components.code,{children:`reason`}),` and, when it is a number or a plan, `,_jsx(_components.code,{children:`required`}),` and `,_jsx(_components.code,{children:`available`}),`. Reasons: `,_jsx(_components.code,{children:`no_plan`}),`, `,_jsx(_components.code,{children:`ram`}),`, `,_jsx(_components.code,{children:`web_publish`}),`, `,_jsx(_components.code,{children:`image_plan`}),`, `,_jsx(_components.code,{children:`image_slots`}),`, `,_jsx(_components.code,{children:`private_network`}),` (a connection of the template is not available over public addresses), `,_jsx(_components.code,{children:`blob_plan`}),`, `,_jsx(_components.code,{children:`min_plan`}),`, `,_jsx(_components.code,{children:`max_apps`}),`, `,_jsx(_components.code,{children:`max_databases`}),` and `,_jsx(_components.code,{children:`deploys_per_hour`}),`.`]})}),_jsx(ResponseField,{name:`required_ram`,type:`integer`,id:`param-required-ram`,children:_jsx(_components.p,{children:`The memory the template needs: the sum of the minimum memory of the services that would be created, in MB.`})}),_jsx(ResponseField,{name:`free_ram`,type:`integer`,id:`param-free-ram`,children:_jsx(_components.p,{children:`The memory free in your account, in MB.`})}),_jsx(ResponseField,{name:`needs_image_slot`,type:`boolean`,id:`param-needs-image-slot`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when using the template takes an image slot that you do not already hold. It is never `,_jsx(_components.code,{children:`true`}),` for an image of your own private template.`]})}),_jsx(ResponseField,{name:`image_slots_free`,type:`integer`,id:`param-image-slots-free`,children:_jsx(_components.p,{children:`The image slots free in your account.`})}),_jsx(ResponseField,{name:`in_use`,type:`boolean`,id:`param-in-use`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when your account already runs applications created from this template.`]})}),_jsx(ResponseField,{name:`in_use_count`,type:`integer`,id:`param-in-use-count`,children:_jsx(_components.p,{children:`How many applications and stacks of your account came from this template.`})})]})]})]})]}),_jsx(ResponseField,{name:`total_count`,type:`integer`,id:`param-total-count`,children:_jsx(_components.p,{children:`How many templates match the filters, across all pages.`})}),_jsx(ResponseField,{name:`page`,type:`integer`,id:`param-page-1`,children:_jsx(_components.p,{children:`The current page.`})}),_jsx(ResponseField,{name:`limit`,type:`integer`,id:`param-limit-1`,children:_jsx(_components.p,{children:`The page size used.`})}),_jsx(ResponseField,{name:`total_pages`,type:`integer`,id:`param-total-pages`,children:_jsx(_components.p,{children:`The number of pages.`})}),_jsx(ResponseField,{name:`has_next_page`,type:`boolean`,id:`param-has-next-page`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when there is a next page.`]})}),_jsx(ResponseField,{name:`has_previous_page`,type:`boolean`,id:`param-has-previous-page`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`true`}),` when there is a previous page.`]})})]})]}),`\n`,_jsx(_components.p,{children:`An anonymous answer is cacheable for 30 seconds. An authenticated answer is never cached.`}),`\n`,_jsx(RequestExample,{children:_jsx(CodeBlock,{filename:`cURL`,numberOfLines:`2`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"https://api.vertracloud.app/v1/templates?category=bots\u0026fits=true\u0026sort=popular\u0026limit=10\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$VERTRA_API_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`})]}),`\n`]})})})}),`\n`,_jsx(ResponseExample,{children:_jsx(CodeBlock,{filename:`Response`,numberOfLines:`68`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`68`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"response\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"7c1d4f0e-3b8a-4d52-9a66-1f0c2e5a9b41\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"slug\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"discord-bot-js\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"origin\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"vertra\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"visibility\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"public\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"pt-br\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Bot de Discord (JavaScript)\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"en\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Discord bot (JavaScript)\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"es\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Bot de Discord (JavaScript)\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"description\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"pt-br\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Bot de Discord com discord.js e o comando /ping. Ponto de partida para o seu bot.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"en\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Discord bot with discord.js and a /ping command. A starting point for your bot.\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"category\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"bots\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"tags\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"discord\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"bot\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"javascript\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"discordjs\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"icon_url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://api.vertracloud.app/v1/template-icons/7c1d4f0e-3b8a-4d52-9a66-1f0c2e5a9b41?v=a1b2c3d4\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"author_display\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"links\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"website\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://discord.js.org\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"docs\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://discordjs.guide\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"landing\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"featured\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"current_version\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"e0b7a2c9-5d14-4f8e-8c3a-92d6b1f47a10\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"version\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"1.0.0\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"security\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"created_at\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-10-26T13:05:00Z\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"services\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"app\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"kind\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"app\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"source_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"database\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"blob_visibility\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"ram\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"min\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`256`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"recommended\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`256`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"web\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"none\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"conditional\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"creates_stack\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"ram_min_total\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`256`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"byok\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"required_plan\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"economy\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code_view\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"uses_count\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`87`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"owner\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"github\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"created_at\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-10-26T09:00:00Z\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"updated_at\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-10-26T13:05:00Z\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"account\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"fits\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"reasons\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"required_ram\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`256`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"free_ram\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2048`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"needs_image_slot\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"image_slots_free\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"in_use\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"in_use_count\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"total_count\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"page\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"limit\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`10`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"total_pages\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"has_next_page\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"has_previous_page\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})}),`\n`,_jsx(Heading,{level:`3`,id:`error-responses`,children:`Error Responses`}),`\n`,_jsxs(ResponseField,{name:`code`,type:`string`,id:`param-code`,children:[_jsx(_components.p,{children:`The error code indicating the reason for the failure. Possible values:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`VALIDATION_ERROR`}),`: A query parameter is not valid, for example an unknown `,_jsx(_components.code,{children:`category`}),` or a `,_jsx(_components.code,{children:`limit`}),` above 50 (`,_jsx(_components.code,{children:`400`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`AUTH_TOKEN_MISSING`}),`: `,_jsx(_components.code,{children:`fits=true`}),` without authentication (`,_jsx(_components.code,{children:`401`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`API_KEY_SCOPE_DENIED`}),`: The API key does not have the `,_jsx(_components.code,{children:`templates:read`}),` scope (`,_jsx(_components.code,{children:`403`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`WORKSPACE_NOT_FOUND`}),`: The workspace in `,_jsx(_components.code,{children:`workspace_id`}),` does not exist or you are not part of it (`,_jsx(_components.code,{children:`404`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`RATE_LIMIT_EXCEEDED`}),`: Too many requests (`,_jsx(_components.code,{children:`429`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`INTERNAL_SERVER_ERROR`}),`: Unexpected failure (`,_jsx(_components.code,{children:`500`}),`).`]}),`\n`]})]}),`\n`,_jsx(ResponseExample,{children:_jsx(CodeBlock,{filename:`Error Response`,numberOfLines:`3`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"AUTH_TOKEN_MISSING\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\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":"List Templates","sidebarTitle":"List Templates","api":"GET https://api.vertracloud.app/v1/templates","authMethod":"bearer","description":"Lists public catalog templates, plus your private ones when authenticated, with filters, sorting, pagination and whether each fits your account.","href":"/api-reference/endpoint/templates/list"}}}},"mdxExtracts":{"tableOfContents":[{"title":"Response","slug":"response","depth":3,"children":[]},{"title":"Error Responses","slug":"error-responses","depth":3,"children":[]}],"codeExamples":{"request":{"type":"RequestExample","children":[{"filename":"cURL","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"shellscript\">\u003ccode language=\"shellscript\" numberOfLines=\"2\">\u003cspan class=\"line\">\u003cspan style=\"color:#953800;--shiki-dark:#DCDCAA\">curl\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"https://api.vertracloud.app/v1/templates?category=bots\u0026#x26;fits=true\u0026#x26;sort=popular\u0026#x26;limit=10\"\u003c/span>\u003cspan style=\"color:#CF222E;--shiki-dark:#D7BA7D\"> \\\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\"> -H\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\"> \"Authorization: Bearer \u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#9CDCFE\">$VERTRA_API_KEY\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]},"response":{"type":"ResponseExample","children":[{"filename":"Response","html":"\u003cpre class=\"shiki shiki-themes github-light-default dark-plus\" style=\"background-color:#ffffff;--shiki-dark-bg:#0B0C0E;color:#1f2328;--shiki-dark:#D4D4D4\" language=\"json\">\u003ccode language=\"json\" numberOfLines=\"68\">\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">{\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"response\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"data\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: [\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"7c1d4f0e-3b8a-4d52-9a66-1f0c2e5a9b41\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"slug\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"discord-bot-js\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"origin\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"vertra\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"visibility\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"public\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"name\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: { \u003c/span>\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\">\"pt-br\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Bot de Discord (JavaScript)\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\">\"en\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Discord bot (JavaScript)\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\">\"es\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Bot de Discord (JavaScript)\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"description\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"pt-br\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Bot de Discord com discord.js e o comando /ping. Ponto de partida para o seu bot.\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"en\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"Discord bot with discord.js and a /ping command. A starting point for your bot.\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"category\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"bots\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"tags\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: [\u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"discord\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"bot\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"javascript\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"discordjs\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"icon_url\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"https://api.vertracloud.app/v1/template-icons/7c1d4f0e-3b8a-4d52-9a66-1f0c2e5a9b41?v=a1b2c3d4\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"author_display\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"links\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: { \u003c/span>\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\">\"website\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"https://discord.js.org\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\">\"docs\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"https://discordjs.guide\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"landing\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"featured\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"current_version\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"e0b7a2c9-5d14-4f8e-8c3a-92d6b1f47a10\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"version\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"1.0.0\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"security\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"created_at\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2026-10-26T13:05:00Z\"\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"services\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: [\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"id\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"app\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"kind\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"app\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"source_type\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"code\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"database\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"blob_visibility\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"ram\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: { \u003c/span>\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\">\"min\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">256\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">, \u003c/span>\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\">\"recommended\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">256\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> },\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"web\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"none\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"conditional\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> ],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"creates_stack\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"ram_min_total\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">256\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"byok\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"required_plan\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"economy\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"code_view\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"uses_count\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">87\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"owner\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"github\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">null\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"created_at\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2026-10-26T09:00:00Z\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"updated_at\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0A3069;--shiki-dark:#CE9178\">\"2026-10-26T13:05:00Z\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"account\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: {\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"fits\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">true\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"reasons\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: [],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"required_ram\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">256\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"free_ram\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">2048\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"needs_image_slot\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"image_slots_free\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">0\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"in_use\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"in_use_count\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">0\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> ],\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"total_count\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">1\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"page\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">1\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"limit\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">10\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"total_pages\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#B5CEA8\">1\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"has_next_page\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">,\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#116329;--shiki-dark:#9CDCFE\"> \"has_previous_page\"\u003c/span>\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">: \u003c/span>\u003cspan style=\"color:#0550AE;--shiki-dark:#569CD6\">false\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\"> }\u003c/span>\u003c/span>\n\u003cspan class=\"line\">\u003cspan style=\"color:#1F2328;--shiki-dark:#D4D4D4\">}\u003c/span>\u003c/span>\n\u003c/code>\u003c/pre>"}],"attributes":[]}},"endpoint":{"title":"List Templates","path":"/v1/templates","servers":[{"url":"https://api.vertracloud.app"}],"method":"get","request":{"security":[{"title":"Bearer Auth","parameters":{"header":{"Authorization":{"type":"http","scheme":"bearer","description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token."}},"query":{},"cookie":{}}}],"parameters":{"query":{"search":{"schema":[{"type":"string","description":"Text to look for in the name, description (in the three languages), slug and tags. Case and accents are ignored. Up to 100 characters."}]},"category":{"schema":[{"type":"string","description":"Only templates of one category: `automation` , `ai-agents` , `bots` , `apis` , `cms` , `monitoring` , `starters` , `databases` or `other` ."}]},"origin":{"schema":[{"type":"string","description":"Only templates of one origin: `vertra` (made by the platform), `community` (contributed and reviewed) or `private` (yours). `private` lists your personal private templates, or the ones of `workspace_id` , and only returns something when you are authenticated."}]},"tag":{"schema":[{"type":"string","description":"Only templates that carry this tag. Up to 50 characters."}]},"fits":{"schema":[{"type":"boolean","description":"`true` keeps only the templates that fit your account right now (plan, free memory, limits and image slots). Needs authentication : without it the call fails with `AUTH_TOKEN_MISSING` ."}]},"sort":{"schema":[{"type":"string","description":"The order: `recommended` (featured first, then most used), `popular` (most used), `newest` or `name` ."}]},"page":{"schema":[{"type":"integer","description":"The page, starting at 1."}]},"limit":{"schema":[{"type":"integer","description":"Templates per page, from 1 to 50."}]},"workspace_id":{"schema":[{"type":"string","description":"Includes the private templates of that workspace. The owner of the workspace and members who can read its applications can list them; anyone else gets the workspace error."}]}},"header":{},"cookie":{},"path":{}},"body":{}},"response":{"200":{"application/json":{"schemaArray":[{"type":"object","properties":{"response":[{"type":"object","properties":{"data":[{"type":"array","items":[{"type":"object","properties":{"id":[{"type":"string","description":"The template ID."}],"slug":[{"type":"string","description":"A short name, unique among public templates. Accepted wherever a template ID is."}],"origin":[{"type":"string","description":"`vertra` , `community` or `private` ."}],"visibility":[{"type":"string","description":"`public` , `beta` , `hidden` or `deprecated` . A deprecated template cannot be used for new applications; the ones that already run keep running."}],"name":[{"type":"object","properties":{},"description":"The name in the three languages: `pt-br` (always present), `en` and `es` (a missing one falls back to `pt-br` )."}],"description":[{"type":"object","properties":{},"description":"The description, with the same shape as `name` ."}],"category":[{"type":"string","description":"One of the categories above."}],"tags":[{"type":"array","items":[{"type":"string"}],"description":"The tags of the template."}],"icon_url":[{"type":"object","properties":{},"description":"URL of the icon, or `null` when it has none (private templates have none)."}],"author_display":[{"type":"object","properties":{},"description":"The name shown as the author, or `null` for templates of the platform."}],"links":[{"type":"object","properties":{},"description":"Links of the software the template packages: `website` , `docs` , `source` and `license` , each optional."}],"landing":[{"type":"object","properties":{},"description":"The slug of the dedicated public page, when there is one."}],"featured":[{"type":"boolean","description":"`true` when the template is highlighted in the gallery."}],"current_version":[{"type":"object","properties":{},"description":"The latest version: `id` , `version` (semantic version), `security` ( `true` for a security release) and `created_at` ."}],"services":[{"type":"array","items":[{"type":"object","properties":{}}],"description":"The services the template creates. Each has `id` , `kind` ( `app` , `database` or `blob` ), `source_type` ( `code` or `image` for an app, otherwise `null` ), `database` ( `postgres` , `mysql` , `mongodb` or `redis` for a database, otherwise `null` ), `blob_visibility` ( `private` or `public` for a Blob folder, otherwise `null` ), `ram` ( `min` , `recommended` and optional `max` , in MB; a Blob folder uses none), `web` ( `required` , `optional` or `none` for an app, otherwise `null` ) and `conditional` ( `true` when the service is only created for some answers)."}],"creates_stack":[{"type":"boolean","description":"`true` when using the template creates a stack, which happens with two or more services."}],"ram_min_total":[{"type":"integer","description":"The sum of the minimum memory of every service, in MB."}],"byok":[{"type":"boolean","description":"`true` when you bring the key of the AI model the software uses."}],"required_plan":[{"type":"string","description":"The lowest plan that can use the template."}],"code_view":[{"type":"boolean","description":"`false` for a closed template: whoever uses it cannot see or download its code. Public templates are always open."}],"uses_count":[{"type":"object","properties":{},"description":"How many times a catalog template was used: the total of deploys that finished successfully, across every version. Deploys that failed or were rolled back are not counted, and deleting the resulting app does not decrease it. It is an aggregate only, with no information about who used it. `null` for private templates."}],"owner":[{"type":"object","properties":{},"description":"The owner of a private template, with `user_id` and `workspace_id` ( `null` when it belongs to the user); `null` for catalog templates."}],"github":[{"type":"object","properties":{},"description":"The linked GitHub repository of a private template ( `repository` as `owner/name` and `branch` ), or `null` ."}],"created_at":[{"type":"string","description":"When the template was created."}],"updated_at":[{"type":"string","description":"When the template was last updated."}],"account":[{"type":"object","properties":{"fits":[{"type":"boolean","description":"`true` when your plan and free resources cover the template."}],"reasons":[{"type":"array","items":[{"type":"object","properties":{}}],"description":"Why it does not fit; empty when it does. Each item has `reason` and, when it is a number or a plan, `required` and `available` . Reasons: `no_plan` , `ram` , `web_publish` , `image_plan` , `image_slots` , `private_network` (a connection of the template is not available over public addresses), `blob_plan` , `min_plan` , `max_apps` , `max_databases` and `deploys_per_hour` ."}],"required_ram":[{"type":"integer","description":"The memory the template needs: the sum of the minimum memory of the services that would be created, in MB."}],"free_ram":[{"type":"integer","description":"The memory free in your account, in MB."}],"needs_image_slot":[{"type":"boolean","description":"`true` when using the template takes an image slot that you do not already hold. It is never `true` for an image of your own private template."}],"image_slots_free":[{"type":"integer","description":"The image slots free in your account."}],"in_use":[{"type":"boolean","description":"`true` when your account already runs applications created from this template."}],"in_use_count":[{"type":"integer","description":"How many applications and stacks of your account came from this template."}]},"description":"Present only when the request is authenticated: what using the template would do to your account."}]}}],"description":"The templates of the page."}],"total_count":[{"type":"integer","description":"How many templates match the filters, across all pages."}],"page":[{"type":"integer","description":"The current page."}],"limit":[{"type":"integer","description":"The page size used."}],"total_pages":[{"type":"integer","description":"The number of pages."}],"has_next_page":[{"type":"boolean","description":"`true` when there is a next page."}],"has_previous_page":[{"type":"boolean","description":"`true` when there is a previous page."}]},"description":"A page of templates."}],"code":[{"type":"string","description":"The error code indicating the reason for the failure. Possible values: `VALIDATION_ERROR` : A query parameter is not valid, for example an unknown `category` or a `limit` above 50 ( `400` ). `AUTH_TOKEN_MISSING` : `fits=true` without authentication ( `401` ). `API_KEY_SCOPE_DENIED` : The API key does not have the `templates:read` scope ( `403` ). `WORKSPACE_NOT_FOUND` : The workspace in `workspace_id` does not exist or you are not part of it ( `404` ). `RATE_LIMIT_EXCEEDED` : Too many requests ( `429` ). `INTERNAL_SERVER_ERROR` : Unexpected failure ( `500` )."}]}}],"examples":{"example":{"value":{"response":{"data":[{"id":"\u003cstring>","slug":"\u003cstring>","origin":"\u003cstring>","visibility":"\u003cstring>","name":{},"description":{},"category":"\u003cstring>","tags":["\u003cstring>"],"icon_url":{},"author_display":{},"links":{},"landing":{},"featured":true,"current_version":{},"services":[{}],"creates_stack":true,"ram_min_total":123,"byok":true,"required_plan":"\u003cstring>","code_view":true,"uses_count":{},"owner":{},"github":{},"created_at":"\u003cstring>","updated_at":"\u003cstring>","account":{"fits":true,"reasons":[{}],"required_ram":123,"free_ram":123,"needs_image_slot":true,"image_slots_free":123,"in_use":true,"in_use_count":123}}],"total_count":123,"page":123,"limit":123,"total_pages":123,"has_next_page":true,"has_previous_page":true},"code":"\u003cstring>"}}}}}},"deprecated":false}},"jsLinks":[],"subdomain":"vertracloud","siteName":"Vertra Cloud","title":"List Templates - Vertra Cloud","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api-reference/endpoint/templates/list","matchLevel":0},"pt-BR":{"href":"/pt-br/api-reference/endpoint/templates/list","matchLevel":1},"es":{"href":"/es-es","matchLevel":4}}},"lastModified":"2026-10-30T22:45:18.889Z","gitLastModified":"2026-10-30T22:44:53.000Z","originalFileLocation":"api-reference/endpoint/templates/list.mdx","locale":"en"},"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=\"Lists public catalog templates, plus your private ones when authenticated, with filters, sorting, pagination and whether each fits your account.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Vertra Cloud\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/vertracloud/pOhcCJNRkRisP0nY/_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/vertracloud/pOhcCJNRkRisP0nY/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/vertracloud/pOhcCJNRkRisP0nY/_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/vertracloud/pOhcCJNRkRisP0nY/_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/vertracloud/pOhcCJNRkRisP0nY/_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/vertracloud/pOhcCJNRkRisP0nY/_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/vertracloud/pOhcCJNRkRisP0nY/_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/vertracloud/pOhcCJNRkRisP0nY/_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/vertracloud/pOhcCJNRkRisP0nY/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"List Templates - Vertra Cloud\">\u003cmeta data-mint-head property=\"og:description\" content=\"Lists public catalog templates, plus your private ones when authenticated, with filters, sorting, pagination and whether each fits your account.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Vertra Cloud Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.vertracloud.app/api-reference/endpoint/templates/list\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://docs.vertracloud.app/images/og.png\">\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=\"List Templates - Vertra Cloud\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Lists public catalog templates, plus your private ones when authenticated, with filters, sorting, pagination and whether each fits your account.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://docs.vertracloud.app/images/og.png\">\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/vertracloud/pOhcCJNRkRisP0nY/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Vertra Cloud\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#ff6100\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.vertracloud.app/api-reference/endpoint/templates/list\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/endpoint/templates/list.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.vertracloud.app/api-reference/endpoint/templates/list\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.vertracloud.app/pt-br/api-reference/endpoint/templates/list\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.vertracloud.app/api-reference/endpoint/templates/list\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.vertracloud.app/#organization\",\"name\":\"Vertra Cloud\",\"url\":\"https://docs.vertracloud.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/vertracloud/2O7-bfMOIoy6MCUx/logo/light.svg?fit=max\u0026auto=format\u0026n=2O7-bfMOIoy6MCUx\u0026q=85\u0026s=2fcb392041b562c0aab2f07ebef0f12e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.vertracloud.app#website\",\"name\":\"Vertra Cloud\",\"url\":\"https://docs.vertracloud.app\",\"publisher\":{\"@id\":\"https://docs.vertracloud.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.vertracloud.app/api-reference/endpoint/templates/list#webpage\",\"url\":\"https://docs.vertracloud.app/api-reference/endpoint/templates/list\",\"name\":\"List Templates\",\"description\":\"Lists public catalog templates, plus your private ones when authenticated, with filters, sorting, pagination and whether each fits your account.\",\"dateModified\":\"2026-10-30T22:44:53.000Z\",\"isPartOf\":{\"@id\":\"https://docs.vertracloud.app#website\"},\"breadcrumb\":{\"@id\":\"https://docs.vertracloud.app/api-reference/endpoint/templates/list#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.vertracloud.app/api-reference/endpoint/templates/list#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.vertracloud.app/api-reference/endpoint/users/me\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"List Templates\",\"item\":\"https://docs.vertracloud.app/api-reference/endpoint/templates/list\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.vertracloud.app/api-reference/endpoint/templates/list#apireference\",\"headline\":\"List Templates\",\"name\":\"List Templates\",\"description\":\"Lists public catalog templates, plus your private ones when authenticated, with filters, sorting, pagination and whether each fits your account.\",\"url\":\"https://docs.vertracloud.app/api-reference/endpoint/templates/list\",\"mainEntityOfPage\":{\"@id\":\"https://docs.vertracloud.app/api-reference/endpoint/templates/list#webpage\"},\"image\":\"https://docs.vertracloud.app/images/og.png\",\"dateModified\":\"2026-10-30T22:44:53.000Z\",\"publisher\":{\"@id\":\"https://docs.vertracloud.app/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.vertracloud.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Vertra Cloud\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Vertra Cloud","nav":{"global":null,"languages":[{"language":"en","default":true,"tabs":[{"tab":"Getting Started","pages":[{"title":"Getting Started","href":""}]},{"tab":"Resources","pages":[{"title":"Resources","href":"/applications"}]},{"tab":"Tutorials","pages":[{"title":"Tutorials","href":"/tutorials/introduction"}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/guides/custom-domain"}]},{"tab":"Tools","pages":[{"title":"Tools","href":"/cli"}]},{"tab":"Blob Storage","pages":[{"title":"Blob Storage","href":"/blob/overview"}]},{"tab":"Templates","pages":[{"title":"Templates","href":"/templates/overview"}]},{"tab":"API Reference","groups":[{"group":"Overview","icon":"book","pages":[{"title":"Vertra Cloud Public API Reference","sidebarTitle":"Public API","href":"/api-reference/introduction"},{"title":"Platform Limits and Quotas on Vertra Cloud","sidebarTitle":"Limitations","href":"/api-reference/limitations"},{"title":"Vertra Cloud API Error Codes","sidebarTitle":"Error Codes","href":"/api-reference/errors"}]},{"group":"Endpoints","icon":"plug","pages":[{"group":"Users","icon":"user","pages":[{"title":"User Information","sidebarTitle":"User Info","api":"GET https://api.vertracloud.app/v1/users/me","href":"/api-reference/endpoint/users/me"},{"title":"Update User Profile","sidebarTitle":"Update Profile","api":"PATCH https://api.vertracloud.app/v1/users/me","href":"/api-reference/endpoint/users/update-me"},{"title":"List All Snapshots of the Account","sidebarTitle":"All Snapshots","api":"GET https://api.vertracloud.app/v1/users/snapshots","href":"/api-reference/endpoint/users/snapshots"},{"title":"Personal Resource Organization","sidebarTitle":"Folders and favorites","href":"/api-reference/endpoint/users/resource-organization"},{"title":"List Sessions","sidebarTitle":"Sessions","api":"GET https://api.vertracloud.app/v1/users/me/sessions","href":"/api-reference/endpoint/users/sessions"}]},{"group":"Status","icon":"heart-pulse","pages":[{"title":"Check Infrastructure Status","sidebarTitle":"Check Status","api":"GET https://api.vertracloud.app/v1/status","href":"/api-reference/endpoint/services/status"}]},{"group":"Applications","icon":"rocket","pages":[{"title":"Application Details","sidebarTitle":"Get Application","api":"GET https://api.vertracloud.app/v1/apps/{id}","href":"/api-reference/endpoint/apps/get"},{"title":"Application Status","sidebarTitle":"Get Application Status","api":"GET https://api.vertracloud.app/v1/apps/{id}/status","href":"/api-reference/endpoint/apps/status"},{"title":"All Applications Status","sidebarTitle":"All Applications Status","api":"GET https://api.vertracloud.app/v1/apps/status","href":"/api-reference/endpoint/apps/allstatus"},{"title":"List Runtimes","sidebarTitle":"Runtimes","api":"GET https://api.vertracloud.app/v1/apps/runtimes","href":"/api-reference/endpoint/apps/runtimes"},{"title":"Application Metrics","sidebarTitle":"Application Metrics","api":"GET https://api.vertracloud.app/v1/apps/{id}/metrics","href":"/api-reference/endpoint/apps/metrics"},{"title":"Real-Time Application Logs","sidebarTitle":"Real-Time Application Logs","api":"GET https://api.vertracloud.app/v1/apps/{id}/realtime","href":"/api-reference/endpoint/apps/realtime"},{"title":"Download Application","sidebarTitle":"Download Application","api":"GET https://api.vertracloud.app/v1/apps/{id}/download","href":"/api-reference/endpoint/apps/download"},{"title":"Application Logs","sidebarTitle":"Application Logs","api":"GET https://api.vertracloud.app/v1/apps/{id}/logs","href":"/api-reference/endpoint/apps/logs"},{"title":"Create Application","sidebarTitle":"Create Application","api":"POST https://api.vertracloud.app/v1/apps","href":"/api-reference/endpoint/apps/create"},{"title":"Create Application from Image","sidebarTitle":"Create from Image","api":"POST https://api.vertracloud.app/v1/apps/image","href":"/api-reference/endpoint/apps/create-from-image"},{"title":"Start Application","sidebarTitle":"Start Application","api":"POST https://api.vertracloud.app/v1/apps/{id}/start","href":"/api-reference/endpoint/apps/start"},{"title":"Restart Application","sidebarTitle":"Restart Application","api":"POST https://api.vertracloud.app/v1/apps/{id}/restart","href":"/api-reference/endpoint/apps/restart"},{"title":"Stop Application","sidebarTitle":"Stop Application","api":"POST https://api.vertracloud.app/v1/apps/{id}/stop","href":"/api-reference/endpoint/apps/stop"},{"title":"Update Application Configuration","sidebarTitle":"Update Configuration","api":"PATCH https://api.vertracloud.app/v1/apps/{id}/config","href":"/api-reference/endpoint/apps/updateconfig"},{"title":"Delete Application","sidebarTitle":"Delete Application","api":"DELETE https://api.vertracloud.app/v1/apps/{id}","href":"/api-reference/endpoint/apps/delete"},{"group":"Network","icon":"globe","pages":[{"title":"Publish Application on the Web","sidebarTitle":"Publish / Unpublish","api":"POST https://api.vertracloud.app/v1/apps/{id}/network/publish","href":"/api-reference/endpoint/apps/network/publish"},{"title":"Change Application Subdomain","sidebarTitle":"Change Subdomain","api":"PATCH https://api.vertracloud.app/v1/apps/{id}/network/subdomain","href":"/api-reference/endpoint/apps/network/subdomain"},{"title":"Purge Cache","sidebarTitle":"Purge Cache","api":"POST https://api.vertracloud.app/v1/apps/{id}/network/purge-cache","href":"/api-reference/endpoint/apps/network/purgecache"}]},{"group":"Domains","icon":"link","pages":[{"title":"List Application Domains","sidebarTitle":"List Domains","api":"GET https://api.vertracloud.app/v1/apps/{id}/domains","href":"/api-reference/endpoint/apps/domains/list"},{"title":"Add Application Domain","sidebarTitle":"Add Domain","api":"POST https://api.vertracloud.app/v1/apps/{id}/domains","href":"/api-reference/endpoint/apps/domains/create"},{"title":"Update Application Domain","sidebarTitle":"Update Domain","api":"PATCH https://api.vertracloud.app/v1/apps/{id}/domains/{domain_id}","href":"/api-reference/endpoint/apps/domains/update"},{"title":"Remove Application Domain","sidebarTitle":"Remove Domain","api":"DELETE https://api.vertracloud.app/v1/apps/{id}/domains/{domain_id}","href":"/api-reference/endpoint/apps/domains/delete"},{"title":"Domain DNS Records","sidebarTitle":"Domain DNS Records","api":"GET https://api.vertracloud.app/v1/apps/{id}/domains/{domain_id}/dns","href":"/api-reference/endpoint/apps/domains/dns"},{"title":"Configure Domain Automatically","sidebarTitle":"Configure Automatically","api":"POST https://api.vertracloud.app/v1/apps/{id}/domains/{domain_id}/connect","href":"/api-reference/endpoint/apps/domains/connect"}]},{"group":"File Manager","icon":"folder-open","pages":[{"title":"Get Application File Content","sidebarTitle":"Get File Content","api":"GET https://api.vertracloud.app/v1/apps/{id}/files/content","href":"/api-reference/endpoint/apps/filemanager/content"},{"title":"Get Application Files","sidebarTitle":"Get Files","api":"GET https://api.vertracloud.app/v1/apps/{id}/files","href":"/api-reference/endpoint/apps/filemanager/files"},{"title":"Get Application File Tree","sidebarTitle":"Get File Tree","api":"GET https://api.vertracloud.app/v1/apps/{id}/files/tree","href":"/api-reference/endpoint/apps/filemanager/tree"},{"title":"Upload Files to Application","sidebarTitle":"Upload Files","api":"POST https://api.vertracloud.app/v1/apps/{id}/files/upload","href":"/api-reference/endpoint/apps/filemanager/upload"},{"title":"Delete Application File or Folder","sidebarTitle":"Delete File or Folder","api":"DELETE https://api.vertracloud.app/v1/apps/{id}/files","href":"/api-reference/endpoint/apps/filemanager/delete"},{"title":"Move Application File or Folder","sidebarTitle":"Move File or Folder","api":"PATCH https://api.vertracloud.app/v1/apps/{id}/files","href":"/api-reference/endpoint/apps/filemanager/move"},{"title":"Create or Update Application File or Folder","sidebarTitle":"Create/Update File or Folder","api":"PUT https://api.vertracloud.app/v1/apps/{id}/files","href":"/api-reference/endpoint/apps/filemanager/save"}]},{"group":"Environments","icon":"key","pages":[{"title":"Get Application Environment Variables","sidebarTitle":"Get Environment Variables","api":"GET https://api.vertracloud.app/v1/apps/{id}/envs","href":"/api-reference/endpoint/apps/enviroments/get"},{"title":"Delete an Application Environment Variable","sidebarTitle":"Delete Environment Variable","api":"DELETE https://api.vertracloud.app/v1/apps/{id}/envs/{envId}","href":"/api-reference/endpoint/apps/enviroments/delete"},{"title":"Create or Edit Application Environment Variables","sidebarTitle":"Create/Edit Environment Variables","api":"POST https://api.vertracloud.app/v1/apps/{id}/envs","href":"/api-reference/endpoint/apps/enviroments/createOrEdit"}]},{"group":"Snapshots","icon":"camera","pages":[{"title":"Get Application Snapshots","sidebarTitle":"Get Snapshots","api":"GET https://api.vertracloud.app/v1/users/{id}/snapshots","href":"/api-reference/endpoint/apps/snapshots/getall"},{"title":"Create Application Snapshot","sidebarTitle":"Create Snapshot","api":"POST https://api.vertracloud.app/v1/users/{id}/snapshots","href":"/api-reference/endpoint/apps/snapshots/create"},{"title":"Restore Application Snapshot","sidebarTitle":"Restore Snapshot","api":"POST https://api.vertracloud.app/v1/users/{id}/snapshots/{snapshot_id}/restore","href":"/api-reference/endpoint/apps/snapshots/restore"},{"title":"Download Application Snapshot","sidebarTitle":"Download Snapshot","api":"GET https://api.vertracloud.app/v1/users/{id}/snapshots/{snapshot_id}/download","href":"/api-reference/endpoint/apps/snapshots/download"}]},{"group":"Deploys","icon":"code-branch","pages":[{"title":"Get Deploy Webhook URL","sidebarTitle":"Get Webhook URL","api":"GET https://api.vertracloud.app/v1/apps/{app_id}/deploys/webhook","href":"/api-reference/endpoint/apps/deploys/webhookurl"},{"title":"Get Recent Deployments","sidebarTitle":"Recent Deployments","api":"GET https://api.vertracloud.app/v1/apps/{app_id}/deploys","href":"/api-reference/endpoint/apps/deploys/recents"},{"title":"Delete Deploy Webhook","sidebarTitle":"Delete Webhook","api":"DELETE https://api.vertracloud.app/v1/apps/{app_id}/deploys/webhook","href":"/api-reference/endpoint/apps/deploys/delete"},{"title":"Create Deploy Webhook","sidebarTitle":"Create Webhook","api":"POST https://api.vertracloud.app/v1/apps/{app_id}/deploys/webhook","href":"/api-reference/endpoint/apps/deploys/create"}]},{"group":"Releases","icon":"clock-rotate-left","pages":[{"title":"List Application Releases","sidebarTitle":"List Releases","api":"GET https://api.vertracloud.app/v1/apps/{id}/releases","href":"/api-reference/endpoint/apps/releases/list"},{"title":"Get Application Release Log","sidebarTitle":"Get Release Log","api":"GET https://api.vertracloud.app/v1/apps/{id}/releases/{release_id}/log","href":"/api-reference/endpoint/apps/releases/log"},{"title":"Preview Application Rollback","sidebarTitle":"Preview Rollback","api":"GET https://api.vertracloud.app/v1/apps/{id}/releases/{release_id}/rollback","href":"/api-reference/endpoint/apps/releases/rollback-preview"},{"title":"Roll Back Application to a Release","sidebarTitle":"Roll Back","api":"POST https://api.vertracloud.app/v1/apps/{id}/releases/{release_id}/rollback","href":"/api-reference/endpoint/apps/releases/rollback"}]}]},{"group":"Docker Images","icon":"docker","pages":[{"title":"List Images","sidebarTitle":"List Images","api":"GET https://api.vertracloud.app/v1/images","href":"/api-reference/endpoint/images/list"},{"title":"Get Image","sidebarTitle":"Get Image","api":"GET https://api.vertracloud.app/v1/images/{image_id}","href":"/api-reference/endpoint/images/get"},{"title":"Check Dockerfile","sidebarTitle":"Check Dockerfile","api":"POST https://api.vertracloud.app/v1/images/check","href":"/api-reference/endpoint/images/check"},{"title":"Create Image","sidebarTitle":"Create Image","api":"POST https://api.vertracloud.app/v1/images","href":"/api-reference/endpoint/images/create"},{"title":"Update Image","sidebarTitle":"Update Image","api":"PATCH https://api.vertracloud.app/v1/images/{image_id}","href":"/api-reference/endpoint/images/update"},{"title":"Rebuild Image","sidebarTitle":"Rebuild Image","api":"PUT https://api.vertracloud.app/v1/images/{image_id}","href":"/api-reference/endpoint/images/rebuild"},{"title":"List Image Versions","sidebarTitle":"List Versions","api":"GET https://api.vertracloud.app/v1/images/{image_id}/versions","href":"/api-reference/endpoint/images/versions"},{"title":"Image Build Logs","sidebarTitle":"Build Logs","api":"GET https://api.vertracloud.app/v1/images/{image_id}/logs","href":"/api-reference/endpoint/images/logs"},{"title":"Download Image Context","sidebarTitle":"Download Context","api":"GET https://api.vertracloud.app/v1/images/{image_id}/context","href":"/api-reference/endpoint/images/context"},{"title":"Link Image to GitHub","sidebarTitle":"Link GitHub","api":"PUT https://api.vertracloud.app/v1/images/{image_id}/github","href":"/api-reference/endpoint/images/github-link"},{"title":"Unlink Image from GitHub","sidebarTitle":"Unlink GitHub","api":"DELETE https://api.vertracloud.app/v1/images/{image_id}/github","href":"/api-reference/endpoint/images/github-unlink"},{"title":"Delete Image","sidebarTitle":"Delete Image","api":"DELETE https://api.vertracloud.app/v1/images/{image_id}","description":"Deletes an image, its versions, its context and every application created from it.","href":"/api-reference/endpoint/images/delete"}]},{"group":"Templates","icon":"shapes","pages":[{"title":"List Templates","sidebarTitle":"List Templates","api":"GET https://api.vertracloud.app/v1/templates","href":"/api-reference/endpoint/templates/list"},{"title":"List Template Categories","sidebarTitle":"List Categories","api":"GET https://api.vertracloud.app/v1/templates/categories","description":"Returns the template categories with the number of templates in each one, so a gallery can show filters and counts.","href":"/api-reference/endpoint/templates/categories"},{"title":"Get Template","sidebarTitle":"Get Template","api":"GET https://api.vertracloud.app/v1/templates/{template_id}","href":"/api-reference/endpoint/templates/get"},{"title":"List Template Versions","sidebarTitle":"List Versions","api":"GET https://api.vertracloud.app/v1/templates/{template_id}/versions","href":"/api-reference/endpoint/templates/versions"},{"title":"Validate Template Manifest","sidebarTitle":"Validate Manifest","api":"POST https://api.vertracloud.app/v1/templates/validate","href":"/api-reference/endpoint/templates/validate"},{"title":"Deploy Template","sidebarTitle":"Deploy Template","api":"POST https://api.vertracloud.app/v1/templates/{template_id}/deploy","href":"/api-reference/endpoint/templates/deploy"},{"title":"Get Template Deploy Job","sidebarTitle":"Get Deploy Job","api":"GET https://api.vertracloud.app/v1/template-deploys/{deploy_id}","href":"/api-reference/endpoint/templates/deploy-status"},{"title":"Stream Template Deploy Events","sidebarTitle":"Deploy Events","api":"GET https://api.vertracloud.app/v1/template-deploys/{deploy_id}/events","href":"/api-reference/endpoint/templates/deploy-events"},{"title":"Get Template Update Info","sidebarTitle":"Update Info","api":"GET https://api.vertracloud.app/v1/apps/{id}/template/update","href":"/api-reference/endpoint/templates/update-info"},{"title":"Update a Template or Move an App to Its Latest Version","sidebarTitle":"Update Template","api":"POST https://api.vertracloud.app/v1/apps/{id}/template/update","href":"/api-reference/endpoint/templates/update"},{"title":"Create a Private Template","sidebarTitle":"Create Template","api":"POST https://api.vertracloud.app/v1/templates","href":"/api-reference/endpoint/templates/create"},{"title":"Save an Application as a Template","sidebarTitle":"Create from App","api":"POST https://api.vertracloud.app/v1/templates/from-app/{app_id}","href":"/api-reference/endpoint/templates/create-from-app"},{"title":"Save a Stack as a Template","sidebarTitle":"Create from Stack","api":"POST https://api.vertracloud.app/v1/templates/from-stack/{stack_id}","href":"/api-reference/endpoint/templates/create-from-stack"},{"title":"Review the Draft of a Template from an App or Stack","sidebarTitle":"Review Draft","api":"GET https://api.vertracloud.app/v1/templates/from-app/{app_id}/draft","href":"/api-reference/endpoint/templates/draft"},{"title":"Publish a New Version of a Private Template","sidebarTitle":"New Version","api":"POST https://api.vertracloud.app/v1/templates/{template_id}/versions","href":"/api-reference/endpoint/templates/new-version"},{"title":"Delete a Private Template","sidebarTitle":"Delete Template","api":"DELETE https://api.vertracloud.app/v1/templates/{template_id}","href":"/api-reference/endpoint/templates/delete"},{"title":"Link a Private Template to GitHub","sidebarTitle":"Link GitHub","api":"PUT https://api.vertracloud.app/v1/templates/{template_id}/github","href":"/api-reference/endpoint/templates/github-link"},{"title":"Unlink a Private Template from GitHub","sidebarTitle":"Unlink GitHub","api":"DELETE https://api.vertracloud.app/v1/templates/{template_id}/github","href":"/api-reference/endpoint/templates/github-unlink"},{"title":"Detach an Application or Stack from a Template","sidebarTitle":"Detach","api":"POST https://api.vertracloud.app/v1/apps/{id}/template/detach","href":"/api-reference/endpoint/templates/detach"},{"group":"Share links","icon":"share-nodes","pages":[{"title":"Preview a Template Share Link","sidebarTitle":"Preview Link","api":"GET https://api.vertracloud.app/v1/share/templates/{token}","href":"/api-reference/endpoint/templates/share-links/preview"},{"title":"Use a Template Share Link to Create Applications","sidebarTitle":"Use Link","api":"POST https://api.vertracloud.app/v1/share/templates/{token}/deploy","href":"/api-reference/endpoint/templates/share-links/deploy"},{"title":"Copy a Template from a Full-Copy Share Link","sidebarTitle":"Copy from Link","api":"POST https://api.vertracloud.app/v1/share/templates/{token}/copy","href":"/api-reference/endpoint/templates/share-links/copy"},{"title":"Report a Template","sidebarTitle":"Report Template","api":"POST https://api.vertracloud.app/v1/share/templates/{token}/report","href":"/api-reference/endpoint/templates/share-links/report"},{"title":"Create a Share Link for a Template","sidebarTitle":"Create Link","api":"POST https://api.vertracloud.app/v1/templates/{template_id}/share-links","href":"/api-reference/endpoint/templates/share-links/create"},{"title":"List the Share Links of a Template","sidebarTitle":"List Links","api":"GET https://api.vertracloud.app/v1/templates/{template_id}/share-links","href":"/api-reference/endpoint/templates/share-links/list"},{"title":"Revoke a Share Link","sidebarTitle":"Revoke Link","api":"DELETE https://api.vertracloud.app/v1/templates/{template_id}/share-links/{link_id}","href":"/api-reference/endpoint/templates/share-links/revoke"}]}]},{"group":"Stacks","icon":"layer-group","pages":[{"title":"List Stacks","sidebarTitle":"List Stacks","api":"GET https://api.vertracloud.app/v1/stacks","href":"/api-reference/endpoint/stacks/list"},{"title":"Get Stack","sidebarTitle":"Get Stack","api":"GET https://api.vertracloud.app/v1/stacks/{stack_id}","href":"/api-reference/endpoint/stacks/get"},{"title":"Create Stack","sidebarTitle":"Create Stack","api":"POST https://api.vertracloud.app/v1/stacks","href":"/api-reference/endpoint/stacks/create"},{"title":"Update Stack","sidebarTitle":"Update Stack","api":"PATCH https://api.vertracloud.app/v1/stacks/{stack_id}","href":"/api-reference/endpoint/stacks/update"},{"title":"Delete Stack","sidebarTitle":"Delete Stack","api":"DELETE https://api.vertracloud.app/v1/stacks/{stack_id}","href":"/api-reference/endpoint/stacks/delete"},{"title":"Transform Folder into Stack","sidebarTitle":"Transform into Stack","api":"POST https://api.vertracloud.app/v1/stacks/transform","href":"/api-reference/endpoint/stacks/transform"},{"title":"Get Stack Connection Code","sidebarTitle":"Connection Code","api":"GET https://api.vertracloud.app/v1/stacks/{stack_id}/connection","href":"/api-reference/endpoint/stacks/connection"},{"title":"Set Stack Network Mode","sidebarTitle":"Network Mode","api":"POST https://api.vertracloud.app/v1/stacks/{stack_id}/network-mode","href":"/api-reference/endpoint/stacks/network-mode"},{"group":"Members","icon":"user-group","pages":[{"title":"Add Stack Member","sidebarTitle":"Add Member","api":"POST https://api.vertracloud.app/v1/stacks/{stack_id}/members","href":"/api-reference/endpoint/stacks/members/add"},{"title":"Remove Stack Member","sidebarTitle":"Remove Member","api":"DELETE https://api.vertracloud.app/v1/stacks/{stack_id}/members/{resource_type}/{resource_id}","href":"/api-reference/endpoint/stacks/members/remove"}]},{"group":"Connections","icon":"arrows-left-right","pages":[{"title":"Create Stack Connection","sidebarTitle":"Create Connection","api":"POST https://api.vertracloud.app/v1/stacks/{stack_id}/bindings","href":"/api-reference/endpoint/stacks/bindings/create"},{"title":"Delete Stack Connection","sidebarTitle":"Delete Connection","api":"DELETE https://api.vertracloud.app/v1/stacks/{stack_id}/bindings/{binding_id}","href":"/api-reference/endpoint/stacks/bindings/delete"},{"title":"List Stack Connections","sidebarTitle":"List Connections","api":"GET https://api.vertracloud.app/v1/stacks/{stack_id}/bindings","href":"/api-reference/endpoint/stacks/bindings/list"},{"title":"Update Stack Connection","sidebarTitle":"Update Connection","api":"PATCH https://api.vertracloud.app/v1/stacks/{stack_id}/bindings/{binding_id}","href":"/api-reference/endpoint/stacks/bindings/update"}]},{"group":"Databases","icon":"database","pages":[{"title":"Add Database to Stack","sidebarTitle":"Add Database","api":"POST https://api.vertracloud.app/v1/stacks/{stack_id}/databases","href":"/api-reference/endpoint/stacks/databases/create"}]},{"group":"Blob","icon":"box-archive","pages":[{"title":"Add Blob Folder to Stack","sidebarTitle":"Add Blob Folder","api":"POST https://api.vertracloud.app/v1/stacks/{stack_id}/blob","href":"/api-reference/endpoint/stacks/blob/create"}]},{"group":"Snapshots","icon":"camera","pages":[{"title":"Create Stack Snapshot","sidebarTitle":"Create Snapshot","api":"POST https://api.vertracloud.app/v1/stacks/{stack_id}/snapshots","href":"/api-reference/endpoint/stacks/snapshots/create"},{"title":"List Stack Snapshots","sidebarTitle":"List Snapshots","api":"GET https://api.vertracloud.app/v1/stacks/{stack_id}/snapshots","href":"/api-reference/endpoint/stacks/snapshots/list"},{"title":"Restore Stack Snapshot","sidebarTitle":"Restore Snapshot","api":"POST https://api.vertracloud.app/v1/stacks/{stack_id}/snapshots/{snapshot_id}/restore","href":"/api-reference/endpoint/stacks/snapshots/restore"}]}]},{"group":"Databases","icon":"database","pages":[{"title":"Create Database","sidebarTitle":"Create Database","api":"POST https://api.vertracloud.app/v1/databases","href":"/api-reference/endpoint/databases/create"},{"title":"Get Database by ID","sidebarTitle":"Get Database","api":"GET https://api.vertracloud.app/v1/databases/{id}","href":"/api-reference/endpoint/databases/get"},{"title":"List Database Versions","sidebarTitle":"Versions","api":"GET https://api.vertracloud.app/v1/databases/versions","href":"/api-reference/endpoint/databases/versions"},{"title":"Get Database Status by ID","sidebarTitle":"Get Database Status","api":"GET https://api.vertracloud.app/v1/databases/{id}/status","href":"/api-reference/endpoint/databases/status"},{"title":"Get All Databases Status","sidebarTitle":"All Databases Status","api":"GET https://api.vertracloud.app/v1/databases/status","href":"/api-reference/endpoint/databases/allstatus"},{"title":"Get Database Metrics by ID","sidebarTitle":"Get Database Metrics","api":"GET https://api.vertracloud.app/v1/databases/{id}/metrics","href":"/api-reference/endpoint/databases/metrics"},{"title":"Reset Database","sidebarTitle":"Reset Database","api":"POST https://api.vertracloud.app/v1/databases/{id}/reset","href":"/api-reference/endpoint/databases/reset"},{"title":"Start Database","sidebarTitle":"Start Database","api":"POST https://api.vertracloud.app/v1/databases/{id}/start","href":"/api-reference/endpoint/databases/start"},{"title":"Stop Database","sidebarTitle":"Stop Database","api":"POST https://api.vertracloud.app/v1/databases/{id}/stop","href":"/api-reference/endpoint/databases/stop"},{"title":"Update Database","sidebarTitle":"Update Database","api":"PUT https://api.vertracloud.app/v1/databases/{id}","href":"/api-reference/endpoint/databases/update"},{"title":"Delete Database","sidebarTitle":"Delete Database","api":"DELETE https://api.vertracloud.app/v1/databases/{id}","href":"/api-reference/endpoint/databases/delete"},{"group":"Credentials","icon":"lock","pages":[{"title":"Get Database Certificate","sidebarTitle":"Get Certificate","api":"GET https://api.vertracloud.app/v1/databases/{id}/credentials/certificate","href":"/api-reference/endpoint/databases/credentials/get"},{"title":"Reset Database Certificates","sidebarTitle":"Reset Certificates","api":"POST https://api.vertracloud.app/v1/databases/{id}/credentials/certificate/reset","href":"/api-reference/endpoint/databases/credentials/reset"},{"title":"Reset Database Password","sidebarTitle":"Reset Password","api":"POST https://api.vertracloud.app/v1/databases/{id}/credentials/reset","href":"/api-reference/endpoint/databases/credentials/resetpassword"}]}]},{"group":"Workspaces","icon":"users","pages":[{"title":"List Workspaces","sidebarTitle":"List","api":"GET https://api.vertracloud.app/v1/workspaces","href":"/api-reference/endpoint/workspaces/get-all"},{"title":"Get Workspace","sidebarTitle":"Get","api":"GET https://api.vertracloud.app/v1/workspaces/{id}","href":"/api-reference/endpoint/workspaces/get"},{"title":"Create Workspace","sidebarTitle":"Create","api":"POST https://api.vertracloud.app/v1/workspaces","href":"/api-reference/endpoint/workspaces/create"},{"title":"Update Workspace","sidebarTitle":"Update","api":"PUT https://api.vertracloud.app/v1/workspaces/{id}","href":"/api-reference/endpoint/workspaces/update"},{"title":"Delete Workspace","sidebarTitle":"Delete","api":"DELETE https://api.vertracloud.app/v1/workspaces/{id}","href":"/api-reference/endpoint/workspaces/delete"},{"group":"Members","icon":"user-group","pages":[{"title":"List Members","sidebarTitle":"List","api":"GET https://api.vertracloud.app/v1/workspaces/{id}/members","href":"/api-reference/endpoint/workspaces/members/list"},{"title":"Update Member","sidebarTitle":"Update","api":"PUT https://api.vertracloud.app/v1/workspaces/{id}/members/{user_id}","href":"/api-reference/endpoint/workspaces/members/update"},{"title":"Remove Member","sidebarTitle":"Remove","api":"DELETE https://api.vertracloud.app/v1/workspaces/{id}/members/{user_id}","href":"/api-reference/endpoint/workspaces/members/remove"}]},{"group":"Roles","icon":"id-badge","pages":[{"title":"List Roles","sidebarTitle":"List","api":"GET https://api.vertracloud.app/v1/workspaces/{id}/roles","href":"/api-reference/endpoint/workspaces/roles/list"},{"title":"Create Role","sidebarTitle":"Create","api":"POST https://api.vertracloud.app/v1/workspaces/{id}/roles","href":"/api-reference/endpoint/workspaces/roles/create"},{"title":"Update Role","sidebarTitle":"Update","api":"PUT https://api.vertracloud.app/v1/workspaces/{id}/roles/{role_id}","href":"/api-reference/endpoint/workspaces/roles/update"},{"title":"Delete Role","sidebarTitle":"Delete","api":"DELETE https://api.vertracloud.app/v1/workspaces/{id}/roles/{role_id}","href":"/api-reference/endpoint/workspaces/roles/delete"}]},{"group":"Invites","icon":"envelope","pages":[{"title":"List Invites","sidebarTitle":"List","api":"GET https://api.vertracloud.app/v1/workspaces/{id}/invites","href":"/api-reference/endpoint/workspaces/invites/list"},{"title":"Revoke Invite","sidebarTitle":"Revoke","api":"DELETE https://api.vertracloud.app/v1/workspaces/{id}/invites/{invite_id}","href":"/api-reference/endpoint/workspaces/invites/revoke"},{"title":"Preview Invite","sidebarTitle":"Preview","api":"GET https://api.vertracloud.app/v1/workspaces/invites/{token}","href":"/api-reference/endpoint/workspaces/invites/preview"},{"title":"Accept Invite","sidebarTitle":"Accept","api":"POST https://api.vertracloud.app/v1/workspaces/invites/{token}/accept","href":"/api-reference/endpoint/workspaces/invites/accept"},{"title":"Decline Invite","sidebarTitle":"Decline","api":"POST https://api.vertracloud.app/v1/workspaces/invites/{token}/decline","href":"/api-reference/endpoint/workspaces/invites/decline"}]},{"group":"Apps \u0026 Databases","icon":"window-maximize","pages":[{"title":"Link Application","sidebarTitle":"Link App","api":"POST https://api.vertracloud.app/v1/workspaces/{id}/apps/{app_id}","href":"/api-reference/endpoint/workspaces/links/add-app"},{"title":"Unlink Application","sidebarTitle":"Unlink App","api":"DELETE https://api.vertracloud.app/v1/workspaces/{id}/apps/{app_id}","href":"/api-reference/endpoint/workspaces/links/remove-app"},{"title":"Link Database","sidebarTitle":"Link Database","api":"POST https://api.vertracloud.app/v1/workspaces/{id}/databases/{db_id}","href":"/api-reference/endpoint/workspaces/links/add-database"},{"title":"Unlink Database","sidebarTitle":"Unlink Database","api":"DELETE https://api.vertracloud.app/v1/workspaces/{id}/databases/{db_id}","href":"/api-reference/endpoint/workspaces/links/remove-database"},{"title":"Link Template or Stack","sidebarTitle":"Link Template or Stack","api":"POST https://api.vertracloud.app/v1/workspaces/{id}/templates/{template_id}","href":"/api-reference/endpoint/workspaces/links/add-template"},{"title":"Unlink Template or Stack","sidebarTitle":"Unlink Template or Stack","api":"DELETE https://api.vertracloud.app/v1/workspaces/{id}/templates/{template_id}","href":"/api-reference/endpoint/workspaces/links/remove-template"}]},{"group":"Resource Organization","icon":"folder-tree","pages":[{"title":"Workspace Resource Organization","sidebarTitle":"Folders and favorites","href":"/api-reference/endpoint/workspaces/resource-organization"}]},{"group":"Action Requests","icon":"square-check","pages":[{"title":"List Action Requests","sidebarTitle":"List","api":"GET https://api.vertracloud.app/v1/workspaces/{id}/action-requests","href":"/api-reference/endpoint/workspaces/action-requests/list"},{"title":"Create Action Request","sidebarTitle":"Create","api":"POST https://api.vertracloud.app/v1/workspaces/{id}/action-requests","href":"/api-reference/endpoint/workspaces/action-requests/create"}]}]},{"group":"Billing","icon":"credit-card","pages":[{"title":"List Orders","sidebarTitle":"List Orders","api":"GET https://api.vertracloud.app/v1/orders","href":"/api-reference/endpoint/billing/list-orders"},{"title":"Get Order Status","sidebarTitle":"Order Status","api":"GET https://api.vertracloud.app/v1/orders/{orderId}/status","href":"/api-reference/endpoint/billing/order-status"},{"title":"Create Order","sidebarTitle":"Create Order","api":"POST https://api.vertracloud.app/v1/orders","href":"/api-reference/endpoint/billing/create-order"},{"title":"Initiate PIX Payment","sidebarTitle":"Initiate PIX","api":"POST https://api.vertracloud.app/v1/orders/{orderId}/initiate/pix","href":"/api-reference/endpoint/billing/initiate-pix"},{"title":"Get Billing Details","sidebarTitle":"Get Billing Details","api":"GET https://api.vertracloud.app/v1/users/me/billing","href":"/api-reference/endpoint/billing/get-billing-details"},{"title":"Update Billing Details","sidebarTitle":"Update Billing Details","api":"PUT https://api.vertracloud.app/v1/users/me/billing","href":"/api-reference/endpoint/billing/update-billing-details"}]},{"group":"Redeem","icon":"ticket","pages":[{"title":"Redeem Code","sidebarTitle":"Redeem Code","api":"POST https://api.vertracloud.app/v1/redeem/{code}","href":"/api-reference/endpoint/redeem/redeem"}]}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}],"global":{"anchors":[{"anchor":"Documentation","icon":"book-open-cover","href":"https://docs.vertracloud.app"},{"anchor":"Discord","icon":"discord","href":"https://discord.gg/vertracloud"},{"anchor":"Status","icon":"heart-pulse","href":"https://status.vertracloud.app"}]}},{"language":"pt-BR","navbar":{"links":[{"href":"mailto:[email protected]","label":"Suporte"}],"primary":{"type":"button","label":"Dashboard","href":"https://vertracloud.app/dashboard"}},"pages":[{"title":"pt-BR","href":"/pt-br/api-reference/endpoint/templates/list"}]},{"language":"es","navbar":{"links":[{"href":"mailto:[email protected]","label":"Soporte"}],"primary":{"type":"button","label":"Panel","href":"https://vertracloud.app/dashboard"}},"pages":[{"title":"es","href":"/es-es"}]}]},"basePath":"","title":"List Templates - Vertra Cloud","buildId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","deploymentId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","dynamics":["c2aa737661","2b790eda92","b0f84f53ff"],"chunks":["OpenApiReferenceProvider-B7XKH4J3.js","utils-lOYzL7z-.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DF6jUUIM.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dpsj5f7C.js","snippetPresets-CYeiDe8v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CUFz1YZ_.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D8H_iLS4.js","shallow-DdluZBHX.js","getApiPlaygroundDisplay-B9922vev.js","CodeSnippet-CMoRNGYs.js","CodeSnippets-DwyrPHuw.js","Page-DSVu9Ucl.js","getPastedJson-G-zIvlHh.js","icon-B03fnEy0.js","MethodPill-CW7teklc.js","DuplicateIcon-CtO8eekd.js","createIcon-DZTKdM_A.js","DynamicMarkdown-D5M2At0B.js","SectionHeading-C_2NaA2U.js","axios-vUo_bRtp.js"]}