/sms-inbox/summaryFaut-il l'ouvrir, tout simplement.
Résumé de la boîte
Messages non lus, nombre de fils concernés, et combien de clients attendent une personne. Compté sur tous vos numéros.
DocsRéférence API
Le côté client de vos numéros : chaque fil sur un numéro qui reçoit les textos, la reprise par une personne, et les campagnes. Un fil apparaît la première fois que quelqu'un vous écrit, il n'y a donc rien à créer. Les réponses partent du numéro auquel le client a écrit, jamais d'un autre des vôtres.
https://api.aethexai.com/api/v1sms_inbox:readsms_inbox:writesms_campaigns:readsms_campaigns:write/sms-inbox/summaryFaut-il l'ouvrir, tout simplement.
Messages non lus, nombre de fils concernés, et combien de clients attendent une personne. Compté sur tous vos numéros.
/sms-inbox/threadsVos clients, les plus récents d'abord.
Un fil par client et par numéro. Filtrable par numéro, par statut ou par mode. « mode=human » est la file qu'une personne doit traiter.
phone_number_iduuidoptionnelUniquement les fils ou les campagnes sur ce numéro à vous.
customerstringoptionnelUniquement les fils avec ce client, au format E.164 avec l'indicatif et le signe plus. Les espaces et la ponctuation sont ignorés. Un format national, un plus manquant ou une valeur vide renvoie 422 plutôt qu'une liste vide. Plusieurs fils peuvent revenir — un par numéro à vous sur lequel le client a échangé des messages — le plus récent d'abord.
statusstringoptionnelopen, closed ou opted_out.
modestringoptionnelagent ou human. « human » est la file qu'une personne doit traiter.
offsetintegeroptionnelCombien de lignes ignorer. 0 par défaut.
limitintegeroptionnelCombien de lignes renvoyer. 50 par défaut, 200 au maximum.
/sms-inbox/threads/:thread_idL'état d'un client sur un de vos numéros.
Statut, mode, compteur de non-lus, et la date du dernier message reçu. Le contenu des messages est sur la chronologie ci-dessous.
Aucun fil avec cet identifiant sur votre compte.
Vérifiez l'identifiant, ou listez les fils pour le retrouver.
/sms-inbox/threads/:thread_id/messagesTout ce qui a été dit, du plus récent au plus ancien.
Tous les échanges de ce client sur ce numéro, à travers toutes ses conversations. L'agent en ouvre une nouvelle après une longue interruption, et la chronologie couvre l'interruption. « author » vaut « agent », « system », ou l'opérateur qui a écrit. « delivery_status » vaut « failed » quand le carrier a refusé une réponse. Un message et la réponse écrite avec lui partagent le même « created_at » ; à horodatage égal, l'ordre de la liste fait foi, et la réponse vient donc en premier.
offsetintegeroptionnelCombien de lignes ignorer. 0 par défaut.
limitintegeroptionnelCombien de lignes renvoyer. 50 par défaut, 200 au maximum.
/sms-inbox/threads/:thread_id/readRemettre son compteur à zéro.
Met le compteur de non-lus à zéro et horodate la lecture. Ne change pas qui répond.
/sms-inbox/threads/:thread_id/modeBasculer entre l'agent et un humain.
Tant qu'un fil est en « human », l'agent cesse de répondre, et les messages du client sont toujours enregistrés et comptés. Remettez « agent » quand c'est terminé. Un client qui demande une personne actionne lui-même cet interrupteur.
modestringrequis« agent » ou « human ».
reasonstringoptionnelPourquoi le fil a été repris. Affiché dans le fil.
assigned_tostringoptionnelÀ qui il appartient maintenant. Texte libre : un e-mail, un nom.
« mode » n'était ni « agent » ni « human ».
Envoyez l'une des deux valeurs.
/sms-inbox/threads/:thread_idDe la gestion, pas du routage.
Clôturer relève de la gestion : le client rouvre le fil en écrivant à nouveau. « opted_out » n'est pas modifiable ici. C'est la décision du client, enregistrée quand il écrit STOP, et levée seulement quand il écrit START.
statusstringoptionnel« open » ou « closed ».
assigned_tostringoptionnelÀ qui appartient le fil. Envoyez null pour désattribuer.
Ce client s'est désinscrit, le fil ne peut donc pas être rouvert ici.
Rien à faire. Le fil se rouvre quand il écrit START.
/sms-inbox/threads/:thread_id/messagesEnvoyer un message vous-même, depuis le numéro auquel il a écrit.
Accepté pour livraison et inscrit dans le fil à votre nom. Ne bascule pas le fil en mode humain : dites une chose et laissez l'agent tourner, ou reprenez le fil d'abord avec le point de terminaison de mode. recorded: false signifie que le message est parti et que le client l'a reçu, mais que l'entrée n'a pas pu être écrite dans le fil ; message_id et conversation_id sont alors absents. Ce n'est jamais une raison de renvoyer.
bodystringrequisLe texte à envoyer, tel quel. Jusqu'à 1600 caractères.
Ce client s'est désinscrit de vos messages sur tous vos numéros.
Rien ne peut être envoyé jusqu'à ce qu'il écrive START. Joignez-le autrement.
« body » était vide.
Envoyez du texte.
/sms-campaignsUn message pour une liste, cadencé, rien d'envoyé encore.
Créée en brouillon, ou « scheduled » si vous passez « scheduled_at ». Rien ne part avant le démarrage ou l'heure prévue. Tout ce qui peut être refusé l'est ici plutôt qu'un destinataire à la fois : une valeur manquante sur une ligne, un message trop long une fois rempli, un numéro incapable d'envoyer. Les destinataires désinscrits sont marqués « skipped » avant le départ, et revérifiés avant chaque envoi.
phone_number_iduuidrequisLe numéro d'où elle part. Il doit recevoir les textos (sms_inbound), pour qu'un STOP d'un destinataire atteigne quelqu'un.
namestringrequisCe à quoi vous la reconnaîtrez.
bodystringrequisLe message, avec des trous « {nom_en_minuscules} » remplis par destinataire. Jusqu'à 480 caractères une fois rempli.
recipientsarrayrequisJusqu'à 50 000 lignes « {to, values} ». « to » est en E.164 avec le plus ; espaces et tirets sont tolérés. Un numéro répété est conservé une seule fois.
rate_per_minuteintegeroptionnelMessages par minute, de 1 à 600. 60 par défaut.
scheduled_atstringoptionnelQuand démarrer. Laissez vide pour créer un brouillon et le démarrer à la main.
acknowledge_no_repliesbooleanoptionnelLancer la campagne même si ce numéro ne reçoit pas les textos. Un destinataire qui répond STOP n'atteindrait personne, et sur les marchés où l'opérateur ne filtre pas le STOP à votre place, sa demande n'atteint personne du tout. Ce choix est enregistré sur la campagne.
webhook_urlstringoptionnelURL HTTPS qui reçoit un sms.campaign.paused signé si le worker arrête cette campagne de lui-même : numéro devenu inactif, compte expéditeur refusé par l'opérateur, cinq refus identiques d'affilée, compte sans crédit. Une pause que vous demandez n'est pas signalée. Nécessite le secret webhook de votre compte. Laissée vide, personne n'est prévenu.
Le numéro ne reçoit pas les messages texte.
Activez sms_inbound dessus, ou envoyez acknowledge_no_replies=true.
L'opérateur indique que ce numéro ne peut pas porter de messages texte, ou il est sur un compte partagé.
Utilisez un numéro SMS-capable sur votre propre compte. acknowledge_no_replies ne lève pas ce refus.
Une ligne n'a pas de valeur pour un trou du message, n'est pas en E.164, ou dépasse la longueur une fois rendue.
L'erreur nomme la ligne. Corrigez-la et renvoyez la liste.
/sms-campaignsCe qui a tourné et ce qui tourne.
Les plus récentes d'abord, avec les compteurs : envoyés, échoués, sautés. « skipped » désigne quelqu'un délibérément non contacté, presque toujours une désinscription.
phone_number_iduuidoptionnelUniquement les fils ou les campagnes sur ce numéro à vous.
statusstringoptionneldraft, scheduled, running, paused, completed, cancelled ou failed.
offsetintegeroptionnelCombien de lignes ignorer. 0 par défaut.
limitintegeroptionnelCombien de lignes renvoyer. 50 par défaut, 200 au maximum.
/sms-campaigns/:campaign_idSon état et ses compteurs.
« replies_acknowledged_at » est renseigné quand la campagne a été autorisée à partir d'un numéro qui n'accepte pas de réponses, et indique quand ce choix a été fait.
Aucune campagne avec cet identifiant sur votre compte.
Vérifiez l'identifiant.
/sms-campaigns/:campaign_id/recipientsQui a été joint, qui ne l'a pas été, et pourquoi.
La liste sur laquelle une campagne se juge. « pending » n'a pas été tenté, « sending » est en vol, « sent » est parti chez l'opérateur, « failed » porte le verdict de l'opérateur, et « skipped » n'a délibérément pas été contacté.
statusstringoptionnelpending, sending, sent, failed ou skipped.
offsetintegeroptionnelCombien de lignes ignorer. 0 par défaut.
limitintegeroptionnelCombien de lignes renvoyer. 50 par défaut, 200 au maximum.
/sms-campaigns/:campaign_id/startCommencer à envoyer, dans la minute.
Efface toute heure planifiée, car demander à démarrer c'est demander à ne plus attendre. Un worker la prend au balayage suivant. Pause et annulation prennent effet au message suivant, pas au lot suivant.
La campagne est terminée, annulée ou en échec.
Créez une nouvelle campagne. Une campagne terminée ne redémarre pas.
/sms-campaigns/:campaign_id/pauseS'arrêter après le message en cours.
Prend effet au message suivant. Redémarrez-la quand vous voulez ; les destinataires déjà joints ne le sont pas deux fois.
La campagne n'est ni en cours ni planifiée.
Rien à mettre en pause.
/sms-campaigns/:campaign_id/cancelArrêter définitivement.
Ce qui est parti reste parti. Rien d'autre ne sort, et la campagne ne peut plus être démarrée.
La campagne est déjà terminée, annulée ou en échec.
Rien à annuler.