Axuz Developers

GET /v1/templates/

Lista templates (público, sem auth)

  • Access: Public
  • Service: https://api-forms.axuz.net

Accepted authentication

No authentication (public route, or protected by link/signature).

— 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}.

Parameters

NameInTypeRequiredDescription
categoryquerystringno

Responses

200

Catálogo

NameTypeRequiredDescription
itemsarray<FormsTemplate>yes
items[].idstringyes
items[].slugstringyes
items[].namestringyes
items[].descriptionstringyes
items[].categorystringyes

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

items[].iconstringyes

emoji simples.

items[].layoutstringyes
items[].schemaFormsFormSchemayes
items[].schema.fieldsarray<FormsField>yes
items[].schema.fields[].idstringyes
items[].schema.fields[].typestringyes

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

items[].schema.fields[].labelstringno
items[].schema.fields[].namestringyes
items[].schema.fields[].requiredbooleanno
items[].schema.fields[].placeholderstringno
items[].schema.fields[].help_textstringno
items[].schema.fields[].defaultanyno
items[].schema.fields[].optionsarray<FormsFieldOption>no
items[].schema.fields[].options[].valuestringyes
items[].schema.fields[].options[].labelstringyes
items[].schema.fields[].max_lengthinteger | nullno
items[].schema.fields[].minnumber | nullno
items[].schema.fields[].maxnumber | nullno
items[].schema.fields[].rowsinteger | nullno
items[].schema.fields[].patternstringno
items[].schema.fields[].extraobjectno
items[].schema.stepsarray<FormsStep>no
items[].schema.steps[].idstringyes
items[].schema.steps[].titlestringyes
items[].schema.steps[].field_idsarray<string>yes
items[].schema.settingsFormsSettingsyes
items[].schema.settings.submit_labelstringno
items[].schema.settings.thank_you_messagestringno
items[].schema.settings.redirect_urlstring | nullno
items[].schema.settings.honeypotbooleanno

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

items[].schema.settings.double_opt_inbooleanno
items[].schema.settings.triggersarray<FormsTrigger>no
items[].schema.settings.triggers[].idstringyes

client uuid

items[].schema.settings.triggers[].typestringyes

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

items[].schema.settings.triggers[].enabledbooleanyes
items[].schema.settings.triggers[].labelstringno
items[].schema.settings.triggers[].mappingobjectno
items[].schema.settings.triggers[].configobjectno

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>>no

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

items[].schema.settings.webhook_urlstringno
items[].schema.settings.webhook_secretstringno

429

Limite de requisições excedido.

NameTypeRequiredDescription
errorstringyes

500

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

NameTypeRequiredDescription
errorstringyes

Examples

"Try it" is turned off in this reference. Use the examples with your test credential.

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())