SMS et messages
Retirez vos données d’un SMS
Couverture: Fonctionne avec des messages de tous les pays et dans toutes les langues. Retire les liens, e-mails, IBAN, cartes avec leur CVV et leur date d’expiration, numéros de téléphone, codes de vérification et numéros d’identité : le DNI et le NIE espagnols, la CURP mexicaine, le codice fiscale italien et le National Insurance number britannique. Les numéros d’identité composés uniquement de chiffres sont retirés comme des numéros.
Ouvrir l’outilSur cette page
Objectif
Collez un SMS ou un message et retirez les numéros de carte, IBAN, codes, numéros de téléphone, e-mails, liens et numéros d’identité avant de le transférer ou de le joindre à un signalement.
Prérequis
Tout le monde peut lire ces guides, sans compte. Certains outils nécessitent Pro, comme indiqué dans chaque guide.
Vous allez transférer un SMS suspect, le publier pour prévenir d’autres personnes ou l’envoyer à votre opérateur ? Collez-le ici et nous retirons vos données personnelles. Tout se fait dans votre navigateur : le message n’est ni envoyé ni enregistré.
Mode d’emploi
Message
Retirer mes données
Copier le texte
Exemple fictif
Exemple inventé, pas une recherche réelle. N’appelez pas et n’ouvrez pas ses liens.
Card 4111 1111 1111 1111, call +44 1632 960123Interpréter le résultat
Liens
E-mails
Comptes bancaires (IBAN)
Cartes
Codes CVV
Dates d’expiration
Numéros d’identité
Numéros de téléphone
Codes et numéros
Limites
Les noms et les adresses ne sont pas détectés : si le message en contient, supprimez-les vous-même avant de le partager.
Tout se fait dans votre navigateur : le message n’est jamais envoyé à NoCall ni enregistré.
Résoudre un problème
Collez un message pour en retirer les données.
Le message est trop long : collez 2 000 caractères au maximum.
Utiliser avec l’API
Nécessite une API key et des crédits. Chaque appel abouti coûte 1 crédit, même sans données. Un compte Pro actif inclut 20 crédits par mois calendaire UTC, partagés entre toutes les routes de l’API et consommés en premier ; les crédits mensuels non utilisés ne sont pas reportés. Les crédits achetés sur la page de votre compte fonctionnent sans Pro et n’expirent jamais.
Les erreurs ne sont jamais facturées : 401 invalid_api_key (clé absente ou invalide), 403 pro_required (ni crédits Pro ni crédits achetés), 422 entrée invalide, 429 quota_exceeded (plus de crédits), rate_limit_exceeded ou ai_busy (l’IA de sms-check est à pleine capacité), 503 tool_warming (les données sont encore en préparation) ou tool ou fournisseur indisponible. Après un 429 ou un 503, réessayez une fois écoulées les secondes indiquées dans l’en-tête Retry-After.
Retire les données personnelles d’un message avant qu’il soit partagé : liens, e-mails, IBAN, cartes avec leur CVV et leur date d’expiration, numéros d’identité, numéros de téléphone et codes deviennent des marqueurs, avec un décompte par type. Rien n’est enregistré.
Envoyez le corps JSON à la route propre au tool, ou à POST /v2/tools en ajoutant le champ tool. Les deux routes renvoient le même résultat.
POST https://api.nocall.io/v2/sms-redact
POST https://api.nocall.io/v2/tools {"tool":"sms-redact","message":"BBVA: su tarjeta 4111 1111 1111 1111 ha sido bloqueada. Llame al +34 612 34 56 78 o entre en https://bbva-seguro.com/login"}Paramètres
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
| message | string (1–2000) | Oui | Le message à nettoyer, jusqu’à 2000 caractères ; les sauts de ligne sont conservés. |
REQUEST_ID="$(uuidgen)" && [ -n "$REQUEST_ID" ] &&
curl --request POST 'https://api.nocall.io/v2/sms-redact' \
--header "Authorization: Bearer $NOCALL_API_KEY" \
--header 'Content-Type: application/json' \
--header "Idempotency-Key: $REQUEST_ID" \
--data '{"message":"BBVA: su tarjeta 4111 1111 1111 1111 ha sido bloqueada. Llame al +34 612 34 56 78 o entre en https://bbva-seguro.com/login"}'import json
import os
import urllib.request
import uuid
api_key = os.environ.get('NOCALL_API_KEY')
if not api_key:
raise SystemExit('Set NOCALL_API_KEY')
request = urllib.request.Request(
'https://api.nocall.io/v2/sms-redact',
method='POST',
data=json.dumps({'message': 'BBVA: su tarjeta 4111 1111 1111 1111 ha sido bloqueada. Llame al +34 612 34 56 78 o entre en https://bbva-seguro.com/login'}).encode(),
headers={
'Authorization': 'Bearer ' + api_key,
'Content-Type': 'application/json',
'Idempotency-Key': str(uuid.uuid4()),
},
)
with urllib.request.urlopen(request, timeout=30) as response:
result = json.load(response)
print(result['data']['result'], result['meta']['unitsCharged'])import { randomUUID } from 'node:crypto';
const requestId = randomUUID();
const apiKey = process.env.NOCALL_API_KEY;
if (!apiKey) throw new Error('Set NOCALL_API_KEY');
const response = await fetch('https://api.nocall.io/v2/sms-redact', {
method: 'POST',
headers: {
Authorization: 'Bearer ' + apiKey,
'Content-Type': 'application/json',
'Idempotency-Key': requestId,
},
body: JSON.stringify({ message: 'BBVA: su tarjeta 4111 1111 1111 1111 ha sido bloqueada. Llame al +34 612 34 56 78 o entre en https://bbva-seguro.com/login' }),
});
const result = await response.json();
if (!response.ok) throw new Error(result.error?.code ?? 'request_failed');
console.log(result.data.result, result.meta.unitsCharged);Exemple de réponse (200)
Il s’agit de l’exemple documenté dans la référence de l’API. Les recherches utilisent un numéro fictif ; les agrégats et les réponses de l’IA montrent la structure du résultat, pas des données réelles.
{
"data": {
"tool": "sms-redact",
"result": {
"text": "BBVA: su tarjeta [CARD] ha sido bloqueada. Llame al [PHONE] o entre en [URL]",
"counts": {
"url": 1,
"email": 0,
"iban": 0,
"card": 1,
"cvv": 0,
"expiry": 0,
"id": 0,
"phone": 1,
"code": 0
},
"total": 3
}
},
"meta": {
"requestId": "req_example",
"unitsCharged": 1,
"usage": {
"periodStart": "2026-10-01",
"unitLimit": 20,
"unitsUsed": 3,
"unitsRemaining": 17
}
}
}Champs du résultat (data.result)
| Champ | Type | Description |
|---|---|---|
| text | string | Le message avec chaque occurrence remplacée par son marqueur : [URL], [EMAIL], [IBAN], [CARD], [CVV], [EXPIRY], [ID], [PHONE] ou [CODE]. |
| counts | object | Nombre d’occurrences retirées par type : url, email, iban, card, cvv, expiry, id, phone et code. |
| total | integer | Nombre total d’occurrences retirées. |
Questions fréquentes
Pourquoi retirer mes données avant de transférer un SMS d’arnaque ?
Parce que le message peut contenir votre nom, votre numéro de téléphone, un code ou un lien qui identifie votre compte. Si vous le publiez ou le transférez tel quel, quelqu’un d’autre pourrait les utiliser.
Le lien de l’arnaque est-il aussi retiré ?
Oui : chaque lien est remplacé par [LIEN]. Si vous voulez savoir où il mène, vérifiez-le d’abord avec le vérificateur de liens de NoCall, sans l’ouvrir.
Puis-je utiliser le texte dans un signalement ?
Pour prévenir d’autres personnes ou votre opérateur, oui. Pour porter plainte auprès de la police ou alerter votre banque, gardez aussi le message original complet, avec l’expéditeur, la date et l’heure : c’est la preuve.
