Formularios
Liste los formularios de verificación KYC y KYB de un inquilino mediante la API REST de Certivant: descubra con qué formulario ejecutar una verificación, filtre por tipo y lea el slug, el estado y el indicador de incrustación de cada formulario.
Un formulario define lo que rellena el solicitante y qué documentos y comprobaciones recopila una verificación. Antes de crear una solicitud KYC/KYB, liste los formularios del inquilino para mostrar al operador un selector o para localizar el formulario correcto por su nombre.
Es la misma lista que el panel de Certivant muestra en Formularios: el endpoint REST la devuelve solo para la organización de su clave de API.
Todos los endpoints requieren una clave de API. Consulte Autenticación.
Listar formularios
GET /api/v1/kyc/forms Ámbito: kyc:read
Devuelve los formularios KYC y KYB de la organización que realiza la llamada. Por defecto, solo se devuelven los formularios publicados (aquellos con los que puede ejecutar realmente una verificación).
Parámetros de consulta
| Parámetro | Valores | Por defecto | Descripción |
|---|---|---|---|
type | kyc · kyb (se aceptan los alias INDIVIDUAL · BUSINESS) | ambos | Restringe a formularios de persona física (KYC) o de empresa (KYB). |
status | all | published | Use all para incluir también los formularios draft y archived. |
Ejemplos:
# All published forms (KYC + KYB)
curl -H "Authorization: Bearer $CERTIVANT_API_KEY" \
https://app.certivant.com/api/v1/kyc/forms
# Only published KYB (business) forms
curl -H "Authorization: Bearer $CERTIVANT_API_KEY" \
"https://app.certivant.com/api/v1/kyc/forms?type=kyb"
# Everything, including drafts and archived
curl -H "Authorization: Bearer $CERTIVANT_API_KEY" \
"https://app.certivant.com/api/v1/kyc/forms?status=all"
Respuesta
{
"data": [
{
"id": "cmr8prfoe000114msbv8bie12",
"name": "KYC — Default Identity Verification",
"description": "Standard KYC identity verification form. Requires 2 government-issued ID documents and a selfie.",
"type": "kyc",
"status": "published",
"slug": "acme-kyc-9f2c1a",
"publicSlug": "acme-kyc-9f2c1a",
"embeddable": true,
"aiAgentEnabled": false,
"isDefault": true,
"submissionCount": 32,
"createdAt": "2026-06-14T10:22:13.022Z"
}
]
}
Los resultados se ordenan con el formulario predeterminado del inquilino de cada tipo primero, y después alfabéticamente por nombre.
Cargar y usar un formulario
Liste los formularios, elija uno (por nombre o mediante el indicador isDefault) y, a continuación, envíe al solicitante a su URL alojada (https://app.certivant.com/forms/{slug}), o incrústelo cuando embeddable sea true. Si prefiere dirigir el flujo de servidor a servidor, omita la URL alojada y cree una solicitud directamente.
curl -H "Authorization: Bearer $CERTIVANT_API_KEY" \
"https://app.certivant.com/api/v1/kyc/forms?type=kyc"
# Pick a form's "slug", then send applicants to complete it at:
# https://app.certivant.com/forms/{slug}
const res = await fetch(
"https://app.certivant.com/api/v1/kyc/forms?type=kyc",
{ headers: { Authorization: `Bearer ${process.env.CERTIVANT_API_KEY}` } },
);
const { data: forms } = await res.json();
// Show the operator a picker, or grab the org's default published KYC form:
const form = forms.find((f) => f.isDefault) ?? forms[0];
// Send the applicant to the hosted form to complete their verification
// (or embed it in an <iframe> when form.embeddable is true):
const hostedUrl = `https://app.certivant.com/forms/${form.slug}`;
import os, requests
BASE = "https://app.certivant.com"
headers = {"Authorization": f"Bearer {os.environ['CERTIVANT_API_KEY']}"}
forms = requests.get(f"{BASE}/api/v1/kyc/forms",
headers=headers, params={"type": "kyc"}).json()["data"]
# The org's default published KYC form (or present a picker):
form = next((f for f in forms if f["isDefault"]), forms[0])
# Hosted form URL the applicant opens to complete the verification:
hosted_url = f"{BASE}/forms/{form['slug']}"
Referencia de campos
| Campo | Descripción |
|---|---|
id | ID del formulario. |
name | Nombre del formulario legible para las personas (lo que muestra el panel). |
type | kyc (persona física) o kyb (empresa). |
status | published · draft · archived. Solo los formularios published pueden respaldar una verificación en vivo. |
slug / publicSlug | Slug seguro para URL. slug refleja publicSlug. Úselo para construir la URL del formulario alojado (https://app.certivant.com/forms/{slug}) que abren los solicitantes para completar la verificación. null en los formularios no publicados. |
embeddable | true si el formulario puede incrustarse mediante <iframe> / <script> en su propio sitio web. |
aiAgentEnabled | true si los agentes de IA pueden enviar este formulario mediante la API REST. |
isDefault | true para el formulario KYC / KYB predeterminado aprovisionado por la organización. |
submissionCount | Número total de envíos recibidos a través de este formulario. |
createdAt | Marca de tiempo de creación en formato ISO 8601. |
Errores
| Estado | Cuándo |
|---|---|
401 | Clave de API ausente o no válida. |
403 | La clave no tiene el ámbito kyc:read. |
429 | Límite de solicitudes superado (120 solicitudes / minuto por inquilino). |
Siguiente paso
Una vez elegido el formulario, cree una solicitud. Para que el solicitante lo complete en un navegador, genere una URL de sesión alojada o incruste el formulario usando su slug. Después, lea el resultado (comprobaciones, puntuación de riesgo y decisión) con Obtener una solicitud.
Su primera solicitud
Recorrido de principio a fin: cree una solicitud, cargue los documentos desde su servidor, envíela y procese el webhook.
Solicitudes KYC
Referencia completa de la API de solicitudes KYC de Certivant — crear, listar, enviar, aprobar, rechazar, escalar y reenviar solicitudes de verificación de identidad de personas físicas o empresas.