curl -X POST \
https://verification.didit.me/v3/session/3fa85f64-5717-4562-b3fc-2c963f66afa6/decision-email-preview/ \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"new_status": "Approved", "email_language": "en"}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.sessions.preview_decision_email(
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
new_status="Approved",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.sessions.previewDecisionEmail("3fa85f64-5717-4562-b3fc-2c963f66afa6", {
new_status: "Approved",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Sessions.PreviewDecisionEmail(ctx, "3fa85f64-5717-4562-b3fc-2c963f66afa6", didit.SessionsPreviewDecisionEmailParams{
NewStatus: "Approved",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.SessionsPreviewDecisionEmailParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.sessions().previewDecisionEmail("3fa85f64-5717-4562-b3fc-2c963f66afa6", SessionsPreviewDecisionEmailParams.builder()
.newStatus(SessionsPreviewDecisionEmailParams.NewStatus.of("Approved"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->sessions->previewDecisionEmail('3fa85f64-5717-4562-b3fc-2c963f66afa6', [
'new_status' => 'Approved',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.sessions.preview_decision_email(
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
new_status: "Approved"
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Sessions.PreviewDecisionEmailAsync("3fa85f64-5717-4562-b3fc-2c963f66afa6", new SessionsPreviewDecisionEmailParams
{
NewStatus = "Approved",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"recipient": "person@example.com",
"recipient_source": "email_verification",
"sender": "Example App <no-reply@mail.example.com>",
"sender_name": "Example App",
"sender_email": "no-reply@mail.example.com",
"sender_kind": "customer",
"subject": "Your verification has been approved in Example App",
"html": "<!DOCTYPE html><html><body>...</body></html>",
"language": "en",
"will_be_sent": true,
"not_sent_reason": null,
"preview_token": "eyJkaWdlc3QiOiI0ZjJhIn0:1uExAm:Pl3x4mpleS1gnatureValue000000000000000"
}API d'aperçu de l'e-mail de décision : approuvé et refusé
Didit : visualisez l’e-mail approuvé ou refusé envoyé au destinataire, avec expéditeur et langue, avant de modifier le statut de la session.
curl -X POST \
https://verification.didit.me/v3/session/3fa85f64-5717-4562-b3fc-2c963f66afa6/decision-email-preview/ \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"new_status": "Approved", "email_language": "en"}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.sessions.preview_decision_email(
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
new_status="Approved",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.sessions.previewDecisionEmail("3fa85f64-5717-4562-b3fc-2c963f66afa6", {
new_status: "Approved",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Sessions.PreviewDecisionEmail(ctx, "3fa85f64-5717-4562-b3fc-2c963f66afa6", didit.SessionsPreviewDecisionEmailParams{
NewStatus: "Approved",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.SessionsPreviewDecisionEmailParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.sessions().previewDecisionEmail("3fa85f64-5717-4562-b3fc-2c963f66afa6", SessionsPreviewDecisionEmailParams.builder()
.newStatus(SessionsPreviewDecisionEmailParams.NewStatus.of("Approved"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->sessions->previewDecisionEmail('3fa85f64-5717-4562-b3fc-2c963f66afa6', [
'new_status' => 'Approved',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.sessions.preview_decision_email(
"3fa85f64-5717-4562-b3fc-2c963f66afa6",
new_status: "Approved"
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Sessions.PreviewDecisionEmailAsync("3fa85f64-5717-4562-b3fc-2c963f66afa6", new SessionsPreviewDecisionEmailParams
{
NewStatus = "Approved",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"recipient": "person@example.com",
"recipient_source": "email_verification",
"sender": "Example App <no-reply@mail.example.com>",
"sender_name": "Example App",
"sender_email": "no-reply@mail.example.com",
"sender_kind": "customer",
"subject": "Your verification has been approved in Example App",
"html": "<!DOCTYPE html><html><body>...</body></html>",
"language": "en",
"will_be_sent": true,
"not_sent_reason": null,
"preview_token": "eyJkaWdlc3QiOiI0ZjJhIn0:1uExAm:Pl3x4mpleS1gnatureValue000000000000000"
}Approved ou Declined avec send_email: true.
Elle indique aussi qui le reçoit, qui en est l’expéditeur, et si la confirmation l’envoie réellement.
Qui reçoit l’e-mail
L’e-mail est envoyé à l’adresse de la personne : celle qu’elle a vérifiée lors d’une étape de vérification de l’e-mail du parcours, sinon celle indiquée danscontact_details à la création de la session.
recipient_source indique celle qui s’applique (email_verification ou contact_details).
Lorsque la session ne contient aucune adresse pour la personne, recipient, recipient_source et preview_token sont des chaînes vides, et aucun e-mail ne peut être envoyé.
L’e-mail est envoyé depuis le domaine d’expédition vérifié de votre application lorsque votre configuration en marque blanche s’applique (sender_kind: customer), sinon depuis l’expéditeur de Didit (sender_kind: didit).
Si l’e-mail est envoyé
will_be_sent vaut true lorsque la confirmation de la modification avec send_email: true envoie l’e-mail.
Lorsqu’il vaut false, not_sent_reason indique la raison :
not_sent_reason | Signification |
|---|---|
status_unchanged | La session a déjà ce statut : la mise à jour ne modifie rien et n’envoie rien. |
notification_emails_disabled | La session a été créée sans contact_details.send_notification_emails: true, donc aucun e-mail de décision n’est envoyé à l’adresse indiquée dans contact_details. |
no_recipient | Aucune adresse n’est connue pour la personne. |
sandbox | La session est une session sandbox et le destinataire n’a pas accepté l’envoi d’e-mails en sandbox : l’e-mail est seulement simulé. Voir consentement à l’e-mail. |
Confirmer la décision
Appelez Mettre à jour le statut de la session avec ces champs :| Champ de mise à jour du statut de la session | Valeur |
|---|---|
new_status | Le même new_status que celui de la prévisualisation |
send_email | true |
email_address | recipient de la prévisualisation |
email_language | language de la prévisualisation |
email_preview_token | preview_token de la prévisualisation |
409 avant que quoi que ce soit ne soit modifié.
Refaites une prévisualisation et confirmez avec le nouveau justificatif.
Pages associées
- Mettre à jour le statut de la session : approuver ou refuser la session et envoyer l’e-mail.
- Prévisualiser l’e-mail de nouvelle soumission : prévisualiser à la place l’e-mail d’une nouvelle soumission.
- Marque blanche : l’expéditeur et l’identité visuelle utilisés pour l’e-mail.
Autorisations
La clé API de votre application, issue de Développeurs -> Clés API dans la Business Console. La clé principale dispose d'un accès complet. Une clé nommée peut être restreinte : aucun, lecture ou écriture par ressource, limitée à certains workflows ou aux sessions approuvées, à une liste d'adresses IP et à une date d'expiration. 401 signifie que la clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a été envoyée, que la clé n'a pas accès à cette ressource ou action, ou que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur une route de session signifie que la session est hors des workflows ou des statuts de la clé. Une clé sans accès aux médias reçoit les URL d'images, de vidéos et de PDF à null, et une clé sans accès en écriture aux sessions reçoit les liens et tokens de session à null. Voir https://docs.didit.me/console/api-keys.
Paramètres de chemin
UUID de la session de vérification. Accepte les identifiants de session d'utilisateur (KYC) et d'entreprise (KYB).
"3fa85f64-5717-4562-b3fc-2c963f66afa6"
Corps
La décision dont vous souhaitez prévisualiser l'e-mail.
Approved, Declined "Approved"
Langue de l'e-mail, même valeur par défaut que pour Update Session Status. Une langue non proposée bascule sur l'anglais ; language dans la réponse indique celle qui est utilisée.
"en"
Réponse
Prévisualisation uniquement. La session reste inchangée et aucun e-mail n'est envoyé.
L'adresse à laquelle l'e-mail est envoyé. Une chaîne vide lorsqu'aucune adresse n'est connue pour la personne : aucun e-mail ne peut alors être envoyé et preview_token est également vide. Transmettez-la en tant que email_address lors de la confirmation.
"person@example.com"
Provenance de recipient. email_verification : l'adresse vérifiée par la personne lors d'une étape de vérification de l'e-mail du flux. contact_details : l'adresse fournie dans contact_details lors de la création de la session. Une chaîne vide lorsqu'il n'y a pas d'adresse.
email_verification, contact_details, "email_verification"
L'en-tête From avec lequel l'e-mail est envoyé.
"Example App <no-reply@mail.example.com>"
La partie nom d'affichage de sender.
"Example App"
La partie adresse de sender.
"no-reply@mail.example.com"
customer : l'e-mail est envoyé depuis le domaine d'expéditeur vérifié de votre application (marque blanche). didit : il est envoyé depuis le propre expéditeur de Didit.
customer, didit "customer"
La ligne d'objet exactement telle qu'elle est envoyée.
"Your verification has been approved in Example App"
Le HTML de l'e-mail exactement tel qu'il est envoyé, avec son logo intégré sous forme de data URL. Affichez-le dans un cadre sandboxé, jamais directement dans le DOM de votre application.
"<!DOCTYPE html><html><body>...</body></html>"
Le texte brut de l'e-mail, tel qu'il apparaît dans le fil Messages de la personne, pour un aperçu compact (le HTML reste l'e-mail que la personne reçoit).
"Verification Approved\n\nYour identity has been successfully verified with Acme Pay. No further action is needed on your part."
La langue dans laquelle l'e-mail est rédigé. Anglais (en) lorsque le email_language demandé n'est pas proposé.
"en"
Indique si la confirmation de la modification avec send_email: true envoie cet e-mail. false lorsque not_sent_reason est défini.
true
Raison pour laquelle la confirmation n'enverrait aucun e-mail, ou null lorsqu'il sera envoyé. status_unchanged : la session possède déjà ce statut, la mise à jour ne change donc rien et n'envoie rien. notification_emails_disabled : la session a été créée sans contact_details.send_notification_emails: true, donc aucun e-mail de décision n'est envoyé à l'adresse fournie dans contact_details. no_recipient : aucune adresse n'est connue pour la personne. sandbox : une session sandbox dont le destinataire n'a pas accepté la réception d'e-mails en sandbox, l'envoi est donc seulement simulé.
status_unchanged, notification_emails_disabled, no_recipient, sandbox, null null
Récépissé signé pour cet e-mail exact, valide pendant 15 minutes. Transmettez-le en tant que email_preview_token à Mettre à jour le statut de la session. Une chaîne vide lorsqu'il n'y a aucun destinataire.
"eyJkaWdlc3QiOiI0ZjJhIn0:1uExAm:Pl3x4mpleS1gnatureValue000000000000000"