DataFlex / Twilio Messaging / SMS / List all messages sent from your Twilio number
Back to Collection Items
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoHttp
Boolean iSuccess
Variant vQueryParams
Handle hoQueryParams
Variant vResp
Handle hoResp
Variant vSbResponseBody
Handle hoSbResponseBody
Handle hoJResp
Integer iRespStatusCode
Variant vDate_created
Handle hoDate_created
Variant vDate_sent
Handle hoDate_sent
Variant vDate_updated
Handle hoDate_updated
String sAccount_sid
String sApi_version
String sBody
String sDirection
Integer iError_code
String sError_message
String sFrom
String sMessaging_service_sid
String sNum_media
String sNum_segments
String sPrice
String sPrice_unit
String sSid
String sStatus
String sV_to
Integer iV_end
String sFirst_page_uri
String sNext_page_uri
Integer iPage
Integer iPage_size
String sPrevious_page_uri
Integer iStart
String sUri
Integer i
Integer iCount_i
String sTemp1
Boolean bTemp1
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatHttp)) To hoHttp
If (Not(IsComObjectCreated(hoHttp))) Begin
Send CreateComObject of hoHttp
End
Set ComBasicAuth Of hoHttp To True
Set ComLogin Of hoHttp To "{{TWILIO_ACCOUNT_SID}}"
Set ComPassword Of hoHttp To "{{TWILIO_AUTH_TOKEN}}"
Get Create (RefClass(cComChilkatJsonObject)) To hoQueryParams
If (Not(IsComObjectCreated(hoQueryParams))) Begin
Send CreateComObject of hoQueryParams
End
Get ComUpdateString Of hoQueryParams "From" "{{TWILIO_PHONE_NUMBER}}" To iSuccess
Get pvComObject of hoQueryParams to vQueryParams
Get ComQuickRequestParams Of hoHttp "GET" "https://api.twilio.com/2010-04-01/Accounts/:AccountSid/Messages.json" vQueryParams To vResp
If (IsComObject(vResp)) Begin
Get Create (RefClass(cComChilkatHttpResponse)) To hoResp
Set pvComObject Of hoResp To vResp
End
Get ComLastMethodSuccess Of hoHttp To bTemp1
If (bTemp1 = False) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody
If (Not(IsComObjectCreated(hoSbResponseBody))) Begin
Send CreateComObject of hoSbResponseBody
End
Get pvComObject of hoSbResponseBody to vSbResponseBody
Get ComGetBodySb Of hoResp vSbResponseBody To iSuccess
Get Create (RefClass(cComChilkatJsonObject)) To hoJResp
If (Not(IsComObjectCreated(hoJResp))) Begin
Send CreateComObject of hoJResp
End
Get pvComObject of hoSbResponseBody to vSbResponseBody
Get ComLoadSb Of hoJResp vSbResponseBody To iSuccess
Set ComEmitCompact Of hoJResp To False
Showln "Response Body:"
Get ComEmit Of hoJResp To sTemp1
Showln sTemp1
Get ComStatusCode Of hoResp To iRespStatusCode
Showln "Response Status Code = " iRespStatusCode
If (iRespStatusCode >= 400) Begin
Showln "Response Header:"
Get ComHeader Of hoResp To sTemp1
Showln sTemp1
Showln "Failed."
Send Destroy of hoResp
Procedure_Return
End
Send Destroy of hoResp
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// {
// "end": 51142961,
// "first_page_uri": "https://ZvltuXKxENEyvG.fnbzDIxrccIwHE6GxsyHjMd",
// "messages": [
// {
// "account_sid": "AC9E",
// "api_version": "commodo sint sunt eu",
// "body": "ut cillum",
// "date_created": "fugiat ipsum enim quis",
// "date_sent": "o",
// "date_updated": "laborum id esse elit",
// "direction": "outbound-reply",
// "error_code": 89665305,
// "error_message": "deserunt",
// "from": "anim esse",
// "messaging_service_sid": "MGC0",
// "num_media": "enim et",
// "num_segments": "quis qui ipsum",
// "price": "exercitation Duis",
// "price_unit": "consequat qu",
// "sid": "SMe5",
// "status": "scheduled",
// "subresource_uris": {},
// "to": "nulla",
// "uri": "cillum ut in irure"
// },
// {
// "account_sid": "ACD4",
// "api_version": "incididunt in non",
// "body": "deserunt incididunt irure eiusmod",
// "date_created": "sint ea",
// "date_sent": "Ut ut consectetur",
// "date_updated": "non dolore",
// "direction": "outbound-api",
// "error_code": -69524035,
// "error_message": "dolore Ut officia",
// "from": "reprehenderit",
// "messaging_service_sid": "MGEe",
// "num_media": "voluptate fugiat eiusmod qui Ut",
// "num_segments": "ea",
// "price": "consequat",
// "price_unit": "fugiat aliquip",
// "sid": "MM38",
// "status": "received",
// "subresource_uris": {},
// "to": "in tempor labore eiusmod",
// "uri": "elit non dol"
// }
// ],
// "next_page_uri": "http://fSikGpthYZQbOt.sncsPW4TzW44TkKnuDgx8f2FJz.",
// "page": -43897926,
// "page_size": 12121047,
// "previous_page_uri": "https://lSrGpSrECCMzKudcyRlwJdfhlnZEaAQ.hytgI,rCvOIy,x1C6vbgTvc9p6X2hkAdrqkd5jx8JKwJPiCrpsg2w",
// "start": -23084704,
// "uri": "https://USSzIQwA.hvxpmaT2476DlQGIi"
// }
// Sample code for parsing the JSON response...
// Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
Get Create (RefClass(cComChilkatDtObj)) To hoDate_created
If (Not(IsComObjectCreated(hoDate_created))) Begin
Send CreateComObject of hoDate_created
End
Get Create (RefClass(cComChilkatDtObj)) To hoDate_sent
If (Not(IsComObjectCreated(hoDate_sent))) Begin
Send CreateComObject of hoDate_sent
End
Get Create (RefClass(cComChilkatDtObj)) To hoDate_updated
If (Not(IsComObjectCreated(hoDate_updated))) Begin
Send CreateComObject of hoDate_updated
End
Get ComIntOf Of hoJResp "end" To iV_end
Get ComStringOf Of hoJResp "first_page_uri" To sFirst_page_uri
Get ComStringOf Of hoJResp "next_page_uri" To sNext_page_uri
Get ComIntOf Of hoJResp "page" To iPage
Get ComIntOf Of hoJResp "page_size" To iPage_size
Get ComStringOf Of hoJResp "previous_page_uri" To sPrevious_page_uri
Get ComIntOf Of hoJResp "start" To iStart
Get ComStringOf Of hoJResp "uri" To sUri
Move 0 To i
Get ComSizeOfArray Of hoJResp "messages" To iCount_i
While (i < iCount_i)
Set ComI Of hoJResp To i
Get ComStringOf Of hoJResp "messages[i].account_sid" To sAccount_sid
Get ComStringOf Of hoJResp "messages[i].api_version" To sApi_version
Get ComStringOf Of hoJResp "messages[i].body" To sBody
Get pvComObject of hoDate_created to vDate_created
Get ComDtOf Of hoJResp "messages[i].date_created" False vDate_created To iSuccess
Get pvComObject of hoDate_sent to vDate_sent
Get ComDtOf Of hoJResp "messages[i].date_sent" False vDate_sent To iSuccess
Get pvComObject of hoDate_updated to vDate_updated
Get ComDtOf Of hoJResp "messages[i].date_updated" False vDate_updated To iSuccess
Get ComStringOf Of hoJResp "messages[i].direction" To sDirection
Get ComIntOf Of hoJResp "messages[i].error_code" To iError_code
Get ComStringOf Of hoJResp "messages[i].error_message" To sError_message
Get ComStringOf Of hoJResp "messages[i].from" To sFrom
Get ComStringOf Of hoJResp "messages[i].messaging_service_sid" To sMessaging_service_sid
Get ComStringOf Of hoJResp "messages[i].num_media" To sNum_media
Get ComStringOf Of hoJResp "messages[i].num_segments" To sNum_segments
Get ComStringOf Of hoJResp "messages[i].price" To sPrice
Get ComStringOf Of hoJResp "messages[i].price_unit" To sPrice_unit
Get ComStringOf Of hoJResp "messages[i].sid" To sSid
Get ComStringOf Of hoJResp "messages[i].status" To sStatus
Get ComStringOf Of hoJResp "messages[i].to" To sV_to
Get ComStringOf Of hoJResp "messages[i].uri" To sUri
Move (i + 1) To i
Loop
End_Procedure
Curl Command
curl -G -d "From=%7B%7BTWILIO_PHONE_NUMBER%7D%7D"
-u '{{TWILIO_ACCOUNT_SID}}:{{TWILIO_AUTH_TOKEN}}'
https://api.twilio.com/2010-04-01/Accounts/:AccountSid/Messages.json
Postman Collection Item JSON
{
"name": "List all messages sent from your Twilio number",
"event": [
{
"listen": "test",
"script": {
"exec": [
"var template = `",
" <table bgcolor=\"#FFFFFF\">",
" <tr>",
" <th>To</th>",
" <th>Message Body</th>",
" <th>Sent at</th>",
" </tr>",
"",
" {{#each messages}}",
" <tr>",
" <td>{{to}}</td>",
" <td>{{body}}</td>",
" <td>{{date_sent}}</td>",
" </tr>",
" {{/each}}",
" </table>",
"`;",
"",
"// Set visualizer",
"pm.visualizer.set(template, {",
" // Pass the response body parsed as JSON as `data`",
" messages: pm.response.json().messages",
"});"
],
"type": "text/javascript"
}
}
],
"request": {
"auth": {
"type": "basic",
"basic": [
{
"key": "password",
"value": "{{TWILIO_AUTH_TOKEN}}",
"type": "string"
},
{
"key": "username",
"value": "{{TWILIO_ACCOUNT_SID}}",
"type": "string"
}
]
},
"method": "GET",
"header": [
],
"url": {
"raw": "{{2010-04-01-Accounts-AccountSid-Messages.json-Url}}/2010-04-01/Accounts/:AccountSid/Messages.json?From={{TWILIO_PHONE_NUMBER}}",
"host": [
"{{2010-04-01-Accounts-AccountSid-Messages.json-Url}}"
],
"path": [
"2010-04-01",
"Accounts",
":AccountSid",
"Messages.json"
],
"query": [
{
"key": "To",
"value": "<string>",
"description": "Read messages sent to only this phone number.",
"disabled": true
},
{
"key": "From",
"value": "{{TWILIO_PHONE_NUMBER}}",
"description": "Read messages sent from only this phone number or alphanumeric sender ID."
},
{
"key": "DateSent",
"value": "<dateTime>",
"description": "The date of the messages to show. Specify a date as `YYYY-MM-DD` in GMT to read only messages sent on this date. For example: `2009-07-06`. You can also specify an inequality, such as `DateSent<=YYYY-MM-DD`, to read messages sent on or before midnight on a date, and `DateSent>=YYYY-MM-DD` to read messages sent on or after midnight on a date.",
"disabled": true
},
{
"key": "DateSent<",
"value": "<dateTime>",
"description": "The date of the messages to show. Specify a date as `YYYY-MM-DD` in GMT to read only messages sent on this date. For example: `2009-07-06`. You can also specify an inequality, such as `DateSent<=YYYY-MM-DD`, to read messages sent on or before midnight on a date, and `DateSent>=YYYY-MM-DD` to read messages sent on or after midnight on a date.",
"disabled": true
},
{
"key": "DateSent>",
"value": "<dateTime>",
"description": "The date of the messages to show. Specify a date as `YYYY-MM-DD` in GMT to read only messages sent on this date. For example: `2009-07-06`. You can also specify an inequality, such as `DateSent<=YYYY-MM-DD`, to read messages sent on or before midnight on a date, and `DateSent>=YYYY-MM-DD` to read messages sent on or after midnight on a date.",
"disabled": true
},
{
"key": "PageSize",
"value": "<integer>",
"description": "How many resources to return in each list page. The default is 50, and the maximum is 1000.",
"disabled": true
}
],
"variable": [
{
"key": "AccountSid",
"value": "{{TWILIO_ACCOUNT_SID}}",
"description": "(Required) The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Message resources to read."
}
]
},
"description": "Retrieve a list of messages belonging to the account used to make the request. You can filter for example for only the messages that were sent from a specific phone number.\n\nRead more about it in the [Twilio Docs](https://www.twilio.com/docs/sms/api/message-resource#read-multiple-message-resources)"
},
"response": [
{
"name": "OK",
"originalRequest": {
"method": "GET",
"header": [
{
"description": "Added as a part of security scheme: basic",
"key": "Authorization",
"value": "Basic <credentials>"
}
],
"url": {
"raw": "{{2010-04-01-Accounts-AccountSid-Messages.json-Url}}/2010-04-01/Accounts/:AccountSid/Messages.json?To=<string>&From=<string>&DateSent=<dateTime>&DateSent<=<dateTime>&DateSent>=<dateTime>&PageSize=<integer>",
"host": [
"{{2010-04-01-Accounts-AccountSid-Messages.json-Url}}"
],
"path": [
"2010-04-01",
"Accounts",
":AccountSid",
"Messages.json"
],
"query": [
{
"key": "To",
"value": "<string>"
},
{
"key": "From",
"value": "<string>"
},
{
"key": "DateSent",
"value": "<dateTime>"
},
{
"key": "DateSent<",
"value": "<dateTime>"
},
{
"key": "DateSent>",
"value": "<dateTime>"
},
{
"key": "PageSize",
"value": "<integer>"
}
],
"variable": [
{
"key": "AccountSid"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"end\": 51142961,\n \"first_page_uri\": \"https://ZvltuXKxENEyvG.fnbzDIxrccIwHE6GxsyHjMd\",\n \"messages\": [\n {\n \"account_sid\": \"AC9E\",\n \"api_version\": \"commodo sint sunt eu\",\n \"body\": \"ut cillum\",\n \"date_created\": \"fugiat ipsum enim quis\",\n \"date_sent\": \"o\",\n \"date_updated\": \"laborum id esse elit\",\n \"direction\": \"outbound-reply\",\n \"error_code\": 89665305,\n \"error_message\": \"deserunt\",\n \"from\": \"anim esse\",\n \"messaging_service_sid\": \"MGC0\",\n \"num_media\": \"enim et\",\n \"num_segments\": \"quis qui ipsum\",\n \"price\": \"exercitation Duis\",\n \"price_unit\": \"consequat qu\",\n \"sid\": \"SMe5\",\n \"status\": \"scheduled\",\n \"subresource_uris\": {},\n \"to\": \"nulla\",\n \"uri\": \"cillum ut in irure\"\n },\n {\n \"account_sid\": \"ACD4\",\n \"api_version\": \"incididunt in non\",\n \"body\": \"deserunt incididunt irure eiusmod\",\n \"date_created\": \"sint ea\",\n \"date_sent\": \"Ut ut consectetur\",\n \"date_updated\": \"non dolore\",\n \"direction\": \"outbound-api\",\n \"error_code\": -69524035,\n \"error_message\": \"dolore Ut officia\",\n \"from\": \"reprehenderit\",\n \"messaging_service_sid\": \"MGEe\",\n \"num_media\": \"voluptate fugiat eiusmod qui Ut\",\n \"num_segments\": \"ea\",\n \"price\": \"consequat\",\n \"price_unit\": \"fugiat aliquip\",\n \"sid\": \"MM38\",\n \"status\": \"received\",\n \"subresource_uris\": {},\n \"to\": \"in tempor labore eiusmod\",\n \"uri\": \"elit non dol\"\n }\n ],\n \"next_page_uri\": \"http://fSikGpthYZQbOt.sncsPW4TzW44TkKnuDgx8f2FJz.\",\n \"page\": -43897926,\n \"page_size\": 12121047,\n \"previous_page_uri\": \"https://lSrGpSrECCMzKudcyRlwJdfhlnZEaAQ.hytgI,rCvOIy,x1C6vbgTvc9p6X2hkAdrqkd5jx8JKwJPiCrpsg2w\",\n \"start\": -23084704,\n \"uri\": \"https://USSzIQwA.hvxpmaT2476DlQGIi\"\n}"
}
]
}