REST API: Twilio のレスポンス

レスポンスのフォーマット

ユーザーのリクエストに対し、Twilio はさまざまなフォーマットでレスポンスを返すことができます。 ここでは、最も一般的なものについて詳しく説明します。 特別なケースやその他のフォーマットについては、 Tips & Tricks のセクションを参照してください。

XML

デフォルトでは、Twilio の REST API は、ルート要素が <TwilioResponse> の XML を返却します。 たとえば、SMS メッセージのデフォルトの XML 表現は次のようになります。

GET /2010-04-01/Accounts/AC228b9.../SMS/Messages/SM1f0e8ae6ade43cb3c0ce4525424e404f

<TwilioResponse>
    <SMSMessage>
        <Sid>SM1f0e8ae6ade43cb3c0ce4525424e404f</Sid>
        <DateCreated>Fri, 13 Aug 2010 01:16:24 +0000</DateCreated>
        <DateUpdated>Fri, 13 Aug 2010 01:16:24 +0000</DateUpdated>
        <DateSent/>
        <AccountSid>AC228b97a5fe4138be081eaff3c44180f3</AccountSid>
        <To>+13455431221</To>
        <From>+15104564545</From>
        <Body>A Test Message</Body>
        <Status>queued</Status>
        <Flags>
            <Flag>outbound</Flag>
        </Flags>
        <ApiVersion>2010-04-01</ApiVersion>
        <Price/>
        <Uri>
            /2010-04-01/Accounts/AC228b97a5fe4138be081eaff3c44180f3/SMS/Messages/SM1f0e8ae6ade43cb3c0ce4525424e404f
        </Uri>
    </SMSMessage>
</TwilioResponse>

JSON

Twilio は、リソース表現の JSON 形式の返却もサポートします。 リソース URI に拡張子 .json をつけるだけです。 同じリソースの JSON 表現は次のようになります。

GET /2010-04-01/Accounts/AC228b9.../SMS/Messages/SM1f0e8ae6ade43cb3c0ce4525424e404f.json

{
    "sid": "SM1f0e8ae6ade43cb3c0ce4525424e404f",
    "date_created": "Fri, 13 Aug 2010 01:16:24 +0000",
    "date_updated": "Fri, 13 Aug 2010 01:16:24 +0000",
    "date_sent": null,
    "account_sid": "AC228b97a5fe4138be081eaff3c44180f3",
    "to": "+15305431221",
    "from": "+15104564545",
    "body": "A Test Message",
    "status": "queued",
    "flags":["outbound"],
    "api_version": "2010-04-01",
    "price": null,
    "uri": "\/2010-04-01\/Accounts\/AC228ba7a5fe4238be081ea6f3c44186f3\/SMS\/Messages\/SM1f0e8ae6ade43cb3c0ce4525424e404f.json"
}

その他

Twilio は CSV、HTML、その他の形式のレスポンスも返すことができます。 詳細は、Tips & Tricks のセクションを参照してください

例外

エラーが発生すると、Twilio は HTTP レスポンスのボディーの中で例外を返します。 XML では、例外は <TwilioResponse> 要素の中の <RestException> 要素として出現します。 例外には 4 つのプロパティがあります。

プロパティ 説明
Status この例外の HTTP ステータス コードです。
メッセージ この例外に関する、より説明的なメッセージです。
コード (条件あり) この例外を解決する手がかりとなるエラー コードです。
MoreInfo (条件あり) このエラー コードが掲載されている Twilio ユーザー ドキュメントの URL です。

ステータス コード 400 (不正なリクエスト) とともに例外を受け取った場合、Code プロパティと MoreInfo プロパティを利用して、エラーをデバッグします。

サンプル

例 1

単純な 404 エラーの例です。

{
  "status": 404,
  "message": "The requested resource was not found"
}
<TwilioResponse>
  <RestException>
    <Status>404</Status>
    <Message>The requested resource was not found</Message>
  </RestException>
</TwilioResponse>
リクエストしたリソースが見つからない
例 2

Call リソースに To パラメーターのない不正な POST リクエストを発行すると、次が返ります。

{
  "status": 400,
  "message": "No to number is specified",
  "code": 21201,
  "more_info": "http:\/\/www.twilio.com\/docs\/errors\/21201"
}
<TwilioResponse>
  <RestException>
    <Status>400</Status>
    <Message>No to number is specified</Message>
    <Code>21201</Code>
    <MoreInfo>http://www.twilio.com/docs/errors/21201</MoreInfo>
  </RestException>
</TwilioResponse>
レスポンスの例外の例 2

ハイパーメディア参照

REST の中核をなす原則の 1 つにアプリケーション状態エンジンとしてのハイパーメディア(HATEOAS : Hypermedia As The Engine Of Application State )。 これは通常、REST API リクエストで取得するすべてのリソース表現に、そのリソースおよび関連するリソースを特定する URI を含めなければならないことを意味します。 このため、Twilio REST API はさまざまな URI を含む表現を返却し、ユーザーはこれに従って API を操作します。

すべての表現には、自己参照 URI (つまり、その表現を取得するための URI) が含まれます。 たとえば、OutgoingCallerId インスタンス リソースを GET した場合、このインスタンス リソースの URI がプロパティの 1 つとして返却されます。

{
  "sid": "PNe905d7e6b410746a0fb08c57e5a186f3",
  "account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "friendly_name": "(510) 555-5555",
  "phone_number": "+15105555555",
  "date_created": "Tue, 27 Jul 2010 20:21:11 +0000",
  "date_updated": "Tue, 27 Jul 2010 20:21:11 +0000",
  "uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/OutgoingCallerIds\/PNe905d7e6b410746a0fb08c57e5a186f3.json"
}
<TwilioResponse>
  <OutgoingCallerId>
    <Sid>PNe905d7e6b410746a0fb08c57e5a186f3</Sid>
    <AccountSid>ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</AccountSid>
    <FriendlyName>(510) 555-5555</FriendlyName>
    <PhoneNumber>+15105555555</PhoneNumber>
    <DateCreated>Tue, 27 Jul 2010 20:21:11 +0000</DateCreated>
    <DateUpdated>Tue, 27 Jul 2010 20:21:11 +0000</DateUpdated>
    <Uri>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/OutgoingCallerIds/PNe905d7e6b410746a0fb08c57e5a186f3</Uri>
  </OutgoingCallerId>
</TwilioResponse>
ハイパーメディア参照

リスト リソースのハイパーメディア

リスト リソース表現に含まれるページ情報に関連して、その他のハイパーメディア参照情報があります。 後述の ページ情報 のセクションを参照してください。

インスタンス リソースのハイパーメディア

インスタンス リソースにサブリソースがある場合、その表現には、これらのリソースの URI をサブリソース URI プロパティの中に含めます。 たとえば、Call インスタンス リソースを GET した時に返るサブリソースが、次のようになることに注意してください。

{
  "sid": "CAe1644a7eed5088b159577c5802d8be38",
  "date_created": "Tue, 10 Aug 2010 08:02:17 +0000",
  "date_updated": "Tue, 10 Aug 2010 08:02:47 +0000",
  "parent_call_sid": null,
  "account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "to": "+14153855708",
  "from": "+14158141819",
  "phone_number_sid": null,
  "status": "completed",
  "start_time": "Tue, 10 Aug 2010 08:02:31 +0000",
  "end_time": "Tue, 10 Aug 2010 08:02:47 +0000",
  "duration": "16",
  "price": "-0.03000",
  "flags":["outbound-api"],
  "api_version": "2008-08-01",
  "annotation": null,
  "forwarded_from": null,
  "caller_name": null,
  "uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CAe1644a7eed5088b159577c5802d8be38.json",
  "subresource_uris":{
    "notifications": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CAe1644a7eed5088b159577c5802d8be38\/Notifications.json",
    "recordings": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CAe1644a7eed5088b159577c5802d8be38\/Recordings.json"
  }
}
<TwilioResponse>
  <Call>
    <Sid>CAe1644a7eed5088b159577c5802d8be38</Sid>
    <DateCreated>Tue, 10 Aug 2010 08:02:17 +0000</DateCreated>
    <DateUpdated>Tue, 10 Aug 2010 08:02:47 +0000</DateUpdated>
    <ParentCallSid/>
    <AccountSid>ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</AccountSid>
    <To>+14153855708</To>
    <From>+14158141819</From>
    <PhoneNumberSid></PhoneNumberSid>
    <Status>completed</Status>
    <StartTime>Tue, 10 Aug 2010 08:02:31 +0000</StartTime>
    <EndTime>Tue, 10 Aug 2010 08:02:47 +0000</EndTime>
    <Duration>16</Duration>
    <Price>-0.03000</Price>
    <Flags>
      <Flag>outbound-api</Flag>
    </Flags>
    <ApiVersion>2008-08-01</ApiVersion>
    <ForwardedFrom/>
    <CallerName/>
    <Uri>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CAe1644a7eed5088b159577c5802d8be38</Uri>
    <SubresourceUris>
      <Notifications>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CAe1644a7eed5088b159577c5802d8be38/Notifications</Notifications>
      <Recordings>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CAe1644a7eed5088b159577c5802d8be38/Recordings</Recordings>
    </SubresourceUris>
  </Call>
</TwilioResponse>
インスタンス リソースのハイパーメディア

リスト リソース

リソースが、他のリソースのリストである場合があります。 たとえば、Calls リスト リソースは、通話のリストを返します。 これらのリストを使用し、操作するために知っておくべき重要な点がいくつかあります。

ページ情報

リストが長く、APIが一つのページに完全な情報を表示できない場合下記の情報を含みます。

プロパティ 説明
uri このページの URI です。
firstpageuri このリストの最初のページの URI です。
nextpageuri このリストの次のページの URI です。
previouspageuri このリストの前のページの URI です。
page 現在のページ番号です。 ゼロから数えます。最初のページが 0 になります。
pagesize 各ページの項目数です。

たとえば、次のようになります。

ページ情報
  • JSON
  • XML
{
  "page": 0,
  "page_size": 50,
  "uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls.json",
  "first_page_uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls.json?Page=0&PageSize=50",
  "previous_page_uri": null,
  "next_page_uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls.json?Page=1&PageSize=50&AfterSid=CA228399228abecca920de212121",
  "calls": [
    {
      "sid": "CA92d4405c9237c4ea04b56cbda88e128c",
      "date_created": "Fri, 13 Aug 2010 01:16:22 +0000",
      "date_updated": "Fri, 13 Aug 2010 01:16:22 +0000",
      "parent_call_sid": null,
      "account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "to": "+15305431221",
      "from": "+15145623443",
      "phone_number_sid": "PNe2d8e63b37f46f2adb16f228afdb9058",
      "status": "queued",
      "start_time": null,
      "end_time": null,
      "duration": null,
      "price": null,
      "flags":["outbound-api"],
      "api_version": "2010-04-01",
      "forwarded_from": null,
      "caller_name": null,
      "uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CA92d4405c9237c4ea04b56cbda88e128c.json",
      "subresource_uris": {
        "notifications": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CA92d4405c9237c4ea04b56cbda88e128c\/Notifications.json",
        "recordings": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CA92d4405c9237c4ea04b56cbda88e128c\/Recordings.json"
      }
    }
  ]
}
<TwilioResponse>
  <Calls page="0" pagesize="50"
    uri="/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls"
    firstpageuri="/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls?Page=0&PageSize=50"
    previouspageuri=""
    nextpageuri="/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls?Page=1&PageSize=50&AfterSid=CA228399228abecca920de212121">
    <Call>
      <Sid>CA92d4405c9237c4ea04b56cbda88e128c</Sid>
      <DateCreated>Fri, 13 Aug 2010 01:16:22 +0000</DateCreated>
      <DateUpdated>Fri, 13 Aug 2010 01:16:22 +0000</DateUpdated>
      <ParentCallSid/>
      <AccountSid>ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</AccountSid>
      <To>+15305431221</To>
      <From>+15104563443</From>
      <PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
      <Status>queued</Status>
      <StartTime/>
      <EndTime/>
      <Duration/>
      <Price/>
      <Flags>
        <Flag>outbound-api</Flag>
      </Flags>
      <ApiVersion>2010-04-01</ApiVersion> <ForwardedFrom/> <CallerName/>
      <Uri>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
      <SubresourceUris>
        <Notifications>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
        <Recordings>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
      </SubresourceUris>
    </Call>
    ...
  </Calls>
</TwilioResponse>
ページ情報

API リソースのページを移動する

API が返す結果のページを複数取得する場合は、受け取った nextpageuri パラメーターを使って、次のページの結果を取得します。 すべての Twilio Helper ライブラリ は、nextpageuri を使ってページを移動します。

Page パラメーター(AfterSid または PageToken がない)、および numpagestotalstartend、および lastpageuri の各プロパティは廃止される予定であり、2015 年 8 月 31 日に削除されます。さらに、2015 年 6 月 16 日より後に作成されたアカウントは、デフォルトではこれらのプロパティへのアクセス権を持っていません。リソース間を移動するには、Twilio ヘルパーライブラリーを使用するか、nextpageuripreviouspageuri を使用する必要があります。

ページのサイズは PageSize パラメーターで制御できます。

パラメーター 説明
PageSize 各リスト ページに返すリソースの数です。 デフォルトは 50、最大値は 1000 です。

たとえば、1 ページに返す通話の数を 5 に制限する場合は、次のようになります。

GET /2010-04-01/Accounts/{AccountSid}/Calls?PageSize=5

データ フォーマット

電話番号

Twilio のリクエストに含まれるすべての電話番号には、可能な場合は E.164 フォーマットが使用されます。 たとえば、(415) 555-4345 は、 ただし、Twilio が着信通話の発信者 ID を E.164 フォーマットに正規化できない場合があります。 その場合、Twilio は発信者 ID 文字列をそのまま通知します。

日付と時刻

Twilio からのリクエストに含まれるすべての日付と時刻には、 RFC 2822 フォーマットの GMT 時間が使用されます。 たとえば、2010 年 8 月 19 日午後 6 時 13 分 (太平洋夏時間) は、「Fri, 20 Aug 2010 01:13:42 +0000」となります。

1 / 1
Loading Code Samples...
{
  "status": 404,
  "message": "The requested resource was not found"
}
<TwilioResponse>
  <RestException>
    <Status>404</Status>
    <Message>The requested resource was not found</Message>
  </RestException>
</TwilioResponse>
{
  "status": 400,
  "message": "No to number is specified",
  "code": 21201,
  "more_info": "http:\/\/www.twilio.com\/docs\/errors\/21201"
}
<TwilioResponse>
  <RestException>
    <Status>400</Status>
    <Message>No to number is specified</Message>
    <Code>21201</Code>
    <MoreInfo>http://www.twilio.com/docs/errors/21201</MoreInfo>
  </RestException>
</TwilioResponse>
{
  "sid": "PNe905d7e6b410746a0fb08c57e5a186f3",
  "account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "friendly_name": "(510) 555-5555",
  "phone_number": "+15105555555",
  "date_created": "Tue, 27 Jul 2010 20:21:11 +0000",
  "date_updated": "Tue, 27 Jul 2010 20:21:11 +0000",
  "uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/OutgoingCallerIds\/PNe905d7e6b410746a0fb08c57e5a186f3.json"
}
<TwilioResponse>
  <OutgoingCallerId>
    <Sid>PNe905d7e6b410746a0fb08c57e5a186f3</Sid>
    <AccountSid>ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</AccountSid>
    <FriendlyName>(510) 555-5555</FriendlyName>
    <PhoneNumber>+15105555555</PhoneNumber>
    <DateCreated>Tue, 27 Jul 2010 20:21:11 +0000</DateCreated>
    <DateUpdated>Tue, 27 Jul 2010 20:21:11 +0000</DateUpdated>
    <Uri>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/OutgoingCallerIds/PNe905d7e6b410746a0fb08c57e5a186f3</Uri>
  </OutgoingCallerId>
</TwilioResponse>
{
  "sid": "CAe1644a7eed5088b159577c5802d8be38",
  "date_created": "Tue, 10 Aug 2010 08:02:17 +0000",
  "date_updated": "Tue, 10 Aug 2010 08:02:47 +0000",
  "parent_call_sid": null,
  "account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "to": "+14153855708",
  "from": "+14158141819",
  "phone_number_sid": null,
  "status": "completed",
  "start_time": "Tue, 10 Aug 2010 08:02:31 +0000",
  "end_time": "Tue, 10 Aug 2010 08:02:47 +0000",
  "duration": "16",
  "price": "-0.03000",
  "flags":["outbound-api"],
  "api_version": "2008-08-01",
  "annotation": null,
  "forwarded_from": null,
  "caller_name": null,
  "uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CAe1644a7eed5088b159577c5802d8be38.json",
  "subresource_uris":{
    "notifications": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CAe1644a7eed5088b159577c5802d8be38\/Notifications.json",
    "recordings": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CAe1644a7eed5088b159577c5802d8be38\/Recordings.json"
  }
}
<TwilioResponse>
  <Call>
    <Sid>CAe1644a7eed5088b159577c5802d8be38</Sid>
    <DateCreated>Tue, 10 Aug 2010 08:02:17 +0000</DateCreated>
    <DateUpdated>Tue, 10 Aug 2010 08:02:47 +0000</DateUpdated>
    <ParentCallSid/>
    <AccountSid>ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</AccountSid>
    <To>+14153855708</To>
    <From>+14158141819</From>
    <PhoneNumberSid></PhoneNumberSid>
    <Status>completed</Status>
    <StartTime>Tue, 10 Aug 2010 08:02:31 +0000</StartTime>
    <EndTime>Tue, 10 Aug 2010 08:02:47 +0000</EndTime>
    <Duration>16</Duration>
    <Price>-0.03000</Price>
    <Flags>
      <Flag>outbound-api</Flag>
    </Flags>
    <ApiVersion>2008-08-01</ApiVersion>
    <ForwardedFrom/>
    <CallerName/>
    <Uri>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CAe1644a7eed5088b159577c5802d8be38</Uri>
    <SubresourceUris>
      <Notifications>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CAe1644a7eed5088b159577c5802d8be38/Notifications</Notifications>
      <Recordings>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CAe1644a7eed5088b159577c5802d8be38/Recordings</Recordings>
    </SubresourceUris>
  </Call>
</TwilioResponse>
{
  "page": 0,
  "page_size": 50,
  "uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls.json",
  "first_page_uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls.json?Page=0&PageSize=50",
  "previous_page_uri": null,
  "next_page_uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls.json?Page=1&PageSize=50&AfterSid=CA228399228abecca920de212121",
  "calls": [
    {
      "sid": "CA92d4405c9237c4ea04b56cbda88e128c",
      "date_created": "Fri, 13 Aug 2010 01:16:22 +0000",
      "date_updated": "Fri, 13 Aug 2010 01:16:22 +0000",
      "parent_call_sid": null,
      "account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "to": "+15305431221",
      "from": "+15145623443",
      "phone_number_sid": "PNe2d8e63b37f46f2adb16f228afdb9058",
      "status": "queued",
      "start_time": null,
      "end_time": null,
      "duration": null,
      "price": null,
      "flags":["outbound-api"],
      "api_version": "2010-04-01",
      "forwarded_from": null,
      "caller_name": null,
      "uri": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CA92d4405c9237c4ea04b56cbda88e128c.json",
      "subresource_uris": {
        "notifications": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CA92d4405c9237c4ea04b56cbda88e128c\/Notifications.json",
        "recordings": "\/2010-04-01\/Accounts\/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\/Calls\/CA92d4405c9237c4ea04b56cbda88e128c\/Recordings.json"
      }
    }
  ]
}
<TwilioResponse>
  <Calls page="0" pagesize="50"
    uri="/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls"
    firstpageuri="/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls?Page=0&PageSize=50"
    previouspageuri=""
    nextpageuri="/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls?Page=1&PageSize=50&AfterSid=CA228399228abecca920de212121">
    <Call>
      <Sid>CA92d4405c9237c4ea04b56cbda88e128c</Sid>
      <DateCreated>Fri, 13 Aug 2010 01:16:22 +0000</DateCreated>
      <DateUpdated>Fri, 13 Aug 2010 01:16:22 +0000</DateUpdated>
      <ParentCallSid/>
      <AccountSid>ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</AccountSid>
      <To>+15305431221</To>
      <From>+15104563443</From>
      <PhoneNumberSid>PNe2d8e63b37f46f2adb16f228afdb9058</PhoneNumberSid>
      <Status>queued</Status>
      <StartTime/>
      <EndTime/>
      <Duration/>
      <Price/>
      <Flags>
        <Flag>outbound-api</Flag>
      </Flags>
      <ApiVersion>2010-04-01</ApiVersion> <ForwardedFrom/> <CallerName/>
      <Uri>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CA92d4405c9237c4ea04b56cbda88e128c</Uri>
      <SubresourceUris>
        <Notifications>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Notifications</Notifications>
        <Recordings>/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Calls/CA92d4405c9237c4ea04b56cbda88e128c/Recordings</Recordings>
      </SubresourceUris>
    </Call>
    ...
  </Calls>
</TwilioResponse>