Développeurs
API DataCheck
API OSINT DataCheck — recherche multi-critères, lookup rapide, clé dc_….
Base URL https://www.data-check.xyz/api/v1
Introduction
L’API publique DataCheck expose la même recherche que le site. Tu authentifies chaque requête avec ta clé personnelle (générée dans l’onglet API une fois connecté).
POST /api/v1/search— recherche multi-critèresGET /api/v1/lookup/:type/:id— lookup directGET /api/v1/me— infos clé / quota
Authentification
Passe ta clé dans l’en-tête X-API-Key (ou Authorization: Bearer dc_…).
X-API-Key: dc_xxxxxxxx
Génère ou régénère ta clé depuis le site → API. Ne la partage jamais côté frontend public.
Quotas
| Plan | Requêtes API / jour |
|---|---|
| Free | 5 |
| Pro | 200 |
| Owner / illimité | ∞ |
La pagination (page > 1) ne re-débite pas un crédit sur la même recherche. Les headers X-Key-Remaining-* indiquent le restant quand disponible.
POST /api/v1/search
Recherche multi-critères. Envoie un JSON avec un ou plusieurs champs. Les champs vides sont ignorés.
POST /api/v1/search
Content-Type: application/json
X-API-Key: dc_…
{
"prenom": "Jean",
"nom_famille": "Dupont",
"ville": "Paris",
"page": 1,
"per_page": 10
}
Pagination
| Champ | Type | Description |
|---|---|---|
page | number | Page (défaut 1) |
per_page / pageSize / limit | number | Taille de page (défaut ~10) |
flexible | boolean | true = recherche approximative (fuzzy) |
Critères de recherche (DataCheck)
Tous les champs acceptés dans le body de POST /search :
Identifiants
| Champ | Exemple | Description |
|---|---|---|
email | john@example.com | Adresse email |
telephone | +33612345678 | Téléphone (E.164 recommandé) |
nom_utilisateur | john_doe | Username / pseudo |
adresse_ip | 192.168.1.1 | Adresse IP |
discord_id | 12345678901234567 | Snowflake Discord |
discord_pseudo | Jean#0001 | Pseudo Discord |
hash | 5f4dcc3b5aa7… | Hash (md5/sha…) |
recherche | texte libre | Recherche générique |
Identité
| Champ | Exemple | Description |
|---|---|---|
prenom | Jean | Prénom |
nom_famille | Dupont | Nom de famille |
nom_naissance | Martin | Nom de naissance (RAW) |
nom_affichage | JeanD123 | Nom d’affichage (RAW) |
date_naissance | 15/06/1990 | Date de naissance |
annee_naissance | 1990 | Année de naissance |
Localisation
| Champ | Exemple | Description |
|---|---|---|
adresse | 12 rue de Rivoli | Adresse postale |
ville | Paris | Ville |
code_postal | 75001 | Code postal |
pays | France | Pays |
ville_naissance | Lyon | Ville de naissance |
pays_naissance | France | Pays de naissance |
Sensible / finance / gaming
| Champ | Exemple | Description |
|---|---|---|
nir | 1 90 06 75 … | NIR / SSN |
iban | FR76 3000 … | IBAN (RAW) |
numero_serie | VF1XXXX… | VIN / n° de série |
steam_id | steam:110000… | Steam ID |
fivem_license | license:abc… | FiveM license |
fivem_license2 | license2:def… | FiveM license2 |
xbox_live_id | xbl:2535… | Xbox Live |
live_id | live:8444… | Live ID |
immatriculation | AB-123-CD | Plaque d’immatriculation |
siren | 123456789 | SIREN / entreprise |
Famille / foyer (optionnel)
| Champ | Exemple | Description |
|---|---|---|
family_nom | Dupont | Nom pour liaison foyer |
family_prenom | Jean | Prénom foyer |
family_ville | Paris | Ville foyer |
GET /api/v1/lookup/:type/:id
Lookup direct sur une valeur unique.
GET /api/v1/lookup/email/john@example.com X-API-Key: dc_…
| type | id |
|---|---|
email | adresse email |
phone | numéro |
iban | IBAN |
discord | Discord ID |
fivem | license FiveM |
GET /api/v1/me
Retourne les infos de la clé (plan, quotas restants).
GET /api/v1/me X-API-Key: dc_…
Dépôts de fichiers
Les utilisateurs connectés peuvent envoyer des fichiers (txt, csv, json, sql…). L’owner valide ou refuse dans le panneau API. Les fichiers acceptés sont automatiquement inclus dans POST /search (API DataCheck + index local).
POST /api/uploads/init— initialise un dépôt (session cookie, body JSON : filename, size, note)POST /api/uploads/:id/chunks/:index— envoie un morceauapplication/octet-stream(512 Ko recommandé)POST /api/uploads/:id/complete— assemble et soumet le fichier sans limite de taille artificielleGET /api/uploads/mine— mes dépôtsGET /api/owner/uploads— liste owner (?status=pending|accepted|rejected)POST /api/owner/uploads/:id/review—{"accept":true|false}
Taille max ~450 Ko. Sur Vercel, configure UPSTASH_REDIS_REST_URL + UPSTASH_REDIS_REST_TOKEN pour persister les fichiers.
Erreurs courantes
| HTTP | error | Signification |
|---|---|---|
| 401 | api_key_missing / invalid | Clé absente ou invalide |
| 429 | rate / quota | Trop de requêtes ou quota journalier |
| 500 | proxy_error | Erreur upstream |
Exemples
curl — email
curl -X POST https://www.data-check.xyz/api/v1/search \
-H "X-API-Key: dc_TON_TOKEN" \
-H "Content-Type: application/json" \
-d '{"email":"john@example.com"}'
curl — nom + prénom + ville
curl -X POST https://www.data-check.xyz/api/v1/search \
-H "X-API-Key: dc_TON_TOKEN" \
-H "Content-Type: application/json" \
-d '{"prenom":"Jean","nom_famille":"Dupont","ville":"Paris","flexible":true}'
JavaScript (fetch)
const res = await fetch('https://www.data-check.xyz/api/v1/search', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'dc_TON_TOKEN'
},
body: JSON.stringify({
telephone: '+33612345678',
page: 1
})
})
const data = await res.json()
Python
import requests
r = requests.post(
'https://www.data-check.xyz/api/v1/search',
headers={'X-API-Key': 'dc_TON_TOKEN'},
json={'iban': 'FR7630006000011234567890189'}
)
print(r.json())