02 51 76 0 34

Accès client :  mot de passe oublié   inscription

       (oubli)
AccueilDéveloppeurs / API › Bash / cURL

Envoyer un SMS en Bash / cURL (API 123-SMS)

Mis à jour le 17 juillet 2026

Sur un serveur Linux, l'envoi d'un SMS tient en une commande curl. Voici le script prêt à l'emploi pour vos crons, vos scripts de sauvegarde et vos chaînes de déploiement.

1Le script complet (bash + curl)

#!/usr/bin/env bash
# =====================================================================
#  Envoi de SMS via l'API 123-SMS.net  (bash + curl)
#  Documentation : https://www.123-sms.net/developpeurs-api.php
#  (c) 123-SMS.net - licence MIT, reutilisation libre
# =====================================================================

# --- Vos identifiants (espace client 123-SMS.net) --------------------
EMAIL="votre-email@exemple.fr"   # e-mail du compte
CLE_API="XXXXXX"                 # cle API : espace client > API

NUMERO="${1:?Usage: $0 <numero> <message>}"
MESSAGE="${2:?Usage: $0 <numero> <message>}"

curl -sS --get "https://www.123-sms.net/http.php" \
  --data-urlencode "email=${EMAIL}" \
  --data-urlencode "pass=${CLE_API}" \
  --data-urlencode "numero=${NUMERO}" \
  --data-urlencode "message=${MESSAGE}"
echo

2Installation et utilisation

  • Téléchargez l'archive ou copiez le code dans envoyer-sms.sh.
  • Renseignez EMAIL et CLE_API, puis chmod +x envoyer-sms.sh.
  • Envoyez : ./envoyer-sms.sh 0612345678 "Sauvegarde terminée".
  • En cron : appelez le script en fin de tâche, ou en cas d'erreur uniquement (&& / ||).
La clé API se génère dans l'espace client, rubrique API › Générer Clé API. Les codes réponse et le retour des accusés de réception par HTTP sont détaillés dans la documentation technique.

Questions fréquentes

Quels sont les prérequis ?

bash et curl, présents par défaut sur toutes les distributions Linux et macOS. Aucune installation supplémentaire.

Comment l'utiliser dans une crontab ?

Exemple : 0 3 * * * /opt/scripts/backup.sh || /opt/scripts/envoyer-sms.sh 0612345678 "ALERTE : backup en echec" — le SMS ne part que si la sauvegarde échoue.

Pourquoi --data-urlencode ?

Pour encoder proprement accents, espaces et caractères spéciaux du message dans l'URL — sans cela, certains messages arriveraient tronqués.

Et avec wget ?

Même appel : wget -qO- avec l'URL complète fonctionne aussi ; curl reste recommandé pour son option --data-urlencode.

Téléchargement

123-sms_bash-curl.zip

Licence MIT — libre et gratuit.

L'essentiel

  • API HTTPS en un appel GET : email, clé API, numéro, message.
  • Code réponse immédiat + accusés de réception par HTTP.
  • Crédits prépayés sans abonnement ni expiration.
  • Adaptations spécifiques développées gratuitement.