Utilisez l’API de recherche d’événements de Sekoia.io en trois étapes. Créez un travail de recherche (POST /v1/sic/conf/events/search/jobs) avec une requête et une fenêtre temporelle, attendez que le travail soit terminé, puis lisez ses événements par pages allant jusqu’à 1 000. Le Exporter les événements bouton sur la page Événements fonctionne aussi, mais il s’arrête à 500 événements. Pour de grands volumes, Sekoia propose une API d’exportation massive et son propre outil sekoia-event-exporter.
Sekoia.io est une plateforme SOC européenne, et son magasin d’événements est souvent le premier endroit que ses utilisateurs consultent lors d’une enquête. Prime Core a 23 983 règles de détection, mappées sur 676 techniques MITRE ATT&CK. Voici comment obtenir des événements, les assainir et les investiguer gratuitement dans LogTotal.
Avant de commencer
Une clé API. Créez-en une dans Sekoia.io avec la permission de rechercher des événements. Lire-seulement est suffisant pour la recherche ; l’exportation massive nécessite l’autorisation SIC_MASSIVE_EXPORT_EVENTS.
L’hôte API de votre région. La valeur par défaut est https://api.sekoia.io. D’autres régions ont leurs propres hôtes, par exemple https://api.usa1.sekoia.io.
Langage de requête. L’API accepte les mêmes requêtes que la page Événements. Les exemples ci-dessous utilisent la syntaxe classique ‘dork’ (term_lang : dork). Construisez et testez la requête dans l’UI d’abord.
Exporter avec l’API de recherche d’événements
API="https://api.sekoia.io/v1"
H="Authorization: Bearer $SEKOIA_API_KEY"
# 1. créer le travail de recherche
JOB=$(curl -sS -X POST "$API/sic/conf/events/search/jobs" -H "$H" -H 'Content-Type: application/json'
-d '{"term": "host.name:"web-03"", "earliest_time": "2026-10-19T00:00:00Z", "latest_time": "2026-10-20T00:00:00Z", "term_lang": "dork"}'
| jq -r '.uuid')
# 2. attendez jusqu'à ce que le travail soit terminé (statut 2)
until [ "$(curl -sS -H "$H" "$API/sic/conf/events/search/jobs/$JOB" | jq -r '.status')" = "2" ]; do sleep 3; done
# 3. lisez les événements, 1 000 à la fois
TOTAL=$(curl -sS -H "$H" "$API/sic/conf/events/search/jobs/$JOB" | jq '.total')
for ((off=0; off<TOTAL; off+=1000)); do
curl -sS -H "$H" "$API/sic/conf/events/search/jobs/$JOB/events?limit=1000&offset=$off" | jq -c '.items[]'
done > sekoia_web03_1019.jsonl
Les événements reviennent en commençant par les plus récents. Un travail qui échoue ne parvient jamais au statut 2, donc ajoutez un délai d’attente si vous le script pour une utilisation régulière.
Pour les grands exports, commencez l’exportation massive sur un travail terminé (POST /v1/sic/conf/events/search/jobs/<uuid>/export), attendez la tâche, puis récupérez le lien de téléchargement. Le package sekoia-event-exporter sur PyPI enveloppe ce flux de travail.
Téléchargez, assainissez et révisez dans LogTotal
- Téléchargez. Ouvrez logtotal.com et déposez le fichier.
- Assainissez.
- Révisez.
Quand ça ne fonctionne pas
| Symptôme | Cause probable | Fix |
|---|---|---|
| L’exportation UI s’arrête à 500 événements | Limite d’exportation UI | Utilisez l’API, ou l’exportation massive |
| 401 ou 403 | Clé manquante, ou sans permission de recherche | Vérifiez le rôle de la clé |
| Erreurs avec une clé valide | Mauvais hôte régional | Utilisez l’hôte API de votre région |
| La boucle d’attente ne se termine jamais | Le travail a échoué ou a été annulé | Vérifiez le statut du travail ; affinez la requête |
| Seulement les événements les plus récents | Pagination par décalage non suivie | Parcourez avec décalage jusqu’au total |
FAQ
Dork ou Sekoia Operating Language ?
Les deux existent. Les exemples d’API dans le guide de démarrage rapide de Sekoia utilisent dork ; vérifiez quels langages de requête votre clé API et point d’accès acceptent.
Puis-je exporter les événements derrière une alerte ?
Oui : lancez une recherche d’événements avec des filtres pour l’alerte, puis exportez comme ci-dessus.