Avant de commencer
Vous avez besoin des éléments suivants :- l’autorisation de gérer les intégrations et les clés d’accès dans Living Security
- un expéditeur côté serveur capable d’effectuer des requêtes HTTPS
POST - la région Living Security de votre organisation
- un nom de source stable et au moins un nom de flux
1. Enregistrer la source et les flux
1
Ouvrir Custom Push Source
Accédez à Paramètres → Intégrations → Catalogue, repérez Custom Push Source, puis sélectionnez Ajouter.
2
Nommer la source
Saisissez la clé de routage de la source et une description facultative. Utilisez par exemple
custom-phishing-sim plutôt qu’un nom d’affichage contenant des espaces.3
Ajouter des flux
Ajoutez chaque flux que l’expéditeur utilisera. Le couple source et flux doit exister avant le premier envoi; un couple inconnu renvoie
404 Not Found.4
Enregistrer la source
Après la création, ouvrez la source sous Paramètres → Intégrations → Connecté. Sa vue Push via API affiche le modèle de point de terminaison et les exécutions récentes.
2. Créer une clé d’ingestion Push
Accédez à Paramètres → Access Keys, sélectionnez Create Access Key, puis choisissez la portée Push Ingest. Copiez immédiatement la valeur générée; elle n’est affichée qu’une seule fois. La clé est liée à une seule organisation Living Security. La requête d’envoi n’a pas besoin d’un en-tête d’organisation. Consultez Clés d’accès API pour la rotation et la révocation.3. Choisir le point de terminaison régional
Utilisez le nom d’hôte correspondant à l’organisation Living Security :
Ajoutez
/push-ingest/{integrationKey}/{streamName}. Le chemin est sensible à la casse et doit correspondre exactement à la source et au flux enregistrés.
string
requis
Le nom de la source enregistrée. Utilisez de 1 à 64 lettres minuscules, chiffres ou traits d’union, en commençant par une lettre ou un chiffre.
string
requis
Le nom du flux enregistré. Les mêmes règles s’appliquent, et les traits de soulignement sont également autorisés.
string
requis
Envoyez la clé d’accès d’ingestion Push sous la forme
Bearer <access-key>.string
Utilisez
application/json pour le JSON ou text/csv pour le CSV. Le serveur peut également détecter un tableau JSON lorsque cet en-tête est omis.string
UUID d’organisation facultatif. La clé d’accès détermine déjà l’organisation. Si vous envoyez cet en-tête, il doit correspondre à l’organisation de la clé; il ne permet pas de sélectionner une autre organisation.
Corps de la requête
Envoyez un tableau JSON non vide d’objets au niveau supérieur, ou les octets d’un fichier CSV avec une ligne d’en-tête. Il n’existe aucun champ d’enveloppe JSON nommé. Chaque lot peut contenir jusqu’à 10,000 enregistrements et 10 MB.4. Envoyer un lot JSON
Envoyez un tableau JSON non vide dont les éléments sont des objets.Content-Type: application/json est recommandé et exigé par de nombreux produits expéditeurs, même si Living Security peut détecter un corps de type tableau sans cet en-tête.
202 Accepted. L’onglet d’erreur affiche un 400 Bad Request lorsque le corps JSON est mal formé :
400, corrigez le JSON ou envoyez un CSV avec Content-Type: text/csv, puis réessayez.
string
requis
L’ID d’exécution de ce lot accepté. Conservez-le pour vérifier l’état du traitement.
number
requis
Le nombre d’enregistrements acceptés et stockés.
string
requis
Le nom de la source utilisée pour cet envoi.
string
requis
Le nom du flux utilisé pour cet envoi.
Envoyer un CSV à la place
DéfinissezContent-Type: text/csv et envoyez les octets du fichier, comme illustré dans l’exemple de requête CSV file ci-dessus. La première ligne fournit les noms de champs.
Le texte booléen devient un booléen et le texte numérique ordinaire devient un nombre. Les valeurs commençant par un zéro, les grands entiers non sûrs, les dates et les autres textes demeurent des chaînes. Une cellule vide omet ce champ. Les lignes mal formées, les guillemets non équilibrés et les fichiers UTF-16 sont rejetés.
Limites des requêtes et nouvelles tentatives
Divisez les exportations plus volumineuses en lots respectant les deux limites. Attendez chaque réponse et conservez le
runId renvoyé dans les journaux de l’expéditeur.
La limite normale d’une organisation authentifiée renvoie
503, et non 429, de sorte que les expéditeurs de webhooks la traitent comme pouvant être réessayée. Un 503 est renvoyé avant que le lot ne soit stocké; renvoyer ce même lot après l’intervalle indiqué ne duplique pas une exécution acceptée.
Vérifier le flux de données
Ouvrez la source Custom Push Source et consultez Push History. Confirmez le flux, le nombre d’enregistrements, l’attribution de la clé et l’état du traitement. Les données associées à un interpréteur maintenu peuvent ensuite devenir des personnes et une activité normalisée. Les données sans interpréteur demeurent stockées, mais ne produisent aucune activité.Utilisez les noms de champs exacts et la structure de charge utile du guide propre au fournisseur lorsqu’il en existe un. Un
202 réussi prouve la livraison, et non qu’un schéma arbitraire correspond à l’activité de Living Security.Liste de vérification de dépannage
- Copiez le point de terminaison à partir de la bonne source et remplacez l’espace réservé du flux.
- Envoyez la clé d’accès sous la forme
Authorization: Bearer …;x-api-keyn’est pas accepté. - Confirmez que le corps est un tableau JSON de niveau supérieur, et non un objet unique ni une enveloppe autour des enregistrements.
- Confirmez l’orthographe de la source et du flux, y compris les traits d’union, les traits de soulignement et la casse.
- Consultez Push History avant de renvoyer un lot dont la réponse a été perdue.
- Lorsque vous communiquez avec le soutien de Living Security, indiquez l’organisation, la source, le flux, l’heure de la requête, le
runIdlorsqu’il est disponible et l’état de la réponse. N’incluez ni la clé d’accès ni la charge utile des événements.
Voir aussi
Zscaler ZIA Cloud NSS
Configurez un flux de journaux Web Zscaler pris en charge avec la source, le flux, les en-têtes et la structure JSON exacts.
Clés d'accès API
Créez, renouvelez et révoquez des identifiants à portée limitée.
Sources de données des Signaux
Découvrez comment l’activité interprétée des intégrations alimente les signaux.

