Moduli
Elenchi i moduli di verifica KYC e KYB di un tenant tramite l'API REST di Certivant — individui il modulo con cui eseguire una verifica, filtri per tipo e legga slug, stato e flag di incorporabilità di ciascun modulo.
Un modulo definisce ciò che il richiedente compila e quali documenti e controlli raccoglie una verifica. Prima di creare una richiesta KYC/KYB, elenchi i moduli del tenant per poter mostrare all'operatore un selettore oppure individuare il modulo giusto in base al nome.
Questo è lo stesso elenco che la dashboard di Certivant mostra sotto Moduli — l'endpoint REST lo restituisce solo per l'organizzazione della Sua chiave API.
Tutti gli endpoint richiedono una chiave API. Vedi Autenticazione.
Elenco dei moduli
GET /api/v1/kyc/forms Ambito: kyc:read
Restituisce i moduli KYC e KYB dell'organizzazione chiamante. Per impostazione predefinita vengono restituiti solo i moduli pubblicati (quelli con cui è possibile eseguire effettivamente una verifica).
Parametri di query
| Parametro | Valori | Predefinito | Descrizione |
|---|---|---|---|
type | kyc · kyb (sono accettati anche gli alias INDIVIDUAL · BUSINESS) | entrambi | Limita ai moduli per persone fisiche (KYC) o per aziende (KYB). |
status | all | published | Usi all per includere anche i moduli draft e archived. |
Esempi:
# 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"
Risposta
{
"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"
}
]
}
I risultati sono ordinati con il modulo predefinito di ciascun tipo per primo, poi in ordine alfabetico per nome.
Carichi e usi un modulo
Elenchi i moduli, ne scelga uno (per nome oppure tramite il flag isDefault), poi invii il richiedente al suo URL ospitato — https://app.certivant.com/forms/{slug} — oppure lo incorpori quando embeddable è true. Per gestire il flusso lato server, salti l'URL ospitato e crei direttamente una richiesta.
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']}"
Riferimento dei campi
| Campo | Descrizione |
|---|---|
id | ID del modulo. |
name | Nome leggibile del modulo (quello mostrato dalla dashboard). |
type | kyc (persona fisica) oppure kyb (azienda). |
status | published · draft · archived. Solo i moduli published possono supportare una verifica in corso. |
slug / publicSlug | Slug sicuro per URL. slug riprende publicSlug. Serve a costruire l'URL del modulo ospitato — https://app.certivant.com/forms/{slug} — che i richiedenti aprono per completare la verifica. null per i moduli non pubblicati. |
embeddable | true se il modulo può essere incorporato tramite <iframe> / <script> nel Suo sito. |
aiAgentEnabled | true se gli agenti IA possono inviare questo modulo tramite l'API REST. |
isDefault | true per il modulo KYC / KYB predefinito dell'organizzazione. |
submissionCount | Numero totale di invii ricevuti tramite questo modulo. |
createdAt | Data e ora di creazione in formato ISO 8601. |
Errori
| Stato | Quando |
|---|---|
401 | Chiave API mancante o non valida. |
403 | La chiave non ha l'ambito kyc:read. |
429 | Limite di frequenza superato (120 richieste al minuto per tenant). |
Passo successivo
Una volta scelto il modulo, crei una richiesta. Per consentire al richiedente di completarla nel browser, generi un URL di sessione ospitata oppure incorpori il modulo usando il suo slug. Poi legga il risultato — controlli, punteggio di rischio e decisione — con Ottenere una singola richiesta.
La Sua prima richiesta
Procedura completa — crei una richiesta, carichi i documenti lato server, la invii e gestisca il webhook.
Richieste KYC
Riferimento API completo per le richieste KYC di Certivant — crea, elenca, invia, approva, rifiuta, inoltra e reinvia le richieste di verifica dell'identità di persone fisiche o aziende.