Identités
Identités attestées, réutilisables (signature avancée). Référence générée depuis les schémas de validation de l’API : ce que vous lisez est ce que le serveur vérifie.
- post/identities — Établir une identité réutilisable
- get/identities — Lister les identités
- get/identities/{id} — Lire une identité
- delete/identities/{id} — Effacer une identité (droit à l’effacement)
Base : https://preprod-app.signatik.com/api/v1 · authentification Authorization: Bearer sk_… · erreurs { "error": { "code", "message" } }.
post
/api/v1/identitiesÉtablir une identité réutilisable
Mode partner_attested : vous avez vérifié la pièce, vous transmettez les attributs et l’empreinte du numéro (jamais le numéro). L’identité est réutilisable sur toutes les enveloppes suivantes du même signataire (identity_id). Scope identities:manage.
●POST /identities
curl -X POST https://preprod-app.signatik.com/api/v1/identities \
-H "Authorization: Bearer sk_test_…" \
-H "Content-Type: application/json" \
-d '{
"method": "partner_attested",
"given_name": "Jean",
"family_name": "Dupont",
"birth_date": "1990-04-12",
"email": "jean.dupont@exemple.fr",
"phone": "+33612345678",
"document_type": "id_card",
"document_number_hash": "sha256:9f86d0…",
"document_expires_on": "…",
"verified_at": "2026-08-20T10:00:00Z",
"verified_by": "Agence Lyon 3",
"attestation_ref": "AG-2026-8891",
"external_ref": "STG-8891",
"expires_in_days": 1
}'●201 — exemple de réponse
{
"id": "8f2c1d4e-0b7a-4c1e-9f0d-6a3b2c1d0e9f",
"method": "partner_attested",
"status": "pending",
"given_name": "Jean",
"family_name": "Dupont",
"birth_date": "1990-04-12",
"email": "jean.dupont@exemple.fr",
"phone": "+33612345678",
"document_type": "…",
"document_number_hash": "sha256:9f86d0…",
"document_expires_on": "…",
"verified_at": "2026-08-20T10:00:00Z",
"verified_by": "Agence Lyon 3",
"attestation_ref": "AG-2026-8891",
"external_ref": "STG-8891",
"expires_at": "2026-09-02T14:33:07Z",
"created_at": "…",
"verification_url": "…"
}Corps de la requête
| Champ | Type | Description |
|---|---|---|
methodrequis | "partner_attested" | "remote_id_check" | "france_identite" | |
given_namerequis | string | ≤ 100 car. |
family_namerequis | string | ≤ 100 car. |
birth_date | string | |
email | string | |
phone | string | ≤ 30 car. |
document_type | "id_card" | "passport" | "residence_permit" | "driving_licence" | "other" | |
document_number_hash | string | |
document_expires_on | string | |
verified_at | date-time | |
verified_by | string | ≤ 200 car. |
attestation_ref | string | ≤ 200 car. |
external_ref | string | ≤ 200 car. |
expires_in_days | integer | 1–3650 |
Réponses
201 | OK |
400 | Corps invalide |
401 | Clé absente, mal formée ou révoquée (unauthorized) |
403 | Scope manquant sur la clé (forbidden) |
429 | Limitation de débit (rate_limited, en-tête Retry-After) |
503 | idv_not_configured (vérification à distance non contractualisée) |
Réponse 201
| Champ | Type | Description |
|---|---|---|
idrequis | uuid | |
methodrequis | "partner_attested" | "remote_id_check" | "france_identite" | |
statusrequis | "pending" | "verified" | "failed" | "expired" | "deleted" | |
given_namerequis | string | |
family_namerequis | string | |
birth_daterequis | string | null | |
emailrequis | string | null | |
phonerequis | string | null | |
document_typerequis | string | null | |
document_number_hashrequis | string | null | Empreinte sha256 du numéro de pièce — jamais le numéro |
document_expires_onrequis | string | null | |
verified_atrequis | date-time | null | |
verified_byrequis | string | null | |
attestation_refrequis | string | null | |
external_refrequis | string | null | |
expires_atrequis | date-time | null | |
created_atrequis | string | |
verification_urlrequis | string | null |
get
/api/v1/identitiesLister les identités
●GET /identities
curl -X GET https://preprod-app.signatik.com/api/v1/identities \
-H "Authorization: Bearer sk_test_…"●200 — exemple de réponse
{
"data": [
{
"id": "8f2c1d4e-0b7a-4c1e-9f0d-6a3b2c1d0e9f",
"method": "partner_attested",
"status": "pending",
"given_name": "Jean",
"family_name": "Dupont",
"birth_date": "1990-04-12",
"email": "jean.dupont@exemple.fr",
"phone": "+33612345678",
"document_type": "…",
"document_number_hash": "sha256:9f86d0…",
"document_expires_on": "…",
"verified_at": "2026-08-20T10:00:00Z",
"verified_by": "Agence Lyon 3",
"attestation_ref": "AG-2026-8891",
"external_ref": "STG-8891",
"expires_at": "2026-09-02T14:33:07Z",
"created_at": "…"
}
],
"limit": 1,
"offset": 1
}Paramètres de requête
limit | integer | |
offset | integer | null | |
external_ref | string |
Réponses
200 | OK |
401 | Clé absente, mal formée ou révoquée (unauthorized) |
403 | Scope manquant sur la clé (forbidden) |
429 | Limitation de débit (rate_limited, en-tête Retry-After) |
Réponse 200
| Champ | Type | Description |
|---|---|---|
datarequis | Identity[] | |
idrequis | uuid | |
methodrequis | "partner_attested" | "remote_id_check" | "france_identite" | |
statusrequis | "pending" | "verified" | "failed" | "expired" | "deleted" | |
given_namerequis | string | |
family_namerequis | string | |
birth_daterequis | string | null | |
emailrequis | string | null | |
phonerequis | string | null | |
document_typerequis | string | null | |
document_number_hashrequis | string | null | Empreinte sha256 du numéro de pièce — jamais le numéro |
document_expires_onrequis | string | null | |
verified_atrequis | date-time | null | |
verified_byrequis | string | null | |
attestation_refrequis | string | null | |
external_refrequis | string | null | |
expires_atrequis | date-time | null | |
created_atrequis | string | |
limitrequis | number | |
offsetrequis | number |
get
/api/v1/identities/{id}Lire une identité
●GET /identities/{id}
curl -X GET https://preprod-app.signatik.com/api/v1/identities/env_8f2c… \
-H "Authorization: Bearer sk_test_…"●200 — exemple de réponse
{
"id": "8f2c1d4e-0b7a-4c1e-9f0d-6a3b2c1d0e9f",
"method": "partner_attested",
"status": "pending",
"given_name": "Jean",
"family_name": "Dupont",
"birth_date": "1990-04-12",
"email": "jean.dupont@exemple.fr",
"phone": "+33612345678",
"document_type": "…",
"document_number_hash": "sha256:9f86d0…",
"document_expires_on": "…",
"verified_at": "2026-08-20T10:00:00Z",
"verified_by": "Agence Lyon 3",
"attestation_ref": "AG-2026-8891",
"external_ref": "STG-8891",
"expires_at": "2026-09-02T14:33:07Z",
"created_at": "…"
}Paramètres de chemin
id | uuid |
Réponses
200 | OK |
401 | Clé absente, mal formée ou révoquée (unauthorized) |
403 | Scope manquant sur la clé (forbidden) |
404 | Introuvable |
429 | Limitation de débit (rate_limited, en-tête Retry-After) |
Réponse 200
| Champ | Type | Description |
|---|---|---|
idrequis | uuid | |
methodrequis | "partner_attested" | "remote_id_check" | "france_identite" | |
statusrequis | "pending" | "verified" | "failed" | "expired" | "deleted" | |
given_namerequis | string | |
family_namerequis | string | |
birth_daterequis | string | null | |
emailrequis | string | null | |
phonerequis | string | null | |
document_typerequis | string | null | |
document_number_hashrequis | string | null | Empreinte sha256 du numéro de pièce — jamais le numéro |
document_expires_onrequis | string | null | |
verified_atrequis | date-time | null | |
verified_byrequis | string | null | |
attestation_refrequis | string | null | |
external_refrequis | string | null | |
expires_atrequis | date-time | null | |
created_atrequis | string |
delete
/api/v1/identities/{id}Effacer une identité (droit à l’effacement)
Les signatures déjà émises restent valides : la preuve est dans le certificat et le dossier de preuve.
●DELETE /identities/{id}
curl -X DELETE https://preprod-app.signatik.com/api/v1/identities/env_8f2c… \
-H "Authorization: Bearer sk_test_…"●200 — exemple de réponse
{
"deleted": true
}Paramètres de chemin
id | uuid |
Réponses
200 | OK |
401 | Clé absente, mal formée ou révoquée (unauthorized) |
403 | Scope manquant sur la clé (forbidden) |
404 | Introuvable |
429 | Limitation de débit (rate_limited, en-tête Retry-After) |
Réponse 200
| Champ | Type | Description |
|---|---|---|
deletedrequis | true |