API Palisade

Version 2025-04-30 · OpenAPI JSON · Guide

L’API Palisade utilise des catégories de limite de débit indépendantes. Respectez les en-têtes de réponse — ne codez pas les limites en dur.

Catégories
En-têtes de chaque réponse
En-têtes des réponses 429
Corps de la réponse 429

{ "error": "rate_limit_exceeded", "scope": "global" | "dns" | "api_key" | "api_key_dns" | "signup" | "mcp_oauth", "limit": N, "window_seconds": N, "retry_after_seconds": N, "message": "..." }. Les clients doivent respecter Retry-After et espacer leurs tentatives de façon exponentielle en cas d’échecs répétés.

Application des limites

Les limites s’appliquent par clé d’API quand la requête porte des identifiants Basic, par sujet JWT pour les appelants munis d’une session du tableau de bord, et sinon par adresse IP source. Plusieurs clés provenant du même hôte ont chacune leur propre catégorie.

Authentification

Les points de terminaison authentifiés acceptent l’un ou l’autre des mécanismes ci-dessous. Les clients qui utilisent une clé d’API doivent aussi envoyer l’en-tête Palisade-Version avec chaque requête.

BearerAuthHTTP bearer (JWT)
BasicAuthHTTP Basic (clé d’API)

Clé d’API envoyée comme identifiants HTTP Basic. Mettez la clé d’API dans le nom d’utilisateur et laissez le mot de passe vide : Authorization: Basic base64(<api_key>:).

Vérification de l’état

Vérifier la disponibilité de l’API

GET/health-check

Exemple de requête

curl "https://api.palisade.email/health-check"

Réponses

200object

Succès

Corps de la réponse
messagestringobligatoire
successbooleanobligatoire

Domaine

Lister les domaines

GET/domainsauthentification requise

Paramètres de requête

urlstring
groupstring (uuid)
ungroupedstring enum
Valeurs possibles : true, false
dmarc_policiesarray of DmarcPolicy
Valeurs possibles : none, quarantine, reject
monitoring_statusesarray of DmarcSetupState
Valeurs possibles : drifted, none, pending, setup, failed
is_parkedstring enum
Valeurs possibles : true, false
has_open_lookalikesstring enum
Valeurs possibles : true, false
scoreobject
sortstring enum

« severity » trie par priorité des billets, puis par nombre, les domaines sans billet venant en dernier en ordre desc et en premier en ordre asc. « status » place les domaines configurés (y compris ceux sans billet) avant les états de surveillance ou de configuration dans les deux sens, et applique le tri par gravité à l’intérieur de chaque groupe.

Valeurs possibles : created_at, url, monitoring_status, dmarc_policy, score, last_14_days_volume, last_14_days_dmarc_pass_pct, last_14_days_spf_pass_pct, last_14_days_dkim_pass_pct, open_tasks_count, severity, status, group
sort_directionstring enum
Valeurs possibles : desc, asc
per_pagenumber
pagenumber
expandarray of string enum
Valeurs possibles : group, tasks

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of Domainobligatoire
Domain
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
dmarc_optionsobjectobligatoire
properties
additional_emailsarray of string (email)obligatoire
legacy_ruf_emailsarray of string (email)
policyDmarcPolicyobligatoire
Valeurs possibles : none, quarantine, reject
pctnumberobligatoire
Min. : 0 · Max. : 100
spstring enumobligatoire
Valeurs possibles : none, quarantine, reject, same
strict_spfbooleanobligatoire
strict_dkimbooleanobligatoire
spf_optionsobjectobligatoire
properties
force_flatteningbooleanobligatoire
enabledbooleanobligatoire
mechanism_descriptionsobject
managed_dns_statusobjectobligatoire
properties
dmarcDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
spfDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
dkimDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
bimiDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
mta_stsDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
managed_dns_status_sinceobjectobligatoire

Quand chaque enregistrement géré est passé pour la dernière fois à l’état « syncing ». Pour dmarc, se rabat sur dmarc_setup_at quand la transition est antérieure au suivi; les autres enregistrements valent null quand ils ne se sont jamais synchronisés ou que la transition est antérieure au suivi. Utile pour estimer depuis combien de temps un enregistrement « syncing » attend la propagation DNS.

properties
dmarcstring (date-time), nullableobligatoire
spfstring (date-time), nullableobligatoire
dkimstring (date-time), nullableobligatoire
bimistring (date-time), nullableobligatoire
mta_stsstring (date-time), nullableobligatoire
monitoring_statusDmarcSetupStateobligatoire
Valeurs possibles : drifted, none, pending, setup, failed
monitoring_failure_reasonDmarcSetupFailureReasonobligatoire
Valeurs possibles : nameservers_unresolvable, dmarc_record_missing, dmarc_record_added_as_txt_not_cname, dmarc_record_on_parent_only, dmarc_record_missing_palisade_rua, dmarc_record_invalid, dmarc_multiple_records
monitoring_failure_detailDmarcSetupFailureDetailobligatoire
DmarcSetupFailureDetail
observedstring
expected_ruastring
from_hostnamestring
record_countnumber
monitoring_emailstringobligatoire
open_tasks_countnumberobligatoire

Billets ouverts sur ce domaine. Les billets d’occasion comme set_up_bimi ne sont pas comptés, et expand[]=tasks les omet pour concorder.

Min. : 0
highest_open_task_priorityinteger, nullableobligatoire

Priorité du billet ouvert le plus urgent sur ce domaine, sur la même échelle inversée que la priorité d’un billet : 0 critique, 1 élevée, 2 moyenne, 3 faible. Null quand le domaine n’a aucun billet ouvert. Triez sur « severity » pour classer les domaines selon cette valeur.

Min. : 0 · Max. : 3
scorenumberobligatoire
Min. : 0 · Max. : 100
score_bandstring enumobligatoire

Tranche de risque dans laquelle tombe le score : critical, bad, good ou great. Les mêmes tranches que celles du tableau de bord, pour que les clients n’aient pas à réimplémenter les seuils.

Valeurs possibles : critical, bad, good, great
is_parkedbooleanobligatoire
is_dmarc_managedbooleanobligatoire
is_spf_managedbooleanobligatoire
is_dkim_managedbooleanobligatoire
is_bimi_managedbooleanobligatoire
is_mta_sts_managedbooleanobligatoire
bimi_optionsobjectobligatoire
properties
enabledbooleanobligatoire
logostring (uri), nullableobligatoire
certificatestring (uri), nullableobligatoire
bimi_error_reasonManagedDnsErrorReasonobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

Valeurs possibles : setup_timeout, drift, certificate_invalid, record_conflict, delegation_missing, publish_failed, dkim_key_error, check_failed
dmarc_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

spf_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dkim_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

mta_sts_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dns_conflictsarray of DnsConflictobligatoire

Conflits d’enregistrements non résolus observés aux étiquettes que Palisade gère ou surveille pour ce domaine. Vide pour un domaine en bon état. Chaque entrée cite textuellement les enregistrements fautifs, ainsi que ce qu’ont renvoyé chaque serveur de noms faisant autorité et chaque résolveur public, pour qu’on puisse agir sans refaire l’enquête.

DnsConflict
labelstringobligatoire

Le nom DNS exact où se trouvent les enregistrements en conflit.

protocolDnsConflictProtocolobligatoire
Valeurs possibles : dmarc, spf, bimi, mta_sts, dkim
kindDnsConflictKindobligatoire
Valeurs possibles : cname_with_other_data, multiple_dmarc_records, multiple_spf_records, multiple_bimi_records, cname_target_unresolvable, cname_chain_too_deep, authoritative_disagreement, resolver_divergence, managed_delegation_missing
summarystringobligatoire
rfcstringobligatoire

La clause de la spécification que la zone enfreint, p. ex. « RFC 1034 §3.6.2 ».

consequencestringobligatoire

Ce que cela change réellement pour les courriels de ce domaine, en termes simples.

remediationstringobligatoire

Quel enregistrement supprimer et lequel conserver, énoncé assez concrètement pour qu’on puisse agir.

conflicting_recordsarray of stringobligatoire

Les valeurs d’enregistrement fautives, textuellement telles que publiées.

authoritative_nameserversarray of objectobligatoire

Chaque serveur de noms faisant autorité interrogé, et exactement ce qu’il a renvoyé.

items
nameserverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
public_resolversarray of objectobligatoire

Résolveurs publics indépendants interrogés, et exactement ce que chacun a renvoyé.

items
resolverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
occurrence_countnumberobligatoire

Nombre d’exécutions de détection qui ont observé ce conflit.

first_detected_atstring (date-time)obligatoire
last_detected_atstring (date-time)obligatoire
bimi_cname_targetstringobligatoire

L’hôte vers lequel un client fait pointer le CNAME default._bimi.{domain} pour un BIMI servi par Palisade.

bimi_txt_valuestring, nullableobligatoire

La valeur TXT BIMI complète, remplie chaque fois que bimi_options.logo est défini (par l’ingestion de ressources ou par une mise à jour directe de bimi_options). La balise a= n’est incluse que lorsqu’une URL de certificat est aussi définie. Les clients qui préfèrent ne pas déléguer par CNAME peuvent publier eux-mêmes cette valeur à default._bimi.{domain}.

target_spfstring, nullableobligatoire
last_14_days_volumenumberobligatoire
Min. : 0
last_14_days_dmarc_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_spf_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_dkim_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
group_idstring (uuid), nullableobligatoire
registrarstring, nullableobligatoire
groupGroup
Group
idstring (uuid)obligatoire
namestringobligatoire
external_customer_idstring, nullableobligatoire
external_billing_entity_idstring, nullableobligatoire
domainsobject
properties
countnumberobligatoire
enforcement_pctnumberobligatoire
last_14_days_volumenumberobligatoire
last_14_days_dmarc_pass_pctnumberobligatoire
average_scorenumberobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
tasksarray of Task

Renvoie seulement les billets dont l’état est « open »

Task
idstring (uuid)obligatoire
domain_idstring (uuid)obligatoire
domainobject
properties
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
scorenumberobligatoire

Le score d’audit du domaine dans son état actuel.

Min. : 0 · Max. : 100
score_gaininteger

Part du score du domaine que l’achèvement de ce billet permet de regagner, selon le même calcul que celui de la vue d’ensemble du domaine. 0 pour les types de billets que le score ne mesure pas. Présent seulement avec expand[]=domain, puisqu’il dépend du domaine dans son état actuel.

Min. : 0
sending_domainstring, nullableobligatoire
source_idstring (uuid), nullableobligatoire
sourceobject
properties
idstring (uuid)obligatoire
namestringobligatoire
homepagestring (uri), nullableobligatoire
documentationobjectobligatoire
properties
spfstring, nullable
dkimstring, nullable
combinedstring, nullable
categorystring enumobligatoire
Valeurs possibles : SENDING_TOOL, MAILBOX_PROVIDER, VPS_PROVIDER, SECURITY_PROVIDER, EMAIL_RELAY
forwarding_typestring enumobligatoire
Valeurs possibles : NOT_FORWARDER, FORWARDER, FORWARDER_ONLY
spf_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
spf_supported_methodsarray of string enumobligatoire
items
Valeurs possibles : DIRECT, SUBDOMAIN, MANAGED_SUBDOMAIN
spf_support_optionsobjectobligatoire
properties
directobject, nullableobligatoire
properties
valuesarray of stringobligatoire
requires_advanced_configboolean, nullableobligatoire
subdomainobject, nullableobligatoire
properties
is_managedbooleanobligatoire
requires_user_selectionbooleanobligatoire
pathstring, nullableobligatoire
valuestring, nullableobligatoire
dns_recordsarray of objectobligatoire
dkim_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
dkim_discovery_selectorsarray of stringobligatoire
instructionsobject, nullable

BÊTA : peut être développé seulement pour GET /tasks/:id. Peut parfois contenir des instructions.

properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME
namestring
valuestring
source_aliasstring, nullableobligatoire
prioritynumberobligatoire
sequencenumberobligatoire

La place du billet dans le déploiement de l’authentification des courriels, les plus basses en premier : 10 configuration de DMARC, 20 enregistrements de base, 30 alignement SPF/DKIM, 40 nettoyage, 50 application, 60 renforcement. Distincte de la priorité, qui est l’urgence; la séquence ordonne les billets de priorité égale, puisqu’un billet d’alignement ne peut pas être traité avant que les rapports DMARC existent pour montrer l’échec.

statusTaskStatusobligatoire
Valeurs possibles : open, snoozed, canceled, dismissed, pending, done
typeTaskTypeobligatoire
Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
descriptionstringobligatoire
snoozed_untilstring (date-time), nullableobligatoire
marked_pending_atstring (date-time), nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
resolved_atstring (date-time), nullableobligatoire
resolution_reasonTaskResolutionReasonobligatoire

Pourquoi un billet terminé a été fermé. « verified » : la propre vérification de Palisade a constaté que le problème avait disparu. « manual » : une personne ou un appelant de l’API l’a marqué comme terminé, et rien n’a été vérifié. Null pour un billet qui n’est pas terminé, et pour un billet fermé avant que la raison commence à être enregistrée. D’autres valeurs pourraient s’ajouter; traitez donc une valeur inconnue comme non précisée.

Valeurs possibles : verified, manual
dmarc_setup_atstring (date-time), nullableobligatoire
dmarc_verified_atstring (date-time), nullableobligatoire

Quand le domaine a atteint pour la première fois l’état de surveillance « setup » et que la collecte des rapports DMARC a commencé.

monitoring_sincestring, nullableobligatoire

Le premier jour (yyyy-MM-dd) où un rapport agrégé DMARC a réellement été reçu pour ce domaine. C’est le dénominateur honnête de toute affirmation sur l’activité : rien avant ce jour n’était observable, de sorte qu’un domaine surveillé depuis une semaine ne peut jamais, en toute vérité, sembler calme depuis quatre-vingt-dix jours. Null jusqu’à l’arrivée du premier rapport.

created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Ajouter un domaine

POST/domainsauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

urlstringobligatoire
group_idstring (uuid)
use_stored_scanboolean

Exemple de requête

curl -X POST "https://api.palisade.email/domains" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "string",
  "group_id": "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1",
  "use_stored_scan": true
}'

Réponses

200object

Succès

Corps de la réponse
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
dmarc_optionsobjectobligatoire
properties
additional_emailsarray of string (email)obligatoire
legacy_ruf_emailsarray of string (email)
policyDmarcPolicyobligatoire
Valeurs possibles : none, quarantine, reject
pctnumberobligatoire
Min. : 0 · Max. : 100
spstring enumobligatoire
Valeurs possibles : none, quarantine, reject, same
strict_spfbooleanobligatoire
strict_dkimbooleanobligatoire
spf_optionsobjectobligatoire
properties
force_flatteningbooleanobligatoire
enabledbooleanobligatoire
mechanism_descriptionsobject
managed_dns_statusobjectobligatoire
properties
dmarcDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
spfDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
dkimDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
bimiDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
mta_stsDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
managed_dns_status_sinceobjectobligatoire

Quand chaque enregistrement géré est passé pour la dernière fois à l’état « syncing ». Pour dmarc, se rabat sur dmarc_setup_at quand la transition est antérieure au suivi; les autres enregistrements valent null quand ils ne se sont jamais synchronisés ou que la transition est antérieure au suivi. Utile pour estimer depuis combien de temps un enregistrement « syncing » attend la propagation DNS.

properties
dmarcstring (date-time), nullableobligatoire
spfstring (date-time), nullableobligatoire
dkimstring (date-time), nullableobligatoire
bimistring (date-time), nullableobligatoire
mta_stsstring (date-time), nullableobligatoire
monitoring_statusDmarcSetupStateobligatoire
Valeurs possibles : drifted, none, pending, setup, failed
monitoring_failure_reasonDmarcSetupFailureReasonobligatoire
Valeurs possibles : nameservers_unresolvable, dmarc_record_missing, dmarc_record_added_as_txt_not_cname, dmarc_record_on_parent_only, dmarc_record_missing_palisade_rua, dmarc_record_invalid, dmarc_multiple_records
monitoring_failure_detailDmarcSetupFailureDetailobligatoire
DmarcSetupFailureDetail
observedstring
expected_ruastring
from_hostnamestring
record_countnumber
monitoring_emailstringobligatoire
open_tasks_countnumberobligatoire

Billets ouverts sur ce domaine. Les billets d’occasion comme set_up_bimi ne sont pas comptés, et expand[]=tasks les omet pour concorder.

Min. : 0
highest_open_task_priorityinteger, nullableobligatoire

Priorité du billet ouvert le plus urgent sur ce domaine, sur la même échelle inversée que la priorité d’un billet : 0 critique, 1 élevée, 2 moyenne, 3 faible. Null quand le domaine n’a aucun billet ouvert. Triez sur « severity » pour classer les domaines selon cette valeur.

Min. : 0 · Max. : 3
scorenumberobligatoire
Min. : 0 · Max. : 100
score_bandstring enumobligatoire

Tranche de risque dans laquelle tombe le score : critical, bad, good ou great. Les mêmes tranches que celles du tableau de bord, pour que les clients n’aient pas à réimplémenter les seuils.

Valeurs possibles : critical, bad, good, great
is_parkedbooleanobligatoire
is_dmarc_managedbooleanobligatoire
is_spf_managedbooleanobligatoire
is_dkim_managedbooleanobligatoire
is_bimi_managedbooleanobligatoire
is_mta_sts_managedbooleanobligatoire
bimi_optionsobjectobligatoire
properties
enabledbooleanobligatoire
logostring (uri), nullableobligatoire
certificatestring (uri), nullableobligatoire
bimi_error_reasonManagedDnsErrorReasonobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

Valeurs possibles : setup_timeout, drift, certificate_invalid, record_conflict, delegation_missing, publish_failed, dkim_key_error, check_failed
dmarc_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

spf_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dkim_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

mta_sts_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dns_conflictsarray of DnsConflictobligatoire

Conflits d’enregistrements non résolus observés aux étiquettes que Palisade gère ou surveille pour ce domaine. Vide pour un domaine en bon état. Chaque entrée cite textuellement les enregistrements fautifs, ainsi que ce qu’ont renvoyé chaque serveur de noms faisant autorité et chaque résolveur public, pour qu’on puisse agir sans refaire l’enquête.

DnsConflict
labelstringobligatoire

Le nom DNS exact où se trouvent les enregistrements en conflit.

protocolDnsConflictProtocolobligatoire
Valeurs possibles : dmarc, spf, bimi, mta_sts, dkim
kindDnsConflictKindobligatoire
Valeurs possibles : cname_with_other_data, multiple_dmarc_records, multiple_spf_records, multiple_bimi_records, cname_target_unresolvable, cname_chain_too_deep, authoritative_disagreement, resolver_divergence, managed_delegation_missing
summarystringobligatoire
rfcstringobligatoire

La clause de la spécification que la zone enfreint, p. ex. « RFC 1034 §3.6.2 ».

consequencestringobligatoire

Ce que cela change réellement pour les courriels de ce domaine, en termes simples.

remediationstringobligatoire

Quel enregistrement supprimer et lequel conserver, énoncé assez concrètement pour qu’on puisse agir.

conflicting_recordsarray of stringobligatoire

Les valeurs d’enregistrement fautives, textuellement telles que publiées.

authoritative_nameserversarray of objectobligatoire

Chaque serveur de noms faisant autorité interrogé, et exactement ce qu’il a renvoyé.

items
nameserverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
public_resolversarray of objectobligatoire

Résolveurs publics indépendants interrogés, et exactement ce que chacun a renvoyé.

items
resolverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
occurrence_countnumberobligatoire

Nombre d’exécutions de détection qui ont observé ce conflit.

first_detected_atstring (date-time)obligatoire
last_detected_atstring (date-time)obligatoire
bimi_cname_targetstringobligatoire

L’hôte vers lequel un client fait pointer le CNAME default._bimi.{domain} pour un BIMI servi par Palisade.

bimi_txt_valuestring, nullableobligatoire

La valeur TXT BIMI complète, remplie chaque fois que bimi_options.logo est défini (par l’ingestion de ressources ou par une mise à jour directe de bimi_options). La balise a= n’est incluse que lorsqu’une URL de certificat est aussi définie. Les clients qui préfèrent ne pas déléguer par CNAME peuvent publier eux-mêmes cette valeur à default._bimi.{domain}.

target_spfstring, nullableobligatoire
last_14_days_volumenumberobligatoire
Min. : 0
last_14_days_dmarc_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_spf_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_dkim_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
group_idstring (uuid), nullableobligatoire
registrarstring, nullableobligatoire
dmarc_setup_atstring (date-time), nullableobligatoire
dmarc_verified_atstring (date-time), nullableobligatoire

Quand le domaine a atteint pour la première fois l’état de surveillance « setup » et que la collecte des rapports DMARC a commencé.

monitoring_sincestring, nullableobligatoire

Le premier jour (yyyy-MM-dd) où un rapport agrégé DMARC a réellement été reçu pour ce domaine. C’est le dénominateur honnête de toute affirmation sur l’activité : rien avant ce jour n’était observable, de sorte qu’un domaine surveillé depuis une semaine ne peut jamais, en toute vérité, sembler calme depuis quatre-vingt-dix jours. Null jusqu’à l’arrivée du premier rapport.

created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
409object

Conflit

Corps de la réponse

Obtenir un domaine

GET/domains/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200Domain

Succès

Corps de la réponse
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
dmarc_optionsobjectobligatoire
properties
additional_emailsarray of string (email)obligatoire
legacy_ruf_emailsarray of string (email)
policyDmarcPolicyobligatoire
Valeurs possibles : none, quarantine, reject
pctnumberobligatoire
Min. : 0 · Max. : 100
spstring enumobligatoire
Valeurs possibles : none, quarantine, reject, same
strict_spfbooleanobligatoire
strict_dkimbooleanobligatoire
spf_optionsobjectobligatoire
properties
force_flatteningbooleanobligatoire
enabledbooleanobligatoire
mechanism_descriptionsobject
managed_dns_statusobjectobligatoire
properties
dmarcDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
spfDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
dkimDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
bimiDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
mta_stsDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
managed_dns_status_sinceobjectobligatoire

Quand chaque enregistrement géré est passé pour la dernière fois à l’état « syncing ». Pour dmarc, se rabat sur dmarc_setup_at quand la transition est antérieure au suivi; les autres enregistrements valent null quand ils ne se sont jamais synchronisés ou que la transition est antérieure au suivi. Utile pour estimer depuis combien de temps un enregistrement « syncing » attend la propagation DNS.

properties
dmarcstring (date-time), nullableobligatoire
spfstring (date-time), nullableobligatoire
dkimstring (date-time), nullableobligatoire
bimistring (date-time), nullableobligatoire
mta_stsstring (date-time), nullableobligatoire
monitoring_statusDmarcSetupStateobligatoire
Valeurs possibles : drifted, none, pending, setup, failed
monitoring_failure_reasonDmarcSetupFailureReasonobligatoire
Valeurs possibles : nameservers_unresolvable, dmarc_record_missing, dmarc_record_added_as_txt_not_cname, dmarc_record_on_parent_only, dmarc_record_missing_palisade_rua, dmarc_record_invalid, dmarc_multiple_records
monitoring_failure_detailDmarcSetupFailureDetailobligatoire
DmarcSetupFailureDetail
observedstring
expected_ruastring
from_hostnamestring
record_countnumber
monitoring_emailstringobligatoire
open_tasks_countnumberobligatoire

Billets ouverts sur ce domaine. Les billets d’occasion comme set_up_bimi ne sont pas comptés, et expand[]=tasks les omet pour concorder.

Min. : 0
highest_open_task_priorityinteger, nullableobligatoire

Priorité du billet ouvert le plus urgent sur ce domaine, sur la même échelle inversée que la priorité d’un billet : 0 critique, 1 élevée, 2 moyenne, 3 faible. Null quand le domaine n’a aucun billet ouvert. Triez sur « severity » pour classer les domaines selon cette valeur.

Min. : 0 · Max. : 3
scorenumberobligatoire
Min. : 0 · Max. : 100
score_bandstring enumobligatoire

Tranche de risque dans laquelle tombe le score : critical, bad, good ou great. Les mêmes tranches que celles du tableau de bord, pour que les clients n’aient pas à réimplémenter les seuils.

Valeurs possibles : critical, bad, good, great
is_parkedbooleanobligatoire
is_dmarc_managedbooleanobligatoire
is_spf_managedbooleanobligatoire
is_dkim_managedbooleanobligatoire
is_bimi_managedbooleanobligatoire
is_mta_sts_managedbooleanobligatoire
bimi_optionsobjectobligatoire
properties
enabledbooleanobligatoire
logostring (uri), nullableobligatoire
certificatestring (uri), nullableobligatoire
bimi_error_reasonManagedDnsErrorReasonobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

Valeurs possibles : setup_timeout, drift, certificate_invalid, record_conflict, delegation_missing, publish_failed, dkim_key_error, check_failed
dmarc_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

spf_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dkim_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

mta_sts_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dns_conflictsarray of DnsConflictobligatoire

Conflits d’enregistrements non résolus observés aux étiquettes que Palisade gère ou surveille pour ce domaine. Vide pour un domaine en bon état. Chaque entrée cite textuellement les enregistrements fautifs, ainsi que ce qu’ont renvoyé chaque serveur de noms faisant autorité et chaque résolveur public, pour qu’on puisse agir sans refaire l’enquête.

DnsConflict
labelstringobligatoire

Le nom DNS exact où se trouvent les enregistrements en conflit.

protocolDnsConflictProtocolobligatoire
Valeurs possibles : dmarc, spf, bimi, mta_sts, dkim
kindDnsConflictKindobligatoire
Valeurs possibles : cname_with_other_data, multiple_dmarc_records, multiple_spf_records, multiple_bimi_records, cname_target_unresolvable, cname_chain_too_deep, authoritative_disagreement, resolver_divergence, managed_delegation_missing
summarystringobligatoire
rfcstringobligatoire

La clause de la spécification que la zone enfreint, p. ex. « RFC 1034 §3.6.2 ».

consequencestringobligatoire

Ce que cela change réellement pour les courriels de ce domaine, en termes simples.

remediationstringobligatoire

Quel enregistrement supprimer et lequel conserver, énoncé assez concrètement pour qu’on puisse agir.

conflicting_recordsarray of stringobligatoire

Les valeurs d’enregistrement fautives, textuellement telles que publiées.

authoritative_nameserversarray of objectobligatoire

Chaque serveur de noms faisant autorité interrogé, et exactement ce qu’il a renvoyé.

items
nameserverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
public_resolversarray of objectobligatoire

Résolveurs publics indépendants interrogés, et exactement ce que chacun a renvoyé.

items
resolverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
occurrence_countnumberobligatoire

Nombre d’exécutions de détection qui ont observé ce conflit.

first_detected_atstring (date-time)obligatoire
last_detected_atstring (date-time)obligatoire
bimi_cname_targetstringobligatoire

L’hôte vers lequel un client fait pointer le CNAME default._bimi.{domain} pour un BIMI servi par Palisade.

bimi_txt_valuestring, nullableobligatoire

La valeur TXT BIMI complète, remplie chaque fois que bimi_options.logo est défini (par l’ingestion de ressources ou par une mise à jour directe de bimi_options). La balise a= n’est incluse que lorsqu’une URL de certificat est aussi définie. Les clients qui préfèrent ne pas déléguer par CNAME peuvent publier eux-mêmes cette valeur à default._bimi.{domain}.

target_spfstring, nullableobligatoire
last_14_days_volumenumberobligatoire
Min. : 0
last_14_days_dmarc_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_spf_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_dkim_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
group_idstring (uuid), nullableobligatoire
registrarstring, nullableobligatoire
groupGroup
Group
idstring (uuid)obligatoire
namestringobligatoire
external_customer_idstring, nullableobligatoire
external_billing_entity_idstring, nullableobligatoire
domainsobject
properties
countnumberobligatoire
enforcement_pctnumberobligatoire
last_14_days_volumenumberobligatoire
last_14_days_dmarc_pass_pctnumberobligatoire
average_scorenumberobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
tasksarray of Task

Renvoie seulement les billets dont l’état est « open »

Task
idstring (uuid)obligatoire
domain_idstring (uuid)obligatoire
domainobject
properties
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
scorenumberobligatoire

Le score d’audit du domaine dans son état actuel.

Min. : 0 · Max. : 100
score_gaininteger

Part du score du domaine que l’achèvement de ce billet permet de regagner, selon le même calcul que celui de la vue d’ensemble du domaine. 0 pour les types de billets que le score ne mesure pas. Présent seulement avec expand[]=domain, puisqu’il dépend du domaine dans son état actuel.

Min. : 0
sending_domainstring, nullableobligatoire
source_idstring (uuid), nullableobligatoire
sourceobject
properties
idstring (uuid)obligatoire
namestringobligatoire
homepagestring (uri), nullableobligatoire
documentationobjectobligatoire
properties
spfstring, nullable
dkimstring, nullable
combinedstring, nullable
categorystring enumobligatoire
Valeurs possibles : SENDING_TOOL, MAILBOX_PROVIDER, VPS_PROVIDER, SECURITY_PROVIDER, EMAIL_RELAY
forwarding_typestring enumobligatoire
Valeurs possibles : NOT_FORWARDER, FORWARDER, FORWARDER_ONLY
spf_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
spf_supported_methodsarray of string enumobligatoire
items
Valeurs possibles : DIRECT, SUBDOMAIN, MANAGED_SUBDOMAIN
spf_support_optionsobjectobligatoire
properties
directobject, nullableobligatoire
properties
valuesarray of stringobligatoire
requires_advanced_configboolean, nullableobligatoire
subdomainobject, nullableobligatoire
properties
is_managedbooleanobligatoire
requires_user_selectionbooleanobligatoire
pathstring, nullableobligatoire
valuestring, nullableobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
valuestring
dkim_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
dkim_discovery_selectorsarray of stringobligatoire
instructionsobject, nullable

BÊTA : peut être développé seulement pour GET /tasks/:id. Peut parfois contenir des instructions.

properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME
namestring
valuestring
source_aliasstring, nullableobligatoire
prioritynumberobligatoire
sequencenumberobligatoire

La place du billet dans le déploiement de l’authentification des courriels, les plus basses en premier : 10 configuration de DMARC, 20 enregistrements de base, 30 alignement SPF/DKIM, 40 nettoyage, 50 application, 60 renforcement. Distincte de la priorité, qui est l’urgence; la séquence ordonne les billets de priorité égale, puisqu’un billet d’alignement ne peut pas être traité avant que les rapports DMARC existent pour montrer l’échec.

statusTaskStatusobligatoire
Valeurs possibles : open, snoozed, canceled, dismissed, pending, done
typeTaskTypeobligatoire
Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
descriptionstringobligatoire
snoozed_untilstring (date-time), nullableobligatoire
marked_pending_atstring (date-time), nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
resolved_atstring (date-time), nullableobligatoire
resolution_reasonTaskResolutionReasonobligatoire

Pourquoi un billet terminé a été fermé. « verified » : la propre vérification de Palisade a constaté que le problème avait disparu. « manual » : une personne ou un appelant de l’API l’a marqué comme terminé, et rien n’a été vérifié. Null pour un billet qui n’est pas terminé, et pour un billet fermé avant que la raison commence à être enregistrée. D’autres valeurs pourraient s’ajouter; traitez donc une valeur inconnue comme non précisée.

Valeurs possibles : verified, manual
dmarc_setup_atstring (date-time), nullableobligatoire
dmarc_verified_atstring (date-time), nullableobligatoire

Quand le domaine a atteint pour la première fois l’état de surveillance « setup » et que la collecte des rapports DMARC a commencé.

monitoring_sincestring, nullableobligatoire

Le premier jour (yyyy-MM-dd) où un rapport agrégé DMARC a réellement été reçu pour ce domaine. C’est le dénominateur honnête de toute affirmation sur l’activité : rien avant ce jour n’était observable, de sorte qu’un domaine surveillé depuis une semaine ne peut jamais, en toute vérité, sembler calme depuis quatre-vingt-dix jours. Null jusqu’à l’arrivée du premier rapport.

created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Mettre à jour un domaine

POST/domains/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

group_idstring (uuid), nullable
is_parkedboolean
dmarc_optionsobject
properties
additional_emailsarray of string (email)
legacy_ruf_emailsarray of string (email)
policyDmarcPolicy
Valeurs possibles : none, quarantine, reject
pctnumber
Min. : 0 · Max. : 100
spstring enum
Valeurs possibles : none, quarantine, reject, same
strict_spfboolean
strict_dkimboolean
spf_optionsobject
properties
force_flatteningboolean
enabledboolean
mechanism_descriptionsobject
dmarc_setup_atstring (date-time)
target_spfstring
bimi_optionsobject
properties
enabledboolean
logostring (uri), nullable
certificatestring (uri), nullable
backfill_ticketsboolean

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "group_id": "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1",
  "is_parked": true,
  "dmarc_options": {
    "additional_emails": [
      "user@example.com"
    ],
    "legacy_ruf_emails": [
      "user@example.com"
    ],
    "policy": "none",
    "pct": 0,
    "sp": "none",
    "strict_spf": true,
    "strict_dkim": true
  },
  "spf_options": {
    "force_flattening": true,
    "enabled": true,
    "mechanism_descriptions": {}
  },
  "dmarc_setup_at": "2025-01-15T12:00:00.000Z",
  "target_spf": "string",
  "bimi_options": {
    "enabled": true,
    "logo": "https://example.com",
    "certificate": "https://example.com"
  },
  "backfill_tickets": true
}'

Réponses

200object

Succès

Corps de la réponse
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
dmarc_optionsobjectobligatoire
properties
additional_emailsarray of string (email)obligatoire
legacy_ruf_emailsarray of string (email)
policyDmarcPolicyobligatoire
Valeurs possibles : none, quarantine, reject
pctnumberobligatoire
Min. : 0 · Max. : 100
spstring enumobligatoire
Valeurs possibles : none, quarantine, reject, same
strict_spfbooleanobligatoire
strict_dkimbooleanobligatoire
spf_optionsobjectobligatoire
properties
force_flatteningbooleanobligatoire
enabledbooleanobligatoire
mechanism_descriptionsobject
managed_dns_statusobjectobligatoire
properties
dmarcDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
spfDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
dkimDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
bimiDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
mta_stsDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
managed_dns_status_sinceobjectobligatoire

Quand chaque enregistrement géré est passé pour la dernière fois à l’état « syncing ». Pour dmarc, se rabat sur dmarc_setup_at quand la transition est antérieure au suivi; les autres enregistrements valent null quand ils ne se sont jamais synchronisés ou que la transition est antérieure au suivi. Utile pour estimer depuis combien de temps un enregistrement « syncing » attend la propagation DNS.

properties
dmarcstring (date-time), nullableobligatoire
spfstring (date-time), nullableobligatoire
dkimstring (date-time), nullableobligatoire
bimistring (date-time), nullableobligatoire
mta_stsstring (date-time), nullableobligatoire
monitoring_statusDmarcSetupStateobligatoire
Valeurs possibles : drifted, none, pending, setup, failed
monitoring_failure_reasonDmarcSetupFailureReasonobligatoire
Valeurs possibles : nameservers_unresolvable, dmarc_record_missing, dmarc_record_added_as_txt_not_cname, dmarc_record_on_parent_only, dmarc_record_missing_palisade_rua, dmarc_record_invalid, dmarc_multiple_records
monitoring_failure_detailDmarcSetupFailureDetailobligatoire
DmarcSetupFailureDetail
observedstring
expected_ruastring
from_hostnamestring
record_countnumber
monitoring_emailstringobligatoire
open_tasks_countnumberobligatoire

Billets ouverts sur ce domaine. Les billets d’occasion comme set_up_bimi ne sont pas comptés, et expand[]=tasks les omet pour concorder.

Min. : 0
highest_open_task_priorityinteger, nullableobligatoire

Priorité du billet ouvert le plus urgent sur ce domaine, sur la même échelle inversée que la priorité d’un billet : 0 critique, 1 élevée, 2 moyenne, 3 faible. Null quand le domaine n’a aucun billet ouvert. Triez sur « severity » pour classer les domaines selon cette valeur.

Min. : 0 · Max. : 3
scorenumberobligatoire
Min. : 0 · Max. : 100
score_bandstring enumobligatoire

Tranche de risque dans laquelle tombe le score : critical, bad, good ou great. Les mêmes tranches que celles du tableau de bord, pour que les clients n’aient pas à réimplémenter les seuils.

Valeurs possibles : critical, bad, good, great
is_parkedbooleanobligatoire
is_dmarc_managedbooleanobligatoire
is_spf_managedbooleanobligatoire
is_dkim_managedbooleanobligatoire
is_bimi_managedbooleanobligatoire
is_mta_sts_managedbooleanobligatoire
bimi_optionsobjectobligatoire
properties
enabledbooleanobligatoire
logostring (uri), nullableobligatoire
certificatestring (uri), nullableobligatoire
bimi_error_reasonManagedDnsErrorReasonobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

Valeurs possibles : setup_timeout, drift, certificate_invalid, record_conflict, delegation_missing, publish_failed, dkim_key_error, check_failed
dmarc_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

spf_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dkim_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

mta_sts_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dns_conflictsarray of DnsConflictobligatoire

Conflits d’enregistrements non résolus observés aux étiquettes que Palisade gère ou surveille pour ce domaine. Vide pour un domaine en bon état. Chaque entrée cite textuellement les enregistrements fautifs, ainsi que ce qu’ont renvoyé chaque serveur de noms faisant autorité et chaque résolveur public, pour qu’on puisse agir sans refaire l’enquête.

DnsConflict
labelstringobligatoire

Le nom DNS exact où se trouvent les enregistrements en conflit.

protocolDnsConflictProtocolobligatoire
Valeurs possibles : dmarc, spf, bimi, mta_sts, dkim
kindDnsConflictKindobligatoire
Valeurs possibles : cname_with_other_data, multiple_dmarc_records, multiple_spf_records, multiple_bimi_records, cname_target_unresolvable, cname_chain_too_deep, authoritative_disagreement, resolver_divergence, managed_delegation_missing
summarystringobligatoire
rfcstringobligatoire

La clause de la spécification que la zone enfreint, p. ex. « RFC 1034 §3.6.2 ».

consequencestringobligatoire

Ce que cela change réellement pour les courriels de ce domaine, en termes simples.

remediationstringobligatoire

Quel enregistrement supprimer et lequel conserver, énoncé assez concrètement pour qu’on puisse agir.

conflicting_recordsarray of stringobligatoire

Les valeurs d’enregistrement fautives, textuellement telles que publiées.

authoritative_nameserversarray of objectobligatoire

Chaque serveur de noms faisant autorité interrogé, et exactement ce qu’il a renvoyé.

items
nameserverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
public_resolversarray of objectobligatoire

Résolveurs publics indépendants interrogés, et exactement ce que chacun a renvoyé.

items
resolverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
occurrence_countnumberobligatoire

Nombre d’exécutions de détection qui ont observé ce conflit.

first_detected_atstring (date-time)obligatoire
last_detected_atstring (date-time)obligatoire
bimi_cname_targetstringobligatoire

L’hôte vers lequel un client fait pointer le CNAME default._bimi.{domain} pour un BIMI servi par Palisade.

bimi_txt_valuestring, nullableobligatoire

La valeur TXT BIMI complète, remplie chaque fois que bimi_options.logo est défini (par l’ingestion de ressources ou par une mise à jour directe de bimi_options). La balise a= n’est incluse que lorsqu’une URL de certificat est aussi définie. Les clients qui préfèrent ne pas déléguer par CNAME peuvent publier eux-mêmes cette valeur à default._bimi.{domain}.

target_spfstring, nullableobligatoire
last_14_days_volumenumberobligatoire
Min. : 0
last_14_days_dmarc_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_spf_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_dkim_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
group_idstring (uuid), nullableobligatoire
registrarstring, nullableobligatoire
dmarc_setup_atstring (date-time), nullableobligatoire
dmarc_verified_atstring (date-time), nullableobligatoire

Quand le domaine a atteint pour la première fois l’état de surveillance « setup » et que la collecte des rapports DMARC a commencé.

monitoring_sincestring, nullableobligatoire

Le premier jour (yyyy-MM-dd) où un rapport agrégé DMARC a réellement été reçu pour ce domaine. C’est le dénominateur honnête de toute affirmation sur l’activité : rien avant ce jour n’était observable, de sorte qu’un domaine surveillé depuis une semaine ne peut jamais, en toute vérité, sembler calme depuis quatre-vingt-dix jours. Null jusqu’à l’arrivée du premier rapport.

created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
422object

Un nouveau bimi_options.certificate a été refusé : ce n’est pas un VMC, sa chaîne ne se valide pas, ou il ne couvre pas ce domaine

Corps de la réponse
codestring enumobligatoire
Valeurs possibles : bimi_certificate_invalid
reasonstring enumobligatoire
Valeurs possibles : pem_parse_failed, not_a_vmc, logotype_missing, logo_hash_mismatch, svg_not_tiny_ps, incomplete_chain, chain_untrusted, chain_expired, chain_signature_invalid, certificate_not_yet_valid, san_mismatch, contains_private_key
messagestringobligatoire

Supprimer un domaine

DELETE/domains/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/domains/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Supprimé

Corps de la réponse
deletedbooleanobligatoire
objectstringobligatoire
idstring (uuid)obligatoire

Ajouter des domaines en lot

POST/domains/bulkauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

domainsarray of objectobligatoire
items
urlstringobligatoire
group_idstring (uuid)

Exemple de requête

curl -X POST "https://api.palisade.email/domains/bulk" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "domains": [
    {
      "url": "string",
      "group_id": "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1"
    }
  ]
}'

Réponses

200object

Succès

Corps de la réponse
creatednumberobligatoire

Nombre de domaines créés.

failednumberobligatoire

Nombre d’entrées qui n’ont pas pu être créées.

resultsarray of objectobligatoire

Une entrée par domaine soumis, dans l’ordre de la requête. Les entrées sont indépendantes : un échec ici n’annule pas les domaines qui ont réussi, et la réponse est 200 même quand toutes les entrées ont échoué; examinez donc « failed » plutôt que le code d’état.

items
urlstringobligatoire

Le domaine de la requête, renvoyé dans l’ordre où il a été envoyé.

statusstring enumobligatoire
Valeurs possibles : created, failed
domainobject, nullableobligatoire

Le domaine créé, ou null quand cette entrée a échoué.

properties
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
dmarc_optionsobjectobligatoire
properties
additional_emailsarray of string (email)obligatoire
legacy_ruf_emailsarray of string (email)
policyDmarcPolicyobligatoire
Valeurs possibles : none, quarantine, reject
pctnumberobligatoire
Min. : 0 · Max. : 100
spstring enumobligatoire
Valeurs possibles : none, quarantine, reject, same
strict_spfbooleanobligatoire
strict_dkimbooleanobligatoire
spf_optionsobjectobligatoire
properties
force_flatteningbooleanobligatoire
enabledbooleanobligatoire
mechanism_descriptionsobject
managed_dns_statusobjectobligatoire
properties
dmarcDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
spfDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
dkimDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
bimiDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
mta_stsDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
managed_dns_status_sinceobjectobligatoire

Quand chaque enregistrement géré est passé pour la dernière fois à l’état « syncing ». Pour dmarc, se rabat sur dmarc_setup_at quand la transition est antérieure au suivi; les autres enregistrements valent null quand ils ne se sont jamais synchronisés ou que la transition est antérieure au suivi. Utile pour estimer depuis combien de temps un enregistrement « syncing » attend la propagation DNS.

properties
dmarcstring (date-time), nullableobligatoire
spfstring (date-time), nullableobligatoire
dkimstring (date-time), nullableobligatoire
bimistring (date-time), nullableobligatoire
mta_stsstring (date-time), nullableobligatoire
monitoring_statusDmarcSetupStateobligatoire
Valeurs possibles : drifted, none, pending, setup, failed
monitoring_failure_reasonDmarcSetupFailureReasonobligatoire
Valeurs possibles : nameservers_unresolvable, dmarc_record_missing, dmarc_record_added_as_txt_not_cname, dmarc_record_on_parent_only, dmarc_record_missing_palisade_rua, dmarc_record_invalid, dmarc_multiple_records
monitoring_failure_detailDmarcSetupFailureDetailobligatoire
DmarcSetupFailureDetail
observedstring
expected_ruastring
from_hostnamestring
record_countnumber
monitoring_emailstringobligatoire
open_tasks_countnumberobligatoire

Billets ouverts sur ce domaine. Les billets d’occasion comme set_up_bimi ne sont pas comptés, et expand[]=tasks les omet pour concorder.

Min. : 0
highest_open_task_priorityinteger, nullableobligatoire

Priorité du billet ouvert le plus urgent sur ce domaine, sur la même échelle inversée que la priorité d’un billet : 0 critique, 1 élevée, 2 moyenne, 3 faible. Null quand le domaine n’a aucun billet ouvert. Triez sur « severity » pour classer les domaines selon cette valeur.

Min. : 0 · Max. : 3
scorenumberobligatoire
Min. : 0 · Max. : 100
score_bandstring enumobligatoire

Tranche de risque dans laquelle tombe le score : critical, bad, good ou great. Les mêmes tranches que celles du tableau de bord, pour que les clients n’aient pas à réimplémenter les seuils.

Valeurs possibles : critical, bad, good, great
is_parkedbooleanobligatoire
is_dmarc_managedbooleanobligatoire
is_spf_managedbooleanobligatoire
is_dkim_managedbooleanobligatoire
is_bimi_managedbooleanobligatoire
is_mta_sts_managedbooleanobligatoire
bimi_optionsobjectobligatoire
properties
enabledbooleanobligatoire
logostring (uri), nullableobligatoire
certificatestring (uri), nullableobligatoire
bimi_error_reasonManagedDnsErrorReasonobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

Valeurs possibles : setup_timeout, drift, certificate_invalid, record_conflict, delegation_missing, publish_failed, dkim_key_error, check_failed
dmarc_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

spf_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dkim_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

mta_sts_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dns_conflictsarray of DnsConflictobligatoire

Conflits d’enregistrements non résolus observés aux étiquettes que Palisade gère ou surveille pour ce domaine. Vide pour un domaine en bon état. Chaque entrée cite textuellement les enregistrements fautifs, ainsi que ce qu’ont renvoyé chaque serveur de noms faisant autorité et chaque résolveur public, pour qu’on puisse agir sans refaire l’enquête.

DnsConflict
labelstringobligatoire

Le nom DNS exact où se trouvent les enregistrements en conflit.

protocolDnsConflictProtocolobligatoire
Valeurs possibles : dmarc, spf, bimi, mta_sts, dkim
kindDnsConflictKindobligatoire
Valeurs possibles : cname_with_other_data, multiple_dmarc_records, multiple_spf_records, multiple_bimi_records, cname_target_unresolvable, cname_chain_too_deep, authoritative_disagreement, resolver_divergence, managed_delegation_missing
summarystringobligatoire
rfcstringobligatoire

La clause de la spécification que la zone enfreint, p. ex. « RFC 1034 §3.6.2 ».

consequencestringobligatoire

Ce que cela change réellement pour les courriels de ce domaine, en termes simples.

remediationstringobligatoire

Quel enregistrement supprimer et lequel conserver, énoncé assez concrètement pour qu’on puisse agir.

conflicting_recordsarray of stringobligatoire

Les valeurs d’enregistrement fautives, textuellement telles que publiées.

authoritative_nameserversarray of objectobligatoire

Chaque serveur de noms faisant autorité interrogé, et exactement ce qu’il a renvoyé.

items
nameserverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
public_resolversarray of objectobligatoire

Résolveurs publics indépendants interrogés, et exactement ce que chacun a renvoyé.

items
resolverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
occurrence_countnumberobligatoire

Nombre d’exécutions de détection qui ont observé ce conflit.

first_detected_atstring (date-time)obligatoire
last_detected_atstring (date-time)obligatoire
bimi_cname_targetstringobligatoire

L’hôte vers lequel un client fait pointer le CNAME default._bimi.{domain} pour un BIMI servi par Palisade.

bimi_txt_valuestring, nullableobligatoire

La valeur TXT BIMI complète, remplie chaque fois que bimi_options.logo est défini (par l’ingestion de ressources ou par une mise à jour directe de bimi_options). La balise a= n’est incluse que lorsqu’une URL de certificat est aussi définie. Les clients qui préfèrent ne pas déléguer par CNAME peuvent publier eux-mêmes cette valeur à default._bimi.{domain}.

target_spfstring, nullableobligatoire
last_14_days_volumenumberobligatoire
Min. : 0
last_14_days_dmarc_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_spf_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_dkim_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
group_idstring (uuid), nullableobligatoire
registrarstring, nullableobligatoire
dmarc_setup_atstring (date-time), nullableobligatoire
dmarc_verified_atstring (date-time), nullableobligatoire

Quand le domaine a atteint pour la première fois l’état de surveillance « setup » et que la collecte des rapports DMARC a commencé.

monitoring_sincestring, nullableobligatoire

Le premier jour (yyyy-MM-dd) où un rapport agrégé DMARC a réellement été reçu pour ce domaine. C’est le dénominateur honnête de toute affirmation sur l’activité : rien avant ce jour n’était observable, de sorte qu’un domaine surveillé depuis une semaine ne peut jamais, en toute vérité, sembler calme depuis quatre-vingt-dix jours. Null jusqu’à l’arrivée du premier rapport.

created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
errorobject, nullableobligatoire

Pourquoi cette entrée a échoué, ou null quand elle a réussi.

properties
codestring, nullableobligatoire
messagestring, nullableobligatoire

Téléverser les ressources BIMI

POST/domains/{id}/bimi/assetsauthentification requise

Ingère un certificat de marque vérifiée (VMC), extrait et vérifie le logo SVG intégré au certificat, puis héberge la paire certificat et logo correspondante à des URL de ressources propres au domaine, avec un court suffixe de version dérivé du contenu ({domain}/bimi/logo-{v}.svg et {domain}/bimi/certchain-{v}.pem). Envoyer de nouveau le même PEM renvoie les mêmes URL; un nouveau PEM obtient de nouvelles URL, de sorte que les caches ne servent jamais de ressources périmées.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

certificate_pemstring

Le VMC sous forme de chaîne PEM. Solution de rechange à la partie fichier de certificat multipart.

Longueur min. : 1
certificate_urlstring (uri)

Une URL https d’où récupérer le PEM du VMC. Solution de rechange à la partie fichier de certificat multipart.

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<id>/bimi/assets" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "certificate_pem": "string",
  "certificate_url": "https://example.com"
}'

Réponses

200BimiAssetsResponse

Succès

Corps de la réponse
certificate_urlstring (uri)obligatoire
logo_urlstring (uri)obligatoire
logotype_verifiedbooleanobligatoire

Le SVG hébergé à logo_url a été extrait de l’extension logotype du certificat et correspond à l’empreinte qu’affirme le certificat. Cela ne couvre que le logo — cela n’indique pas si la chaîne de certificats se valide. Lisez chain_verified pour le savoir.

svg_profilestring enumobligatoire
Valeurs possibles : tiny-ps
chain_verifiedbooleanobligatoire

La chaîne de certificats hébergée a été vérifiée de bout en bout : chaque signature est valide, aucun certificat du chemin n’est expiré, et le chemin aboutit à une ancre de confiance BIMI épinglée. Les téléversements qui ne peuvent pas atteindre cet état sont refusés; une réponse 200 porte donc toujours true.

chain_lengthintegerobligatoire

Nombre de certificats que contient la chaîne hébergée, en comptant le certificat feuille VMC, les intermédiaires et la racine.

Min. : 0
chain_repairedbooleanobligatoire

Vrai quand il manquait des certificats dans le PEM téléversé et que Palisade a complété la chaîne (en récupérant l’intermédiaire au point de terminaison Authority Information Access du certificat et en ajoutant la racine épinglée) avant de l’héberger. C’est la chaîne hébergée, et non celle téléversée, que sert certificate_url.

trust_anchorstringobligatoire

Nom commun de la racine VMC épinglée à laquelle aboutit la chaîne hébergée.

san_verifiedbooleanobligatoire

Le subjectAltName du certificat feuille couvre le domaine auquel les ressources ont été rattachées.

not_afterstring (date-time)obligatoire

Quand le certificat feuille VMC expire. Les VMC sont des certificats d’un an; cette date mérite donc d’être suivie.

warningsarray of stringobligatoire

Observations non bloquantes sur le certificat. « vmc-mark-type-oid-missing » signifie que le certificat feuille ne porte pas les OID de type de marque VMC sous 1.3.6.1.4.1.53087, ce qui dépend de l’autorité de certification et n’empêche pas l’hébergement.

certobjectobligatoire
properties
serialstringobligatoire
not_afterstring (date-time)obligatoire
common_namestring, nullableobligatoire
422object

Certificat refusé

Corps de la réponse
codestring enumobligatoire
Valeurs possibles : bimi_certificate_invalid
reasonstring enumobligatoire
Valeurs possibles : pem_parse_failed, not_a_vmc, logotype_missing, logo_hash_mismatch, svg_not_tiny_ps, incomplete_chain, chain_untrusted, chain_expired, chain_signature_invalid, certificate_not_yet_valid, san_mismatch, contains_private_key
messagestringobligatoire

Obtenir les enregistrements DNS

GET/domains/{id}/dns-recordsauthentification requise

Renvoie la liste consolidée, calculée par le serveur, des enregistrements DNS à publier pour ce domaine, couvrant chaque fonctionnalité gérée par Palisade qui est activée (DMARC, SPF, DKIM, MTA-STS, TLS-RPT, BIMI), avec l’état de vérification de chaque enregistrement. Les enregistrements qui ne sont pas encore vérifiés sont comparés au DNS en vigueur; « action » reflète donc ce qui est réellement publié et « already_published » désigne les enregistrements qui n’ont besoin d’aucun changement. Indique aussi le fournisseur DNS détecté qui héberge le domaine, déterminé à partir de ses enregistrements NS en vigueur, pour que les enregistrements puissent être publiés avec une intégration DNS correspondante.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<id>/dns-records" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200DnsRecordsResponse

Succès

Corps de la réponse
recordsarray of DnsRecordobligatoire
DnsRecord
purposeDnsRecordPurposeobligatoire
Valeurs possibles : dmarc, spf, dkim, mta_sts, mta_sts_policy, tls_rpt, bimi
typeDnsRecordTypeobligatoire
Valeurs possibles : TXT, CNAME, NS
hoststringobligatoire

Nom complet de l’enregistrement.

relative_hoststringobligatoire

Nom de l’enregistrement relatif à l’apex du domaine; « @ » désigne l’apex lui-même.

valuestringobligatoire
ttlintegerobligatoire

TTL recommandé, en secondes.

Min. : 0
actionDnsRecordActionobligatoire

Comment publier cet enregistrement, d’après ce qui est actuellement en vigueur dans le DNS. « create » signifie qu’il n’existe encore rien à cet hôte pour cette fonction; « replace » signifie qu’un enregistrement pour cette fonction occupe déjà l’hôte et doit être remplacé par cette valeur; « delete » signifie que l’enregistrement doit être supprimé. Quand already_published est vrai, l’enregistrement est déjà correct et « replace » n’aurait aucun effet; utilisez donc already_published pour décider s’il faut agir ou non.

Valeurs possibles : create, replace, delete
requiredbooleanobligatoire

Faux pour les enregistrements qui améliorent une fonctionnalité activée, mais qui ne sont pas nécessaires à son fonctionnement.

statusDnsRecordStatusobligatoire
Valeurs possibles : pending, verifying, verified, drifted
already_publishedboolean, nullableobligatoire

Vrai quand le DNS en vigueur sert déjà exactement cette valeur, de sorte que l’enregistrement peut être ignoré. Faux quand il est absent ou sert autre chose. Null quand la recherche en direct n’a pas pu aboutir, auquel cas « action » se rabat sur une valeur statique déduite du type et doit être traitée comme une indication approximative.

all_verifiedbooleanobligatoire

Vrai quand chaque enregistrement obligatoire a l’état « verified ».

warningsarray of DnsRecordWarningobligatoire

Risques à régler avant de publier ces enregistrements. Vide dans le cas normal. Lisez-les avant d’appliquer quoi que ce soit : publier une politique DMARC contraignante sur un domaine sans SPF ni DKIM fonctionnels amène les destinataires à refuser ses courriels ou à les mettre en quarantaine.

DnsRecordWarning
codestringobligatoire

Identifiant stable de l’avertissement, sur lequel on peut se fonder.

messagestringobligatoire

Explication lisible du risque.

dns_providerDetectedDnsProviderobligatoire

Où le DNS du domaine est hébergé, pour que les enregistrements puissent être publiés avec un outil DNS, un connecteur ou une API de fournisseur correspondant. C’est l’hébergeur DNS, qui souvent n’est pas le registraire indiqué dans « registrar ».

DetectedDnsProvider
idstring, nullableobligatoire

Identifiant du fournisseur DNS qui héberge le domaine, déduit de ses enregistrements NS en vigueur. Il s’agit délibérément d’un ensemble ouvert : les identifiants reconnus aujourd’hui sont cloudflare, route53, godaddy, azure, google, namecheap, digitalocean, vercel, dnsimple, gandi, ovh, name.com, porkbun, hetzner, linode, networksolutions, microsoft365, wix, squarespace, ionos, hostinger, siteground, bluehost, hostgator, dreamhost, dnsmadeeasy, akamai, rackspace, cloudns, comodo, easydns, encirca, webnames, whc, rebel, register.com, hover, namesilo, dynadot, spaceship, one.com, enom, wordpress.com, hurricane-electric, et d’autres s’ajoutent avec le temps; traitez donc un identifiant inconnu comme null plutôt que de refuser la réponse. Null quand les serveurs de noms ne correspondent à aucun fournisseur connu, ne s’accordent pas entre eux, ou n’ont pas pu être résolus — dans ce cas, utilisez « nameservers » pour décider, et ne présumez jamais d’un fournisseur.

nameserversarray of stringobligatoire

Les serveurs de noms auxquels le domaine est délégué. Vide quand la recherche a échoué ou n’a rien renvoyé.

Vérifier un domaine

POST/domains/{id}/verifyauthentification requise

Met en file d’attente la surveillance complète du domaine et revérifie de façon synchrone les enregistrements encore en propagation. « results » indique les fonctions confirmées pendant cette vérification, avec les mêmes identifiants que GET /domains/{id}/dns-records.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<id>/verify" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200VerifyDomainResponse

Succès

Corps de la réponse
queuedbooleanobligatoire
verifiedobjectobligatoire
resultsVerifyResultsobligatoire

Résultat de la vérification synchrone, indexé par les mêmes identifiants de fonction que GET /domains/{id}/dns-records. Une fonction n’est présente que si elle a été confirmée pendant cette vérification; son absence signifie qu’elle n’a pas été confirmée (elle peut déjà être vérifiée, ou encore en propagation). tls_rpt et mta_sts_policy ne sont pas couverts par la vérification synchrone et n’apparaissent jamais.

VerifyResults
dmarcboolean
spfboolean
dkimboolean
mta_stsboolean
bimiboolean

Vérifier SPF pour un domaine

POST/domains/{id}/verify/spfauthentification requise

Met en file d’attente la vérification SPF et revérifie de façon synchrone les enregistrements encore en propagation. « results » indique les fonctions confirmées pendant cette vérification, avec les mêmes identifiants que GET /domains/{id}/dns-records.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<id>/verify/spf" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200VerifyDomainResponse

Succès

Corps de la réponse
queuedbooleanobligatoire
verifiedobjectobligatoire
resultsVerifyResultsobligatoire

Résultat de la vérification synchrone, indexé par les mêmes identifiants de fonction que GET /domains/{id}/dns-records. Une fonction n’est présente que si elle a été confirmée pendant cette vérification; son absence signifie qu’elle n’a pas été confirmée (elle peut déjà être vérifiée, ou encore en propagation). tls_rpt et mta_sts_policy ne sont pas couverts par la vérification synchrone et n’apparaissent jamais.

VerifyResults
dmarcboolean
spfboolean
dkimboolean
mta_stsboolean
bimiboolean

Vérifier DKIM pour un domaine

POST/domains/{id}/verify/dkimauthentification requise

Met en file d’attente la vérification DKIM et revérifie de façon synchrone les enregistrements encore en propagation. « results » indique les fonctions confirmées pendant cette vérification, avec les mêmes identifiants que GET /domains/{id}/dns-records.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<id>/verify/dkim" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200VerifyDomainResponse

Succès

Corps de la réponse
queuedbooleanobligatoire
verifiedobjectobligatoire
resultsVerifyResultsobligatoire

Résultat de la vérification synchrone, indexé par les mêmes identifiants de fonction que GET /domains/{id}/dns-records. Une fonction n’est présente que si elle a été confirmée pendant cette vérification; son absence signifie qu’elle n’a pas été confirmée (elle peut déjà être vérifiée, ou encore en propagation). tls_rpt et mta_sts_policy ne sont pas couverts par la vérification synchrone et n’apparaissent jamais.

VerifyResults
dmarcboolean
spfboolean
dkimboolean
mta_stsboolean
bimiboolean

Activer DMARC hébergé

POST/domains/{id}/hosted-dmarcauthentification requise

Reconstruit l’enregistrement DMARC hébergé par Palisade à partir de la politique actuelle du domaine, le publie et renvoie le CNAME vers lequel faire pointer _dmarc. Appelez ceci avant de montrer le CNAME à quiconque : sinon, la cible de délégation est celle qui a été écrite à la création du domaine, de sorte qu’un domaine dont le propriétaire a resserré sa propre politique DMARC depuis passerait à une politique plus faible. Rien n’est écrit dans la base de données à moins que la publication réussisse; un échec peut donc être réessayé sans risque, et un appel sur un domaine déjà hébergé ne change rien et répond hosted_dmarc_active: true.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<id>/hosted-dmarc" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200EnableHostedDmarcResponse

Succès

Corps de la réponse
hosted_dmarc_activebooleanobligatoire

Faux jusqu’à ce que le CNAME hébergé se résolve dans le DNS en vigueur. Publiez « record » et Palisade fait passer cette valeur à vrai de lui-même; déjà vrai pour un domaine qui était hébergé avant l’appel.

recordDnsRecord & objectobligatoire

Le CNAME à publier à _dmarc.<domain>, reconstruit à partir de la politique DMARC actuelle du domaine. Supprimez tout enregistrement TXT DMARC encore présent au même hôte, qui entre en conflit avec lui.

properties
purposeDnsRecordPurposeobligatoire
Valeurs possibles : dmarc, spf, dkim, mta_sts, mta_sts_policy, tls_rpt, bimi
typeDnsRecordTypeobligatoire
Valeurs possibles : TXT, CNAME, NS
hoststringobligatoire

Nom complet de l’enregistrement.

relative_hoststringobligatoire

Nom de l’enregistrement relatif à l’apex du domaine; « @ » désigne l’apex lui-même.

valuestringobligatoire
ttlintegerobligatoire

TTL recommandé, en secondes.

Min. : 0
actionDnsRecordActionobligatoire

Comment publier cet enregistrement, d’après ce qui est actuellement en vigueur dans le DNS. « create » signifie qu’il n’existe encore rien à cet hôte pour cette fonction; « replace » signifie qu’un enregistrement pour cette fonction occupe déjà l’hôte et doit être remplacé par cette valeur; « delete » signifie que l’enregistrement doit être supprimé. Quand already_published est vrai, l’enregistrement est déjà correct et « replace » n’aurait aucun effet; utilisez donc already_published pour décider s’il faut agir ou non.

Valeurs possibles : create, replace, delete
requiredbooleanobligatoire

Faux pour les enregistrements qui améliorent une fonctionnalité activée, mais qui ne sont pas nécessaires à son fonctionnement.

statusDnsRecordStatusobligatoire
Valeurs possibles : pending, verifying, verified, drifted
already_publishedboolean, nullableobligatoire

Vrai quand le DNS en vigueur sert déjà exactement cette valeur, de sorte que l’enregistrement peut être ignoré. Faux quand il est absent ou sert autre chose. Null quand la recherche en direct n’a pas pu aboutir, auquel cas « action » se rabat sur une valeur statique déduite du type et doit être traitée comme une indication approximative.

domainDomainobligatoire
Domain
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
dmarc_optionsobjectobligatoire
properties
additional_emailsarray of string (email)obligatoire
legacy_ruf_emailsarray of string (email)
policyDmarcPolicyobligatoire
Valeurs possibles : none, quarantine, reject
pctnumberobligatoire
Min. : 0 · Max. : 100
spstring enumobligatoire
Valeurs possibles : none, quarantine, reject, same
strict_spfbooleanobligatoire
strict_dkimbooleanobligatoire
spf_optionsobjectobligatoire
properties
force_flatteningbooleanobligatoire
enabledbooleanobligatoire
mechanism_descriptionsobject
managed_dns_statusobjectobligatoire
properties
dmarcDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
spfDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
dkimDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
bimiDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
mta_stsDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
managed_dns_status_sinceobjectobligatoire

Quand chaque enregistrement géré est passé pour la dernière fois à l’état « syncing ». Pour dmarc, se rabat sur dmarc_setup_at quand la transition est antérieure au suivi; les autres enregistrements valent null quand ils ne se sont jamais synchronisés ou que la transition est antérieure au suivi. Utile pour estimer depuis combien de temps un enregistrement « syncing » attend la propagation DNS.

properties
dmarcstring (date-time), nullableobligatoire
spfstring (date-time), nullableobligatoire
dkimstring (date-time), nullableobligatoire
bimistring (date-time), nullableobligatoire
mta_stsstring (date-time), nullableobligatoire
monitoring_statusDmarcSetupStateobligatoire
Valeurs possibles : drifted, none, pending, setup, failed
monitoring_failure_reasonDmarcSetupFailureReasonobligatoire
Valeurs possibles : nameservers_unresolvable, dmarc_record_missing, dmarc_record_added_as_txt_not_cname, dmarc_record_on_parent_only, dmarc_record_missing_palisade_rua, dmarc_record_invalid, dmarc_multiple_records
monitoring_failure_detailDmarcSetupFailureDetailobligatoire
DmarcSetupFailureDetail
observedstring
expected_ruastring
from_hostnamestring
record_countnumber
monitoring_emailstringobligatoire
open_tasks_countnumberobligatoire

Billets ouverts sur ce domaine. Les billets d’occasion comme set_up_bimi ne sont pas comptés, et expand[]=tasks les omet pour concorder.

Min. : 0
highest_open_task_priorityinteger, nullableobligatoire

Priorité du billet ouvert le plus urgent sur ce domaine, sur la même échelle inversée que la priorité d’un billet : 0 critique, 1 élevée, 2 moyenne, 3 faible. Null quand le domaine n’a aucun billet ouvert. Triez sur « severity » pour classer les domaines selon cette valeur.

Min. : 0 · Max. : 3
scorenumberobligatoire
Min. : 0 · Max. : 100
score_bandstring enumobligatoire

Tranche de risque dans laquelle tombe le score : critical, bad, good ou great. Les mêmes tranches que celles du tableau de bord, pour que les clients n’aient pas à réimplémenter les seuils.

Valeurs possibles : critical, bad, good, great
is_parkedbooleanobligatoire
is_dmarc_managedbooleanobligatoire
is_spf_managedbooleanobligatoire
is_dkim_managedbooleanobligatoire
is_bimi_managedbooleanobligatoire
is_mta_sts_managedbooleanobligatoire
bimi_optionsobjectobligatoire
properties
enabledbooleanobligatoire
logostring (uri), nullableobligatoire
certificatestring (uri), nullableobligatoire
bimi_error_reasonManagedDnsErrorReasonobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

Valeurs possibles : setup_timeout, drift, certificate_invalid, record_conflict, delegation_missing, publish_failed, dkim_key_error, check_failed
dmarc_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

spf_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dkim_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

mta_sts_error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

dns_conflictsarray of DnsConflictobligatoire

Conflits d’enregistrements non résolus observés aux étiquettes que Palisade gère ou surveille pour ce domaine. Vide pour un domaine en bon état. Chaque entrée cite textuellement les enregistrements fautifs, ainsi que ce qu’ont renvoyé chaque serveur de noms faisant autorité et chaque résolveur public, pour qu’on puisse agir sans refaire l’enquête.

DnsConflict
labelstringobligatoire

Le nom DNS exact où se trouvent les enregistrements en conflit.

protocolDnsConflictProtocolobligatoire
Valeurs possibles : dmarc, spf, bimi, mta_sts, dkim
kindDnsConflictKindobligatoire
Valeurs possibles : cname_with_other_data, multiple_dmarc_records, multiple_spf_records, multiple_bimi_records, cname_target_unresolvable, cname_chain_too_deep, authoritative_disagreement, resolver_divergence, managed_delegation_missing
summarystringobligatoire
rfcstringobligatoire

La clause de la spécification que la zone enfreint, p. ex. « RFC 1034 §3.6.2 ».

consequencestringobligatoire

Ce que cela change réellement pour les courriels de ce domaine, en termes simples.

remediationstringobligatoire

Quel enregistrement supprimer et lequel conserver, énoncé assez concrètement pour qu’on puisse agir.

conflicting_recordsarray of stringobligatoire

Les valeurs d’enregistrement fautives, textuellement telles que publiées.

authoritative_nameserversarray of objectobligatoire

Chaque serveur de noms faisant autorité interrogé, et exactement ce qu’il a renvoyé.

items
nameserverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
public_resolversarray of objectobligatoire

Résolveurs publics indépendants interrogés, et exactement ce que chacun a renvoyé.

items
resolverstringobligatoire
ipstringobligatoire
cnamearray of stringobligatoire
txtarray of stringobligatoire
answeredbooleanobligatoire
timed_outbooleanobligatoire
occurrence_countnumberobligatoire

Nombre d’exécutions de détection qui ont observé ce conflit.

first_detected_atstring (date-time)obligatoire
last_detected_atstring (date-time)obligatoire
bimi_cname_targetstringobligatoire

L’hôte vers lequel un client fait pointer le CNAME default._bimi.{domain} pour un BIMI servi par Palisade.

bimi_txt_valuestring, nullableobligatoire

La valeur TXT BIMI complète, remplie chaque fois que bimi_options.logo est défini (par l’ingestion de ressources ou par une mise à jour directe de bimi_options). La balise a= n’est incluse que lorsqu’une URL de certificat est aussi définie. Les clients qui préfèrent ne pas déléguer par CNAME peuvent publier eux-mêmes cette valeur à default._bimi.{domain}.

target_spfstring, nullableobligatoire
last_14_days_volumenumberobligatoire
Min. : 0
last_14_days_dmarc_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_spf_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
last_14_days_dkim_pass_pctnumberobligatoire
Min. : 0 · Max. : 100
group_idstring (uuid), nullableobligatoire
registrarstring, nullableobligatoire
groupGroup
Group
idstring (uuid)obligatoire
namestringobligatoire
external_customer_idstring, nullableobligatoire
external_billing_entity_idstring, nullableobligatoire
domainsobject
properties
countnumberobligatoire
enforcement_pctnumberobligatoire
last_14_days_volumenumberobligatoire
last_14_days_dmarc_pass_pctnumberobligatoire
average_scorenumberobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
tasksarray of Task

Renvoie seulement les billets dont l’état est « open »

Task
idstring (uuid)obligatoire
domain_idstring (uuid)obligatoire
domainobject
properties
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
scorenumberobligatoire

Le score d’audit du domaine dans son état actuel.

Min. : 0 · Max. : 100
score_gaininteger

Part du score du domaine que l’achèvement de ce billet permet de regagner, selon le même calcul que celui de la vue d’ensemble du domaine. 0 pour les types de billets que le score ne mesure pas. Présent seulement avec expand[]=domain, puisqu’il dépend du domaine dans son état actuel.

Min. : 0
sending_domainstring, nullableobligatoire
source_idstring (uuid), nullableobligatoire
sourceobject
properties
idstring (uuid)obligatoire
namestringobligatoire
homepagestring (uri), nullableobligatoire
documentationobjectobligatoire
properties
spfstring, nullable
dkimstring, nullable
combinedstring, nullable
categorystring enumobligatoire
Valeurs possibles : SENDING_TOOL, MAILBOX_PROVIDER, VPS_PROVIDER, SECURITY_PROVIDER, EMAIL_RELAY
forwarding_typestring enumobligatoire
Valeurs possibles : NOT_FORWARDER, FORWARDER, FORWARDER_ONLY
spf_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
spf_supported_methodsarray of string enumobligatoire
items
Valeurs possibles : DIRECT, SUBDOMAIN, MANAGED_SUBDOMAIN
spf_support_optionsobjectobligatoire
properties
directobject, nullableobligatoire
properties
valuesarray of stringobligatoire
requires_advanced_configboolean, nullableobligatoire
subdomainobject, nullableobligatoire
properties
is_managedbooleanobligatoire
requires_user_selectionbooleanobligatoire
pathstring, nullableobligatoire
valuestring, nullableobligatoire
dns_recordsarray of objectobligatoire
dkim_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
dkim_discovery_selectorsarray of stringobligatoire
instructionsobject, nullable

BÊTA : peut être développé seulement pour GET /tasks/:id. Peut parfois contenir des instructions.

properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME
namestring
valuestring
source_aliasstring, nullableobligatoire
prioritynumberobligatoire
sequencenumberobligatoire

La place du billet dans le déploiement de l’authentification des courriels, les plus basses en premier : 10 configuration de DMARC, 20 enregistrements de base, 30 alignement SPF/DKIM, 40 nettoyage, 50 application, 60 renforcement. Distincte de la priorité, qui est l’urgence; la séquence ordonne les billets de priorité égale, puisqu’un billet d’alignement ne peut pas être traité avant que les rapports DMARC existent pour montrer l’échec.

statusTaskStatusobligatoire
Valeurs possibles : open, snoozed, canceled, dismissed, pending, done
typeTaskTypeobligatoire
Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
descriptionstringobligatoire
snoozed_untilstring (date-time), nullableobligatoire
marked_pending_atstring (date-time), nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
resolved_atstring (date-time), nullableobligatoire
resolution_reasonTaskResolutionReasonobligatoire

Pourquoi un billet terminé a été fermé. « verified » : la propre vérification de Palisade a constaté que le problème avait disparu. « manual » : une personne ou un appelant de l’API l’a marqué comme terminé, et rien n’a été vérifié. Null pour un billet qui n’est pas terminé, et pour un billet fermé avant que la raison commence à être enregistrée. D’autres valeurs pourraient s’ajouter; traitez donc une valeur inconnue comme non précisée.

Valeurs possibles : verified, manual
dmarc_setup_atstring (date-time), nullableobligatoire
dmarc_verified_atstring (date-time), nullableobligatoire

Quand le domaine a atteint pour la première fois l’état de surveillance « setup » et que la collecte des rapports DMARC a commencé.

monitoring_sincestring, nullableobligatoire

Le premier jour (yyyy-MM-dd) où un rapport agrégé DMARC a réellement été reçu pour ce domaine. C’est le dénominateur honnête de toute affirmation sur l’activité : rien avant ce jour n’était observable, de sorte qu’un domaine surveillé depuis une semaine ne peut jamais, en toute vérité, sembler calme depuis quatre-vingt-dix jours. Null jusqu’à l’arrivée du premier rapport.

created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Obtenir le plan de correction

GET/domains/{domainId}/planauthentification requise

Le travail que Palisade a prévu pour ce domaine, sous forme des quatre phases du parcours DMARC avec les étapes qui composent chacune. Une étape pour laquelle Palisade a déjà ouvert des billets porte leurs identifiants dans task_ids et se consulte par GET /tasks; une étape pour laquelle il ne l’a pas fait n’en porte aucun, et c’est du travail qu’il prévoit d’ouvrir plus tard. upcoming_steps est la courte liste de ce qui vient ensuite, ce que l’application affiche sous les billets ouverts d’un domaine. Lisez /tasks pour ce qui est à faire maintenant, et ceci pour ce qui s’en vient. Calculé à la lecture : rien ici n’est un enregistrement stocké, et rien n’émet de webhooks.

Paramètres de chemin

domainIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/plan" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200DomainPlan

Succès

Corps de la réponse
scan_findingsobject, nullable

Constats d’intégration enregistrés, y compris ceux qui n’ont pas de billet à traiter. Ce n’est pas un nouvel audit DNS.

properties
scanned_atstring (date-time)obligatoire
itemsarray of objectobligatoire
items
idstringobligatoire
titlestringobligatoire
detailstringobligatoire
codestringobligatoire
statusstring enumobligatoire
Valeurs possibles : open, verifying, snoozed, ticket_completed, upcoming, waiting, optional, review
guidancestringobligatoire
tasksarray of objectobligatoire
items
idstring (uuid)obligatoire
statusstringobligatoire
task_typesarray of string enumobligatoire

Les types de billets qui donneraient suite à ce constat, correspondant à « type » sur l’objet Task et à « task_type » sur une étape du plan. Un type énuméré ici n’est pas toujours ouvert : update_ttl et set_up_tls_rpt, par exemple, ne le sont jamais. Vide quand aucun type de billet ne couvre le constat, comme pour BIMI ou un problème DKIM touchant un seul sélecteur.

items
Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
domain_idstring (uuid)obligatoire
domainstringobligatoire

Le domaine auquel s’applique ce plan.

is_parkedbooleanobligatoire

Vrai quand le domaine est parqué. Un domaine parqué est surveillé, mais n’a aucun parcours à suivre.

agent_proposals_enabledbooleanobligatoire

Faux quand le plan n’est pas mis en œuvre parce que l’organisation a un forfait sans l’agent. upcoming_steps est alors vide, parce que Palisade n’ouvrira pas ces billets.

current_stageinteger, nullableobligatoire

Le numéro de la phase en cours, ou null quand aucune n’est en cours.

stagesarray of PlanStageobligatoire

Les quatre phases du parcours DMARC, dans l’ordre.

PlanStage
numberintegerobligatoire

Position dans le parcours, de 1 à 4.

keystringobligatoire

Identifiant stable : « setup », « alignment », « enforcement » ou « monitoring ».

titlestringobligatoire
descriptionstringobligatoire
statusPlanStageStatusobligatoire

« completed » quand la phase est terminée, « current » pour celle en cours, « pending » pour une phase pas encore commencée.

Valeurs possibles : completed, current, pending
stepsarray of PlanStepobligatoire

Le travail qui compose cette phase. Vide pour un domaine parqué.

PlanStep
keystringobligatoire

Identifiant stable de cette étape, sur lequel on peut se fonder — par exemple « dmarc-setup », « alignment-spf » ou « dmarc-reject-full ». Des étapes s’ajoutent avec le temps; les clés existantes conservent leur signification.

task_typestring enum, nullableobligatoire

Le type de billet sous lequel cette étape s’ouvre, correspondant à « type » sur l’objet Task. Null pour une étape qui n’est jamais un billet, comme la surveillance continue.

Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
titlestringobligatoire

Ce que l’étape demande, en termes simples.

descriptionstringobligatoire

Pourquoi l’étape est importante.

priorityintegerobligatoire

Gravité sur la même échelle qu’un billet : 0 critique, 1 élevée, 2 moyenne, 3 faible. Quand des billets existent déjà pour cette étape, c’est la plus grave des leurs.

score_gainintegerobligatoire

Nombre de points du score d’audit du domaine que l’achèvement de cette étape permettrait de regagner. 0 s’il n’y en a aucun.

statusPlanStepStatusobligatoire

« in_progress » quand Palisade a déjà ouvert des billets pour cette étape, énumérés dans task_ids. « upcoming » quand il ne l’a pas fait, ce qui signifie qu’il n’y a encore rien à faire.

Valeurs possibles : in_progress, upcoming
task_idsarray of string (uuid)obligatoire

Billets ouverts et en attente qui réalisent cette étape, consultables par GET /tasks/{id}. Vide pour une étape à venir. Une étape qui couvre des sources d’envoi a un billet par source; ce champ peut donc en contenir plusieurs.

optional_stepsarray of PlanOptionalStepobligatoire

Améliorations utiles à cette étape que Palisade n’exige pas.

PlanOptionalStep
keystringobligatoire

Identifiant stable de l’étape facultative, par exemple « enable-hosted-spf ».

titlestringobligatoire
descriptionstringobligatoire
recommendedbooleanobligatoire

Vrai quand Palisade le suggère activement pour ce domaine en ce moment.

upcoming_stepsarray of PlanStepobligatoire

Les étapes que Palisade prévoit de réaliser ensuite : les étapes de la phase suivante, quand cette phase n’a pas commencé. Elles sont un sous-ensemble de stages[].steps, toujours avec l’état « upcoming », et c’est ce que l’application affiche sous les billets ouverts. Vide pour un domaine parqué, quand l’agent ne propose pas de travail, et une fois le parcours terminé.

PlanStep
keystringobligatoire

Identifiant stable de cette étape, sur lequel on peut se fonder — par exemple « dmarc-setup », « alignment-spf » ou « dmarc-reject-full ». Des étapes s’ajoutent avec le temps; les clés existantes conservent leur signification.

task_typestring enum, nullableobligatoire

Le type de billet sous lequel cette étape s’ouvre, correspondant à « type » sur l’objet Task. Null pour une étape qui n’est jamais un billet, comme la surveillance continue.

Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
titlestringobligatoire

Ce que l’étape demande, en termes simples.

descriptionstringobligatoire

Pourquoi l’étape est importante.

priorityintegerobligatoire

Gravité sur la même échelle qu’un billet : 0 critique, 1 élevée, 2 moyenne, 3 faible. Quand des billets existent déjà pour cette étape, c’est la plus grave des leurs.

score_gainintegerobligatoire

Nombre de points du score d’audit du domaine que l’achèvement de cette étape permettrait de regagner. 0 s’il n’y en a aucun.

statusPlanStepStatusobligatoire

« in_progress » quand Palisade a déjà ouvert des billets pour cette étape, énumérés dans task_ids. « upcoming » quand il ne l’a pas fait, ce qui signifie qu’il n’y a encore rien à faire.

Valeurs possibles : in_progress, upcoming
task_idsarray of string (uuid)obligatoire

Billets ouverts et en attente qui réalisent cette étape, consultables par GET /tasks/{id}. Vide pour une étape à venir. Une étape qui couvre des sources d’envoi a un billet par source; ce champ peut donc en contenir plusieurs.

Source du domaine

Lister les expéditeurs confirmés

GET/domains/{domainId}/sourcesauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/sources" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of DomainSourceobligatoire
DomainSource
idstring (uuid)obligatoire
is_knownbooleanobligatoire
source_idstring, nullableobligatoire

La source du catalogue à laquelle cet expéditeur a été associé, ou null quand ce n’est pas une source que Palisade reconnaît. Permet à un appelant de rapprocher un expéditeur de l’include SPF ou de la clé DKIM qui lui appartient.

spf_valuestring, nullableobligatoire

Le mécanisme SPF que la découverte a observé pour cet expéditeur, quand elle en a vu un.

source_namestring, nullableobligatoire
source_homepagestring, nullableobligatoire
sending_domainstring, nullableobligatoire
dkim_selectorsarray of stringobligatoire
confirmation_statusstring enumobligatoire
Valeurs possibles : confirmed, discarded, requires_confirmation
confirmed_atstring (date-time), nullableobligatoire
last_seen_atstring, nullableobligatoire

Le dernier jour (YYYY-MM-DD) où cet expéditeur a été vu en train d’envoyer pour le domaine, sur tout l’historique enregistré plutôt que sur une période récente; un expéditeur silencieux depuis un an indique donc encore le jour où il s’est tu. Null quand aucun envoi n’a encore été enregistré pour lui. Établi à partir d’agrégats quotidiens qui peuvent accuser quelques jours de retard sur les rapports en direct; traitez-le donc comme une date plutôt que comme un horodatage. Ne compte que les envois observés depuis l’ajout du domaine à Palisade.

last_spf_aligned_atstring, nullableobligatoire

Le dernier jour (YYYY-MM-DD) où des courriels de cet expéditeur ont réussi SPF aligné pour le domaine. Distinct de last_seen_at : un expéditeur qui envoie encore, mais ne réussit plus SPF, a un problème SPF, et non un include inutilisé. Null quand il n’a jamais réussi SPF aligné dans l’historique enregistré.

totalsobjectobligatoire
properties
compliantnumberobligatoire
non_compliantnumberobligatoire
forwardednumberobligatoire
unknownnumberobligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Confirmer ou mettre à jour un expéditeur

POST/domains/{domainId}/sources/{sourceId}authentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire
sourceIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

confirmation_statusstring enumobligatoire
Valeurs possibles : confirmed, discarded, requires_confirmation

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<domainId>/sources/<sourceId>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "confirmation_status": "confirmed"
}'

Réponses

200DomainSource

Succès

Corps de la réponse
idstring (uuid)obligatoire
is_knownbooleanobligatoire
source_idstring, nullableobligatoire

La source du catalogue à laquelle cet expéditeur a été associé, ou null quand ce n’est pas une source que Palisade reconnaît. Permet à un appelant de rapprocher un expéditeur de l’include SPF ou de la clé DKIM qui lui appartient.

spf_valuestring, nullableobligatoire

Le mécanisme SPF que la découverte a observé pour cet expéditeur, quand elle en a vu un.

source_namestring, nullableobligatoire
source_homepagestring, nullableobligatoire
sending_domainstring, nullableobligatoire
dkim_selectorsarray of stringobligatoire
confirmation_statusstring enumobligatoire
Valeurs possibles : confirmed, discarded, requires_confirmation
confirmed_atstring (date-time), nullableobligatoire
last_seen_atstring, nullableobligatoire

Le dernier jour (YYYY-MM-DD) où cet expéditeur a été vu en train d’envoyer pour le domaine, sur tout l’historique enregistré plutôt que sur une période récente; un expéditeur silencieux depuis un an indique donc encore le jour où il s’est tu. Null quand aucun envoi n’a encore été enregistré pour lui. Établi à partir d’agrégats quotidiens qui peuvent accuser quelques jours de retard sur les rapports en direct; traitez-le donc comme une date plutôt que comme un horodatage. Ne compte que les envois observés depuis l’ajout du domaine à Palisade.

last_spf_aligned_atstring, nullableobligatoire

Le dernier jour (YYYY-MM-DD) où des courriels de cet expéditeur ont réussi SPF aligné pour le domaine. Distinct de last_seen_at : un expéditeur qui envoie encore, mais ne réussit plus SPF, a un problème SPF, et non un include inutilisé. Null quand il n’a jamais réussi SPF aligné dans l’historique enregistré.

totalsobjectobligatoire
properties
compliantnumberobligatoire
non_compliantnumberobligatoire
forwardednumberobligatoire
unknownnumberobligatoire

Clé DKIM

Lister les clés DKIM

GET/domains/{domainId}/dkim-keysauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

Paramètres de requête

selectorstring
dns_statusDnsStatus
Valeurs possibles : unknown, syncing, ready, error
pagenumber
per_pagenumber

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/dkim-keys" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of DkimKeyobligatoire
DkimKey
idstring (uuid)obligatoire
selectorstringobligatoire
record_typestring enumobligatoire
Valeurs possibles : TXT, CNAME
valuestringobligatoire
dns_statusDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
publish_errorstring, nullableobligatoire

Pourquoi la dernière tentative de publication a échoué, en des termes sur lesquels un client peut agir. Null à moins que dns_status vaille error; effacé par la publication réussie suivante.

ttlnumber, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
last_published_atstring (date-time), nullableobligatoire
deleted_atstring (date-time), nullableobligatoire
created_bystring, nullableobligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Ajouter une clé DKIM

POST/domains/{domainId}/dkim-keysauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

selectorstringobligatoire
Longueur min. : 1
record_typestring enumobligatoire
Valeurs possibles : TXT, CNAME
valuestringobligatoire
Longueur min. : 1
ttlnumber
Min. : 300 · Max. : 86400

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<domainId>/dkim-keys" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "selector": "string",
  "record_type": "TXT",
  "value": "string",
  "ttl": 300
}'

Réponses

200DkimKey

Succès

Corps de la réponse
idstring (uuid)obligatoire
selectorstringobligatoire
record_typestring enumobligatoire
Valeurs possibles : TXT, CNAME
valuestringobligatoire
dns_statusDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
publish_errorstring, nullableobligatoire

Pourquoi la dernière tentative de publication a échoué, en des termes sur lesquels un client peut agir. Null à moins que dns_status vaille error; effacé par la publication réussie suivante.

ttlnumber, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
last_published_atstring (date-time), nullableobligatoire
deleted_atstring (date-time), nullableobligatoire
created_bystring, nullableobligatoire

Obtenir une clé DKIM

GET/domains/{domainId}/dkim-keys/{id}authentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire
idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/dkim-keys/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200DkimKey

Succès

Corps de la réponse
idstring (uuid)obligatoire
selectorstringobligatoire
record_typestring enumobligatoire
Valeurs possibles : TXT, CNAME
valuestringobligatoire
dns_statusDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
publish_errorstring, nullableobligatoire

Pourquoi la dernière tentative de publication a échoué, en des termes sur lesquels un client peut agir. Null à moins que dns_status vaille error; effacé par la publication réussie suivante.

ttlnumber, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
last_published_atstring (date-time), nullableobligatoire
deleted_atstring (date-time), nullableobligatoire
created_bystring, nullableobligatoire

Mettre à jour une clé DKIM

POST/domains/{domainId}/dkim-keys/{id}authentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire
idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

selectorstring
Longueur min. : 1
record_typestring enum
Valeurs possibles : TXT, CNAME
valuestring
Longueur min. : 1
ttlnumber
Min. : 300 · Max. : 86400

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<domainId>/dkim-keys/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "selector": "string",
  "record_type": "TXT",
  "value": "string",
  "ttl": 300
}'

Réponses

200DkimKey

Succès

Corps de la réponse
idstring (uuid)obligatoire
selectorstringobligatoire
record_typestring enumobligatoire
Valeurs possibles : TXT, CNAME
valuestringobligatoire
dns_statusDnsStatusobligatoire
Valeurs possibles : unknown, syncing, ready, error
publish_errorstring, nullableobligatoire

Pourquoi la dernière tentative de publication a échoué, en des termes sur lesquels un client peut agir. Null à moins que dns_status vaille error; effacé par la publication réussie suivante.

ttlnumber, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
last_published_atstring (date-time), nullableobligatoire
deleted_atstring (date-time), nullableobligatoire
created_bystring, nullableobligatoire

Supprimer une clé DKIM

DELETE/domains/{domainId}/dkim-keys/{id}authentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire
idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/domains/<domainId>/dkim-keys/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
deletedbooleanobligatoire
objectstringobligatoire
idstring (uuid)obligatoire

Rapports

Obtenir le sommaire DMARC

GET/domains/{domainId}/reports/summaryauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

Paramètres de requête

periodstring enum

Période du rapport, se terminant hier. Par défaut last_7_days.

Valeurs possibles : last_7_days, last_14_days, last_30_days

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/reports/summary" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200DmarcSummary

Succès

Corps de la réponse
domain_idstring (uuid)obligatoire

Identifiant du domaine auquel s’applique le sommaire.

domainstringobligatoire

Le nom du domaine auquel s’applique le sommaire.

date_fromstringobligatoire

Premier jour de la période, au format YYYY-MM-DD. Ramené au plus ancien jour pour lequel le forfait de l’organisation conserve l’historique des rapports; il peut donc être plus tardif que ce que la seule période demandée laisserait supposer.

date_tostringobligatoire

Dernier jour de la période, au format YYYY-MM-DD. Toujours hier : les rapports agrégés arrivent avec un jour de retard, de sorte qu’une période se terminant aujourd’hui ressemblerait à un effondrement du volume.

volumeintegerobligatoire

Nombre total de messages déclarés pendant la période, toutes catégories de conformité confondues.

dmarc_pass_pctnumberobligatoire

Part du volume qui a réussi DMARC, de 0 à 100, arrondie à deux décimales, et 0 quand la période n’a aucun volume. Le dénominateur est le volume; le trafic transféré et non catégorisé compte donc contre ce taux — c’est pourquoi il est plus bas que le chiffre de last_14_days.

spf_pass_pctnumberobligatoire

Part du volume qui a réussi SPF, de 0 à 100, arrondie à deux décimales, et 0 quand la période n’a aucun volume.

dkim_pass_pctnumberobligatoire

Part du volume qui a réussi DKIM, de 0 à 100, arrondie à deux décimales, et 0 quand la période n’a aucun volume.

totalsobjectobligatoire

Nombre de messages par catégorie de conformité. Leur somme égale le volume.

properties
compliantintegerobligatoire

Messages qui ont réussi l’alignement DMARC.

non_compliantintegerobligatoire

Messages qui ont échoué à DMARC. C’est le nombre à ramener à zéro.

forwardedintegerobligatoire

Messages que le classificateur de conformité a attribués au transfert.

unknownintegerobligatoire

Messages provenant d’une source d’envoi que Palisade n’a pas pu identifier.

undeterminedintegerobligatoire

Messages dont la conformité est indéterminée, y compris les rapports que le classificateur n’a pas encore traités.

previous_periodobjectobligatoire

Le même nombre de jours immédiatement avant cette période. Elle se termine la veille du début de cette période; sa date_to n’est donc pas hier.

properties
date_fromstringobligatoire

Premier jour de la période, au format YYYY-MM-DD. Ramené au plus ancien jour pour lequel le forfait de l’organisation conserve l’historique des rapports; il peut donc être plus tardif que ce que la seule période demandée laisserait supposer.

date_tostringobligatoire

Dernier jour de la période, au format YYYY-MM-DD. Aucune période n’inclut jamais aujourd’hui : les rapports agrégés arrivent avec un jour de retard, de sorte qu’une période se terminant aujourd’hui ressemblerait à un effondrement du volume.

volumeintegerobligatoire

Nombre total de messages déclarés pendant la période, toutes catégories de conformité confondues.

dmarc_pass_pctnumberobligatoire

Part du volume qui a réussi DMARC, de 0 à 100, arrondie à deux décimales, et 0 quand la période n’a aucun volume. Le dénominateur est le volume; le trafic transféré et non catégorisé compte donc contre ce taux — c’est pourquoi il est plus bas que le chiffre de last_14_days.

spf_pass_pctnumberobligatoire

Part du volume qui a réussi SPF, de 0 à 100, arrondie à deux décimales, et 0 quand la période n’a aucun volume.

dkim_pass_pctnumberobligatoire

Part du volume qui a réussi DKIM, de 0 à 100, arrondie à deux décimales, et 0 quand la période n’a aucun volume.

changeobjectobligatoire

Cette période moins la précédente. Une valeur positive signifie que l’indicateur s’est amélioré (ou a augmenté, pour le volume).

properties
volumeintegerobligatoire

Variation du volume de messages par rapport à la période précédente.

dmarc_pass_pctnumberobligatoire

Variation du taux de réussite DMARC, en points de pourcentage, arrondie à deux décimales.

spf_pass_pctnumberobligatoire

Variation du taux de réussite SPF, en points de pourcentage, arrondie à deux décimales.

dkim_pass_pctnumberobligatoire

Variation du taux de réussite DKIM, en points de pourcentage, arrondie à deux décimales.

last_14_daysobjectobligatoire

Les chiffres enregistrés sur 14 jours que présente GET /domains/{id}. Ils ne comptent que le trafic conforme et non conforme; ils sont donc plus élevés que les chiffres de la période ci-dessus sur un domaine qui a du transfert. Un écart vient des deux définitions, et non d’une anomalie.

properties
volumeintegerobligatoire

Messages comptés pendant les 14 derniers jours, tels qu’enregistrés pour le domaine.

dmarc_pass_pctnumberobligatoire

Part de ce volume qui a réussi DMARC, de 0 à 100.

spf_pass_pctnumberobligatoire

Part de ce volume qui a réussi SPF, de 0 à 100.

dkim_pass_pctnumberobligatoire

Part de ce volume qui a réussi DKIM, de 0 à 100.

dmarc_policystringobligatoire

L’état de la politique DMARC du domaine, sous la même forme que celle de GET /domains/{id}.

monitoring_statusstringobligatoire

État de surveillance du domaine, sous la même forme que celle de GET /domains/{id}.

policy_readinessobjectobligatoire

Si Palisade recommande actuellement de resserrer la politique DMARC. Indique la recommandation que Palisade a déjà calculée — ce n’est pas une seconde vérification indépendante.

properties
statusstring enumobligatoire

« advance_recommended » quand Palisade a un billet d’avancement de politique ouvert pour le domaine, « hold » quand il n’en a pas ouvert, et « at_maximum » quand le domaine est déjà à p=reject avec pct=100.

Valeurs possibles : advance_recommended, hold, at_maximum
reasonstringobligatoire

Pourquoi Palisade recommande ou non de resserrer la politique en ce moment. Quand l’état est « advance_recommended », c’est la description du billet d’avancement lui-même.

open_task_idstring (uuid), nullableobligatoire

Le billet UPDATE_DMARC_RECORD qui porte la recommandation, quand Palisade en a ouvert un.

open_tasksarray of DmarcProbeTaskobligatoire

Billets de correction ouverts et en attente pour ce domaine, le plus urgent en premier, 10 au maximum.

DmarcProbeTask
idstring (uuid)obligatoire

Identifiant du billet. Lisez-le avec GET /tasks/{id}?expand[]=instructions pour obtenir la correction que Palisade a établie.

typestring enumobligatoire

Le genre de problème que décrit le billet.

Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
priorityintegerobligatoire

Plus la valeur est basse, plus c’est urgent. 0 est le plus urgent.

descriptionstringobligatoire

Ce qui ne va pas, en termes simples.

source_aliasstring, nullableobligatoire

La source d’envoi que couvre ce billet. Correspond à senders[].source_alias.

sending_domainstring, nullableobligatoire

Le domaine d’envoi que concerne le billet, s’il en a un.

open_tasks_countintegerobligatoire

Nombre total de billets ouverts et en attente, qui peut dépasser la longueur du tableau.

next_stepstringobligatoire

La seule action que Palisade suggère d’entreprendre ensuite.

Lister les expéditeurs DMARC

GET/domains/{domainId}/reports/sendersauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

Paramètres de requête

periodstring enum

Période du rapport, se terminant hier. Par défaut last_7_days.

Valeurs possibles : last_7_days, last_14_days, last_30_days
limitinteger

Nombre d’expéditeurs à renvoyer, le plus grand volume en premier. 20 au maximum.

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/reports/senders" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200DmarcSenders

Succès

Corps de la réponse
domain_idstring (uuid)obligatoire
domainstringobligatoire
date_fromstringobligatoire
date_tostringobligatoire
volumeintegerobligatoire

Volume total pendant la période pour tous les expéditeurs, et non seulement ceux renvoyés.

total_sendersintegerobligatoire

Expéditeurs distincts observés pendant la période.

truncatedbooleanobligatoire

Vrai quand total_senders dépasse la liste renvoyée.

sendersarray of DmarcSenderobligatoire
DmarcSender
source_aliasstringobligatoire

Identifiant stable de la source d’envoi : un identifiant de source Palisade quand l’expéditeur est reconnu, sinon le domaine de base d’envoi, ou « unknown ». C’est la clé qui relie un expéditeur à un billet.

namestringobligatoire

Nom d’affichage quand la source est reconnue, sinon source_alias.

source_idstring (uuid), nullableobligatoire
is_knownbooleanobligatoire

Faux quand les rapports DMARC montrent cet expéditeur, mais que Palisade ne peut pas l’identifier.

sending_domainsarray of stringobligatoire

Les domaines header-from sous lesquels cette source a envoyé, le plus grand volume en premier, 5 au maximum.

volumeintegerobligatoire
volume_share_pctnumberobligatoire

Part du volume total du domaine pendant la période que représente cet expéditeur.

dmarc_pass_pctnumberobligatoire
spf_pass_pctnumberobligatoire
dkim_pass_pctnumberobligatoire
totalsobjectobligatoire

Nombre de messages par catégorie de conformité. Leur somme égale le volume.

properties
compliantintegerobligatoire

Messages qui ont réussi l’alignement DMARC.

non_compliantintegerobligatoire

Messages qui ont échoué à DMARC. C’est le nombre à ramener à zéro.

forwardedintegerobligatoire

Messages que le classificateur de conformité a attribués au transfert.

unknownintegerobligatoire

Messages provenant d’une source d’envoi que Palisade n’a pas pu identifier.

undeterminedintegerobligatoire

Messages dont la conformité est indéterminée, y compris les rapports que le classificateur n’a pas encore traités.

is_failingbooleanobligatoire

Vrai quand l’expéditeur a un volume non conforme pendant la période.

open_task_idstring (uuid), nullableobligatoire

Un billet de correction ouvert ou en attente qui couvre cet expéditeur, s’il en existe un. Appelez GET /tasks/{id}?expand[]=instructions pour obtenir la correction plutôt que d’en improviser une.

open_task_typestring enum, nullableobligatoire
Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
next_stepstringobligatoire

Fournisseur DNS

Détecter le fournisseur DNS

GET/dns-providers/detectauthentification requise

Détecte quel fournisseur DNS héberge un domaine, à partir de ses enregistrements NS en vigueur. Renvoie un fournisseur null quand les serveurs de noms ne correspondent à aucun fournisseur connu.

Paramètres de requête

domainstringobligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/dns-providers/detect" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
providerstring, nullableobligatoire

Instantané DNS

Lister les instantanés DNS

GET/domains/{domainId}/dns-snapshotsauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

Paramètres de requête

from_datestring (date-time)
to_datestring (date-time)
record_typesarray of string enum
Valeurs possibles : spf, dmarc, bimi, mx, dkim, ns, mta_sts, tls_rpt
pagenumber
per_pagenumber

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/dns-snapshots" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of objectobligatoire
items
idstring (uuid)obligatoire
spfarray of stringobligatoire
dmarcarray of stringobligatoire
bimiarray of stringobligatoire
mxarray of objectobligatoire
items
exchangestringobligatoire
prioritynumberobligatoire
dkimarray of objectobligatoire
items
selectorstringobligatoire
valuestringobligatoire
nsarray of stringobligatoire
mta_stsarray of stringobligatoire
tls_rptarray of stringobligatoire
records_updatedarray of stringobligatoire
created_atstring (date-time)obligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Obtenir un instantané DNS

GET/domains/{domainId}/dns-snapshots/{id}authentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire
idstring (uuid)obligatoire

Paramètres de requête

expandarray of string enum
Valeurs possibles : diff

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/dns-snapshots/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200DnsSnapshot

Succès

Corps de la réponse
idstring (uuid)obligatoire
spfarray of stringobligatoire
dmarcarray of stringobligatoire
bimiarray of stringobligatoire
mxarray of objectobligatoire
items
exchangestringobligatoire
prioritynumberobligatoire
dkimarray of objectobligatoire
items
selectorstringobligatoire
valuestringobligatoire
nsarray of stringobligatoire
mta_stsarray of stringobligatoire
tls_rptarray of stringobligatoire
records_updatedarray of stringobligatoire
created_atstring (date-time)obligatoire
diffobject, nullable
properties
spfarray of object
items
oldstring, nullableobligatoire
newstring, nullableobligatoire
dmarcarray of object
items
oldstring, nullableobligatoire
newstring, nullableobligatoire
bimiarray of object
items
oldstring, nullableobligatoire
newstring, nullableobligatoire
mxarray of object
items
oldobject, nullableobligatoire
properties
exchangestringobligatoire
prioritynumberobligatoire
newobject, nullableobligatoire
properties
exchangestringobligatoire
prioritynumberobligatoire
dkimarray of object
items
oldobject, nullableobligatoire
properties
selectorstringobligatoire
valuestringobligatoire
newobject, nullableobligatoire
properties
selectorstringobligatoire
valuestringobligatoire
nsarray of object
items
oldstring, nullableobligatoire
newstring, nullableobligatoire
mta_stsarray of object
items
oldstring, nullableobligatoire
newstring, nullableobligatoire
tls_rptarray of object
items
oldstring, nullableobligatoire
newstring, nullableobligatoire

Groupe

Lister les groupes

GET/groupsauthentification requise

Paramètres de requête

querystring
sortstring enum
Valeurs possibles : created_at, name
sort_directionstring enum
Valeurs possibles : desc, asc
per_pagenumber
pagenumber
expandarray of string enum
Valeurs possibles : domains

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/groups" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of Groupobligatoire
Group
idstring (uuid)obligatoire
namestringobligatoire
external_customer_idstring, nullableobligatoire
external_billing_entity_idstring, nullableobligatoire
domainsobject
properties
countnumberobligatoire
enforcement_pctnumberobligatoire
last_14_days_volumenumberobligatoire
last_14_days_dmarc_pass_pctnumberobligatoire
average_scorenumberobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Créer un groupe

POST/groupsauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

namestringobligatoire
Longueur min. : 1

Exemple de requête

curl -X POST "https://api.palisade.email/groups" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "string"
}'

Réponses

200object

Succès

Corps de la réponse
idstring (uuid)obligatoire
namestringobligatoire
external_customer_idstring, nullableobligatoire
external_billing_entity_idstring, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Obtenir un groupe

GET/groups/{id}

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/groups/<id>"

Réponses

200Group

Succès

Corps de la réponse
idstring (uuid)obligatoire
namestringobligatoire
external_customer_idstring, nullableobligatoire
external_billing_entity_idstring, nullableobligatoire
domainsobject
properties
countnumberobligatoire
enforcement_pctnumberobligatoire
last_14_days_volumenumberobligatoire
last_14_days_dmarc_pass_pctnumberobligatoire
average_scorenumberobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Mettre à jour un groupe

POST/groups/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

namestring
Longueur min. : 1
external_customer_idstring, nullable
external_billing_entity_idstring, nullable
backfill_ticketsboolean

Exemple de requête

curl -X POST "https://api.palisade.email/groups/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "string",
  "external_customer_id": "string",
  "external_billing_entity_id": "string",
  "backfill_tickets": true
}'

Réponses

200object

Succès

Corps de la réponse
idstring (uuid)obligatoire
namestringobligatoire
external_customer_idstring, nullableobligatoire
external_billing_entity_idstring, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Supprimer un groupe

DELETE/groups/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/groups/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Supprimé

Corps de la réponse
deletedbooleanobligatoire
objectstringobligatoire
idstring (uuid)obligatoire

Invitation

Lister les invitations en attente

GET/invitationsauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/invitations" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of Invitationobligatoire
Invitation
idstring (uuid)obligatoire
inviteeobjectobligatoire
properties
emailstring (email)obligatoire
rolesarray of string enumobligatoire
items
Valeurs possibles : admin, editor, viewer
groupsarray of string (uuid)
Par défaut : []
inviter_namestringobligatoire
created_atstringobligatoire
expires_atstringobligatoire
urlstring (uri)obligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Inviter un membre de l’équipe

POST/invitationsauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

emailstring (email)obligatoire

L’adresse à inviter.

rolesarray of string enumobligatoire
items
Valeurs possibles : admin, editor, viewer
groupsarray of string (uuid)
ttl_secnumber
Par défaut : 1209600 · Min. : 86400 · Max. : 2592000

Exemple de requête

curl -X POST "https://api.palisade.email/invitations" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "email": "user@example.com",
  "roles": [
    "admin"
  ],
  "groups": [
    "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1"
  ],
  "ttl_sec": 1209600
}'

Réponses

201object

Créé

Corps de la réponse
dataInvitationobligatoire
Invitation
idstring (uuid)obligatoire
inviteeobjectobligatoire
properties
emailstring (email)obligatoire
rolesarray of string enumobligatoire
items
Valeurs possibles : admin, editor, viewer
groupsarray of string (uuid)
Par défaut : []
inviter_namestringobligatoire
created_atstringobligatoire
expires_atstringobligatoire
urlstring (uri)obligatoire
422InvitationDomainNotAllowed | InvitationInviteeExists

invitation_domain_not_allowed : pour les appelants munis d’une clé d’API seulement, le domaine de l’adresse courriel de la personne invitée ne correspond à aucun domaine d’adresse courriel des membres existants de l’organisation; communiquez avec le soutien pour ajouter un nouveau domaine, et notez que les sessions du tableau de bord ne sont pas soumises à cette vérification. invitation_invitee_exists : l’adresse courriel a déjà un compte Palisade, de sorte qu’une invitation l’enverrait vers un écran d’inscription qu’elle ne peut pas terminer; utilisez plutôt POST /members pour ajouter le compte existant.

Corps de la réponse
InvitationDomainNotAllowed | InvitationInviteeExists
502InvitationUpstreamFailure

upstream_failure : le fournisseur d’identité a renvoyé une erreur en créant l’invitation. L’invitation a peut-être tout de même été créée sans que son courriel soit envoyé; listez les invitations pour vérifier avant de réessayer, puisqu’une nouvelle tentative crée une deuxième invitation à la même adresse.

Corps de la réponse
codestring enumobligatoire
Valeurs possibles : upstream_failure
messagestringobligatoire

Renvoyer une invitation

POST/invitations/{id}/resendauthentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X POST "https://api.palisade.email/invitations/<id>/resend" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

204object

Aucun contenu

Corps de la réponse
502InvitationUpstreamFailure

upstream_failure : le fournisseur d’identité a renvoyé une erreur en remplaçant l’invitation. Le message indique si l’ancienne invitation est toujours valide, a été retirée, ou n’a pas pu être vérifiée; listez les invitations avant de réessayer.

Corps de la réponse
codestring enumobligatoire
Valeurs possibles : upstream_failure
messagestringobligatoire

Révoquer une invitation

DELETE/invitations/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/invitations/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Supprimé

Corps de la réponse
deletedbooleanobligatoire
objectstringobligatoire
idstring (uuid)obligatoire

Billet

Lister les billets

GET/tasksauthentification requise

Par défaut, l’API renvoie les billets « open » et « pending ». Pour filtrer selon d’autres états, utilisez le paramètre de requête « statuses ».

Paramètres de requête

statusesarray of TaskStatus

Par défaut, nous renvoyons les billets OPEN et PENDING.

Valeurs possibles : open, snoozed, canceled, dismissed, pending, done
sortstring enum

Par défaut « priority », le plus urgent en premier, les égalités étant départagées par la phase du déploiement puis par la date la plus récente — ainsi, parmi des billets d’égale urgence, la configuration de DMARC passe avant le travail SPF et DKIM qui dépend de ses rapports. « sequence » suit le déploiement tel quel : configuration de DMARC, enregistrements de base, alignement SPF/DKIM, nettoyage, application, renforcement. « status » classe d’abord les billets en attente, puis ouverts, reportés, terminés, écartés et annulés, en départageant les égalités par priorité, par séquence, puis par date la plus récente. « resolved_at » trie selon le moment où un billet a été terminé, le plus récent en premier en ordre décroissant; les billets jamais terminés viennent en dernier.

Valeurs possibles : created_at, priority, resolved_at, sequence, status
sort_directionstring enum
Valeurs possibles : desc, asc
per_pagenumber
pagenumber
domainstring (uuid)
groupstring (uuid)
expandarray of string enum
Valeurs possibles : domain, source

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/tasks" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of Taskobligatoire
Task
idstring (uuid)obligatoire
domain_idstring (uuid)obligatoire
domainobject
properties
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
scorenumberobligatoire

Le score d’audit du domaine dans son état actuel.

Min. : 0 · Max. : 100
score_gaininteger

Part du score du domaine que l’achèvement de ce billet permet de regagner, selon le même calcul que celui de la vue d’ensemble du domaine. 0 pour les types de billets que le score ne mesure pas. Présent seulement avec expand[]=domain, puisqu’il dépend du domaine dans son état actuel.

Min. : 0
sending_domainstring, nullableobligatoire
source_idstring (uuid), nullableobligatoire
sourceobject
properties
idstring (uuid)obligatoire
namestringobligatoire
homepagestring (uri), nullableobligatoire
documentationobjectobligatoire
properties
spfstring, nullable
dkimstring, nullable
combinedstring, nullable
categorystring enumobligatoire
Valeurs possibles : SENDING_TOOL, MAILBOX_PROVIDER, VPS_PROVIDER, SECURITY_PROVIDER, EMAIL_RELAY
forwarding_typestring enumobligatoire
Valeurs possibles : NOT_FORWARDER, FORWARDER, FORWARDER_ONLY
spf_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
spf_supported_methodsarray of string enumobligatoire
items
Valeurs possibles : DIRECT, SUBDOMAIN, MANAGED_SUBDOMAIN
spf_support_optionsobjectobligatoire
properties
directobject, nullableobligatoire
properties
valuesarray of stringobligatoire
requires_advanced_configboolean, nullableobligatoire
subdomainobject, nullableobligatoire
properties
is_managedbooleanobligatoire
requires_user_selectionbooleanobligatoire
pathstring, nullableobligatoire
valuestring, nullableobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
valuestring
dkim_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
dkim_discovery_selectorsarray of stringobligatoire
instructionsobject, nullable

BÊTA : peut être développé seulement pour GET /tasks/:id. Peut parfois contenir des instructions.

properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME
namestring
valuestring
source_aliasstring, nullableobligatoire
prioritynumberobligatoire
sequencenumberobligatoire

La place du billet dans le déploiement de l’authentification des courriels, les plus basses en premier : 10 configuration de DMARC, 20 enregistrements de base, 30 alignement SPF/DKIM, 40 nettoyage, 50 application, 60 renforcement. Distincte de la priorité, qui est l’urgence; la séquence ordonne les billets de priorité égale, puisqu’un billet d’alignement ne peut pas être traité avant que les rapports DMARC existent pour montrer l’échec.

statusTaskStatusobligatoire
Valeurs possibles : open, snoozed, canceled, dismissed, pending, done
typeTaskTypeobligatoire
Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
descriptionstringobligatoire
snoozed_untilstring (date-time), nullableobligatoire
marked_pending_atstring (date-time), nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
resolved_atstring (date-time), nullableobligatoire
resolution_reasonTaskResolutionReasonobligatoire

Pourquoi un billet terminé a été fermé. « verified » : la propre vérification de Palisade a constaté que le problème avait disparu. « manual » : une personne ou un appelant de l’API l’a marqué comme terminé, et rien n’a été vérifié. Null pour un billet qui n’est pas terminé, et pour un billet fermé avant que la raison commence à être enregistrée. D’autres valeurs pourraient s’ajouter; traitez donc une valeur inconnue comme non précisée.

Valeurs possibles : verified, manual
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Obtenir un billet

GET/tasks/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

Paramètres de requête

expandarray of string enum
Valeurs possibles : domain, instructions, source

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/tasks/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200Task

Succès

Corps de la réponse
idstring (uuid)obligatoire
domain_idstring (uuid)obligatoire
domainobject
properties
idstring (uuid)obligatoire
urlstringobligatoire
dmarc_policystringobligatoire
scorenumberobligatoire

Le score d’audit du domaine dans son état actuel.

Min. : 0 · Max. : 100
score_gaininteger

Part du score du domaine que l’achèvement de ce billet permet de regagner, selon le même calcul que celui de la vue d’ensemble du domaine. 0 pour les types de billets que le score ne mesure pas. Présent seulement avec expand[]=domain, puisqu’il dépend du domaine dans son état actuel.

Min. : 0
sending_domainstring, nullableobligatoire
source_idstring (uuid), nullableobligatoire
sourceobject
properties
idstring (uuid)obligatoire
namestringobligatoire
homepagestring (uri), nullableobligatoire
documentationobjectobligatoire
properties
spfstring, nullable
dkimstring, nullable
combinedstring, nullable
categorystring enumobligatoire
Valeurs possibles : SENDING_TOOL, MAILBOX_PROVIDER, VPS_PROVIDER, SECURITY_PROVIDER, EMAIL_RELAY
forwarding_typestring enumobligatoire
Valeurs possibles : NOT_FORWARDER, FORWARDER, FORWARDER_ONLY
spf_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
spf_supported_methodsarray of string enumobligatoire
items
Valeurs possibles : DIRECT, SUBDOMAIN, MANAGED_SUBDOMAIN
spf_support_optionsobjectobligatoire
properties
directobject, nullableobligatoire
properties
valuesarray of stringobligatoire
requires_advanced_configboolean, nullableobligatoire
subdomainobject, nullableobligatoire
properties
is_managedbooleanobligatoire
requires_user_selectionbooleanobligatoire
pathstring, nullableobligatoire
valuestring, nullableobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
valuestring
dkim_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
dkim_discovery_selectorsarray of stringobligatoire
instructionsobject, nullable

BÊTA : peut être développé seulement pour GET /tasks/:id. Peut parfois contenir des instructions.

properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME
namestring
valuestring
source_aliasstring, nullableobligatoire
prioritynumberobligatoire
sequencenumberobligatoire

La place du billet dans le déploiement de l’authentification des courriels, les plus basses en premier : 10 configuration de DMARC, 20 enregistrements de base, 30 alignement SPF/DKIM, 40 nettoyage, 50 application, 60 renforcement. Distincte de la priorité, qui est l’urgence; la séquence ordonne les billets de priorité égale, puisqu’un billet d’alignement ne peut pas être traité avant que les rapports DMARC existent pour montrer l’échec.

statusTaskStatusobligatoire
Valeurs possibles : open, snoozed, canceled, dismissed, pending, done
typeTaskTypeobligatoire
Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
descriptionstringobligatoire
snoozed_untilstring (date-time), nullableobligatoire
marked_pending_atstring (date-time), nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
resolved_atstring (date-time), nullableobligatoire
resolution_reasonTaskResolutionReasonobligatoire

Pourquoi un billet terminé a été fermé. « verified » : la propre vérification de Palisade a constaté que le problème avait disparu. « manual » : une personne ou un appelant de l’API l’a marqué comme terminé, et rien n’a été vérifié. Null pour un billet qui n’est pas terminé, et pour un billet fermé avant que la raison commence à être enregistrée. D’autres valeurs pourraient s’ajouter; traitez donc une valeur inconnue comme non précisée.

Valeurs possibles : verified, manual

Mettre à jour un billet

POST/tasks/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

statusTaskStatus
Valeurs possibles : open, snoozed, canceled, dismissed, pending, done
ignore_spfboolean

Cesse de compter l’expéditeur du billet contre SPF sur son domaine. Ignorer à la fois SPF et DKIM pour l’expéditeur du billet l’écarte, ce qui répond au billet confirm_source de l’expéditeur : un billet confirm_source mis à jour de sorte que les deux soient ignorés est fermé comme terminé, sauf si l’état envoyé est dismissed ou canceled, et tout autre billet confirm_source ouvert pour le même expéditeur est fermé lui aussi.

ignore_dkimboolean

Cesse de compter l’expéditeur du billet contre DKIM sur son domaine. Ignorer à la fois SPF et DKIM pour l’expéditeur du billet l’écarte, ce qui répond au billet confirm_source de l’expéditeur : un billet confirm_source mis à jour de sorte que les deux soient ignorés est fermé comme terminé, sauf si l’état envoyé est dismissed ou canceled, et tout autre billet confirm_source ouvert pour le même expéditeur est fermé lui aussi.

confirm_sourceboolean

Confirme l’expéditeur du billet pour son domaine. Cela répond au billet confirm_source de l’expéditeur : un billet confirm_source mis à jour avec cet indicateur est donc fermé comme terminé, sauf si l’état envoyé est dismissed ou canceled, et tout autre billet confirm_source ouvert pour le même expéditeur est fermé lui aussi.

confirm_source_in_useboolean

Exemple de requête

curl -X POST "https://api.palisade.email/tasks/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "status": "open",
  "ignore_spf": true,
  "ignore_dkim": true,
  "confirm_source": true,
  "confirm_source_in_use": true
}'

Réponses

200object

Succès

Corps de la réponse
idstring (uuid)obligatoire
domain_idstring (uuid)obligatoire
sending_domainstring, nullableobligatoire
source_idstring (uuid), nullableobligatoire
source_aliasstring, nullableobligatoire
prioritynumberobligatoire
sequencenumberobligatoire

La place du billet dans le déploiement de l’authentification des courriels, les plus basses en premier : 10 configuration de DMARC, 20 enregistrements de base, 30 alignement SPF/DKIM, 40 nettoyage, 50 application, 60 renforcement. Distincte de la priorité, qui est l’urgence; la séquence ordonne les billets de priorité égale, puisqu’un billet d’alignement ne peut pas être traité avant que les rapports DMARC existent pour montrer l’échec.

statusTaskStatusobligatoire
Valeurs possibles : open, snoozed, canceled, dismissed, pending, done
typeTaskTypeobligatoire
Valeurs possibles : cleanup_spf_record, confirm_source, lockdown_domain, reduce_spf_lookups, set_up_dmarc_record, source_failing_dkim, source_failing_spf, set_up_mx_record, set_up_spf_record, update_dmarc_record, update_ttl, set_up_mta_sts, set_up_tls_rpt, resolve_dns_conflict, review_unused_sender, cleanup_sender_records, fix_mx_certificate, renew_vmc_certificate, dkim_selector_not_imported, set_up_bimi, review_lookalike_domain
descriptionstringobligatoire
snoozed_untilstring (date-time), nullableobligatoire
marked_pending_atstring (date-time), nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
resolved_atstring (date-time), nullableobligatoire
resolution_reasonTaskResolutionReasonobligatoire

Pourquoi un billet terminé a été fermé. « verified » : la propre vérification de Palisade a constaté que le problème avait disparu. « manual » : une personne ou un appelant de l’API l’a marqué comme terminé, et rien n’a été vérifié. Null pour un billet qui n’est pas terminé, et pour un billet fermé avant que la raison commence à être enregistrée. D’autres valeurs pourraient s’ajouter; traitez donc une valeur inconnue comme non précisée.

Valeurs possibles : verified, manual

Organisation

Créer une organisation

POST/organizationsauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

namestringobligatoire
Longueur min. : 3 · Longueur max. : 128
invite_emailstring (email), nullableobligatoire

Si cette adresse est fournie, une invitation à se joindre à l’organisation comme administrateur lui est envoyée.

refererstring, nullable

Ce champ doit être omis ou laissé à null quand une clé d’API est utilisée.

pricing_typestring enum

Forfait en libre-service à attribuer. Pris en compte seulement quand PLG est activé; sinon, le forfait par défaut est utilisé.

Valeurs possibles : free, it_teams, msp
attribution_idstring (uuid)

Identifiant de parcours interne opaque transmis depuis palisade.email. Ignoré pour une création qui n’est pas en libre-service.

attribution_arrivalobject

D’où provient une inscription quand elle a atteint l’application sans passer par palisade.email, comme l’assistant d’IA dont le connecteur l’a lancée. Sert uniquement à l’attribution des acquisitions. Ignoré pour une création qui n’est pas en libre-service.

properties
sourcestring, nullable
Longueur max. : 255
mediumstring, nullable
Longueur max. : 255
campaignstring, nullable
Longueur max. : 255
contentstring, nullable
Longueur max. : 255
landing_pathstring, nullable
Longueur max. : 2048

Exemple de requête

curl -X POST "https://api.palisade.email/organizations" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "string",
  "invite_email": "user@example.com",
  "referer": "string",
  "pricing_type": "free",
  "attribution_id": "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1",
  "attribution_arrival": {
    "source": "string",
    "medium": "string",
    "campaign": "string",
    "content": "string",
    "landing_path": "string"
  }
}'

Réponses

200CreatedOrganization

Succès

Corps de la réponse
idstringobligatoire
namestringobligatoire
logo_urlstring, nullableobligatoire
emailstring, nullableobligatoire
phone_numberstring, nullableobligatoire
websitestring, nullableobligatoire
is_activebooleanobligatoire
require_mfabooleanobligatoire

Si chaque membre doit faire l’authentification multifacteur pour se connecter à cette organisation. Un membre qui n’a pas configuré d’authentificateur est invité à le faire à sa prochaine connexion.

settingsobject, nullable
properties
email_notificationsobject

Préférences de notification par courriel de l’organisation. Détermine quels types de courriels sont envoyés.

properties
domain_driftedboolean

Envoyer des notifications quand les enregistrements DNS d’un domaine s’écartent de la configuration attendue.

Par défaut : true
domain_failedboolean

Envoyer des notifications quand un domaine échoue aux vérifications DMARC.

Par défaut : true
domain_setupboolean

Envoyer des notifications quand la configuration DMARC d’un domaine est réussie.

Par défaut : true
tasks_digestsboolean

Envoyer un résumé quotidien des nouveaux billets et des billets en attente.

Par défaut : true
setup_remindersboolean

Envoyer des rappels pour terminer l’ajout et la vérification d’un premier domaine.

Par défaut : true
first_reportboolean

Envoyer un courriel quand les premières données DMARC d’un domaine nouvellement configuré arrivent, et son premier rapport une semaine plus tard.

Par défaut : true
invitation_remindersboolean

Rappeler aux personnes invitées une invitation non acceptée, et indiquer à la personne qui a invité quelles invitations sont sur le point d’expirer.

Par défaut : true
billing_noticesboolean

Envoyer des avis sur l’utilisation du forfait, comme le dépassement de l’allocation mensuelle de courriels du forfait Free.

Par défaut : true
hosted_spf_liveboolean

Envoyer un courriel unique quand la configuration SPF hébergé d’un domaine se termine et entre en service.

Par défaut : true
delegation_missingboolean

Envoyer une notification quand un domaine n’a jamais délégué à un enregistrement que Palisade héberge pour lui, de sorte que l’enregistrement hébergé n’est pas en service. Réglé séparément de domain_drifted.

Par défaut : true
critical_lookalike_domainsboolean

Envoyer un courriel dès qu’un sosie critique d’un domaine surveillé est trouvé.

Par défaut : true
waiting_domains_emailstring enum

Fréquence à laquelle les administrateurs d’une organisation MSP reçoivent le courriel qui compte les domaines clients qui ne sont pas encore en service : weekly, monthly ou off. Une valeur absente signifie weekly.

Valeurs possibles : weekly, monthly, off
onboarding_dismissed_atstring (date-time), nullable

Quand quelqu’un a écarté ou terminé l’assistant d’intégration pour cette organisation. Une valeur absente ou null signifie que personne ne l’a fait, et l’assistant est encore proposé à une organisation sans domaine.

created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
support_providerSupportProviderobligatoire
Valeurs possibles : palisade, sherweb
has_domainsboolean
invitation_failureOrganizationInvitationFailure

Présent seulement quand invite_email a été fourni et que le fournisseur d’identité a renvoyé une erreur en créant cette invitation. L’organisation elle-même a été créée. Le message indique si l’invitation a tout de même été créée, n’a pas été créée, ou n’a pas pu être vérifiée; listez les invitations de l’organisation avant d’inviter de nouveau l’adresse, puisqu’une nouvelle tentative crée une deuxième invitation.

OrganizationInvitationFailure
codestring enumobligatoire
Valeurs possibles : upstream_failure
messagestringobligatoire

Mettre à jour une organisation

POST/organizations/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

is_activeboolean

Si l’organisation doit être active ou non.

namestring
Longueur min. : 3 · Longueur max. : 128
logo_urlstring (uri)
emailstring (email)

Adresse courriel de contact de l’organisation.

phone_numberstring

Numéro de téléphone de contact de l’organisation.

Longueur min. : 1 · Longueur max. : 50
websitestring (uri)

URL du site Web de l’organisation.

settingsobject

Paramètres de l’organisation, y compris les préférences de notification par courriel.

properties
email_notificationsobject

Préférences de notification par courriel de l’organisation. Détermine quels types de courriels sont envoyés.

properties
domain_driftedboolean

Envoyer des notifications quand les enregistrements DNS d’un domaine s’écartent de la configuration attendue.

Par défaut : true
domain_failedboolean

Envoyer des notifications quand un domaine échoue aux vérifications DMARC.

Par défaut : true
domain_setupboolean

Envoyer des notifications quand la configuration DMARC d’un domaine est réussie.

Par défaut : true
tasks_digestsboolean

Envoyer un résumé quotidien des nouveaux billets et des billets en attente.

Par défaut : true
setup_remindersboolean

Envoyer des rappels pour terminer l’ajout et la vérification d’un premier domaine.

Par défaut : true
first_reportboolean

Envoyer un courriel quand les premières données DMARC d’un domaine nouvellement configuré arrivent, et son premier rapport une semaine plus tard.

Par défaut : true
invitation_remindersboolean

Rappeler aux personnes invitées une invitation non acceptée, et indiquer à la personne qui a invité quelles invitations sont sur le point d’expirer.

Par défaut : true
billing_noticesboolean

Envoyer des avis sur l’utilisation du forfait, comme le dépassement de l’allocation mensuelle de courriels du forfait Free.

Par défaut : true
hosted_spf_liveboolean

Envoyer un courriel unique quand la configuration SPF hébergé d’un domaine se termine et entre en service.

Par défaut : true
delegation_missingboolean

Envoyer une notification quand un domaine n’a jamais délégué à un enregistrement que Palisade héberge pour lui, de sorte que l’enregistrement hébergé n’est pas en service. Réglé séparément de domain_drifted.

Par défaut : true
critical_lookalike_domainsboolean

Envoyer un courriel dès qu’un sosie critique d’un domaine surveillé est trouvé.

Par défaut : true
waiting_domains_emailstring enum

Fréquence à laquelle les administrateurs d’une organisation MSP reçoivent le courriel qui compte les domaines clients qui ne sont pas encore en service : weekly, monthly ou off. Une valeur absente signifie weekly.

Valeurs possibles : weekly, monthly, off
require_mfaboolean

Exige que chaque membre fasse l’authentification multifacteur à chaque connexion. Seul un administrateur de cette organisation peut modifier ce paramètre, à partir d’une session connectée plutôt qu’avec une clé d’API, et toute modification, dans un sens comme dans l’autre, est refusée avec mfa_confirmation_required tant que la propre connexion de cet administrateur n’a pas fait l’authentification multifacteur.

Exemple de requête

curl -X POST "https://api.palisade.email/organizations/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "is_active": true,
  "name": "string",
  "logo_url": "https://example.com",
  "email": "user@example.com",
  "phone_number": "string",
  "website": "https://example.com",
  "settings": {
    "email_notifications": {
      "domain_drifted": true,
      "domain_failed": true,
      "domain_setup": true,
      "tasks_digests": true,
      "setup_reminders": true,
      "first_report": true,
      "invitation_reminders": true,
      "billing_notices": true,
      "hosted_spf_live": true,
      "delegation_missing": true,
      "critical_lookalike_domains": true
    },
    "waiting_domains_email": "weekly"
  },
  "require_mfa": true
}'

Réponses

200Organization

Succès

Corps de la réponse
idstringobligatoire
namestringobligatoire
logo_urlstring, nullableobligatoire
emailstring, nullableobligatoire
phone_numberstring, nullableobligatoire
websitestring, nullableobligatoire
is_activebooleanobligatoire
require_mfabooleanobligatoire

Si chaque membre doit faire l’authentification multifacteur pour se connecter à cette organisation. Un membre qui n’a pas configuré d’authentificateur est invité à le faire à sa prochaine connexion.

settingsobject, nullable
properties
email_notificationsobject

Préférences de notification par courriel de l’organisation. Détermine quels types de courriels sont envoyés.

properties
domain_driftedboolean

Envoyer des notifications quand les enregistrements DNS d’un domaine s’écartent de la configuration attendue.

Par défaut : true
domain_failedboolean

Envoyer des notifications quand un domaine échoue aux vérifications DMARC.

Par défaut : true
domain_setupboolean

Envoyer des notifications quand la configuration DMARC d’un domaine est réussie.

Par défaut : true
tasks_digestsboolean

Envoyer un résumé quotidien des nouveaux billets et des billets en attente.

Par défaut : true
setup_remindersboolean

Envoyer des rappels pour terminer l’ajout et la vérification d’un premier domaine.

Par défaut : true
first_reportboolean

Envoyer un courriel quand les premières données DMARC d’un domaine nouvellement configuré arrivent, et son premier rapport une semaine plus tard.

Par défaut : true
invitation_remindersboolean

Rappeler aux personnes invitées une invitation non acceptée, et indiquer à la personne qui a invité quelles invitations sont sur le point d’expirer.

Par défaut : true
billing_noticesboolean

Envoyer des avis sur l’utilisation du forfait, comme le dépassement de l’allocation mensuelle de courriels du forfait Free.

Par défaut : true
hosted_spf_liveboolean

Envoyer un courriel unique quand la configuration SPF hébergé d’un domaine se termine et entre en service.

Par défaut : true
delegation_missingboolean

Envoyer une notification quand un domaine n’a jamais délégué à un enregistrement que Palisade héberge pour lui, de sorte que l’enregistrement hébergé n’est pas en service. Réglé séparément de domain_drifted.

Par défaut : true
critical_lookalike_domainsboolean

Envoyer un courriel dès qu’un sosie critique d’un domaine surveillé est trouvé.

Par défaut : true
waiting_domains_emailstring enum

Fréquence à laquelle les administrateurs d’une organisation MSP reçoivent le courriel qui compte les domaines clients qui ne sont pas encore en service : weekly, monthly ou off. Une valeur absente signifie weekly.

Valeurs possibles : weekly, monthly, off
onboarding_dismissed_atstring (date-time), nullable

Quand quelqu’un a écarté ou terminé l’assistant d’intégration pour cette organisation. Une valeur absente ou null signifie que personne ne l’a fait, et l’assistant est encore proposé à une organisation sans domaine.

created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
support_providerSupportProviderobligatoire
Valeurs possibles : palisade, sherweb
has_domainsboolean

Supprimer une organisation

DELETE/organizations/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/organizations/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

202object

Acceptée

Corps de la réponse
deletedboolean enumobligatoire
Valeurs possibles : true
objectstring enumobligatoire
Valeurs possibles : organization
idstringobligatoire

Écarter l’assistant d’intégration

POST/organizations/{id}/onboarding/dismissauthentification requise

Consigne que l’assistant d’intégration a été écarté ou terminé, pour qu’il ne soit plus proposé. Idempotent : un deuxième appel conserve le premier horodatage. Exige domains:read, la même autorisation qui détermine si l’assistant est affiché.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X POST "https://api.palisade.email/organizations/<id>/onboarding/dismiss" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200Organization

Succès

Corps de la réponse
idstringobligatoire
namestringobligatoire
logo_urlstring, nullableobligatoire
emailstring, nullableobligatoire
phone_numberstring, nullableobligatoire
websitestring, nullableobligatoire
is_activebooleanobligatoire
require_mfabooleanobligatoire

Si chaque membre doit faire l’authentification multifacteur pour se connecter à cette organisation. Un membre qui n’a pas configuré d’authentificateur est invité à le faire à sa prochaine connexion.

settingsobject, nullable
properties
email_notificationsobject

Préférences de notification par courriel de l’organisation. Détermine quels types de courriels sont envoyés.

properties
domain_driftedboolean

Envoyer des notifications quand les enregistrements DNS d’un domaine s’écartent de la configuration attendue.

Par défaut : true
domain_failedboolean

Envoyer des notifications quand un domaine échoue aux vérifications DMARC.

Par défaut : true
domain_setupboolean

Envoyer des notifications quand la configuration DMARC d’un domaine est réussie.

Par défaut : true
tasks_digestsboolean

Envoyer un résumé quotidien des nouveaux billets et des billets en attente.

Par défaut : true
setup_remindersboolean

Envoyer des rappels pour terminer l’ajout et la vérification d’un premier domaine.

Par défaut : true
first_reportboolean

Envoyer un courriel quand les premières données DMARC d’un domaine nouvellement configuré arrivent, et son premier rapport une semaine plus tard.

Par défaut : true
invitation_remindersboolean

Rappeler aux personnes invitées une invitation non acceptée, et indiquer à la personne qui a invité quelles invitations sont sur le point d’expirer.

Par défaut : true
billing_noticesboolean

Envoyer des avis sur l’utilisation du forfait, comme le dépassement de l’allocation mensuelle de courriels du forfait Free.

Par défaut : true
hosted_spf_liveboolean

Envoyer un courriel unique quand la configuration SPF hébergé d’un domaine se termine et entre en service.

Par défaut : true
delegation_missingboolean

Envoyer une notification quand un domaine n’a jamais délégué à un enregistrement que Palisade héberge pour lui, de sorte que l’enregistrement hébergé n’est pas en service. Réglé séparément de domain_drifted.

Par défaut : true
critical_lookalike_domainsboolean

Envoyer un courriel dès qu’un sosie critique d’un domaine surveillé est trouvé.

Par défaut : true
waiting_domains_emailstring enum

Fréquence à laquelle les administrateurs d’une organisation MSP reçoivent le courriel qui compte les domaines clients qui ne sont pas encore en service : weekly, monthly ou off. Une valeur absente signifie weekly.

Valeurs possibles : weekly, monthly, off
onboarding_dismissed_atstring (date-time), nullable

Quand quelqu’un a écarté ou terminé l’assistant d’intégration pour cette organisation. Une valeur absente ou null signifie que personne ne l’a fait, et l’assistant est encore proposé à une organisation sans domaine.

created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
support_providerSupportProviderobligatoire
Valeurs possibles : palisade, sherweb
has_domainsboolean

Utilisation

Obtenir le nombre de domaines utilisés

GET/usageauthentification requise

Paramètres de requête

date_fromstring (date)obligatoire
date_tostring (date)obligatoire
expandarray of string enum
Valeurs possibles : domains, organizations, line_items, aligned_messages

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/usage" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200Usage

Succès

Corps de la réponse
active_domainsnumberobligatoire
inactive_domainsnumberobligatoire
parked_domainsnumberobligatoire
deleted_domainsnumberobligatoire
domainsarray of object
items
idstring (uuid)obligatoire
urlstringobligatoire
is_activebooleanobligatoire
is_parkedbooleanobligatoire
organization_idstring (uuid)obligatoire
organizationsarray of object
items
idstring (uuid)obligatoire
namestringobligatoire
active_domainsnumberobligatoire
inactive_domainsnumberobligatoire
parked_domainsnumberobligatoire
is_trialingbooleanobligatoire
line_itemsarray of LineItem
LineItem
skustring enumobligatoire
Valeurs possibles : DOMAIN-ACTIVE-TRIAL, DOMAIN-ACTIVE-FREE, DOMAIN-ACTIVE-1TO10, DOMAIN-ACTIVE-11TO100, DOMAIN-ACTIVE-101TO1000, DOMAIN-ACTIVE-1001PLUS, DOMAIN-INACTIVE, DOMAIN-PARKED, AGENT-ADDON
quantitynumberobligatoire
line_itemsarray of LineItem
LineItem
skustring enumobligatoire
Valeurs possibles : DOMAIN-ACTIVE-TRIAL, DOMAIN-ACTIVE-FREE, DOMAIN-ACTIVE-1TO10, DOMAIN-ACTIVE-11TO100, DOMAIN-ACTIVE-101TO1000, DOMAIN-ACTIVE-1001PLUS, DOMAIN-INACTIVE, DOMAIN-PARKED, AGENT-ADDON
quantitynumberobligatoire
aligned_messagesinteger

Nombre de messages authentifiés comme provenant de l’organisation elle-même (alignés SPF ou DKIM) qui ont été déclarés pendant la plage demandée, pour l’organisation et toutes ses organisations enfants actives. C’est le volume sur lequel le forfait IT teams est vendu. Renvoyé seulement s’il est demandé par expand, puisqu’il agrège la table des rapports DMARC.

Min. : 0

Membre

Lister les membres de l’organisation

GET/membersauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/members" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of Memberobligatoire
Member
user_idstring (uuid)obligatoire
emailstring, nullableobligatoire
namestring, nullableobligatoire
picturestring (uri), nullableobligatoire
login_methodstring enumobligatoire
Valeurs possibles : email_password, google, microsoft
restricted_to_groupsbooleanobligatoire
groupsarray of string (uuid)obligatoire
rolesarray of MemberRoleobligatoire
MemberRole
Valeurs possibles : admin, editor, viewer
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Ajouter un compte existant

POST/membersauthentification requise

Ajoute un compte Palisade existant à votre organisation. Utilisez ceci quand la personne a déjà un compte : POST /invitations l’envoie vers un écran d’inscription qu’elle ne peut pas terminer, et renvoie invitation_invitee_exists pour une telle adresse. Renvoie 201 quand le compte est ajouté et 200 quand il était déjà membre, auquel cas les rôles et les groupes demandés sont tout de même appliqués.

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

emailstring (email)obligatoire

Adresse courriel d’un compte Palisade existant. Utilisez POST /invitations pour une personne qui n’a pas encore de compte.

rolesarray of MemberRoleobligatoire
MemberRole
Valeurs possibles : admin, editor, viewer
groupsarray of string (uuid)

Exemple de requête

curl -X POST "https://api.palisade.email/members" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "email": "user@example.com",
  "roles": [
    "admin"
  ],
  "groups": [
    "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1"
  ]
}'

Réponses

200Member

Déjà membre; rôles et groupes appliqués

Corps de la réponse
user_idstring (uuid)obligatoire
emailstring, nullableobligatoire
namestring, nullableobligatoire
picturestring (uri), nullableobligatoire
login_methodstring enumobligatoire
Valeurs possibles : email_password, google, microsoft
restricted_to_groupsbooleanobligatoire
groupsarray of string (uuid)obligatoire
rolesarray of MemberRoleobligatoire
MemberRole
Valeurs possibles : admin, editor, viewer
201Member

Ajouté

Corps de la réponse
user_idstring (uuid)obligatoire
emailstring, nullableobligatoire
namestring, nullableobligatoire
picturestring (uri), nullableobligatoire
login_methodstring enumobligatoire
Valeurs possibles : email_password, google, microsoft
restricted_to_groupsbooleanobligatoire
groupsarray of string (uuid)obligatoire
rolesarray of MemberRoleobligatoire
MemberRole
Valeurs possibles : admin, editor, viewer
400MemberAccountNotFound

Aucun compte Palisade n’existe pour cette adresse courriel. Envoyez plutôt une invitation.

Corps de la réponse
codestring enumobligatoire
Valeurs possibles : parameter_invalid_or_missing
paramstring enumobligatoire
Valeurs possibles : email
messagestringobligatoire

Mettre à jour un membre

POST/members/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

rolesarray of MemberRole
MemberRole
Valeurs possibles : admin, editor, viewer
groupsarray of string (uuid)

Exemple de requête

curl -X POST "https://api.palisade.email/members/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "roles": [
    "admin"
  ],
  "groups": [
    "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1"
  ]
}'

Réponses

200Member

Succès

Corps de la réponse
user_idstring (uuid)obligatoire
emailstring, nullableobligatoire
namestring, nullableobligatoire
picturestring (uri), nullableobligatoire
login_methodstring enumobligatoire
Valeurs possibles : email_password, google, microsoft
restricted_to_groupsbooleanobligatoire
groupsarray of string (uuid)obligatoire
rolesarray of MemberRoleobligatoire
MemberRole
Valeurs possibles : admin, editor, viewer

Retirer un membre

DELETE/members/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/members/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Supprimé

Corps de la réponse
deletedbooleanobligatoire
objectstringobligatoire
idstring (uuid)obligatoire

Lister l’état de l’authentification multifacteur des membres

GET/members/mfa/statusesauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/members/mfa/statuses" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200GetMembersMfaStatusesResponse

Succès

Corps de la réponse
statusesobjectobligatoire

MTA-STS

Obtenir l’état de MTA-STS

GET/domains/{domainId}/mta-stsauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/mta-sts" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200MtaSts

Succès

Corps de la réponse
is_managedbooleanobligatoire
statusDnsStatus & object, nullableobligatoire
modestring enum, nullableobligatoire
Valeurs possibles : testing, enforce, none
max_agenumber, nullableobligatoire
mxarray of stringobligatoire
policy_idstring, nullableobligatoire
custom_hostname_idstring, nullableobligatoire
cname_targetstringobligatoire
txt_cname_targetstringobligatoire
tls_reporting_emailstring, nullableobligatoire
tls_rpt_recordstring, nullableobligatoire

Activer MTA-STS

POST/domains/{domainId}/mta-stsauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

modestring enum
Valeurs possibles : testing, enforce, none · Par défaut : "testing"
max_agenumber
Par défaut : 86400 · Min. : 86400 · Max. : 31557600

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<domainId>/mta-sts" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{}'

Réponses

200MtaSts

Succès

Corps de la réponse
is_managedbooleanobligatoire
statusDnsStatus & object, nullableobligatoire
modestring enum, nullableobligatoire
Valeurs possibles : testing, enforce, none
max_agenumber, nullableobligatoire
mxarray of stringobligatoire
policy_idstring, nullableobligatoire
custom_hostname_idstring, nullableobligatoire
cname_targetstringobligatoire
txt_cname_targetstringobligatoire
tls_reporting_emailstring, nullableobligatoire
tls_rpt_recordstring, nullableobligatoire

Mettre à jour la politique MTA-STS

PUT/domains/{domainId}/mta-stsauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

modestring enum
Valeurs possibles : testing, enforce, none
max_agenumber
Min. : 86400 · Max. : 31557600

Exemple de requête

curl -X PUT "https://api.palisade.email/domains/<domainId>/mta-sts" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "mode": "testing",
  "max_age": 86400
}'

Réponses

200MtaSts

Succès

Corps de la réponse
is_managedbooleanobligatoire
statusDnsStatus & object, nullableobligatoire
modestring enum, nullableobligatoire
Valeurs possibles : testing, enforce, none
max_agenumber, nullableobligatoire
mxarray of stringobligatoire
policy_idstring, nullableobligatoire
custom_hostname_idstring, nullableobligatoire
cname_targetstringobligatoire
txt_cname_targetstringobligatoire
tls_reporting_emailstring, nullableobligatoire
tls_rpt_recordstring, nullableobligatoire

Désactiver MTA-STS

DELETE/domains/{domainId}/mta-stsauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/domains/<domainId>/mta-sts" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200MtaSts

Succès

Corps de la réponse
is_managedbooleanobligatoire
statusDnsStatus & object, nullableobligatoire
modestring enum, nullableobligatoire
Valeurs possibles : testing, enforce, none
max_agenumber, nullableobligatoire
mxarray of stringobligatoire
policy_idstring, nullableobligatoire
custom_hostname_idstring, nullableobligatoire
cname_targetstringobligatoire
txt_cname_targetstringobligatoire
tls_reporting_emailstring, nullableobligatoire
tls_rpt_recordstring, nullableobligatoire

Réessayer une configuration MTA-STS échouée

POST/domains/{domainId}/mta-sts/retryauthentification requise

Demande un nouveau certificat pour mta-sts.{domain} après l’échec d’une configuration. L’hébergement MTA-STS doit déjà être activé pour le domaine, celui-ci doit être actuellement dans l’état d’erreur et il doit publier le CNAME mta-sts; sinon, la nouvelle tentative est refusée avec une explication. Une configuration encore en cours est refusée plutôt que redémarrée. Renvoie le domaine inchangé quand son certificat est déjà actif.

Paramètres de chemin

domainIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X POST "https://api.palisade.email/domains/<domainId>/mta-sts/retry" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200MtaSts

Succès

Corps de la réponse
is_managedbooleanobligatoire
statusDnsStatus & object, nullableobligatoire
modestring enum, nullableobligatoire
Valeurs possibles : testing, enforce, none
max_agenumber, nullableobligatoire
mxarray of stringobligatoire
policy_idstring, nullableobligatoire
custom_hostname_idstring, nullableobligatoire
cname_targetstringobligatoire
txt_cname_targetstringobligatoire
tls_reporting_emailstring, nullableobligatoire
tls_rpt_recordstring, nullableobligatoire

Données des rapports

Obtenir le sommaire du rapport

GET/report-data/summaryauthentification requise

Paramètres de requête

periodstring enum
Valeurs possibles : last_1_day, last_7_days, last_30_days, last_365_days
date_fromstring
date_tostring

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/report-data/summary" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200ReportSummary

Succès

Corps de la réponse
date_fromstringobligatoire
date_tostringobligatoire
total_domainsintegerobligatoire
managed_domainsintegerobligatoire
monitored_domainsintegerobligatoire
avg_last_14_days_pass_ratenumberobligatoire
sendersarray of ReportSenderVolumeobligatoire
ReportSenderVolume
namestringobligatoire
volume_passintegerobligatoire
volume_failintegerobligatoire

Lister les scores de rapport des domaines

GET/report-data/domainsauthentification requise

Paramètres de requête

periodstring enum
Valeurs possibles : last_1_day, last_7_days, last_30_days, last_365_days
date_fromstring
date_tostring
pagenumber
per_pagenumber
group_idstring (uuid)

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/report-data/domains" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of ReportDomainobligatoire
ReportDomain
idstring (uuid)obligatoire
urlstringobligatoire
scoreintegerobligatoire
score_bandstring enumobligatoire
Valeurs possibles : critical, bad, good, great
policystringobligatoire
is_dmarc_managedbooleanobligatoire
last_14_days_volumeintegerobligatoire
last_14_days_pass_rate_dmarcnumberobligatoire
last_14_days_pass_rate_spfnumberobligatoire
last_14_days_pass_rate_dkimnumberobligatoire
threats_countintegerobligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Lister les expéditeurs d’un domaine

GET/report-data/domains/{domainId}/sendersauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

Paramètres de requête

periodstring enum
Valeurs possibles : last_1_day, last_7_days, last_30_days, last_365_days
date_fromstring
date_tostring

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/report-data/domains/<domainId>/senders" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200ReportDomainSenders

Succès

Corps de la réponse
date_fromstringobligatoire
date_tostringobligatoire
sendersarray of ReportSenderAggregateobligatoire
ReportSenderAggregate
namestringobligatoire
message_countintegerobligatoire
dmarc_passedintegerobligatoire
dmarc_failedintegerobligatoire
spf_passedintegerobligatoire
dkim_passedintegerobligatoire

Obtenir le volume quotidien

GET/report-data/domains/{domainId}/timeseriesauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

Paramètres de requête

periodstring enum
Valeurs possibles : last_1_day, last_7_days, last_30_days, last_365_days
date_fromstring
date_tostring

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/report-data/domains/<domainId>/timeseries" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200ReportDomainTimeseries

Succès

Corps de la réponse
date_fromstringobligatoire
date_tostringobligatoire
seriesarray of ReportTimeseriesPointobligatoire
ReportTimeseriesPoint
datestringobligatoire
message_countintegerobligatoire
compliantintegerobligatoire
non_compliantintegerobligatoire
forwardedintegerobligatoire
unknownintegerobligatoire
undeterminedintegerobligatoire

Rapports de prospection

Télécharger le PDF hébergé

GET/prospecting-reports/{id}/download

Sert le rapport à toute personne qui détient le lien — sans authentification, puisque le destinataire est un client potentiel. Les rapports sont accessibles pendant 90 jours à partir de leur création; ensuite, ceci renvoie 410 avec une page expliquant que le rapport a expiré, ou le JSON ci-dessous quand la requête le demande.

Paramètres de chemin

idstring (uuid)obligatoire

Exemple de requête

curl "https://api.palisade.email/prospecting-reports/<id>/download"

Réponses

200string (binary)

Le rapport en PDF

Corps de la réponse
string (binary)
410ProspectingReportGone

Le rapport a expiré et n’est plus accessible

Corps de la réponse
codestring enumobligatoire
Valeurs possibles : prospecting_report_expired
messagestringobligatoire
expires_atstring (date-time)obligatoire

Lister les rapports de prospection

GET/prospecting-reportsauthentification requise

Rapports de prospection créés au moyen de cette API, le plus récent en premier. Les clés d’API voient tous ceux de l’organisation. Un membre limité à certains groupes ne voit que les rapports qu’il a créés et ceux dont tous les domaines sont des domaines surveillés de ses groupes.

Paramètres de requête

pagenumber
per_pagenumber

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/prospecting-reports" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of ProspectingReportobligatoire
ProspectingReport
idstring (uuid)obligatoire
generated_forstringobligatoire
Longueur min. : 1
languagestring enumobligatoire
Valeurs possibles : en, fr
requested_bystringobligatoire
Longueur min. : 1
domainsarray of stringobligatoire
include_organization_infobooleanobligatoire
include_bimibooleanobligatoire
include_dns_recordsbooleanobligatoire
include_potential_lossbooleanobligatoire
themestring enumobligatoire

Le thème dans lequel le rapport est dessiné : clair sur papier, ou foncé sur un fond presque noir.

Valeurs possibles : light, dark
currencystring enumobligatoire

La devise dans laquelle chaque tranche de prix du rapport est imprimée.

Valeurs possibles : USD, CAD, EUR, GBP, AUD
deadline_weeksintegerobligatoire

Nombre de semaines que le plan et les pages de conclusion accordent au lecteur pour corriger ce que le rapport a trouvé.

Min. : 1 · Max. : 52
urlstring (uri)obligatoire
expires_atstring (date-time)obligatoire
expiredbooleanobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Générer un rapport de prospection

POST/prospecting-reportsauthentification requise

Audite chaque domaine selon le DNS en vigueur, produit le rapport de sécurité des courriels en PDF et l’héberge. Les domaines sont consultés publiquement et n’ont pas besoin de figurer dans votre compte, ce qui permet de l’utiliser pour un client potentiel. Jusqu’à 10 domaines par rapport. La réponse contient une URL que toute personne disposant du lien peut ouvrir, valide pendant 90 jours; supprimez le rapport pour qu’il cesse d’être accessible plus tôt.

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

generated_forstringobligatoire
Longueur min. : 1
domainsarray of stringobligatoire
languagestring enum
Valeurs possibles : en, fr · Par défaut : "en"
include_organization_infoboolean
Par défaut : true
include_bimiboolean
Par défaut : true
include_dns_recordsboolean
Par défaut : false
include_potential_lossboolean
Par défaut : true
themestring enum

Le thème dans lequel le rapport est dessiné : clair sur papier, ou foncé sur un fond presque noir.

Valeurs possibles : light, dark · Par défaut : "light"
currencystring enum

La devise dans laquelle chaque tranche de prix du rapport est imprimée.

Valeurs possibles : USD, CAD, EUR, GBP, AUD · Par défaut : "USD"
deadline_weeksinteger

Nombre de semaines que le plan et les pages de conclusion accordent au lecteur pour corriger ce que le rapport a trouvé.

Par défaut : 6 · Min. : 1 · Max. : 52

Exemple de requête

curl -X POST "https://api.palisade.email/prospecting-reports" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "generated_for": "string",
  "domains": [
    "string"
  ],
  "language": "en",
  "include_organization_info": true,
  "include_bimi": true,
  "include_dns_records": false,
  "include_potential_loss": true,
  "theme": "light",
  "currency": "USD",
  "deadline_weeks": 6
}'

Réponses

201ProspectingReport

Créé

Corps de la réponse
idstring (uuid)obligatoire
generated_forstringobligatoire
Longueur min. : 1
languagestring enumobligatoire
Valeurs possibles : en, fr
requested_bystringobligatoire
Longueur min. : 1
domainsarray of stringobligatoire
include_organization_infobooleanobligatoire
include_bimibooleanobligatoire
include_dns_recordsbooleanobligatoire
include_potential_lossbooleanobligatoire
themestring enumobligatoire

Le thème dans lequel le rapport est dessiné : clair sur papier, ou foncé sur un fond presque noir.

Valeurs possibles : light, dark
currencystring enumobligatoire

La devise dans laquelle chaque tranche de prix du rapport est imprimée.

Valeurs possibles : USD, CAD, EUR, GBP, AUD
deadline_weeksintegerobligatoire

Nombre de semaines que le plan et les pages de conclusion accordent au lecteur pour corriger ce que le rapport a trouvé.

Min. : 1 · Max. : 52
urlstring (uri)obligatoire
expires_atstring (date-time)obligatoire
expiredbooleanobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Prévisualiser un rapport

POST/prospecting-reports/previewauthentification requise

Effectue le même audit que POST /prospecting-reports et renvoie le rapport lui-même plutôt qu’un lien vers un PDF hébergé. format: "json" renvoie le rapport sous forme de données — chaque score, constat et chiffre qu’imprime le PDF, avec le libellé résolu pour la language demandée — pour que vous puissiez l’afficher dans votre propre mise en page. format: "html" renvoie le même rapport sous forme de document HTML complet et autonome, mis en forme par Palisade et portant le nom, le logo et les coordonnées de votre organisation. Rien n’est enregistré et aucun lien n’est généré; utilisez donc ceci pour une page produite sur demande, et POST /prospecting-reports quand le destinataire a besoin d’un PDF qu’il peut conserver.

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

generated_forstringobligatoire
Longueur min. : 1
domainsarray of stringobligatoire
languagestring enum
Valeurs possibles : en, fr · Par défaut : "en"
include_organization_infoboolean
Par défaut : true
include_bimiboolean
Par défaut : true
include_dns_recordsboolean
Par défaut : false
include_potential_lossboolean
Par défaut : true
themestring enum

Le thème dans lequel le rapport est dessiné : clair sur papier, ou foncé sur un fond presque noir.

Valeurs possibles : light, dark · Par défaut : "light"
currencystring enum

La devise dans laquelle chaque tranche de prix du rapport est imprimée.

Valeurs possibles : USD, CAD, EUR, GBP, AUD · Par défaut : "USD"
deadline_weeksinteger

Nombre de semaines que le plan et les pages de conclusion accordent au lecteur pour corriger ce que le rapport a trouvé.

Par défaut : 6 · Min. : 1 · Max. : 52
formatstring enum

json renvoie le rapport sous forme de données; html renvoie le même rapport sous forme de document HTML complet et autonome.

Valeurs possibles : json, html · Par défaut : "json"

Exemple de requête

curl -X POST "https://api.palisade.email/prospecting-reports/preview" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "generated_for": "string",
  "domains": [
    "string"
  ],
  "language": "en",
  "include_organization_info": true,
  "include_bimi": true,
  "include_dns_records": false,
  "include_potential_loss": true,
  "theme": "light",
  "currency": "USD",
  "deadline_weeks": 6,
  "format": "json"
}'

Réponses

200ProspectingReportContent

Le rapport sous forme de données, ou sous forme de document HTML quand format vaut « html »

Corps de la réponse
languagestring enumobligatoire
Valeurs possibles : en, fr
themestring enumobligatoire

Le thème dans lequel le rapport est dessiné : clair sur papier, ou foncé sur un fond presque noir.

Valeurs possibles : light, dark
currencystring enumobligatoire

La devise dans laquelle chaque tranche de prix du rapport est imprimée.

Valeurs possibles : USD, CAD, EUR, GBP, AUD
deadline_weeksintegerobligatoire

Nombre de semaines que le plan et les pages de conclusion accordent au lecteur pour corriger ce que le rapport a trouvé.

Min. : 1 · Max. : 52
generated_atstring (date-time)obligatoire
generated_bystringobligatoire

Le nom de votre organisation, tel que le rapport le signe.

generated_forstringobligatoire
organization_logostring, nullableobligatoire
contact_infoobjectobligatoire
properties
emailstringobligatoire
phonestringobligatoire
websitestringobligatoire
optionsobjectobligatoire
properties
include_bimibooleanobligatoire
include_dns_recordsbooleanobligatoire
include_potential_lossbooleanobligatoire
coverProspectingReportCoverobligatoire
ProspectingReportCover
yearintegerobligatoire
domains_analyzedstringobligatoire
datestringobligatoire

La date de génération telle que l’imprime le rapport, dans la langue demandée.

verdict_keystring enumobligatoire
Valeurs possibles : one, some, all, partial_one, partial, none
verdictstringobligatoire
verdict_detailstringobligatoire
high_risk_findingsintegerobligatoire
medium_findingsintegerobligatoire
exposed_domainsintegerobligatoire
protected_domainsintegerobligatoire
high_risk_labelstring, nullableobligatoire
medium_labelstring, nullableobligatoire
protected_labelstring, nullableobligatoire
rowsarray of ProspectingReportCoverRowobligatoire

Le pire score en premier, limité au nombre de lignes qu’imprime la page couverture.

ProspectingReportCoverRow
urlstringobligatoire
logostring, nullableobligatoire
scoreintegerobligatoire
score_bandstring enumobligatoire
Valeurs possibles : critical, bad, good, great
risk_levelstring enumobligatoire
Valeurs possibles : critical, high, medium, low
is_exposedbooleanobligatoire
is_fully_protectedbooleanobligatoire
findingsintegerobligatoire

Nombre de vérifications du domaine qui sont des problèmes plutôt que des réussites.

findings_labelstringobligatoire
score_labelstringobligatoire
chipobjectobligatoire
properties
typestring enumobligatoire
Valeurs possibles : pass, fail, soft-warn, info
labelstring, nullableobligatoire
more_domainsstring, nullableobligatoire

Défini quand le rapport contient plus de domaines que la page couverture n’en énumère.

domainsarray of ProspectingReportDomainobligatoire
ProspectingReportDomain
urlstringobligatoire
scoreintegerobligatoire
score_bandstring enumobligatoire
Valeurs possibles : critical, bad, good, great
risk_levelstring enumobligatoire
Valeurs possibles : critical, high, medium, low
risk_level_labelstring, nullableobligatoire
percentilenumberobligatoire

Obsolète. Une valeur lue sur une courbe fixe, et non une comparaison avec les scores d’autres domaines; elle n’indique donc pas le rang de ce domaine. Le rapport a cessé de l’imprimer pour cette raison; elle n’est conservée que pour que les appelants existants ne cessent pas de fonctionner. Ne la présentez pas à un lecteur comme un classement.

logostring, nullableobligatoire
dmarcobjectobligatoire
properties
policystringobligatoire

none, quarantine, reject, ou unknown quand le domaine ne publie aucun enregistrement DMARC.

pctnumber, nullableobligatoire
spoofing_riskstring enumobligatoire
Valeurs possibles : high, medium, low, unknown
spoofing_risk_labelstring, nullableobligatoire
is_fully_protectedbooleanobligatoire

Vrai seulement à reject avec pct=100.

risk_summaryProspectingReportRiskSummaryobligatoire
ProspectingReportRiskSummary
high_risk_itemsintegerobligatoire
medium_risk_itemsintegerobligatoire
by_categoryobjectobligatoire
properties
securityobjectobligatoire
properties
highintegerobligatoire
mediumintegerobligatoire
deliverabilityobjectobligatoire
properties
highintegerobligatoire
mediumintegerobligatoire
findingsarray of ProspectingReportFindingobligatoire

Chaque vérification, y compris celles qui réussissent.

ProspectingReportFinding
keystringobligatoire

De quelle vérification il s’agit : mx, spf, dmarc, bimi.

statusstringobligatoire

pass, warn, fail ou error.

status_labelstring, nullableobligatoire

Le mot de risque que le rapport imprime pour cet état, dans la language demandée.

risk_categorystring, nullableobligatoire

security ou deliverability.

risk_category_labelstring, nullableobligatoire
messagestring, nullableobligatoire

Le constat tel que l’énonce le rapport, dans la language demandée.

potential_lossProspectingReportPotentialLossobligatoire

Null quand include_potential_loss vaut false.

ProspectingReportPotentialLoss
revenue_loss_pctnumberobligatoire
revenue_loss_displaystringobligatoire

Le chiffre tel que l’imprime le rapport, qui ramène un score parfait à un plancher de « <10% ».

financial_lossnumberobligatoire
financial_loss_displaystringobligatoire
dns_recordsobject, nullableobligatoire

Les enregistrements tels que publiés. Null à moins qu’include_dns_records soit vrai.

properties
dmarcarray of stringobligatoire
spfarray of stringobligatoire
mxarray of stringobligatoire
bimiarray of stringobligatoire
sendersarray of objectobligatoire

Les services que l’enregistrement SPF du domaine autorise à envoyer en son nom. Vide quand il n’en publie aucun.

items
namestringobligatoire

Le nom du service dans le catalogue, ou l’hôte SPF lui-même quand le catalogue n’a pas d’entrée.

includestringobligatoire

L’hôte tel qu’il figure dans l’enregistrement SPF du domaine.

logostring, nullableobligatoire
dkimstring enumobligatoire

Si une clé DKIM pour ce service a été trouvée sur le domaine. unknown quand le service publie des sélecteurs propres à chaque client, qui ne peuvent pas être énumérés, ou quand il n’en publie aucun que la vérification connaît.

Valeurs possibles : signed, missing, unknown
mail_kindstring enum, nullableobligatoire

Le genre de courriels que le service transporte pour le domaine, d’après le catalogue organisé. Null quand il est inconnu.

Valeurs possibles : invoices, marketing, sales, support, notifications, transactional, payroll, mailbox, security-gateway, relay
domains_without_auditarray of stringobligatoire

Domaines dont les serveurs de noms n’ont rien renvoyé d’utilisable, de sorte que le rapport n’a pas de page pour eux.

Obtenir un rapport de prospection

GET/prospecting-reports/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/prospecting-reports/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200ProspectingReport

Succès

Corps de la réponse
idstring (uuid)obligatoire
generated_forstringobligatoire
Longueur min. : 1
languagestring enumobligatoire
Valeurs possibles : en, fr
requested_bystringobligatoire
Longueur min. : 1
domainsarray of stringobligatoire
include_organization_infobooleanobligatoire
include_bimibooleanobligatoire
include_dns_recordsbooleanobligatoire
include_potential_lossbooleanobligatoire
themestring enumobligatoire

Le thème dans lequel le rapport est dessiné : clair sur papier, ou foncé sur un fond presque noir.

Valeurs possibles : light, dark
currencystring enumobligatoire

La devise dans laquelle chaque tranche de prix du rapport est imprimée.

Valeurs possibles : USD, CAD, EUR, GBP, AUD
deadline_weeksintegerobligatoire

Nombre de semaines que le plan et les pages de conclusion accordent au lecteur pour corriger ce que le rapport a trouvé.

Min. : 1 · Max. : 52
urlstring (uri)obligatoire
expires_atstring (date-time)obligatoire
expiredbooleanobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Supprimer un rapport de prospection

DELETE/prospecting-reports/{id}authentification requise

Supprime le rapport et le PDF hébergé, de sorte que tout lien déjà envoyé cesse de fonctionner.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/prospecting-reports/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
deletedbooleanobligatoire
objectstringobligatoire
idstring (uuid)obligatoire

Rapports planifiés

Lister les rapports planifiés

GET/scheduled-reportsauthentification requise

Paramètres de requête

pagenumber
per_pagenumber
customer_namestring

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/scheduled-reports" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of ScheduledReportobligatoire
ScheduledReport
idstring (uuid)obligatoire
customer_namestringobligatoire
Longueur min. : 1
domain_idsarray of string (uuid)obligatoire
schedule_frequencystringobligatoire
Longueur min. : 1
auto_sendbooleanobligatoire
email_recipientsarray of string (email)
Par défaut : []
generated_atstring (date-time), nullableobligatoire
created_bystringobligatoire
Longueur min. : 1
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Créer un rapport planifié

POST/scheduled-reportsauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

customer_namestringobligatoire
Longueur min. : 1
domain_idsarray of string (uuid)obligatoire
schedule_frequencystring
Par défaut : "0 0 1 * *" · Longueur min. : 1
auto_sendboolean
Par défaut : false
email_recipientsarray of string (email)
Par défaut : []

Exemple de requête

curl -X POST "https://api.palisade.email/scheduled-reports" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "customer_name": "string",
  "domain_ids": [
    "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1"
  ],
  "schedule_frequency": "0 0 1 * *",
  "auto_send": false,
  "email_recipients": []
}'

Réponses

201ScheduledReport

Succès

Corps de la réponse
idstring (uuid)obligatoire
customer_namestringobligatoire
Longueur min. : 1
domain_idsarray of string (uuid)obligatoire
schedule_frequencystringobligatoire
Longueur min. : 1
auto_sendbooleanobligatoire
email_recipientsarray of string (email)
Par défaut : []
generated_atstring (date-time), nullableobligatoire
created_bystringobligatoire
Longueur min. : 1
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Obtenir un rapport planifié

GET/scheduled-reports/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/scheduled-reports/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200ScheduledReport

Succès

Corps de la réponse
idstring (uuid)obligatoire
customer_namestringobligatoire
Longueur min. : 1
domain_idsarray of string (uuid)obligatoire
schedule_frequencystringobligatoire
Longueur min. : 1
auto_sendbooleanobligatoire
email_recipientsarray of string (email)
Par défaut : []
generated_atstring (date-time), nullableobligatoire
created_bystringobligatoire
Longueur min. : 1
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Mettre à jour un rapport planifié

POST/scheduled-reports/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

customer_namestring
Longueur min. : 1
domain_idsarray of string (uuid)
schedule_frequencystring
Longueur min. : 1
auto_sendboolean
email_recipientsarray of string (email)
generated_atstring (date-time), nullable

Exemple de requête

curl -X POST "https://api.palisade.email/scheduled-reports/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "customer_name": "string",
  "domain_ids": [
    "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1"
  ],
  "schedule_frequency": "string",
  "auto_send": true,
  "email_recipients": [
    "user@example.com"
  ],
  "generated_at": "2025-01-15T12:00:00.000Z"
}'

Réponses

200ScheduledReport

Succès

Corps de la réponse
idstring (uuid)obligatoire
customer_namestringobligatoire
Longueur min. : 1
domain_idsarray of string (uuid)obligatoire
schedule_frequencystringobligatoire
Longueur min. : 1
auto_sendbooleanobligatoire
email_recipientsarray of string (email)
Par défaut : []
generated_atstring (date-time), nullableobligatoire
created_bystringobligatoire
Longueur min. : 1
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Supprimer un rapport planifié

DELETE/scheduled-reports/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/scheduled-reports/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Supprimé

Corps de la réponse
deletedbooleanobligatoire
objectstringobligatoire
idstring (uuid)obligatoire

Demande de soutien

Envoyer une demande de soutien

POST/support-requestsauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

contentstringobligatoire
Longueur min. : 1 · Longueur max. : 4000
titlestringobligatoire
Longueur min. : 1 · Longueur max. : 100

Exemple de requête

curl -X POST "https://api.palisade.email/support-requests" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "content": "string",
  "title": "string"
}'

Réponses

200object

Succès

Corps de la réponse
statusstring enumobligatoire
Valeurs possibles : created

Billet de soutien

Lister les billets de soutien

GET/support/ticketsauthentification requise

Renvoie une liste paginée de billets de soutien. Les administrateurs voient tous les billets de l’organisation; les autres rôles ne voient que leurs propres billets. Filtrez par état ou par priorité au moyen des paramètres de requête.

Paramètres de requête

statusarray of SupportTicketStatus
Valeurs possibles : open, pending_customer, pending_support, resolved, closed
priorityarray of SupportTicketPriority
Valeurs possibles : low, normal, high, urgent, critical
per_pagenumber
pagenumber

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/support/tickets" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of SupportTicketobligatoire
SupportTicket
idstring (uuid)obligatoire
ticket_idstring, nullableobligatoire
subjectstringobligatoire
statusSupportTicketStatusobligatoire
Valeurs possibles : open, pending_customer, pending_support, resolved, closed
prioritySupportTicketPriorityobligatoire
Valeurs possibles : low, normal, high, urgent, critical
hostname_urlstring, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
last_message_atstring (date-time), nullableobligatoire
unread_countnumberobligatoire
organization_namestring, nullable
created_by_namestring, nullable
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Ouvrir un billet de soutien

POST/support/ticketsauthentification requise

Crée un nouveau billet de soutien avec un premier message. Peut être lié à un nom d’hôte ou à un billet de correction. Renvoie l’identifiant du billet créé.

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

subjectstringobligatoire
Longueur min. : 1 · Longueur max. : 255
contentstringobligatoire
Longueur min. : 1
prioritySupportTicketPriority & object
hostname_idstring (uuid)
attachmentsarray of object
items
file_namestringobligatoire
file_urlstring (uri)obligatoire
file_sizenumber, nullable
mime_typestring, nullable
attachment_typeSupportTicketAttachmentTypeobligatoire
Valeurs possibles : file, link

Exemple de requête

curl -X POST "https://api.palisade.email/support/tickets" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "subject": "string",
  "content": "string",
  "priority": {},
  "hostname_id": "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1",
  "attachments": [
    {
      "file_name": "string",
      "file_url": "https://example.com",
      "file_size": 0,
      "mime_type": "string",
      "attachment_type": "file"
    }
  ]
}'

Réponses

201object

Créé

Corps de la réponse
dataobjectobligatoire
properties
idstring (uuid)obligatoire

Obtenir un billet de soutien

GET/support/tickets/{id}authentification requise

Renvoie un seul billet avec tout son fil de messages. Les messages sont classés par ordre chronologique. Marque tous les messages de soutien comme lus pour l’utilisateur qui fait la requête.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/support/tickets/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200SupportTicketDetail

Succès

Corps de la réponse
idstring (uuid)obligatoire
ticket_idstring, nullableobligatoire
subjectstringobligatoire
statusSupportTicketStatusobligatoire
Valeurs possibles : open, pending_customer, pending_support, resolved, closed
prioritySupportTicketPriorityobligatoire
Valeurs possibles : low, normal, high, urgent, critical
hostname_idstring, nullableobligatoire
hostname_urlstring, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
resolved_atstring (date-time), nullableobligatoire
messagesarray of SupportTicketMessageobligatoire
SupportTicketMessage
idstring (uuid)obligatoire
author_idstringobligatoire
author_typeSupportTicketAuthorTypeobligatoire
Valeurs possibles : customer, support, system
author_namestring, nullableobligatoire
author_emailstring, nullableobligatoire
contentstringobligatoire
is_ai_draftbooleanobligatoire
created_atstring (date-time)obligatoire
read_atstring (date-time), nullableobligatoire
attachmentsarray of SupportTicketAttachmentobligatoire
SupportTicketAttachment
idstring (uuid)obligatoire
file_namestringobligatoire
file_urlstringobligatoire

URL de téléchargement de la pièce jointe. Pour les fichiers téléversés, c’est une URL signée générée pour cette réponse et valide pendant une heure; récupérez de nouveau le billet pour en obtenir une nouvelle plutôt que de la conserver. Pour les pièces jointes de type lien, c’est l’URL telle qu’elle a été fournie.

file_sizenumber, nullableobligatoire
mime_typestring, nullableobligatoire
attachment_typeSupportTicketAttachmentTypeobligatoire
Valeurs possibles : file, link
created_atstring (date-time)obligatoire
organization_namestring, nullable

Fermer ou rouvrir un billet

PATCH/support/tickets/{id}authentification requise

Met à jour l’état du billet. Les utilisateurs peuvent fermer un billet résolu ou rouvrir un billet fermé ou résolu.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

statusAllowedUserStatusUpdateobligatoire
Valeurs possibles : open, closed

Exemple de requête

curl -X PATCH "https://api.palisade.email/support/tickets/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "status": "open"
}'

Réponses

200object

Succès

Corps de la réponse
idstring (uuid)obligatoire
statusSupportTicketStatusobligatoire
Valeurs possibles : open, pending_customer, pending_support, resolved, closed

Répondre à un billet

POST/support/tickets/{id}/messagesauthentification requise

Ajoute un message de réponse à un billet existant. Fait passer l’état du billet à PENDING_SUPPORT.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

contentstringobligatoire
Longueur min. : 1
attachmentsarray of object
items
file_namestringobligatoire
file_urlstring (uri)obligatoire
file_sizenumber, nullable
mime_typestring, nullable
attachment_typeSupportTicketAttachmentTypeobligatoire
Valeurs possibles : file, link

Exemple de requête

curl -X POST "https://api.palisade.email/support/tickets/<id>/messages" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "content": "string",
  "attachments": [
    {
      "file_name": "string",
      "file_url": "https://example.com",
      "file_size": 0,
      "mime_type": "string",
      "attachment_type": "file"
    }
  ]
}'

Réponses

201object

Créé

Corps de la réponse
idstring (uuid)obligatoire

Obtenir le nombre de messages non lus

GET/support/unread-countauthentification requise

Renvoie le nombre de messages de soutien non lus dans les billets visibles. Requête légère pour l’interrogation d’un badge.

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/support/unread-count" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
countnumberobligatoire

Obtenir une URL de téléversement de pièce jointe

POST/support/presigned-urlauthentification requise

Génère une URL présignée pour téléverser dans S3 les pièces jointes d’un billet de soutien. Prend en charge les images et les PDF jusqu’à 10 Mo.

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

file_namestringobligatoire
Longueur min. : 1 · Longueur max. : 255
mime_typeSupportAttachmentMimeTypeobligatoire
Valeurs possibles : image/png, image/jpeg, image/gif, image/webp, application/pdf

Exemple de requête

curl -X POST "https://api.palisade.email/support/presigned-url" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "file_name": "string",
  "mime_type": "image/png"
}'

Réponses

200object

Succès

Corps de la réponse
presigned_urlstring (uri)obligatoire
public_urlstring (uri)obligatoire

Rapport TLS

Lister les rapports TLS-RPT

GET/domains/{domainId}/tls-reportsauthentification requise

Liste les rapports TLS-RPT que les serveurs d’envoi ont soumis pour ce domaine. Les rapports n’arrivent qu’une fois que le domaine publie une politique MTA-STS et un enregistrement TLS-RPT.

Paramètres de chemin

domainIdstring (uuid)obligatoire

Paramètres de requête

pagenumber
per_pagenumber
date_fromstring (date)
date_tostring (date)
sort_bystring enum
Valeurs possibles : day, total_successful, total_failure, organization_name
sort_orderstring enum
Valeurs possibles : desc, asc

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/tls-reports" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of objectobligatoire
items
idstringobligatoire
hostname_idstringobligatoire
report_idstringobligatoire
organization_namestringobligatoire
contact_infostring, nullableobligatoire
date_range_startstringobligatoire
date_range_endstringobligatoire
daystringobligatoire
policy_typestringobligatoire
policy_domainstringobligatoire
mx_hoststring, nullableobligatoire
total_successfulnumberobligatoire
total_failurenumberobligatoire
created_atstringobligatoire
failuresarray of objectobligatoire
items
result_typestringobligatoire
sending_mta_ipstring, nullableobligatoire
receiving_ipstring, nullableobligatoire
receiving_mx_hostnamestring, nullableobligatoire
failed_session_countnumberobligatoire
additional_infostring, nullableobligatoire
failure_reason_codestring, nullableobligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Obtenir le nombre quotidien de sessions TLS

GET/domains/{domainId}/tls-reports/chartauthentification requise

Nombre de sessions TLS réussies et échouées par jour pendant la période demandée, sous forme de tableaux parallèles alignés sur labels.

Paramètres de chemin

domainIdstring (uuid)obligatoire

Paramètres de requête

date_fromstring (date)obligatoire
date_tostring (date)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/tls-reports/chart" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
labelsarray of stringobligatoire
successfularray of numberobligatoire
failurearray of numberobligatoire
totalsobjectobligatoire
properties
successfulnumberobligatoire
failurenumberobligatoire

Obtenir le sommaire TLS-RPT

GET/domains/{domainId}/tls-reports/summaryauthentification requise

Totaux agrégés des sessions TLS pour la période demandée, avec les échecs ventilés par type de résultat RFC 8460.

Paramètres de chemin

domainIdstring (uuid)obligatoire

Paramètres de requête

date_fromstring (date)obligatoire
date_tostring (date)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/tls-reports/summary" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
total_successfulnumberobligatoire
total_failurenumberobligatoire
total_reportsnumberobligatoire
failure_breakdownarray of objectobligatoire
items
result_typestringobligatoire
countnumberobligatoire

Obtenir un rapport TLS-RPT

GET/domains/{domainId}/tls-reports/{id}authentification requise

Récupère un seul rapport TLS-RPT, y compris le détail de chaque échec signalé par les serveurs d’envoi.

Paramètres de chemin

domainIdstring (uuid)obligatoire
idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/tls-reports/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
idstringobligatoire
hostname_idstringobligatoire
report_idstringobligatoire
organization_namestringobligatoire
contact_infostring, nullableobligatoire
date_range_startstringobligatoire
date_range_endstringobligatoire
daystringobligatoire
policy_typestringobligatoire
policy_domainstringobligatoire
mx_hoststring, nullableobligatoire
total_successfulnumberobligatoire
total_failurenumberobligatoire
created_atstringobligatoire
failuresarray of objectobligatoire
items
result_typestringobligatoire
sending_mta_ipstring, nullableobligatoire
receiving_ipstring, nullableobligatoire
receiving_mx_hostnamestring, nullableobligatoire
failed_session_countnumberobligatoire
additional_infostring, nullableobligatoire
failure_reason_codestring, nullableobligatoire

Journal d’activité

Lister les entrées du journal d’activité

GET/activity-logauthentification requise

Paramètres de requête

actor_idstring
actor_emailstring
resource_typestring
resource_idstring
actionstring
date_fromstring (date-time)
date_tostring (date-time)
cursorstring
per_pagenumber

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/activity-log" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200ActivityLogList

Succès

Corps de la réponse
dataarray of ActivityLogEntryobligatoire
ActivityLogEntry
idstring (uuid)obligatoire
actor_typeActivityActorTypeobligatoire
Valeurs possibles : USER, API_KEY, PALISADE_STAFF, SYSTEM
actor_idstringobligatoire
actor_emailstring, nullableobligatoire
actor_namestring, nullableobligatoire
actor_api_key_reminderstring, nullableobligatoire
actionstringobligatoire
resource_typestring, nullableobligatoire
resource_idstring, nullableobligatoire
resource_labelstring, nullableobligatoire
methodstringobligatoire
pathstringobligatoire
status_codenumberobligatoire
request_idstring, nullableobligatoire
metadataobject, nullableobligatoire
created_atstring (date-time)obligatoire
page_infoobjectobligatoire
properties
has_morebooleanobligatoire
next_cursorstring, nullableobligatoire
per_pagenumberobligatoire

Lister les types d’actions

GET/activity-log/actionsauthentification requise

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/activity-log/actions" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200ActivityLogActions

Succès

Corps de la réponse
actionsarray of stringobligatoire

Obtenir une entrée du journal d’activité

GET/activity-log/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/activity-log/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200ActivityLogEntry

Succès

Corps de la réponse
idstring (uuid)obligatoire
actor_typeActivityActorTypeobligatoire
Valeurs possibles : USER, API_KEY, PALISADE_STAFF, SYSTEM
actor_idstringobligatoire
actor_emailstring, nullableobligatoire
actor_namestring, nullableobligatoire
actor_api_key_reminderstring, nullableobligatoire
actionstringobligatoire
resource_typestring, nullableobligatoire
resource_idstring, nullableobligatoire
resource_labelstring, nullableobligatoire
methodstringobligatoire
pathstringobligatoire
status_codenumberobligatoire
request_idstring, nullableobligatoire
metadataobject, nullableobligatoire
created_atstring (date-time)obligatoire

Inscription

Commencer une inscription sans interface

POST/signup

Commence une inscription sans interface : envoie un code de vérification à 6 chiffres à l’adresse courriel professionnelle indiquée. Aucun compte n’est créé tant que le code n’est pas vérifié.

Corps de la requête

emailstring (email)obligatoire

Adresse courriel qui sera propriétaire du nouveau compte. Un code de vérification est envoyé à cette boîte de réception; l’adresse devient l’administrateur de l’organisation.

organization_namestringobligatoire
Longueur min. : 3 · Longueur max. : 128
pricing_typestring enum

Forfait en libre-service à attribuer. Pris en compte seulement quand PLG est activé; sinon, le forfait par défaut est utilisé.

Valeurs possibles : free, it_teams, msp
attribution_idstring (uuid)

Identifiant de parcours interne opaque provenant de palisade.email. Sert uniquement à l’attribution des acquisitions.

Exemple de requête

curl -X POST "https://api.palisade.email/signup" \
  -H "Content-Type: application/json" \
  -d '{
  "email": "user@example.com",
  "organization_name": "string",
  "pricing_type": "free",
  "attribution_id": "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1"
}'

Réponses

202object

Code de vérification envoyé

Corps de la réponse
signup_idstring (uuid)obligatoire
expires_in_secondsintegerobligatoire

Vérifier un code d’inscription

POST/signup/verify

Vérifie le code envoyé par courriel. En cas de réussite, crée l’utilisateur Auth0 (adresse courriel vérifiée) et l’organisation, et renvoie une seule fois une clé d’API limitée à l’organisation.

Corps de la requête

signup_idstring (uuid)obligatoire
codestringobligatoire

Exemple de requête

curl -X POST "https://api.palisade.email/signup/verify" \
  -H "Content-Type: application/json" \
  -d '{
  "signup_id": "5cf10a30-0b0c-4e05-9e68-6cbfd7d3c2a1",
  "code": "string"
}'

Réponses

200object

Compte créé

Corps de la réponse
api_keystringobligatoire

Clé d’API limitée à l’organisation. Affichée une seule fois — conservez-la en lieu sûr.

organization_idstring (uuid)obligatoire
organization_reference_idstringobligatoire
emailstring (email)obligatoire
next_stepsstringobligatoire

Source

Lister les sources d’envoi

GET/sourcesauthentification requise

Liste les sources d’envoi que Palisade connaît, avec les détails de prise en charge SPF et DKIM servant à rédiger les instructions de configuration. L’authentification est facultative. instructions_curation contient des propositions de l’IA non révisées et vaut null, sauf si l’appelant détient sources:update.

Paramètres de requête

statusstring enum
Valeurs possibles : ACTIVE, PENDING_REVIEW, REJECTED
originstring enum
Valeurs possibles : DMARC_IO, AI_DISCOVERED, MANUAL
searchstring

Exemple de requête

curl "https://api.palisade.email/sources" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of objectobligatoire
items
idstring (uuid)obligatoire
external_idstringobligatoire
namestringobligatoire
homepagestring (uri), nullableobligatoire
base_domainsarray of stringobligatoire
categorystring enumobligatoire
Valeurs possibles : SENDING_TOOL, MAILBOX_PROVIDER, VPS_PROVIDER, SECURITY_PROVIDER, EMAIL_RELAY
dmarc_supportbooleanobligatoire
spf_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
spf_support_optionsobjectobligatoire
properties
directobject, nullableobligatoire
properties
valuesarray of stringobligatoire
requires_advanced_configboolean, nullableobligatoire
subdomainobject, nullableobligatoire
properties
is_managedbooleanobligatoire
requires_user_selectionbooleanobligatoire
pathstring, nullableobligatoire
valuestring, nullableobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
valuestring
dkim_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
parent_source_idstring (uuid), nullable
display_namestring, nullable
envelope_fromsarray of stringobligatoire
is_custombooleanobligatoire
documentationobjectobligatoire
properties
spfstring, nullable
dkimstring, nullable
combinedstring, nullable
spf_reply_to_targetstring, nullableobligatoire
spf_supported_methodsarray of string enumobligatoire
items
Valeurs possibles : DIRECT, SUBDOMAIN, MANAGED_SUBDOMAIN
forwarding_typestring enumobligatoire
Valeurs possibles : NOT_FORWARDER, FORWARDER, FORWARDER_ONLY
dkim_discovery_selectorsarray of stringobligatoire
spf_discovery_valuesarray of stringobligatoire
spf_reply_to_discovery_valuesarray of stringobligatoire
mx_domainsarray of stringobligatoire
dkim_instructionsobject, nullableobligatoire
properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME
namestring
valuestring
spf_instructionsobject, nullable
properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
namestring
valuestring
instructions_curationobject, nullable
properties
dkimobject, nullable
properties
statusstring enumobligatoire
Valeurs possibles : PENDING, APPROVED, REJECTED
proposalobjectobligatoire
properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
namestring
valuestring
provenanceobjectobligatoire
properties
doc_urlstringobligatoire
doc_titlestring, nullableobligatoire
doc_discoveredbooleanobligatoire
modelstringobligatoire
confidencenumberobligatoire
critic_notesarray of stringobligatoire
generated_atstringobligatoire
reviewed_atstring, nullable
reviewed_bystring, nullable
spfobject, nullable
properties
statusstring enumobligatoire
Valeurs possibles : PENDING, APPROVED, REJECTED
proposalobjectobligatoire
properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
namestring
valuestring
provenanceobjectobligatoire
properties
doc_urlstringobligatoire
doc_titlestring, nullableobligatoire
doc_discoveredbooleanobligatoire
modelstringobligatoire
confidencenumberobligatoire
critic_notesarray of stringobligatoire
generated_atstringobligatoire
reviewed_atstring, nullable
reviewed_bystring, nullable
statusstring enumobligatoire
Valeurs possibles : ACTIVE, PENDING_REVIEW, REJECTED
originstring enumobligatoire
Valeurs possibles : DMARC_IO, AI_DISCOVERED, MANUAL
ai_confidencenumber, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Obtenir l’index des includes SPF

GET/sources/spf-indexauthentification requise

L’index compact d’include à expéditeur qui sert à nommer les mécanismes d’un enregistrement SPF et à proposer des expéditeurs à ajouter. Seules les sources qui portent au moins une valeur SPF y figurent. values contient les mécanismes que Palisade prescrit d’ajouter; recognition_values contient en plus les valeurs observées, qui nomment un mécanisme déjà présent dans un enregistrement, mais qu’il n’est pas sûr de publier pour le compte d’un utilisateur. L’authentification est facultative, comme sur le point de terminaison de liste.

Exemple de requête

curl "https://api.palisade.email/sources/spf-index" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of objectobligatoire
items
idstring (uuid)obligatoire
namestringobligatoire
logo_urlstring, nullableobligatoire
homepagestring (uri), nullableobligatoire
valuesarray of stringobligatoire

Mécanismes SPF que Palisade prescrit d’ajouter pour cette source. Il est sûr de les publier pour le compte d’un utilisateur.

recognition_valuesarray of stringobligatoire

Chaque mécanisme qui identifie cette source, y compris les valeurs seulement observées en pratique. Utilisez-les pour nommer un mécanisme déjà présent dans un enregistrement; il n’est pas sûr de les y ajouter.

requires_advanced_configbooleanobligatoire

Quand ce champ est vrai, le mécanisme dépend d’une configuration propre à chaque client et ne doit pas être proposé comme ajout en un clic.

page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Obtenir l’index des sélecteurs DKIM

GET/sources/dkim-indexauthentification requise

L’index compact qui sert à nommer les clés DKIM déjà publiées pour un domaine. Une clé est associée soit par selectors, les conventions de sélecteurs sous lesquelles une source publie, soit par base_domains, les zones où se trouvent les cibles de ses CNAME — ce dernier étant le seul signal permettant d’identifier un sélecteur propre à chaque client, comme le hs1-<portalId> de HubSpot. Seules les sources qui portent au moins l’un des deux y figurent. L’authentification est facultative, comme sur le point de terminaison de liste.

Exemple de requête

curl "https://api.palisade.email/sources/dkim-index" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of objectobligatoire
items
idstring (uuid)obligatoire
namestringobligatoire
logo_urlstring, nullableobligatoire
homepagestring, nullableobligatoire

La page d’accueil de la source. Du texte libre dans l’enregistrement plutôt qu’une URL validée (quelques sources portent un nom d’hôte nu comme samanage.com); traitez-la donc comme un nom d’hôte qui peut porter ou non un schéma.

selectorsarray of stringobligatoire

Sélecteurs DKIM sous lesquels cette source publie habituellement. Ils sont comparés au sélecteur d’une clé déjà présente dans le DNS; ce sont des conventions propres à chaque source, pas des valeurs à publier pour le compte d’un client.

base_domainsarray of stringobligatoire

Domaines à partir desquels cette source signe. Un CNAME DKIM dont la cible se trouve sous l’un d’eux appartient à cette source, ce qui est le seul signal permettant d’identifier un sélecteur propre à chaque client, comme le hs1-<portal> de HubSpot.

page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Obtenir une source d’envoi

GET/sources/{id}authentification requise

Récupère une seule source d’envoi par son identifiant. L’authentification est facultative, et instructions_curation est masqué comme sur le point de terminaison de liste.

Paramètres de chemin

idstring (uuid)obligatoire

Exemple de requête

curl "https://api.palisade.email/sources/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
idstring (uuid)obligatoire
external_idstringobligatoire
namestringobligatoire
homepagestring (uri), nullableobligatoire
base_domainsarray of stringobligatoire
categorystring enumobligatoire
Valeurs possibles : SENDING_TOOL, MAILBOX_PROVIDER, VPS_PROVIDER, SECURITY_PROVIDER, EMAIL_RELAY
dmarc_supportbooleanobligatoire
spf_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
spf_support_optionsobjectobligatoire
properties
directobject, nullableobligatoire
properties
valuesarray of stringobligatoire
requires_advanced_configboolean, nullableobligatoire
subdomainobject, nullableobligatoire
properties
is_managedbooleanobligatoire
requires_user_selectionbooleanobligatoire
pathstring, nullableobligatoire
valuestring, nullableobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
valuestring
dkim_supportstring enumobligatoire
Valeurs possibles : NONE, RARE, FULL
parent_source_idstring (uuid), nullable
display_namestring, nullable
envelope_fromsarray of stringobligatoire
is_custombooleanobligatoire
documentationobjectobligatoire
properties
spfstring, nullable
dkimstring, nullable
combinedstring, nullable
spf_reply_to_targetstring, nullableobligatoire
spf_supported_methodsarray of string enumobligatoire
items
Valeurs possibles : DIRECT, SUBDOMAIN, MANAGED_SUBDOMAIN
forwarding_typestring enumobligatoire
Valeurs possibles : NOT_FORWARDER, FORWARDER, FORWARDER_ONLY
dkim_discovery_selectorsarray of stringobligatoire
spf_discovery_valuesarray of stringobligatoire
spf_reply_to_discovery_valuesarray of stringobligatoire
mx_domainsarray of stringobligatoire
dkim_instructionsobject, nullableobligatoire
properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME
namestring
valuestring
spf_instructionsobject, nullable
properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
namestring
valuestring
instructions_curationobject, nullable
properties
dkimobject, nullable
properties
statusstring enumobligatoire
Valeurs possibles : PENDING, APPROVED, REJECTED
proposalobjectobligatoire
properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
namestring
valuestring
provenanceobjectobligatoire
properties
doc_urlstringobligatoire
doc_titlestring, nullableobligatoire
doc_discoveredbooleanobligatoire
modelstringobligatoire
confidencenumberobligatoire
critic_notesarray of stringobligatoire
generated_atstringobligatoire
reviewed_atstring, nullable
reviewed_bystring, nullable
spfobject, nullable
properties
statusstring enumobligatoire
Valeurs possibles : PENDING, APPROVED, REJECTED
proposalobjectobligatoire
properties
stepsarray of stringobligatoire
dns_recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, CNAME, MX
namestring
valuestring
provenanceobjectobligatoire
properties
doc_urlstringobligatoire
doc_titlestring, nullableobligatoire
doc_discoveredbooleanobligatoire
modelstringobligatoire
confidencenumberobligatoire
critic_notesarray of stringobligatoire
generated_atstringobligatoire
reviewed_atstring, nullable
reviewed_bystring, nullable
statusstring enumobligatoire
Valeurs possibles : ACTIVE, PENDING_REVIEW, REJECTED
originstring enumobligatoire
Valeurs possibles : DMARC_IO, AI_DISCOVERED, MANUAL
ai_confidencenumber, nullableobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

SPF

Obtenir les diagnostics SPF

GET/domains/{domainId}/spfauthentification requise

Paramètres de chemin

domainIdstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/domains/<domainId>/spf" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200SpfDiagnostics

Succès

Corps de la réponse
domain_idstring (uuid)obligatoire

Identifiant du domaine auquel s’appliquent les diagnostics.

domainstringobligatoire

Le nom du domaine dont le DNS en vigueur a été lu, par exemple « example.com ».

recordstring, nullableobligatoire

L’enregistrement TXT SPF que le DNS en vigueur sert pour le domaine, ou null quand aucun n’est publié. Quand il existe plus d’un enregistrement v=spf1, ils sont joints ici par des sauts de ligne; consultez records pour les voir séparément.

recordsarray of stringobligatoire

Chaque enregistrement TXT v=spf1 trouvé au domaine. Plus d’une entrée est en soi une erreur — les destinataires la traitent comme un échec permanent.

ttlnumber, nullableobligatoire

TTL de l’enregistrement TXT SPF en secondes, quand il a pu être lu.

statusstringobligatoire

État général de SPF : « pass », « warn » ou « fail ».

lookup_countintegerobligatoire

Recherches DNS que l’enregistrement coûte aux destinataires : chaque terme include, a, mx, ptr, exists et redirect, compté récursivement à travers chaque include et chaque redirect. Les termes que les destinataires n’atteignent jamais ne sont pas facturés : tout ce qui se trouve à droite d’un all correspondant, et un redirect= dans un enregistrement qui porte aussi un all, que la section 6.1 du RFC 7208 dit d’ignorer.

max_lookupsintegerobligatoire

La limite que SPF impose avant que les destinataires renvoient une erreur permanente : 10.

lookups_remainingintegerobligatoire

Nombre de recherches supplémentaires que l’enregistrement pourrait ajouter avant de cesser de fonctionner. 0 quand la limite est atteinte ou dépassée.

lookup_breakdownarray of SpfLookupobligatoire

Chaque recherche de la chaîne, les entrées imbriquées suivant leur parent.

SpfLookup
mechanismstringobligatoire

Le terme SPF qui coûte la recherche : « include », « a », « mx », « ptr », « exists » ou « redirect ». « expanded-domain » marque le développement d’une macro, qui ne coûte rien.

hoststring, nullableobligatoire

L’opérande que le terme interroge, tel que publié. Habituellement un nom d’hôte. Un exists: portant une macro contient ici le gabarit, et le nom substitué suit sous forme d’entrée expanded-domain quand chaque macro qu’il contient a pu être résolue. Un a:, un mx: ou un ptr: portant une macro contient aussi le gabarit ici, mais n’est jamais développé; aucune entrée expanded-domain ne le suit donc. Seuls les opérandes de include: et de redirect= passent par le résolveur de macros, et un opérande dont toutes les macros se sont résolues présente ici le nom substitué qu’il a interrogé plutôt que le gabarit publié, avec la note « macro-expanded » quand ce nom publie exactement un enregistrement SPF, et avec error dans le cas contraire.

depthintegerobligatoire

Profondeur d’imbrication : 0 pour les mécanismes de l’enregistrement du domaine lui-même, 1 pour ceux d’un include qu’il référence, et ainsi de suite.

lookupsintegerobligatoire

Recherches DNS dont cette entrée est responsable : elle-même et tout ce qui est imbriqué sous elle. Les includes coûteux sont ceux qui affichent le nombre le plus élevé ici.

errorbooleanobligatoire

Vrai quand cette recherche n’a pas pu se résoudre en un enregistrement utilisable.

notestring, nullableobligatoire

Contexte supplémentaire, comme « loop », « unresolved », ou l’un de « macro-expanded » / « macro-unexpanded ». Tout terme dont l’opérande porte une macro — exists:, include: ou redirect= — porte l’une de ces deux notes, et coûte une recherche dans les deux cas, sauf qu’un include: ou un redirect= développé ne porte aucune note de macro lorsque sa cible fait défaut : « unresolved » quand la recherche n’a pas pu aboutir, « loop » quand il renvoie en arrière, « no-txt » avec error quand la cible n’a renvoyé aucun enregistrement TXT, et aucune note du tout — seulement error — quand la cible a renvoyé des enregistrements TXT, mais pas un seul enregistrement SPF parmi eux.

problemsarray of SpfProblemobligatoire

Problèmes trouvés, les erreurs avant les avertissements. Vide quand SPF est en bon état.

SpfProblem
codestringobligatoire

Identifiant stable du problème, sur lequel on peut se fonder — par exemple « spf-max-10-lookups », « spf-multiple-records », « spf-lookup-failed » ou « spf-no-record ».

severitystring enumobligatoire

« error » quand les destinataires échouent à la vérification SPF (ou n’en tirent aucune protection) à cause de ce problème; « warning » pour un risque qui n’empêche pas l’évaluation.

Valeurs possibles : error, warning
hoststring, nullableobligatoire

Le nom d’hôte que concerne le problème, quand il porte sur une recherche précise.

messagestringobligatoire

Ce qui ne va pas et ce que cela signifie pour les courriels, en termes simples.

hosted_spfobjectobligatoire

État de SPF hébergé par Palisade pour le domaine. Quand il est géré, le domaine publie un seul include Palisade, et Palisade maintient la chaîne aplatie sous la limite de 10 recherches.

properties
is_managedbooleanobligatoire

Vrai quand Palisade héberge et aplatit l’enregistrement SPF de ce domaine.

statusDnsStatus & object, nullableobligatoire

État en direct de la chaîne SPF hébergée, quand elle est gérée.

target_spfstring, nullableobligatoire

L’enregistrement que Palisade aplatit et publie, quand SPF hébergé est configuré.

error_reasonManagedDnsErrorReason & objectobligatoire

Pourquoi managed_dns_status.bimi vaut « error ». « setup_timeout » signifie que le CNAME du client n’a jamais été détecté pendant la période de vérification (la configuration n’a jamais été terminée); « drift » signifie qu’un CNAME déjà vérifié a cessé de pointer vers Palisade; « record_conflict » signifie que default._bimi contient des enregistrements en conflit — voir dns_conflicts. Null quand il n’y a pas d’erreur ou que l’erreur est antérieure au suivi des raisons.

last_flattened_atstring, nullableobligatoire

Quand Palisade a aplati et publié la chaîne hébergée pour la dernière fois, au format ISO 8601.

next_stepstringobligatoire

La seule action que Palisade suggère d’entreprendre ensuite.

Outil

Auditer un domaine

GET/tools/auditauthentification requise

Effectue l’audit complet d’authentification des courriels d’un domaine à partir du DNS en vigueur : MX, SPF, DKIM, DMARC, BIMI, MTA-STS et TLS-RPT, chacun noté et annoté, avec un score global sur 100. Le domaine n’a pas besoin d’être un domaine que vous avez ajouté à Palisade. Les résultats sont mis en cache pendant dix minutes par domaine. L’authentification est facultative. Notez que cette réponse est antérieure à la convention snake_case de l’ensemble de l’API et conserve ses noms de champs d’origine en camelCase (mtaSts, lookupCount, dmarcValue); elle ne se lit donc pas comme le reste de l’API.

Paramètres de requête

domainstringobligatoire
emailstring (email)
skip_dkimstring enum
Valeurs possibles : true, false
skip_webhooksstring enum
Valeurs possibles : true, false
store_scanstring enum
Valeurs possibles : true, false
utm_sourcestring

En-têtes

Palisade-Journey-Idstring (uuid)

Le parcours de visiteur du site Web auquel appartient cet audit, le même identifiant que celui envoyé à POST /attribution/touches. Lu seulement quand la requête capte un client potentiel, et ignoré plutôt que refusé quand il est absent ou mal formé.

Exemple de requête

curl "https://api.palisade.email/tools/audit" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200AuditResult

Succès

Corps de la réponse
statusstring enumobligatoire

« success », ou « error » quand l’audit n’a pas pu être effectué parce que les serveurs de noms du domaine ne se sont pas résolus ou appartiennent à un annonceur de domaines parqués. En cas d’« error », seul summary est présent, avec la raison dans summary.errors.

Valeurs possibles : success, error
summaryobjectobligatoire

L’essentiel : le score global et un verdict par dimension.

properties
hostnamestringobligatoire

Le domaine audité, tel que demandé.

emailstringobligatoire

Le paramètre de requête email, renvoyé tel quel. Vide quand aucun n’a été envoyé, et vide avec l’état error, qu’un paramètre ait été envoyé ou non.

parkedbooleanobligatoire

Vrai quand Palisade a le domaine inscrit comme parqué. Un domaine parqué ne devrait envoyer aucun courriel; seuls SPF et DMARC comptent donc dans son score.

scorenumberobligatoire

0 à 100 : 100 moins ce que perd chaque dimension comptée, comme l’indique le score de chaque dimension.

mxstring

Le verdict MX, la même valeur que mx.status.

spfstring

Le verdict SPF, la même valeur que spf.status.

dkimstring

Le verdict DKIM, la même valeur que dkim.status.

dmarcstring

Le verdict DMARC, la même valeur que dmarc.status.

bimistring

Le verdict BIMI, la même valeur que bimi.status.

mtaStsstring

Le verdict MTA-STS, la même valeur que mtaSts.status.

tlsRptstring

Le verdict TLS-RPT, la même valeur que tlsRpt.status.

errorsarray of stringobligatoire

Pourquoi l’audit n’a pas pu être effectué : « ns-error » quand les serveurs de noms ne se sont pas résolus, « ns-for-advertising-domain » quand ils appartiennent à un annonceur de domaines parqués. Vide en cas de succès.

warningsarray of string

Toujours vide. Les constats sont présentés pour chaque dimension.

assessmentsarray of string

Toujours vide. Les constats sont présentés pour chaque dimension.

nameserversarray of string

Les enregistrements NS que l’audit a résolus : ceux du domaine, ou ceux de son parent quand il n’en a pas.

mxobject

La vérification MX.

properties
scorenumberobligatoire

Points que cette dimension retire du score global : 0 à la note maximale, négatif autrement. Seuls MX, SPF, DKIM, DMARC et BIMI sont comptés, et seulement SPF et DMARC quand le domaine est parqué.

statusstringobligatoire

Verdict : « pass », « warn » ou « fail »; « in progress » pour une politique DMARC qui n’atteint pas reject complet ou pour MTA-STS en mode testing; « info » quand MTA-STS ou TLS-RPT, qui sont facultatifs, ne sont pas configurés. DKIM indique « error » quand le catalogue des services d’envoi que Palisade sonde n’était pas disponible : aucun sélecteur n’a alors été sondé, et le résultat n’indique rien sur le domaine.

assessmentsarray of stringobligatoire

Ce qui a été trouvé et qui n’est pas un problème, comme « spf-success ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

errorsarray of stringobligatoire

Problèmes qui empêchent le mécanisme de fonctionner ou le minent, sous forme de codes stables comme « spf-no-record ». Un hôte peut suivre un deux-points, comme dans « spf-lookup-failed:spf.example.com ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

warningsarray of stringobligatoire

Risques qui méritent d’être corrigés sans empêcher le mécanisme de fonctionner, comme « spf-low-ttl ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

mxPresentobjectobligatoire

La vérification MX sous forme d’état : « mx-present » ou « mx-missing ».

properties
statusstringobligatoire

Le verdict que porte cet état : « pass », « warn », « fail », « in progress » ou « info ».

statestringobligatoire

Identifiant stable de ce qui a été trouvé, sur lequel on peut se fonder. Le champ qui contient cet objet en énumère les valeurs.

scorenumberobligatoire

Points que cet état rapporte à sa dimension. Contrairement au score de la dimension elle-même, il se compte à partir de 0.

penaltiesarray of stringobligatoire

Codes des problèmes moindres trouvés en plus de l’état, comme « spf-ptr-unrecommended ». Habituellement vide.

mxHoststringobligatoire

Le nom où les enregistrements MX ont été lus : le domaine audité, ou, pour un sous-domaine sans serveurs de noms propres, le parent dont les serveurs de noms ont répondu.

mxValuearray of objectobligatoire

Les enregistrements MX trouvés, le préféré en premier.

items
exchangestringobligatoire

Le nom d’hôte du serveur de courriel.

prioritynumberobligatoire

Préférence MX. Les valeurs les plus basses sont essayées en premier.

resolutionFailedboolean

Vrai quand la recherche MX elle-même a échoué; un mxValue vide ne prouve donc pas une absence.

spfobject

La vérification SPF, y compris ce que l’enregistrement coûte en recherches DNS.

properties
scorenumberobligatoire

Points que cette dimension retire du score global : 0 à la note maximale, négatif autrement. Seuls MX, SPF, DKIM, DMARC et BIMI sont comptés, et seulement SPF et DMARC quand le domaine est parqué.

statusstringobligatoire

Verdict : « pass », « warn » ou « fail »; « in progress » pour une politique DMARC qui n’atteint pas reject complet ou pour MTA-STS en mode testing; « info » quand MTA-STS ou TLS-RPT, qui sont facultatifs, ne sont pas configurés. DKIM indique « error » quand le catalogue des services d’envoi que Palisade sonde n’était pas disponible : aucun sélecteur n’a alors été sondé, et le résultat n’indique rien sur le domaine.

assessmentsarray of stringobligatoire

Ce qui a été trouvé et qui n’est pas un problème, comme « spf-success ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

errorsarray of stringobligatoire

Problèmes qui empêchent le mécanisme de fonctionner ou le minent, sous forme de codes stables comme « spf-no-record ». Un hôte peut suivre un deux-points, comme dans « spf-lookup-failed:spf.example.com ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

warningsarray of stringobligatoire

Risques qui méritent d’être corrigés sans empêcher le mécanisme de fonctionner, comme « spf-low-ttl ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

spfSoftFailobjectobligatoire

L’enregistrement SPF sous forme d’état, comme « spf-soft-fail » (se termine par ~all), « spf-closed » (se termine par -all), « spf-missing », « spf-multiple-records » ou « spf-invalid ».

properties
statusstringobligatoire

Le verdict que porte cet état : « pass », « warn », « fail », « in progress » ou « info ».

statestringobligatoire

Identifiant stable de ce qui a été trouvé, sur lequel on peut se fonder. Le champ qui contient cet objet en énumère les valeurs.

scorenumberobligatoire

Points que cet état rapporte à sa dimension. Contrairement au score de la dimension elle-même, il se compte à partir de 0.

penaltiesarray of stringobligatoire

Codes des problèmes moindres trouvés en plus de l’état, comme « spf-ptr-unrecommended ». Habituellement vide.

spfValuestringobligatoire

L’enregistrement SPF évalué : celui de la cible du redirect quand le domaine utilise redirect= et que cette cible publie exactement un enregistrement, sinon celui du domaine lui-même; tous les enregistrements joints par des sauts de ligne, le plus long en premier, quand il en est publié plus d’un. Vide seulement quand aucun enregistrement n’a été trouvé, qu’un type d’enregistrement obsolète est publié, ou que le domaine publie un seul enregistrement portant redirect= à côté d’un mécanisme all — un enregistrement qui boucle, dépasse la limite de recherches ou a un include non résolu est tout de même présenté ici.

lookupCountnumberobligatoire

Recherches DNS comptées pour chaque terme que la section 4.6.4 du RFC 7208 facture — include, a, mx, ptr, exists et redirect — qu’il se soit résolu ou non, et quel que soit le qualificatif qu’il porte. Au-delà de 10, c’est une permerror SPF. Chaque terme compte une fois et nomme l’hôte qu’il interroge, les includes et les redirects sont suivis récursivement partout où ils apparaissent, et ip4, ip6 et all ne coûtent rien. Deux termes ne sont délibérément pas facturés, parce que les destinataires ne les interrogent jamais : tout ce qui se trouve à droite d’un all correspondant, et un redirect= dans un enregistrement qui porte aussi un all, que la section 6.1 du RFC 7208 dit d’ignorer.

lookupStructurearray of objectobligatoire

Les recherches DNS que l’enregistrement coûte aux destinataires, sous forme d’arbre : un include ou un redirect énumère sous nested ce en quoi il se développe.

items
typestringobligatoire

Le terme qui coûte la recherche : « include », « redirect », « a », « mx », « ptr » ou « exists ». « expanded-domain » est le nom en lequel se développe une macro exists:, ce qui ne coûte aucune recherche.

valuestring

L’opérande que le terme interroge, tel que publié plutôt que résolu — à une exception près : un include: ou un redirect= dont toutes les macros se sont résolues présente le nom substitué qu’il a interrogé, avec la note « macro-expanded » quand ce nom publie exactement un enregistrement SPF, et avec error dans le cas contraire. Un a, un mx ou un ptr nu nomme le domaine dont il occupe l’enregistrement, puisque c’est ce qu’il interroge : le domaine audité au premier niveau, et la cible de l’include ou du redirect à l’intérieur du sous-arbre qui lui appartient. Deux cas ne sont pas un nom d’hôte : un exists: portant une macro est le gabarit, et un nœud expanded-domain imbriqué porte le nom substitué seulement quand %{i}, %{ir}, %{v} et %{d} sont les seules macros qu’il utilise — toute autre forme de macro laisse le terme non développé, avec la note « macro-unexpanded » et aucun nœud imbriqué; et un a:, un mx: ou un ptr: portant une macro, comme a:%{d}, est le gabarit non développé, puisque seuls les opérandes de include: et de redirect= passent par le résolveur de macros. Un qualificatif ne change pas l’opérande : ~a:mail.example.com et -mx:relay.example.net nomment l’hôte vers lequel chacun pointe, exactement comme les formes sans qualificatif.

nestedarray of object, nullable

Les recherches en lesquelles celle-ci se développe, chacune un SpfLookupNode.

notestring

« loop » pour un include ou un redirect qui renvoie à un enregistrement déjà en cours d’évaluation, « unresolved » quand la recherche n’a pas pu aboutir, « macro-expanded » pour un terme dont l’opérande portait une macro qui a été substituée, et « macro-unexpanded » pour un terme portant une macro qui ne peut pas être résolue sans un expéditeur réel. exists:, include: et redirect= peuvent porter l’une ou l’autre, et coûtent une recherche dans les deux cas — sauf qu’un include: ou un redirect= développé ne porte aucune note de macro lorsque sa cible fait défaut : « unresolved » quand la recherche n’a pas pu aboutir, « loop » quand il renvoie en arrière, « no-txt » avec error quand la cible n’a renvoyé aucun enregistrement TXT, et aucune note du tout — seulement error — quand la cible a renvoyé des enregistrements TXT, mais pas un seul enregistrement SPF parmi eux. Un exists: développé place le nom substitué dans un nœud expanded-domain imbriqué; un include: ou un redirect= développé interroge le nom substitué et le présente comme valeur.

errorboolean

Vrai quand la cible de l’include ou du redirect ne publie pas d’enregistrement SPF unique, ou boucle. Une recherche qui n’a pas pu aboutir porte la note « unresolved » et pas d’error à la place, et une cible qui n’a renvoyé aucun enregistrement TXT porte error avec la note « no-txt ».

resolutionFailedboolean

Vrai quand la recherche SPF elle-même a échoué, pour le domaine ou pour sa cible redirect=; ce que errors signale comme manquant ne prouve donc pas une absence.

servicesarray of object, nullableobligatoire

Toujours vide.

deprecatedbooleanobligatoire

Vrai quand le domaine publie encore le type d’enregistrement SPF obsolète (type DNS 99), que les destinataires ignorent.

ip4Rangesarray of stringobligatoire

Les plages ip4: que l’enregistrement autorise lui-même, sans compter ses includes. Vide quand l’enregistrement n’a pas pu être évalué.

ip6Rangesarray of stringobligatoire

Les plages ip6: que l’enregistrement autorise lui-même, sans compter ses includes. Vide quand l’enregistrement n’a pas pu être évalué.

ttlnumber, nullableobligatoire

TTL de l’enregistrement SPF en secondes, d’après les serveurs de noms faisant autorité du domaine. 0 ou null quand il n’a pas pu être lu.

recommendationsarray of stringobligatoire

Améliorations utiles au-delà de errors et warnings, sous forme de codes comme « dmarc-policy-quarantine », qui incite à passer à reject. Habituellement vide.

dkimobject

La vérification DKIM, sur les sélecteurs que Palisade sait sonder.

properties
scorenumberobligatoire

Points que cette dimension retire du score global : 0 à la note maximale, négatif autrement. Seuls MX, SPF, DKIM, DMARC et BIMI sont comptés, et seulement SPF et DMARC quand le domaine est parqué.

statusstringobligatoire

Verdict : « pass », « warn » ou « fail »; « in progress » pour une politique DMARC qui n’atteint pas reject complet ou pour MTA-STS en mode testing; « info » quand MTA-STS ou TLS-RPT, qui sont facultatifs, ne sont pas configurés. DKIM indique « error » quand le catalogue des services d’envoi que Palisade sonde n’était pas disponible : aucun sélecteur n’a alors été sondé, et le résultat n’indique rien sur le domaine.

assessmentsarray of stringobligatoire

Ce qui a été trouvé et qui n’est pas un problème, comme « spf-success ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

errorsarray of stringobligatoire

Problèmes qui empêchent le mécanisme de fonctionner ou le minent, sous forme de codes stables comme « spf-no-record ». Un hôte peut suivre un deux-points, comme dans « spf-lookup-failed:spf.example.com ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

warningsarray of stringobligatoire

Risques qui méritent d’être corrigés sans empêcher le mécanisme de fonctionner, comme « spf-low-ttl ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

hostnamestringobligatoire

Le domaine dont les sélecteurs DKIM ont été vérifiés.

dkimValuesarray of objectobligatoire

Chaque enregistrement DKIM trouvé. Palisade ne sonde que les sélecteurs qu’utilise son catalogue de services d’envoi; une clé sous tout autre sélecteur n’est donc pas trouvée : une liste vide ne prouve pas que le domaine n’a pas de DKIM.

items
recordstringobligatoire

L’enregistrement TXT publié au sélecteur.

selectorstringobligatoire

Le sélecteur, publié à <selector>._domainkey.<domain>.

sourcestringobligatoire

Le service d’envoi du catalogue de Palisade qui utilise ce sélecteur.

kstringobligatoire

Le type de clé de k=, comme « rsa ». Vide quand la balise est absente, ce qui signifie rsa.

pstringobligatoire

La clé publique de p=. Vide quand la clé est révoquée (p= sans valeur) ou que la balise est absente.

scorenumberobligatoire

Points que cet enregistrement retire du score DKIM. 0 quand il est correct.

assessmentsarray of stringobligatoire

Ce qui a été trouvé et qui n’est pas un problème, comme « spf-success ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

errorsarray of stringobligatoire

Problèmes qui empêchent le mécanisme de fonctionner ou le minent, sous forme de codes stables comme « spf-no-record ». Un hôte peut suivre un deux-points, comme dans « spf-lookup-failed:spf.example.com ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

warningsarray of stringobligatoire

Risques qui méritent d’être corrigés sans empêcher le mécanisme de fonctionner, comme « spf-low-ttl ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

dmarcobject

La vérification DMARC, qui note séparément la politique et la production de rapports.

properties
hostnamestringobligatoire

Le domaine où l’enregistrement DMARC a été lu : le domaine audité, ou le parent où il a été trouvé quand le domaine audité n’en publie pas.

scorenumberobligatoire

Points que cette dimension retire du score global : 0 à la note maximale, négatif autrement. Seuls MX, SPF, DKIM, DMARC et BIMI sont comptés, et seulement SPF et DMARC quand le domaine est parqué.

statusstringobligatoire

Verdict : « pass », « warn » ou « fail »; « in progress » pour une politique DMARC qui n’atteint pas reject complet ou pour MTA-STS en mode testing; « info » quand MTA-STS ou TLS-RPT, qui sont facultatifs, ne sont pas configurés. DKIM indique « error » quand le catalogue des services d’envoi que Palisade sonde n’était pas disponible : aucun sélecteur n’a alors été sondé, et le résultat n’indique rien sur le domaine.

assessmentsarray of stringobligatoire

Ce qui a été trouvé et qui n’est pas un problème, comme « spf-success ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

errorsarray of stringobligatoire

Problèmes qui empêchent le mécanisme de fonctionner ou le minent, sous forme de codes stables comme « spf-no-record ». Un hôte peut suivre un deux-points, comme dans « spf-lookup-failed:spf.example.com ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

warningsarray of stringobligatoire

Risques qui méritent d’être corrigés sans empêcher le mécanisme de fonctionner, comme « spf-low-ttl ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

setupStatestringobligatoire

Si l’enregistrement envoie déjà les rapports agrégés à Palisade : « SETUP » si c’est le cas, sinon « NONE ».

dmarcClosedobjectobligatoire

La partie politique sous forme d’état : « dmarc-policy-none », « dmarc-policy-quarantine-* » ou « dmarc-policy-reject-* » selon le niveau de pct= (low, medium, high ou full), « dmarc-missing » ou « dmarc-invalid ».

properties
statusstringobligatoire

Le verdict que porte cet état : « pass », « warn », « fail », « in progress » ou « info ».

statestringobligatoire

Identifiant stable de ce qui a été trouvé, sur lequel on peut se fonder. Le champ qui contient cet objet en énumère les valeurs.

scorenumberobligatoire

Points que cet état rapporte à sa dimension. Contrairement au score de la dimension elle-même, il se compte à partir de 0.

penaltiesarray of stringobligatoire

Codes des problèmes moindres trouvés en plus de l’état, comme « spf-ptr-unrecommended ». Habituellement vide.

dmarcMonitoredobjectobligatoire

La partie production de rapports sous forme d’état : « dmarc-monitoring-managed » (les rapports agrégés parviennent à Palisade), « dmarc-monitoring-external » (ils vont ailleurs), « dmarc-monitoring-missing » ou « dmarc-monitoring-invalid ».

properties
statusstringobligatoire

Le verdict que porte cet état : « pass », « warn », « fail », « in progress » ou « info ».

statestringobligatoire

Identifiant stable de ce qui a été trouvé, sur lequel on peut se fonder. Le champ qui contient cet objet en énumère les valeurs.

scorenumberobligatoire

Points que cet état rapporte à sa dimension. Contrairement au score de la dimension elle-même, il se compte à partir de 0.

penaltiesarray of stringobligatoire

Codes des problèmes moindres trouvés en plus de l’état, comme « spf-ptr-unrecommended ». Habituellement vide.

recordsarray of stringobligatoire

Chaque enregistrement v=DMARC1 trouvé. Plus d’un est une erreur : les destinataires ignorent alors DMARC.

dmarcValuestring, nullable

L’enregistrement évalué. Null quand aucun n’a été trouvé ou quand il en est publié plus d’un.

ttlnumber, nullableobligatoire

TTL de l’enregistrement DMARC en secondes, d’après les serveurs de noms faisant autorité. Null quand il n’a pas pu être lu.

tagsobjectobligatoire

Les balises que l’enregistrement définit, analysées. Une balise qu’il omet vaut null, ou une liste vide.

properties
policystring, nullableobligatoire

La politique p=, en minuscules : « none », « quarantine » ou « reject ».

pctnumber, nullableobligatoire

Le pourcentage pct= des courriels en échec auxquels la politique s’applique. Null quand il est absent, ce qui signifie 100.

fostring, nullableobligatoire

L’option de rapport d’échec fo= : « 0 », « 1 », « d » ou « s ».

ruaMailtoarray of stringobligatoire

Où vont les rapports agrégés : les adresses rua=, sans mailto:.

rufMailtoarray of stringobligatoire

Où vont les rapports d’échec : les adresses ruf=, sans mailto:.

adkimstring, nullableobligatoire

Le mode d’alignement DKIM adkim= : « r » pour relaxed ou « s » pour strict. Null quand il est absent, ce qui signifie relaxed.

aspfstring, nullableobligatoire

Le mode d’alignement SPF aspf= : « r » pour relaxed ou « s » pour strict. Null quand il est absent, ce qui signifie relaxed.

spstring, nullableobligatoire

La politique sp= des sous-domaines. Null quand elle est absente, auquel cas les sous-domaines prennent p=.

monitoringarray of stringobligatoire

Constats sur la production de rapports, séparés de errors : des codes comme « dmarc-missing-rua-tag », qui signifie qu’aucun rapport agrégé n’est demandé.

recommendationsarray of stringobligatoire

Améliorations utiles au-delà de errors et warnings, sous forme de codes comme « dmarc-policy-quarantine », qui incite à passer à reject. Habituellement vide.

viaCnamebooleanobligatoire

Vrai quand l’enregistrement est servi par un CNAME plutôt que publié directement.

isPalisadeCnamebooleanobligatoire

Vrai quand ce CNAME pointe vers Palisade, qui héberge l’enregistrement.

resolutionFailedbooleanobligatoire

Vrai quand la recherche DMARC elle-même a échoué; ce que errors signale comme manquant ne prouve donc pas une absence.

bimiobject

La vérification BIMI, y compris le logo et le certificat vers lesquels pointe l’enregistrement.

properties
scorenumberobligatoire

Points que cette dimension retire du score global : 0 à la note maximale, négatif autrement. Seuls MX, SPF, DKIM, DMARC et BIMI sont comptés, et seulement SPF et DMARC quand le domaine est parqué.

statusstringobligatoire

Verdict : « pass », « warn » ou « fail »; « in progress » pour une politique DMARC qui n’atteint pas reject complet ou pour MTA-STS en mode testing; « info » quand MTA-STS ou TLS-RPT, qui sont facultatifs, ne sont pas configurés. DKIM indique « error » quand le catalogue des services d’envoi que Palisade sonde n’était pas disponible : aucun sélecteur n’a alors été sondé, et le résultat n’indique rien sur le domaine.

assessmentsarray of stringobligatoire

Ce qui a été trouvé et qui n’est pas un problème, comme « spf-success ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

errorsarray of stringobligatoire

Problèmes qui empêchent le mécanisme de fonctionner ou le minent, sous forme de codes stables comme « spf-no-record ». Un hôte peut suivre un deux-points, comme dans « spf-lookup-failed:spf.example.com ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

warningsarray of stringobligatoire

Risques qui méritent d’être corrigés sans empêcher le mécanisme de fonctionner, comme « spf-low-ttl ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

bimiCertifiedobjectobligatoire

L’enregistrement BIMI sous forme d’état : « bimi-certified » (un logo et un certificat), « bimi-uncertified » (un logo sans certificat), « bimi-missing », « bimi-invalid », « bimi-requirements-not-met » (DMARC n’est pas en application), ou, une fois les fichiers vérifiés, « bimi-logo-invalid », « bimi-vmc-invalid » ou « bimi-vmc-expired ».

properties
statusstringobligatoire

Le verdict que porte cet état : « pass », « warn », « fail », « in progress » ou « info ».

statestringobligatoire

Identifiant stable de ce qui a été trouvé, sur lequel on peut se fonder. Le champ qui contient cet objet en énumère les valeurs.

scorenumberobligatoire

Points que cet état rapporte à sa dimension. Contrairement au score de la dimension elle-même, il se compte à partir de 0.

penaltiesarray of stringobligatoire

Codes des problèmes moindres trouvés en plus de l’état, comme « spf-ptr-unrecommended ». Habituellement vide.

bimiValuestring, nullableobligatoire

L’enregistrement à default._bimi.<domain>. Null quand aucun n’est publié, ou quand il en est publié plus d’un.

locationstring, nullableobligatoire

L’URL du logo de l=. Null quand la balise est absente.

assertionstring, nullableobligatoire

La valeur a= telle que publiée, conservée textuellement : une URL https:// vers un .pem quand la balise en porte une, sinon la valeur littérale « self », une chaîne vide, ou toute valeur inutilisable qui a été définie. Une URL utilisable ici n’est pas un verdict sur le certificat, parce qu’elle n’est pas effacée quand l’enregistrement échoue plus tard à ses vérifications — lisez bimiCertified pour cela. Null quand la balise est absente ou n’a pas été atteinte.

recommendationsarray of stringobligatoire

Améliorations utiles au-delà de errors et warnings, sous forme de codes comme « dmarc-policy-quarantine », qui incite à passer à reject. Habituellement vide.

vmcExpiryDatestring (date-time)

Quand le certificat expire, d’après son validTo. Présent quand la validation a lu un validTo, ou quand une date d’expiration mise en cache lors d’une lecture antérieure a été réutilisée; absent quand le certificat n’a pas pu être récupéré ni analysé, même s’il a été atteint.

viaCnamebooleanobligatoire

Vrai quand l’enregistrement est servi par un CNAME plutôt que publié directement.

isPalisadeCnamebooleanobligatoire

Vrai quand ce CNAME pointe vers Palisade, qui héberge l’enregistrement.

deepValidatedboolean

Vrai quand cet audit a tenté une validation approfondie : récupérer le logo, et le certificat quand a= en nomme un. Il est défini avant ces récupérations; il ne signifie donc pas que l’une ou l’autre a réussi — lisez logoValidation et vmcValidation pour le savoir. Absent quand l’enregistrement a échoué avant cette étape, et quand un résultat VMC vérifié dans les 24 dernières heures a été réutilisé au lieu d’être relu.

logoValidationobject

Ce qu’ont révélé la récupération et la vérification du logo à location. Présent quand deepValidated est vrai.

properties
fetchedbooleanobligatoire

Vrai quand le logo a pu être téléchargé.

validbooleanobligatoire

Vrai quand il a réussi les vérifications de Palisade pour un SVG BIMI.

errorstring, nullableobligatoire

Pourquoi le logo a échoué, le cas échéant.

vmcValidationobject

Ce qu’ont révélé la récupération et la vérification du certificat à assertion. Présent quand deepValidated est vrai et que a= nomme un certificat.

properties
fetchedbooleanobligatoire

Vrai quand le fichier du certificat a pu être téléchargé.

validbooleanobligatoire

Vrai quand chaque vérification du certificat a réussi. Les avertissements comme une non-correspondance du logo ne comptent pas contre lui.

certificateCountnumberobligatoire

Certificats PEM du fichier.

chainCompleteboolean, nullableobligatoire

Vrai quand le fichier contient chaque certificat, du certificat feuille jusqu’à une racine autosignée. Null tant qu’il n’a pas été vérifié.

chainTrustedboolean, nullableobligatoire

Vrai quand la chaîne, exactement telle que publiée, aboutit à une racine à laquelle Palisade fait confiance pour BIMI. Null tant qu’elle n’a pas été vérifiée.

trustAnchorstring, nullableobligatoire

La racine de confiance à laquelle aboutit la chaîne. Null quand elle n’est pas de confiance.

markTypePresentboolean, nullableobligatoire

Vrai quand le certificat porte l’attribut de type de marque BIMI qu’un VMC ou un CMC doit avoir. Null tant qu’il n’a pas été vérifié.

isVmcboolean, nullableobligatoire

Vrai quand c’est un certificat de marque, qui intègre un logo; faux quand c’est un autre type de certificat; null quand il n’a pas pu être lu.

logoMatchesCertificateboolean, nullableobligatoire

Vrai quand le logo à location est, octet pour octet, celui qui est intégré au certificat. Null quand ils n’ont pas été comparés.

domainCoveredboolean, nullableobligatoire

Vrai quand le certificat nomme le domaine audité. Null tant qu’il n’a pas été vérifié.

issuerstring, nullableobligatoire

Nom commun de l’émetteur du certificat.

subjectCommonNamestring, nullableobligatoire

Nom commun auquel le certificat a été délivré.

validFromstring, nullableobligatoire

Début de la période de validité, au format ISO 8601.

validTostring, nullableobligatoire

Fin de la période de validité, au format ISO 8601.

sanDomainsarray of stringobligatoire

Les domaines que couvre le certificat, d’après ses noms alternatifs du sujet.

errorstring, nullableobligatoire

Pourquoi le certificat a échoué, le cas échéant.

mtaStsobject

La vérification MTA-STS. Elle ne compte pas dans le score global.

properties
scorenumberobligatoire

Points que cette dimension retire du score global : 0 à la note maximale, négatif autrement. Seuls MX, SPF, DKIM, DMARC et BIMI sont comptés, et seulement SPF et DMARC quand le domaine est parqué.

statusstringobligatoire

Verdict : « pass », « warn » ou « fail »; « in progress » pour une politique DMARC qui n’atteint pas reject complet ou pour MTA-STS en mode testing; « info » quand MTA-STS ou TLS-RPT, qui sont facultatifs, ne sont pas configurés. DKIM indique « error » quand le catalogue des services d’envoi que Palisade sonde n’était pas disponible : aucun sélecteur n’a alors été sondé, et le résultat n’indique rien sur le domaine.

assessmentsarray of stringobligatoire

Ce qui a été trouvé et qui n’est pas un problème, comme « spf-success ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

errorsarray of stringobligatoire

Problèmes qui empêchent le mécanisme de fonctionner ou le minent, sous forme de codes stables comme « spf-no-record ». Un hôte peut suivre un deux-points, comme dans « spf-lookup-failed:spf.example.com ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

warningsarray of stringobligatoire

Risques qui méritent d’être corrigés sans empêcher le mécanisme de fonctionner, comme « spf-low-ttl ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

mtaStsStatusobjectobligatoire

La configuration MTA-STS sous forme d’état : « mta-sts-enforce », « mta-sts-testing », « mta-sts-none-mode », « mta-sts-missing », « mta-sts-dns-only » (un enregistrement TXT, mais aucune politique accessible), « mta-sts-mx-mismatch » (la politique ne couvre pas un hôte MX) ou « mta-sts-invalid ».

properties
statusstringobligatoire

Le verdict que porte cet état : « pass », « warn », « fail », « in progress » ou « info ».

statestringobligatoire

Identifiant stable de ce qui a été trouvé, sur lequel on peut se fonder. Le champ qui contient cet objet en énumère les valeurs.

scorenumberobligatoire

Points que cet état rapporte à sa dimension. Contrairement au score de la dimension elle-même, il se compte à partir de 0.

penaltiesarray of stringobligatoire

Codes des problèmes moindres trouvés en plus de l’état, comme « spf-ptr-unrecommended ». Habituellement vide.

txtValuestring, nullableobligatoire

L’enregistrement à _mta-sts.<domain>. Null quand aucun n’est publié, ou quand il en est publié plus d’un.

policyFilestring, nullableobligatoire

La politique servie à https://mta-sts.<domain>/.well-known/mta-sts.txt, textuellement. Null quand elle n’a pas pu être récupérée.

modestring, nullableobligatoire

Le mode de la politique : « enforce », « testing » ou « none ». Null quand il n’y a aucune politique à lire.

mxEntriesarray of stringobligatoire

Les motifs mx: que couvre la politique.

maxAgenumber, nullableobligatoire

Le max_age de la politique, en secondes. Null quand il n’y a aucune valeur lisible.

policyIdstring, nullableobligatoire

L’id= de l’enregistrement TXT. Les expéditeurs récupèrent de nouveau la politique quand il change.

tlsRptobject

La vérification TLS-RPT. Elle ne compte pas dans le score global.

properties
scorenumberobligatoire

Points que cette dimension retire du score global : 0 à la note maximale, négatif autrement. Seuls MX, SPF, DKIM, DMARC et BIMI sont comptés, et seulement SPF et DMARC quand le domaine est parqué.

statusstringobligatoire

Verdict : « pass », « warn » ou « fail »; « in progress » pour une politique DMARC qui n’atteint pas reject complet ou pour MTA-STS en mode testing; « info » quand MTA-STS ou TLS-RPT, qui sont facultatifs, ne sont pas configurés. DKIM indique « error » quand le catalogue des services d’envoi que Palisade sonde n’était pas disponible : aucun sélecteur n’a alors été sondé, et le résultat n’indique rien sur le domaine.

assessmentsarray of stringobligatoire

Ce qui a été trouvé et qui n’est pas un problème, comme « spf-success ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

errorsarray of stringobligatoire

Problèmes qui empêchent le mécanisme de fonctionner ou le minent, sous forme de codes stables comme « spf-no-record ». Un hôte peut suivre un deux-points, comme dans « spf-lookup-failed:spf.example.com ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

warningsarray of stringobligatoire

Risques qui méritent d’être corrigés sans empêcher le mécanisme de fonctionner, comme « spf-low-ttl ». MTA-STS et TLS-RPT rédigent des phrases plutôt que des codes.

tlsRptStatusobjectobligatoire

L’enregistrement TLS-RPT sous forme d’état : « tls-rpt-present », « tls-rpt-missing » ou « tls-rpt-invalid ».

properties
statusstringobligatoire

Le verdict que porte cet état : « pass », « warn », « fail », « in progress » ou « info ».

statestringobligatoire

Identifiant stable de ce qui a été trouvé, sur lequel on peut se fonder. Le champ qui contient cet objet en énumère les valeurs.

scorenumberobligatoire

Points que cet état rapporte à sa dimension. Contrairement au score de la dimension elle-même, il se compte à partir de 0.

penaltiesarray of stringobligatoire

Codes des problèmes moindres trouvés en plus de l’état, comme « spf-ptr-unrecommended ». Habituellement vide.

txtValuestring, nullableobligatoire

L’enregistrement à _smtp._tls.<domain>. Null quand aucun n’est publié, ou quand il en est publié plus d’un.

reportingEndpointsarray of stringobligatoire

Où vont les rapports d’échec TLS : les destinations rua= valides, chacune mailto: ou https://.

Lire une analyse d’activation enregistrée

GET/tools/activation-scan

Renvoie l’audit le plus récent enregistré pour un domaine par GET /tools/audit?store_scan=true, pour qu’une analyse effectuée sur le site Web survive à l’aller-retour de l’inscription sans être refaite. Présente les mêmes constats DNS publics que l’audit, et expire 24 heures après l’analyse. L’authentification n’est pas requise.

Paramètres de requête

domainstringobligatoire

Exemple de requête

curl "https://api.palisade.email/tools/activation-scan"

Réponses

200object

Succès

Corps de la réponse
schemaVersionnumber enumobligatoire
Valeurs possibles : 1
domainstringobligatoire
Longueur max. : 253
scorenumberobligatoire
Min. : 0 · Max. : 100
issueCountintegerobligatoire
Min. : 0 · Max. : 7
findingsarray of objectobligatoire
items
idstringobligatoire
keystring enumobligatoire
Valeurs possibles : mx, spf, dkim, dmarc, bimi, mtaSts, tlsRpt
titlestringobligatoire
Longueur min. : 1 · Longueur max. : 32
severitystring enumobligatoire
Valeurs possibles : fail, warn, info
detailstringobligatoire
Longueur min. : 1 · Longueur max. : 1000
optionalbooleanobligatoire
diagnosticsarray of object
items
codestringobligatoire
Longueur min. : 1 · Longueur max. : 2000
detailstringobligatoire
Longueur min. : 1 · Longueur max. : 1000
selectorstring
Longueur max. : 253
baselineobjectobligatoire
properties
dmarcValuestring, nullableobligatoire
Longueur max. : 8192
initialTasksarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : SET_UP_MX_RECORD, SET_UP_SPF_RECORD, CLEANUP_SPF_RECORD, REDUCE_SPF_LOOKUPS
priorityintegerobligatoire
Min. : 1 · Max. : 3
descriptionstringobligatoire
Longueur min. : 1 · Longueur max. : 500
providerobject, nullableobligatoire
properties
namestringobligatoire
Longueur min. : 1 · Longueur max. : 128
domainstringobligatoire
Longueur max. : 253
sourceToolstring enumobligatoire
Valeurs possibles : email-security-score
scannedAtstring (date-time)obligatoire
expiresAtstring (date-time)obligatoire

Identifier le fournisseur de boîte aux lettres

GET/tools/mailbox-providerauthentification requise

Identifie quel fournisseur de boîte aux lettres héberge les courriels entrants d’un domaine, à partir de ses enregistrements MX en vigueur. Renvoie un fournisseur null quand les enregistrements MX ne correspondent à aucun fournisseur connu, quand le domaine n’a aucun MX, ou quand une passerelle de sécurité placée devant masque le fournisseur. L’authentification est facultative.

Paramètres de requête

domainstringobligatoire

Exemple de requête

curl "https://api.palisade.email/tools/mailbox-provider" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200MailboxProviderResult

Succès

Corps de la réponse
domainstringobligatoire
providerobject, nullableobligatoire

Null quand les enregistrements MX ne correspondent à aucun fournisseur de boîte aux lettres connu, ou quand le domaine n’a aucun MX.

properties
idstringobligatoire
namestringobligatoire
urlstringobligatoire

Valider un include SPF

GET/tools/validate-includeauthentification requise

Vérifie qu’un domaine peut servir d’include: SPF et compte les recherches DNS qu’il coûte, pour savoir avant de l’ajouter s’il fera dépasser à un enregistrement la limite de dix recherches. Le compte inclut l’include lui-même. Peut être appelé avec une clé d’API ou une session du tableau de bord. L’outil du navigateur joint ce même point de terminaison avec un jeton captcha à la place, ce qui explique que vous puissiez le voir appelé sans identifiants; un captcha n’est pas quelque chose qu’un client de l’API peut produire, il ne fait donc pas partie de ce contrat.

Paramètres de requête

domainstringobligatoire

Le domaine à tester comme cible d’include: SPF, p. ex. _spf.google.com.

Exemple de requête

curl "https://api.palisade.email/tools/validate-include" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200ValidateIncludeResult

Succès

Corps de la réponse
validbooleanobligatoire
lookup_countnumber

Recherches DNS que coûte l’include, en comptant l’include lui-même. Présent seulement quand valid est vrai.

errorstring

Pourquoi le domaine ne peut pas servir d’include SPF. Présent seulement quand valid est faux.

Consulter les enregistrements DNS

POST/tools/dns-lookupauthentification requise

Lit en un seul appel les enregistrements TXT, MX, NS, A et CNAME d’un hôte dans le DNS en vigueur. Les types d’enregistrements qui ne se résolvent en rien sont simplement absents du tableau plutôt que signalés comme une erreur. L’authentification est facultative.

Corps de la requête

hoststringobligatoire

L’hôte à résoudre.

Exemple de requête

curl -X POST "https://api.palisade.email/tools/dns-lookup" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "host": "string"
}'

Réponses

200DnsLookupResult

Succès

Corps de la réponse
recordsarray of objectobligatoire
items
typestring enumobligatoire
Valeurs possibles : TXT, MX, NS, A, CNAME
valuestringobligatoire
prioritynumber

Préférence MX. Présente seulement pour les enregistrements MX.

Analyser les en-têtes d’un courriel

POST/tools/header-analyzeauthentification requise

Analyse un bloc d’en-têtes de courriel brut et indique ce qu’a conclu le chemin de réception : les verdicts SPF, DKIM et DMARC consignés par chaque relais, si ces domaines s’alignent sur le domaine From, les signatures DKIM et la chaîne ARC présentes, et les relais de livraison avec le délai à chacun. Si include_dns_validation reste activé, les enregistrements SPF, DMARC et DKIM du domaine From sont aussi lus dans le DNS en vigueur, pour qu’un verdict puisse être comparé à ce qui est publié maintenant. Peut être appelé avec une clé d’API ou une session du tableau de bord. L’outil du navigateur joint ce même point de terminaison avec un jeton captcha à la place, ce qui explique que vous puissiez le voir appelé sans identifiants; un captcha n’est pas quelque chose qu’un client de l’API peut produire, il ne fait donc pas partie de ce contrat. Le corps de la requête est en snake_case, mais l’analyse dans la réponse conserve des noms de champs en camelCase (authenticationResults, receivedHops, dnsValidation) plutôt que la convention de l’ensemble de l’API.

Corps de la requête

headersstringobligatoire
Longueur min. : 10 · Longueur max. : 100000
include_dns_validationboolean
Par défaut : true

Exemple de requête

curl -X POST "https://api.palisade.email/tools/header-analyze" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "headers": "string",
  "include_dns_validation": true
}'

Réponses

200HeaderAnalysisResult

Succès

Corps de la réponse
summaryobjectobligatoire
properties
fromstringobligatoire
returnPathstringobligatoire
subjectstringobligatoire
datestringobligatoire
messageIdstringobligatoire
spfstringobligatoire

pass, fail, softfail, neutral, none, temperror, permerror ou unknown.

dkimstringobligatoire

pass, fail, softfail, neutral, none, temperror, permerror ou unknown.

dmarcstringobligatoire

pass, fail, softfail, neutral, none, temperror, permerror ou unknown.

spfAlignmentstringobligatoire

Si le domaine SPF s’aligne sur le domaine From, en mode strict ou relaxed.

dkimAlignmentstringobligatoire
overallVerdictstringobligatoire
authenticationResultsarray of objectobligatoire
items
authServIdstringobligatoire
spfstringobligatoire

pass, fail, softfail, neutral, none, temperror, permerror ou unknown.

spfReasonstringobligatoire
spfFromstringobligatoire
dkimstringobligatoire

pass, fail, softfail, neutral, none, temperror, permerror ou unknown.

dkimReasonstringobligatoire
dkimDomainstringobligatoire
dmarcstringobligatoire

pass, fail, softfail, neutral, none, temperror, permerror ou unknown.

dmarcReasonstringobligatoire
compAuthstringobligatoire

Verdict d’authentification composite de Microsoft, s’il est présent.

rawstringobligatoire
dkimSignaturesarray of objectobligatoire
items
versionstringobligatoire
algorithmstringobligatoire
domainstringobligatoire
selectorstringobligatoire
headerFieldsstringobligatoire
bodyHashstringobligatoire
rawstringobligatoire
arcChainarray of objectobligatoire
items
instancenumberobligatoire
arcAuthenticationResultsstringobligatoire
arcSealstringobligatoire
arcMessageSignaturestringobligatoire
cvstringobligatoire
receivedHopsarray of objectobligatoire
items
indexnumberobligatoire
fromstringobligatoire
bystringobligatoire
protocolstringobligatoire
timestampstringobligatoire
delayMsnumber, nullableobligatoire

Millisecondes passées à ce relais, ou null quand la valeur ne peut pas être déduite.

ipstringobligatoire
rawstringobligatoire
dnsValidationobject, nullableobligatoire

Lecture du DNS en vigueur pour le domaine From. Null quand include_dns_validation valait false.

properties
fromDomainstringobligatoire
spfRecordstring, nullableobligatoire
dmarcRecordstring, nullableobligatoire
dmarcPolicystring, nullableobligatoire
dkimSelectorsarray of objectobligatoire
items
selectorstringobligatoire
domainstringobligatoire
publicKeyFoundbooleanobligatoire
warningsarray of stringobligatoire
rawHeaderCountnumberobligatoire

Webhooks

Lister les points de terminaison de webhook

GET/webhook-endpointsauthentification requise

Paramètres de requête

pagenumber
per_pagenumber

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/webhook-endpoints" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of WebhookEndpointobligatoire
WebhookEndpoint
idstring (uuid)obligatoire
urlstring (uri)obligatoire
descriptionstring, nullableobligatoire
enabled_eventsarray of string enumobligatoire

Types d’événements que reçoit ce point de terminaison. Un tableau vide signifie tous les événements, y compris ceux ajoutés plus tard — et non aucun.

items
Valeurs possibles : domain.created, domain.updated, domain.deleted, domain.monitoring.activated, domain.monitoring.failed, domain.monitoring.drifted, domain.monitoring.recovered, domain.hosted_record.ready, domain.hosted_record.error, domain.score_changed, domain.policy_changed, mta_sts.enabled, mta_sts.updated, mta_sts.disabled, task.opened, task.completed, task.canceled, task.dismissed, task.reopened, organization.updated, member.added, member.updated, member.removed, invitation.created, invitation.revoked, group.created, group.updated, group.deleted
statusstring enumobligatoire

ENABLED reçoit les événements. DISABLED a été désactivé par vous. AUTO_DISABLED a été désactivé par Palisade après des échecs de livraison répétés et reste désactivé jusqu’à ce que vous le réactiviez, ce qui remet aussi à zéro le nombre d’échecs.

Valeurs possibles : ENABLED, DISABLED, AUTO_DISABLED
secret_reminderstringobligatoire

Les 4 derniers caractères du secret de signature. Le secret complet n’est renvoyé qu’à la création.

api_versionstringobligatoire

Version de l’API à laquelle la forme de la charge utile est fixée, enregistrée à la création du point de terminaison.

consecutive_failuresnumberobligatoire
Min. : 0
disabled_reasonstring, nullableobligatoire
last_success_atstring (date-time), nullableobligatoire
last_failure_atstring (date-time), nullableobligatoire
created_bystringobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Créer un point de terminaison de webhook

POST/webhook-endpointsauthentification requise

Crée un point de terminaison. La réponse est la seule fois où le secret de signature est renvoyé en entier; conservez-le immédiatement.

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

urlstring (uri)obligatoire
descriptionstring
Longueur max. : 500
enabled_eventsarray of string enum

Types d’événements que reçoit ce point de terminaison. Omettez-le, ou envoyez un tableau vide, pour recevoir tous les événements, y compris ceux ajoutés plus tard.

items
Valeurs possibles : domain.created, domain.updated, domain.deleted, domain.monitoring.activated, domain.monitoring.failed, domain.monitoring.drifted, domain.monitoring.recovered, domain.hosted_record.ready, domain.hosted_record.error, domain.score_changed, domain.policy_changed, mta_sts.enabled, mta_sts.updated, mta_sts.disabled, task.opened, task.completed, task.canceled, task.dismissed, task.reopened, organization.updated, member.added, member.updated, member.removed, invitation.created, invitation.revoked, group.created, group.updated, group.deleted

Exemple de requête

curl -X POST "https://api.palisade.email/webhook-endpoints" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "https://example.com",
  "description": "string",
  "enabled_events": [
    "domain.created"
  ]
}'

Réponses

201WebhookEndpointWithSecret

Créé

Corps de la réponse
idstring (uuid)obligatoire
urlstring (uri)obligatoire
descriptionstring, nullableobligatoire
enabled_eventsarray of string enumobligatoire

Types d’événements que reçoit ce point de terminaison. Un tableau vide signifie tous les événements, y compris ceux ajoutés plus tard — et non aucun.

items
Valeurs possibles : domain.created, domain.updated, domain.deleted, domain.monitoring.activated, domain.monitoring.failed, domain.monitoring.drifted, domain.monitoring.recovered, domain.hosted_record.ready, domain.hosted_record.error, domain.score_changed, domain.policy_changed, mta_sts.enabled, mta_sts.updated, mta_sts.disabled, task.opened, task.completed, task.canceled, task.dismissed, task.reopened, organization.updated, member.added, member.updated, member.removed, invitation.created, invitation.revoked, group.created, group.updated, group.deleted
statusstring enumobligatoire

ENABLED reçoit les événements. DISABLED a été désactivé par vous. AUTO_DISABLED a été désactivé par Palisade après des échecs de livraison répétés et reste désactivé jusqu’à ce que vous le réactiviez, ce qui remet aussi à zéro le nombre d’échecs.

Valeurs possibles : ENABLED, DISABLED, AUTO_DISABLED
secret_reminderstringobligatoire

Les 4 derniers caractères du secret de signature. Le secret complet n’est renvoyé qu’à la création.

api_versionstringobligatoire

Version de l’API à laquelle la forme de la charge utile est fixée, enregistrée à la création du point de terminaison.

consecutive_failuresnumberobligatoire
Min. : 0
disabled_reasonstring, nullableobligatoire
last_success_atstring (date-time), nullableobligatoire
last_failure_atstring (date-time), nullableobligatoire
created_bystringobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
secretstringobligatoire

Le secret de signature, affiché une seule fois. Conservez-le maintenant; il ne pourra pas être récupéré plus tard.

Obtenir un point de terminaison de webhook

GET/webhook-endpoints/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/webhook-endpoints/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200WebhookEndpoint

Succès

Corps de la réponse
idstring (uuid)obligatoire
urlstring (uri)obligatoire
descriptionstring, nullableobligatoire
enabled_eventsarray of string enumobligatoire

Types d’événements que reçoit ce point de terminaison. Un tableau vide signifie tous les événements, y compris ceux ajoutés plus tard — et non aucun.

items
Valeurs possibles : domain.created, domain.updated, domain.deleted, domain.monitoring.activated, domain.monitoring.failed, domain.monitoring.drifted, domain.monitoring.recovered, domain.hosted_record.ready, domain.hosted_record.error, domain.score_changed, domain.policy_changed, mta_sts.enabled, mta_sts.updated, mta_sts.disabled, task.opened, task.completed, task.canceled, task.dismissed, task.reopened, organization.updated, member.added, member.updated, member.removed, invitation.created, invitation.revoked, group.created, group.updated, group.deleted
statusstring enumobligatoire

ENABLED reçoit les événements. DISABLED a été désactivé par vous. AUTO_DISABLED a été désactivé par Palisade après des échecs de livraison répétés et reste désactivé jusqu’à ce que vous le réactiviez, ce qui remet aussi à zéro le nombre d’échecs.

Valeurs possibles : ENABLED, DISABLED, AUTO_DISABLED
secret_reminderstringobligatoire

Les 4 derniers caractères du secret de signature. Le secret complet n’est renvoyé qu’à la création.

api_versionstringobligatoire

Version de l’API à laquelle la forme de la charge utile est fixée, enregistrée à la création du point de terminaison.

consecutive_failuresnumberobligatoire
Min. : 0
disabled_reasonstring, nullableobligatoire
last_success_atstring (date-time), nullableobligatoire
last_failure_atstring (date-time), nullableobligatoire
created_bystringobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Mettre à jour un point de terminaison de webhook

POST/webhook-endpoints/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Corps de la requête

urlstring (uri)
descriptionstring, nullable
Longueur max. : 500
enabled_eventsarray of string enum
items
Valeurs possibles : domain.created, domain.updated, domain.deleted, domain.monitoring.activated, domain.monitoring.failed, domain.monitoring.drifted, domain.monitoring.recovered, domain.hosted_record.ready, domain.hosted_record.error, domain.score_changed, domain.policy_changed, mta_sts.enabled, mta_sts.updated, mta_sts.disabled, task.opened, task.completed, task.canceled, task.dismissed, task.reopened, organization.updated, member.added, member.updated, member.removed, invitation.created, invitation.revoked, group.created, group.updated, group.deleted
statusstring enum
Valeurs possibles : ENABLED, DISABLED

Exemple de requête

curl -X POST "https://api.palisade.email/webhook-endpoints/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "https://example.com",
  "description": "string",
  "enabled_events": [
    "domain.created"
  ],
  "status": "ENABLED"
}'

Réponses

200WebhookEndpoint

Succès

Corps de la réponse
idstring (uuid)obligatoire
urlstring (uri)obligatoire
descriptionstring, nullableobligatoire
enabled_eventsarray of string enumobligatoire

Types d’événements que reçoit ce point de terminaison. Un tableau vide signifie tous les événements, y compris ceux ajoutés plus tard — et non aucun.

items
Valeurs possibles : domain.created, domain.updated, domain.deleted, domain.monitoring.activated, domain.monitoring.failed, domain.monitoring.drifted, domain.monitoring.recovered, domain.hosted_record.ready, domain.hosted_record.error, domain.score_changed, domain.policy_changed, mta_sts.enabled, mta_sts.updated, mta_sts.disabled, task.opened, task.completed, task.canceled, task.dismissed, task.reopened, organization.updated, member.added, member.updated, member.removed, invitation.created, invitation.revoked, group.created, group.updated, group.deleted
statusstring enumobligatoire

ENABLED reçoit les événements. DISABLED a été désactivé par vous. AUTO_DISABLED a été désactivé par Palisade après des échecs de livraison répétés et reste désactivé jusqu’à ce que vous le réactiviez, ce qui remet aussi à zéro le nombre d’échecs.

Valeurs possibles : ENABLED, DISABLED, AUTO_DISABLED
secret_reminderstringobligatoire

Les 4 derniers caractères du secret de signature. Le secret complet n’est renvoyé qu’à la création.

api_versionstringobligatoire

Version de l’API à laquelle la forme de la charge utile est fixée, enregistrée à la création du point de terminaison.

consecutive_failuresnumberobligatoire
Min. : 0
disabled_reasonstring, nullableobligatoire
last_success_atstring (date-time), nullableobligatoire
last_failure_atstring (date-time), nullableobligatoire
created_bystringobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire

Supprimer un point de terminaison de webhook

DELETE/webhook-endpoints/{id}authentification requise

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X DELETE "https://api.palisade.email/webhook-endpoints/<id>" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Supprimé

Corps de la réponse
deletedbooleanobligatoire
objectstringobligatoire
idstring (uuid)obligatoire

Renouveler le secret de signature

POST/webhook-endpoints/{id}/rotate-secretauthentification requise

Émet un nouveau secret de signature et le renvoie une seule fois. L’ancien secret cesse immédiatement d’être valide; les livraisons signées avec lui échoueront donc à la vérification.

Paramètres de chemin

idstring (uuid)obligatoire

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl -X POST "https://api.palisade.email/webhook-endpoints/<id>/rotate-secret" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200WebhookEndpointWithSecret

Succès

Corps de la réponse
idstring (uuid)obligatoire
urlstring (uri)obligatoire
descriptionstring, nullableobligatoire
enabled_eventsarray of string enumobligatoire

Types d’événements que reçoit ce point de terminaison. Un tableau vide signifie tous les événements, y compris ceux ajoutés plus tard — et non aucun.

items
Valeurs possibles : domain.created, domain.updated, domain.deleted, domain.monitoring.activated, domain.monitoring.failed, domain.monitoring.drifted, domain.monitoring.recovered, domain.hosted_record.ready, domain.hosted_record.error, domain.score_changed, domain.policy_changed, mta_sts.enabled, mta_sts.updated, mta_sts.disabled, task.opened, task.completed, task.canceled, task.dismissed, task.reopened, organization.updated, member.added, member.updated, member.removed, invitation.created, invitation.revoked, group.created, group.updated, group.deleted
statusstring enumobligatoire

ENABLED reçoit les événements. DISABLED a été désactivé par vous. AUTO_DISABLED a été désactivé par Palisade après des échecs de livraison répétés et reste désactivé jusqu’à ce que vous le réactiviez, ce qui remet aussi à zéro le nombre d’échecs.

Valeurs possibles : ENABLED, DISABLED, AUTO_DISABLED
secret_reminderstringobligatoire

Les 4 derniers caractères du secret de signature. Le secret complet n’est renvoyé qu’à la création.

api_versionstringobligatoire

Version de l’API à laquelle la forme de la charge utile est fixée, enregistrée à la création du point de terminaison.

consecutive_failuresnumberobligatoire
Min. : 0
disabled_reasonstring, nullableobligatoire
last_success_atstring (date-time), nullableobligatoire
last_failure_atstring (date-time), nullableobligatoire
created_bystringobligatoire
created_atstring (date-time)obligatoire
updated_atstring (date-time)obligatoire
secretstringobligatoire

Le secret de signature, affiché une seule fois. Conservez-le maintenant; il ne pourra pas être récupéré plus tard.

Lister les livraisons de webhooks

GET/webhook-endpoints/{id}/deliveriesauthentification requise

Paramètres de chemin

idstring (uuid)obligatoire

Paramètres de requête

pagenumber
per_pagenumber
statusstring enum
Valeurs possibles : PENDING, SUCCEEDED, FAILED

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/webhook-endpoints/<id>/deliveries" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of WebhookDeliveryobligatoire
WebhookDelivery
idstring (uuid)obligatoire
event_idstringobligatoire
event_typestring enumobligatoire
Valeurs possibles : domain.created, domain.updated, domain.deleted, domain.monitoring.activated, domain.monitoring.failed, domain.monitoring.drifted, domain.monitoring.recovered, domain.hosted_record.ready, domain.hosted_record.error, domain.score_changed, domain.policy_changed, mta_sts.enabled, mta_sts.updated, mta_sts.disabled, task.opened, task.completed, task.canceled, task.dismissed, task.reopened, organization.updated, member.added, member.updated, member.removed, invitation.created, invitation.revoked, group.created, group.updated, group.deleted
statusstring enumobligatoire
Valeurs possibles : PENDING, SUCCEEDED, FAILED
attemptsnumberobligatoire
Min. : 0
response_statusnumber, nullableobligatoire
error_messagestring, nullableobligatoire
delivered_atstring (date-time), nullableobligatoire
created_atstring (date-time)obligatoire
page_infoobjectobligatoire
properties
countnumberobligatoire
pagenumberobligatoire
per_pagenumberobligatoire

Lister les types d’événements de webhook

GET/webhook-eventsauthentification requise

Le catalogue des types d’événements auxquels un point de terminaison peut s’abonner.

En-têtes

Palisade-VersionApiVersionobligatoire
Valeurs possibles : 2025-04-30, unstable

Exemple de requête

curl "https://api.palisade.email/webhook-events" \
  -u "$PALISADE_API_KEY:" \
  -H "Palisade-Version: 2025-04-30"

Réponses

200object

Succès

Corps de la réponse
dataarray of WebhookEventDescriptorobligatoire
WebhookEventDescriptor
typestring enumobligatoire
Valeurs possibles : domain.created, domain.updated, domain.deleted, domain.monitoring.activated, domain.monitoring.failed, domain.monitoring.drifted, domain.monitoring.recovered, domain.hosted_record.ready, domain.hosted_record.error, domain.score_changed, domain.policy_changed, mta_sts.enabled, mta_sts.updated, mta_sts.disabled, task.opened, task.completed, task.canceled, task.dismissed, task.reopened, organization.updated, member.added, member.updated, member.removed, invitation.created, invitation.revoked, group.created, group.updated, group.deleted
descriptionstringobligatoire
payload_typestringobligatoire