Axuz Developers

GET /v1/templates/

Lista templates (público, sem auth)

  • Acesso: Pública
  • Serviço: https://api-forms.axuz.net

Autenticação aceita

Sem autenticação (rota pública ou protegida por link/assinatura).

— GET /v1/templates. Lista o catálogo (filtro por category).

Motivo: página "Novo formulário" no forms_client mostra grid de templates com preview. Filtro por categoria (general/marketing/ events/support/feedback/hr) reduz cognitive load.

Comportamento: templates.All → filtro category opcional → 200 {items}.

Entradas: query category?.

Retorno: 200 {items}.

Parâmetros

NomeEmTipoObrigatórioDescrição
categoryquerystringnão

Respostas

200

Catálogo

NomeTipoObrigatórioDescrição
itemsarray<FormsTemplate>sim
items[].idstringsim
items[].slugstringsim
items[].namestringsim
items[].descriptionstringsim
items[].categorystringsim

enum: "general", "marketing", "events", "support", "feedback", "hr"

items[].iconstringsim

emoji simples.

items[].layoutstringsim
items[].schemaFormsFormSchemasim
items[].schema.fieldsarray<FormsField>sim
items[].schema.fields[].idstringsim
items[].schema.fields[].typestringsim

enum: "text", "email", "phone", "textarea", "number", "select", "radio", "checkbox", "date", "url", "file", "hidden"

items[].schema.fields[].labelstringnão
items[].schema.fields[].namestringsim
items[].schema.fields[].requiredbooleannão
items[].schema.fields[].placeholderstringnão
items[].schema.fields[].help_textstringnão
items[].schema.fields[].defaultanynão
items[].schema.fields[].optionsarray<FormsFieldOption>não
items[].schema.fields[].options[].valuestringsim
items[].schema.fields[].options[].labelstringsim
items[].schema.fields[].max_lengthinteger | nullnão
items[].schema.fields[].minnumber | nullnão
items[].schema.fields[].maxnumber | nullnão
items[].schema.fields[].rowsinteger | nullnão
items[].schema.fields[].patternstringnão
items[].schema.fields[].extraobjectnão
items[].schema.stepsarray<FormsStep>não
items[].schema.steps[].idstringsim
items[].schema.steps[].titlestringsim
items[].schema.steps[].field_idsarray<string>sim
items[].schema.settingsFormsSettingssim
items[].schema.settings.submit_labelstringnão
items[].schema.settings.thank_you_messagestringnão
items[].schema.settings.redirect_urlstring | nullnão
items[].schema.settings.honeypotbooleannão

Se true, adiciona campo axuz_hp e rejeita submits com valor.

items[].schema.settings.double_opt_inbooleannão
items[].schema.settings.triggersarray<FormsTrigger>não
items[].schema.settings.triggers[].idstringsim

client uuid

items[].schema.settings.triggers[].typestringsim

enum: "email", "webhook", "calendar_event", "workspace_task"

items[].schema.settings.triggers[].enabledbooleansim
items[].schema.settings.triggers[].labelstringnão
items[].schema.settings.triggers[].mappingobjectnão
items[].schema.settings.triggers[].configobjectnão

Shape depende de type: - email: { to: string[] } - webhook: { url: string, secret?: string } - calendar_event/workspace_task: fields específicos do módulo.

items[].schema.settings.notify_emailsarray<string<email>>não

Legacy Fase 178. Promovido em memória pra Triggers no read.

items[].schema.settings.webhook_urlstringnão
items[].schema.settings.webhook_secretstringnão

429

Limite de requisições excedido.

NomeTipoObrigatórioDescrição
errorstringsim

500

Erro interno. Tente de novo com backoff; reporte o X-Request-Id.

NomeTipoObrigatórioDescrição
errorstringsim

Exemplos

O "Try it" está desligado nesta referência. Use os exemplos com a sua credencial de teste.

curl

curl -sS -X GET 'https://api-forms.axuz.net/v1/templates/'

Node.js

const res = await fetch("https://api-forms.axuz.net/v1/templates/", {
  method: 'GET',
});
if (!res.ok) throw new Error(`HTTP ${res.status}: ${await res.text()}`);
console.log(await res.json());

Python

import os
import requests

res = requests.request(
    "GET",
    "https://api-forms.axuz.net/v1/templates/",
    timeout=30,
)
res.raise_for_status()
print(res.json())