Twilioブログ

Twilio API Keyの使い方と発行方法

こんにちは、katsu.tです。

TwilioのAPIを利用するとき、認証情報として利用することが必須となっているAccount SIDとAuth Token。

実はこの2つの代わりとして、API Keyを発行して利用できることをご存じですか?

Account SIDとAuth Tokenはプロジェクトごとに発行されるものですが、API Keyならサブシステムごとに認証情報を設定して利用できます。

今回の記事では、API Keyの使い方やAPI Keyの発行方法についてご紹介いたします。

Twilio API Keyの使い方

まずはTwilio API Keyの使い方についてご紹介いたします。

REST APIで使用

REST APIでAPIキーを利用する場合は

  • user=Account SID
  • password=Auth Token

の代わりに

  • user=KeySid
  • password=KeySecret

として利用することが可能です。

例:

curl -X POST https://api.twilio.com/2010-04-01/Accounts/$TWILIO_ACCOUNT_SID/Calls.json \
--data-urlencode "Url=http://demo.twilio.com/docs/voice.xml" \
--data-urlencode "To=+14155551212" \
--data-urlencode "From=+15017122661" \
-u $TWILIO_KEY_SID:$TWILIO_KEY_SECRET // API Keyを利用

SDKで使用

SDKで利用する場合は、Auth Tokenの代わりに、API Keyを利用することが可能です。
例としてPHPのコードをご紹介いたします。
※他の言語のコードはこちらをご参照ください。
※Node.jsのみ他の言語と多少設定方法が異なるので注意です。

<?php
require_once './vendor/autoload.php'; // Loads the library
use Twilio\Rest\Client;

$sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; // Account Sid
$api_key = "SKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; // API Key Sid
$api_secret = "your_api_secret"; // API Key Secret

// Clientを初期化
$client = new Client($api_key, $api_secret, $sid);

// 認証情報が正常に設定できているか確認
$accounts = $client--->api->v2010->accounts
                               ->read();

foreach ($accounts as $record) {
    print($record->sid);
}
?>

Twilio API Keyの権限について

API Keyには2種類のキータイプがあり、権限がそれぞれ異なります。
必要に応じて使い分けてください。

キータイプ

API Key、アカウントおよびサブアカウントの管理に関わるAPIの実行権限

コンソールを使って作成

APIを使って作成

Standard ×
Master ×

Twilio API Keyの発行方法

API Keyを発行する方法は、「コンソールを利用する」か「APIを利用する」の2種類です。

パターン①コンソールを用いて発行

コンソールを開き、Dashboardの中から設定をクリックします。

設定の中からAPIキーをクリックします。

新しいAPIキーを作成するをクリックします。

 

任意のわかりやすい名前を入力し、APIキーを作成するをクリックします。

 

キーが生成されたらSIDとSECRETをメモしておきます。
※この画面を閉じるとSECRETを確認するすべがなくなってしまいます。

キーを控えたら完了しました!にチェックを入れ、終了をクリックしましょう。

 

終了をクリックしたら、これでAPI Keyの発行は完了となります。

パターン②APIを用いて発行

※APIを利用して発行したAPI KeyのキータイプはStandardとなります。

$ curl -X POST https://api.twilio.com/2010-04-01/Accounts/$TWILIO_ACCOUNT_SID/Keys.json \
-u $TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN

まとめ

アクセストークンの発行時にAPI Keyを用いたり、API Keyでアプリごとに認証情報を持たせたりすることで、認証情報の漏洩リスクを軽減できます。

Twilioを始めたばかりのときはAccount SIDとAuth Tokenを使うことが多いと思いますが、慣れてきたらぜひAPI Keyもご活用ください!

アプリケーションエンジニア 葛 智紀
アプリケーションエンジニア 葛 智紀

前職でiOS、Androidのネイティブアプリケーション開発、AngularやLaravelを用いたウェブアプリケーション開発に従事。KDDIウェブコミュニケーションズではTwilioの最新情報の発信やTwilioを用いた地域課題解決を担当。 個人では、Google Developer Group Tokyoのオーガナイザーを務める。

CTA_まずはtwilioを使ってみる。

Share!!

  • お役立ち情報
  • イベント情報
  • 相談会申込
  • 導入事例