Alles, was Sie über Unterkonten bei Twilio wissen müssen

February 24, 2021
Autor:in:
Prüfer:in:
Liz Moy
Twilion

In diesem Beitrag erfahren Sie, welche Vorteile Unterkonten bieten und wie Sie Nachrichten über diese senden können. Mit Unterkonten können Sie Ihre Nutzung, Ihre Nummern und Ihre Einstellungen voneinander trennen, indem Sie ein Guthaben mit Ihrem Hauptkonto teilen. Auf diese Weise können Sie Ihre Nutzung von Twilio ganz praktisch segmentieren.  

In diesem Beitrag geht es um folgende wichtige Punkte:

  • Technische Voraussetzungen
  • Was sind Unterkonten bei Twilio und warum sollten Sie sie verwenden?
  • Über Unterkonten eine Nachricht senden

 

Technische Voraussetzungen

  • Ein kostenloses Twilio-Konto: Melden Sie sich hier über diesen Link an. Wenn Sie ein Upgrade durchführen, erhalten Sie zusätzlich eine Gutschrift in Höhe von 10 USD.
  • Eine Twilio-Telefonnummer.
  • Eine verifizierte Handynummer (für den Empfang von SMS-Nachrichten).
  • Kenntnis vom Senden von REST API-Anfragen. Hier finden Sie hilfreiche Tipps zum Ausführen von cURL über bash oder zsh. Sie können auch ein Tool wie Postman verwenden.

Was sind Unterkonten bei Twilio und warum sollten Sie sie verwenden?

Unterkonten sind Container, die Ressourcen eines Twilio-Projekts (übergeordnet) trennen. Nehmen wir zum Beispiel das fiktive Unternehmen Owlie Notifications. Owlie Notifications bietet eine SaaS-Plattform über die Kund:innen Anrufe tätigen können. Owlie Notifications hat etwa 50 Kund:innen.

Owlie Notifications bietet zwei Optionen bei der Erstellung einer Twilio-Kontostruktur:

  1. Sie erstellen ein Twilio-Konto, das mit einer eindeutigen Kennung, der Konto-SID, verknüpft ist, der immer der Zusatz „AC“ vorangestellt ist. Immer, wenn Owlie Notifications eine API-Anfrage stellt, wird die Konto-SID für dieses Konto darin verwendet. Die Konto-SID lautet zum Beispiel AC123.
  2. Sie erstellen ein Twilio-Konto (Konto-SID = AC123, übergeordnetes Konto) wie bei Option 1 und ein Unterkonto für jeden ihrer 50 Kund:innen (50 Unterkonten). Jedes der 50 Unterkonten erhält seine eigene eindeutige Konto-SID. Wenn Owlie Notifications also eine API-Anfrage für eine Kundin oder einen Kunden stellt, wird die entsprechende Konto-SID des Unterkontos und nicht die Konto-SID des übergeordneten Kontos verwendet.

Im Folgenden erklären wir, warum die zweite Option die bessere Wahl ist.

Hauptvorteile von Unterkonten

Segmentierung des Abrechnungsprozesses 

Wenn Owlie Notifications sich gegen Unterkonten entscheiden würde, müssten das Unternehmen die gesamte Nutzung für jede einzelne Person im Überblick behalten. Das bedeutet zusätzliche Arbeit und birgt ein hohes Fehlerpotenzial. Da Unterkonten als Container fungieren, können Sie mit der Nutzungs-API von Twilio bestimmte Abrechnungsdaten für ein Unterkonto abrufen. Auf diese Weise ist weniger Geschäftslogik für die Nachverfolgung einzelner Personen erforderlich.

Bereitstellung von Ressourcen

Über Unterkonten können Ressourcen (z. B. Telefonnummern) zu dem jeweiligen Unterkonto hinzugefügt werden. Dabei ist zu beachten, dass die meisten Ressourcen jeweils nur zu einem Unterkonto gehören können. Dies kann schwierig sein, wenn Sie ständig Zahlen zwischen Konten verschieben. Diese Logik kommt beispielsweise zum Tragen, wenn Sie ein Unterkonto schließen, aber die Telefonnummer beibehalten wollen. Bei Twilio können Sie zum Glück Telefonnummern zwischen Konten verschieben.

Bietet Ihnen zusätzliche Kontrolle über mehrere Konten desselben Projekts: Je nach den Bedürfnissen Ihrer Kundschaft können Sie Unterkonten vorübergehend deaktivieren, schließen und wieder aktivieren.

Überlegungen vor der Umstellung auf Unterkonten

Twilio hilft Kund:innen, die über unsere Plattform Nachrichten versenden, bei der Verwaltung von Opt-outs, wenn Endnutzer:innen zum Beispiel „STOPP“ auf eine Nachricht antworten. Twilio verwaltet diese Opt-out-Liste auf Kontoebene.

Antworten Endnutzer:innen „STOPP“ auf eine Telefonnummer, die dann von einem Projekt zu einem Unterkonto mit eindeutiger Konto-SID verschoben wird, kann das Opt-out nicht mehr zugeordnet werden. Wenn Sie sich bisher keinen Überblick über Ihre Opt-outs verschafft haben, fangen Sie jetzt damit an. Nur so können Sie gewährleisten, dass Ihre Abonnenten-Liste aktuell ist.

Über Unterkonten eine Nachricht senden

Sie fragen sich vielleicht: „Was ist, wenn ich noch keine Unterkonten verwende? Wie schwer ist die Umstellung?“

Stellen Sie sich vor, dass Owlie Notifications ein einziges Konto für alle 50 Kund:innen verwendet hat. Einige von ihnen wollen jetzt SMS-Nachrichten senden. Im Folgenden wird erklärt, wie Owlie Notifications jetzt wahrscheinlich vorgehen wird:

Über die REST API für Unterkonten ist eine programmgesteuerte Vorgehensweise möglich. Bei Bedarf können Sie auch die serverseitigen Hilfsbibliotheken verwenden.

Melden Sie sich zunächst bei Ihrer Twilio-Konsole an. Im Dashboard werden Ihre Konto-SID und das Authentifizierungstoken angezeigt, die Ihrem Konto zugewiesen sind:

Konto-SID und Authentifizierungstoken in der Konsole

In den folgenden Beispielen verwenden Sie die Konto-SID und das Authentifizierungstoken für das Twilio-Konto, das Sie gerade erstellt oder kopiert haben. Denken Sie daran, die Platzhalter unten zu ersetzen.

Ein Unterkonto erstellen

Lassen Sie uns mit den Kund:innen von Owlie Notifications (Falcon Flights) fortfahren und ein Unterkonto für sie anlegen.

Anfrage

Führen Sie in Ihrem Terminal oder in der Eingabeaufforderung den folgenden Befehl aus, um die Anfrage zu stellen. Ersetzen Sie die Platzhalterwerte durch die Konto-SID und das Authentifizierungstoken Ihres übergeordneten Kontos.

curl -X POST https://api.twilio.com/2010-04-01/Accounts.json \
--data-urlencode "FriendlyName=FalconFlights
" \
-u <INSERT YOUR PARENT ACCOUNT SID>:<INSERT YOUR PARENT AUTH TOKEN>

Antwort

Nach der Ausführung des Befehls, erhalten Sie eine Antwort wie diese:

{
   "status": "active",
   "date_updated": "Wed, 17 Feb 2021 15:12:01 +0000",
   "auth_token": "ACxxxxx",
   "friendly_name": "FalconFlights",
   "owner_account_sid": "ACxxxx",
   "uri": "/2010-04-01/Accounts/ACxxx.json",
   "sid": "ACxxx
",
   "date_created": "Wed, 17 Feb 2021 15:12:01 +0000",
   "type": "Full",
   "subresource_uris": {
...
   }
}

Diese Antwort enthält einige wichtige Informationen.

Es gibt ein neues Konto namens FalconFlights mit einer eigenen, eindeutigen Konto-SID und einem Authentifizierungstoken.

Die owner_account_sid sollte mit der SID Ihres (übergeordneten) Projektkontos übereinstimmen (Owlie Notifications).

Notieren Sie sich die SID des Unterkontos und das Authentifizierungstoken, da Sie diese später noch verwenden werden.

Eine Telefonnummer übertragen

Etwas weiter oben ging es um die Übertragung einer Telefonnummer. Hier erfahren Sie, wie das geht. Wenn Sie keine Twilio-Telefonnummer haben, können Sie eine erwerben, entweder über die Twilio-Konsole oder die REST API.

Um Ihre Twilio-Telefonnummer von Ihrem übergeordneten Konto auf Ihr Unterkonto zu übertragen, navigieren Sie zum Abschnitt „Active Numbers“ (Aktive Nummern) in der Konsole. Klicken Sie auf eine Nummer, um Konfigurationsoptionen anzuzeigen.

Dort finden Sie die SID Ihrer Telefonnummer (PNxxx).

Telefonnummern-Kennung in Twilio finden

Anfrage

Sie müssen die SID Ihres übergeordneten Kontos in Ihren Headern verwenden, da die Telefonnummer zu dem übergeordneten Konto gehört.

Führen Sie den folgenden Befehl in Ihrem Terminal aus:

curl -X POST https://api.twilio.com/2010-04-01/Accounts/<INSERT PARENT ACCOUNT SID>/IncomingPhoneNumbers/<INSERT PHONE NUMBER SID>.json \
--data-urlencode "AccountSid=<INSERT SUBACCOUNT SID>" \
-u <INSERT YOUR PARENT ACCOUNT SID>:<INSERT YOUR PARENT AUTH TOKEN>

Beachten Sie, dass die Voice- und SMS-URL beim Übertragen von Telefonnummern auf ein anderes Konto erhalten bleibt.

Antwort

{
    "sid": "PNxxx",
    "account_sid": "ACxxx",
    "friendly_name": "(415) 874-0103",
    "phone_number": "+14158740103",
    "voice_url": "https://demo.twilio.com/welcome/voice/",
    "voice_method": "POST",
    "voice_fallback_url": null,
    "voice_fallback_method": "POST",
    "voice_caller_id_lookup": false,
    "date_created": "Wed, 17 Feb 2021 15:17:28 +0000",
    "date_updated": "Wed, 17 Feb 2021 15:23:39 +0000",
    "sms_url": "https://demo.twilio.com/welcome/sms/reply",
    "sms_method": "POST",
    "sms_fallback_url": "",
    "sms_fallback_method": "POST",
    "address_requirements": "none",
    "beta": false,
    "capabilities": {
        "voice": true,
        "sms": true,
        "mms": true,
        "fax": true
    },
    "voice_receive_mode": "voice",
    "status_callback": "",
    "status_callback_method": "POST",
    "api_version": "2010-04-01",
    "voice_application_sid": null,
    "sms_application_sid": "",
    "origin": "twilio",
    "trunk_sid": null,
    "emergency_status": "Inactive",
    "emergency_address_sid": null,
    "address_sid": null,
    "identity_sid": null,
    "bundle_sid": null,
    "uri": "/2010-04-01/Accounts/AC1bcc67e32e161e04aaacc159b2e86601/IncomingPhoneNumbers/PNd7c52583c2ffabfe2a05a165e48e3e68.json",
    "status": "in-use"
}

Messaging-Dienst erstellen

Erstellen Sie einen Messaging-Dienst in Ihrem neu erstellten Unterkonto. Ein Messaging-Dienst ist eine Ressource, die als Container für Ihre Telefonnummern fungieren kann und Software bereitstellt, über die Sie Nachrichten in großem Umfang ganz einfach senden können.

Für diese Anfrage verwenden Sie die Konto-SID und das Authentifizierungstoken, die mit dem Unterkonto verknüpft sind.

Anfrage

curl -X POST https://messaging.twilio.com/v1/Services \
--data-urlencode "FriendlyName=falconFlightNotifications" \
-u <INSERT YOUR SUBACCOUNT SID>:<INSERT YOUR SUBACCOUNT AUTH TOKEN>

Antwort

In der Antwort ist die SID des Messaging-Dienstes (Mgxxxx) enthalten. Sie werden sie in den nächsten Schritten benötigen. Halten Sie sie griffbereit.

Sie werden feststellen, dass Ihr Response-Objekt einige verschiedene Attribute enthält. Wenn Sie mehr über die Funktionen eines Messaging-Dienstes erfahren möchten, lesen Sie die Dokumentation zum Messaging-Dienst.

{
   "fallback_method": "POST",
   "fallback_to_long_code": true,
   "date_updated": "2021-02-17T15:28:03Z",
   "synchronous_validation": false,
   "sticky_sender": true,
   "inbound_method": "POST",
   "friendly_name": "falconFlightNotifications",
   "mms_converter": true,
   "validity_period": 14400,
   "account_sid": "ACxxx",
   "fallback_url": null,
   "inbound_request_url": null,
   "url": "https://messaging.twilio.com/v1/Services/MGa91155a0d582afdde110a606465d1daa",
   "sid": "MGxxxx",
   "date_created": "2021-02-17T15:28:03Z",
   "smart_encoding": true,
   "scan_message_content": "inherit",
   "area_code_geomatch": true,
   "status_callback": null,
   "links": {
      ...
   }
}

Telefonnummern zum Messaging-Dienst hinzufügen

Mit der Services-API können Sie Ihre Telefonnummer zu Ihrem Messaging-Dienst hinzufügen.

Anfrage

curl -X POST https://messaging.twilio.com/v1/Services/<INSERT YOUR MESSAGING SERVICE SID/PhoneNumbers \
--data-urlencode "PhoneNumberSid=<INSERT PHONE NUMBER SID>" \
-u <INSERT YOUR SUBACCOUNT SID>:<INSERT YOUR SUBACCOUNT AUTH TOKEN>

Antwort

Sie haben die Telefonnummer jetzt erfolgreich zu Ihrem Messaging-Dienst hinzugefügt.

{
   "phone_number": "+14158740103",
   "date_updated": "2021-02-17T15:30:47Z",
   "capabilities": [
       "MMS",
       "SMS",
       "Voice"
   ],
   "account_sid": "AC1bcc67e32e161e04aaacc159b2e86601",
   "url": "https://messaging.twilio.com/v1/Services/MGxxx/PhoneNumbers/PNxxx",
   "country_code": "US",
   "sid": "PNxxxx",
   "date_created": "2021-02-17T15:30:47Z",
   "service_sid": "MGxxxx"
}

Eine Nachricht senden

Mit einem neuen Unterkonto und einem Messaging-Dienst mit Telefonnummer können Sie jetzt eine Nachricht senden.

Um eine Nachricht über den Messaging-Dienst zu senden, verwenden Sie die SID des Messaging-Dienstes (MGxxx) in Ihrer Anfrage.

Stellen Sie sicher, dass die To-Telefonnummer verifiziert ist. Wenn Ihre Nummer nicht verifiziert ist, können Sie eine verifizierte Telefonnummer über die Twilio-Konsole hinzufügen.

Anfrage

curl -X POST https://api.twilio.com/2010-04-01/Accounts/<INSERT YOUR SUBACCOUNT SID>/Messages.json \
--data-urlencode "Body=Hi there" \
--data-urlencode "From=<INSERT YOUR MESSAGING SERVICE SID>
" \
--data-urlencode "To=<INSERT YOUR PHONE NUMBER E.164 FORMAT>" \
-u <INSERT YOUR SUBACCOUNT SID>:<INSERT YOUR SUBACCOUNT AUTH TOKEN>
{
   "sid": "SMb319786dcd44433b905d0e8acd2b33f3",
   "date_created": "Wed, 17 Feb 2021 15:39:56 +0000",
   "date_updated": "Wed, 17 Feb 2021 15:39:56 +0000",
   "date_sent": null,
   "account_sid": "ACxxx",
   "to": "+12083186206",
   "from": null,
   "messaging_service_sid": "MGxxx",
   "body": "Hi there",
   "status": "accepted",
   "num_segments": "0",
   "num_media": "0",
   "direction": "outbound-api",
   "api_version": "2010-04-01",
   "price": null,
   "price_unit": null,
   "error_code": null,
   "error_message": null,
   "uri": "/2010-04-01/Accounts/ACxxx/Messages/SMb319786dcd44433b905d0e8acd2b33f3.json",
   "subresource_uris": {
       "media": "/2010-04-01/Accounts/ACxxx/Messages/SMb319786dcd44433b905d0e8acd2b33f3/Media.json"
   }
}

War dies erfolgreich, sollten Sie eine Nachricht wie die folgende erhalten:

Beispielnachricht von einem Unterkonto

Großartig, es hat funktioniert!

Fazit: Unterkonten sind leistungsstark

Sehen wir uns die letzten Schritte noch einmal an. Sie haben:

  1. ein Unterkonto erstellt
  2. eine Telefonnummer von Ihrem übergeordneten Konto an Ihr Unterkonto übertragen
  3. einen Messaging-Dienst in Ihrem Unterkonto erstellt
  4. eine Telefonnummer zum Messaging-Dienst hinzugefügt
  5. eine Nachricht über Ihren Messaging-Dienst in Ihrem Unterkonto gesendet

Hoffentlich erkennen Sie die Vorteile von Unterkonten. Mit diesem Artikel haben wir nur an der Oberfläche gekratzt. Wenn Ihnen dieser Blogbeitrag gefallen hat, könnten Sie auch die folgenden Themen interessieren:

Josh ist Senior Solutions Engineer bei Twilio und unterstützt unsere unabhängigen Softwareanbieter beim Aufbau skalierbarer Architekturen und Geschäfte mit Twilio. Sie erreichen ihn unter jsiverson [at] twilio.com.