Aller au contenu

Référence API

Identifiants d’expéditeur

Les noms et numéros depuis lesquels votre compte peut envoyer.

Vérifiez is_sendable, jamais status

Lister les identifiants d’expéditeur

GET/public/v1/sender-ids

Renvoie tous les expéditeurs enregistrés sur le compte, triés par valeur, en indiquant lesquels sont actuellement utilisables.

Portée requise SENDER_IDS_READ

Requête

curl https://api.smsend.net/public/v1/sender-ids \
  -H "Authorization: Bearer $SMSEND_API_KEY"
<?php

$senderIds = Http::withToken(getenv('SMSEND_API_KEY'))
    ->get('https://api.smsend.net/public/v1/sender-ids')
    ->json('data.sender_ids');

// Check is_sendable, not status: an approved sender that is not yet
// registered with an operator cannot carry traffic.
$usable = array_filter($senderIds, fn (array $sender) => $sender['is_sendable']);
const response = await fetch('https://api.smsend.net/public/v1/sender-ids', {
  headers: { Authorization: `Bearer ${process.env.SMSEND_API_KEY}` },
})

const { data } = await response.json()

// Check is_sendable, not status: an approved sender that is not yet
// registered with an operator cannot carry traffic.
const usable = data.sender_ids.filter((sender) => sender.is_sendable)
import os
import requests

sender_ids = requests.get(
    "https://api.smsend.net/public/v1/sender-ids",
    headers={"Authorization": f"Bearer {os.environ['SMSEND_API_KEY']}"},
).json()["data"]["sender_ids"]

# Check is_sendable, not status: an approved sender that is not yet
# registered with an operator cannot carry traffic.
usable = [sender for sender in sender_ids if sender["is_sendable"]]

Réponses

200Les identifiants d’expéditeur du compte.
{
  "data": {
    "sender_ids": [
      {
        "sender_id": "01K3F6ABCDEFGHJKMNPQRSTVWX",
        "value": "PRESTIGE",
        "type": "ALPHANUMERIC",
        "status": "APPROVED",
        "is_sendable": true,
        "reason": null
      },
      {
        "sender_id": "01K3F6ABCDEFGHJKMNPQRSTVWY",
        "value": "MABANQUE",
        "type": "ALPHANUMERIC",
        "status": "APPROVED",
        "is_sendable": false,
        "reason": null
      },
      {
        "sender_id": "01K3F6ABCDEFGHJKMNPQRSTVWZ",
        "value": "+22625000000",
        "type": "NUMERIC",
        "status": "REJECTED",
        "is_sendable": false,
        "reason": "Le justificatif de propriété de la marque est manquant."
      }
    ]
  }
}

Erreurs possibles

CodeStatutSignification
UNAUTHORIZED401Aucune clé, une clé malformée, un mauvais secret, une clé révoquée ou expirée, ou un compte suspendu. Tous indiscernables par construction.
INSUFFICIENT_SCOPE403La clé est valide mais ne porte pas la portée exigée par ce point de terminaison. La portée est nommée dans le detail.
RATE_LIMITED429La limite de requêtes de la clé a été dépassée. Attendez l’intervalle indiqué dans Retry-After.
INTERNAL_ERROR500Une défaillance inattendue du côté de SMSend. Citez l’identifiant de requête à l’assistance.

Statuts

ValeurSignification
PENDING
Soumis et en attente d’examen.
APPROVED
Approuvé par SMSend. Doit encore être enregistré auprès d’un opérateur avant de pouvoir envoyer.
REJECTED
Refusé lors de l’examen. Le champ reason explique pourquoi.
REVOKED
Retiré après avoir été approuvé.

Types

Le type est déduit de la valeur plutôt que déclaré lors de l’enregistrement de l’expéditeur.

ValeurSignification
ALPHANUMERIC
Contient des caractères non numériques — un nom de marque comme PRESTIGE. Les destinataires ne peuvent pas y répondre.
NUMERIC
Un numéro long, de huit chiffres ou plus. Peut recevoir des réponses.
SHORT_CODE
Un numéro court, de moins de huit chiffres.