Sample code for 30+ languages & platforms
Android™

Twilio List Log Messages

See more Twilio Examples

Fetch the log containing information about SMS messages previously sent (or failed to be sent).

Chilkat Android™ Downloads

Android™
// Important: Don't forget to include the call to System.loadLibrary
// as shown at the bottom of this code sample.
package com.test;

import android.app.Activity;
import com.chilkatsoft.*;

import android.widget.TextView;
import android.os.Bundle;

public class SimpleActivity extends Activity {

  private static final String TAG = "Chilkat";

  // Called when the activity is first created.
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    boolean success = false;

    //  This example assumes the Chilkat API to have been previously unlocked.
    //  See Global Unlock Sample for sample code.

    CkHttp http = new CkHttp();

    //  Implements the following CURL command:

    //  curl -X GET 'https://api.twilio.com/2010-04-01/Accounts/TWILIO_ACCOUNT_SID/Messages.json?PageSize=20' \
    //  -u TWILIO_ACCOUNT_SID:TWILIO_AUTH_TOKEN

    //  Use the following online tool to generate HTTP code from a CURL command
    //  Convert a cURL Command to HTTP Source Code

    http.put_Login("TWILIO_ACCOUNT_SID");
    http.put_Password("TWILIO_AUTH_TOKEN");

    CkStringBuilder sbResponseBody = new CkStringBuilder();
    success = http.QuickGetSb("https://api.twilio.com/2010-04-01/Accounts/TWILIO_ACCOUNT_SID/Messages.json?PageSize=20",sbResponseBody);
    if (success == false) {
        Log.i(TAG, http.lastErrorText());
        return;
        }

    CkJsonObject json = new CkJsonObject();
    json.LoadSb(sbResponseBody);
    json.put_EmitCompact(false);

    Log.i(TAG, "Response Body:");
    Log.i(TAG, json.emit());

    int respStatusCode = http.get_LastStatus();
    Log.i(TAG, "Response Status Code = " + String.valueOf(respStatusCode));
    if (respStatusCode >= 400) {
        Log.i(TAG, "Response Header:");
        Log.i(TAG, http.lastHeader());
        Log.i(TAG, "Failed.");
        return;
        }

    //  Sample JSON response:
    //  (Sample code for parsing the JSON response is shown below)

    //  {
    //    "end": 1,
    //    "first_page_uri": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages.json?To=%2B123456789&From=%2B987654321&DateSent%3E=2008-01-02&PageSize=2&Page=0",
    //    "next_page_uri": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages.json?To=%2B123456789&From=%2B987654321&DateSent%3E=2008-01-02&PageSize=2&Page=1&PageToken=PAMMc26223853f8c46b4ab7dfaa6abba0a26",
    //    "page": 0,
    //    "page_size": 2,
    //    "previous_page_uri": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages.json?To=%2B123456789&From=%2B987654321&DateSent%3E=2008-01-02&PageSize=2&Page=0",
    //    "messages": [
    //      {
    //        "account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    //        "api_version": "2010-04-01",
    //        "body": "testing",
    //        "date_created": "Fri, 24 May 2019 17:44:46 +0000",
    //        "date_sent": "Fri, 24 May 2019 17:44:50 +0000",
    //        "date_updated": "Fri, 24 May 2019 17:44:50 +0000",
    //        "direction": "outbound-api",
    //        "error_code": null,
    //        "error_message": null,
    //        "from": "+12019235161",
    //        "messaging_service_sid": null,
    //        "num_media": "0",
    //        "num_segments": "1",
    //        "price": "-0.00750",
    //        "price_unit": "USD",
    //        "sid": "SMded05904ccb347238880ca9264e8fe1c",
    //        "status": "sent",
    //        "subresource_uris": {
    //          "media": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages/SMded05904ccb347238880ca9264e8fe1c/Media.json",
    //          "feedback": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages/SMded05904ccb347238880ca9264e8fe1c/Feedback.json"
    //        },
    //        "to": "+18182008801",
    //        "uri": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages/SMded05904ccb347238880ca9264e8fe1c.json"
    //      },
    //      {
    //        "account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    //        "api_version": "2010-04-01",
    //        "body": "look mom I have media!",
    //        "date_created": "Fri, 24 May 2019 17:44:46 +0000",
    //        "date_sent": "Fri, 24 May 2019 17:44:49 +0000",
    //        "date_updated": "Fri, 24 May 2019 17:44:49 +0000",
    //        "direction": "inbound",
    //        "error_code": 30004,
    //        "error_message": "Message blocked",
    //        "from": "+12019235161",
    //        "messaging_service_sid": null,
    //        "num_media": "3",
    //        "num_segments": "1",
    //        "price": "-0.00750",
    //        "price_unit": "USD",
    //        "sid": "MMc26223853f8c46b4ab7dfaa6abba0a26",
    //        "status": "received",
    //        "subresource_uris": {
    //          "media": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages/MMc26223853f8c46b4ab7dfaa6abba0a26/Media.json",
    //          "feedback": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages/MMc26223853f8c46b4ab7dfaa6abba0a26/Feedback.json"
    //        },
    //        "to": "+18182008801",
    //        "uri": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages/MMc26223853f8c46b4ab7dfaa6abba0a26.json"
    //      }
    //    ],
    //    "start": 0,
    //    "uri": "/2010-04-01/Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/Messages.json?To=%2B123456789&From=%2B987654321&DateSent%3E=2008-01-02&PageSize=2&Page=0"
    //  }

    //  Sample code for parsing the JSON response...
    //  Use the following online tool to generate parsing code from sample JSON:
    //  Generate Parsing Code from JSON

    String account_sid;
    String api_version;
    String body;
    String date_created;
    String date_sent;
    String date_updated;
    String direction;
    String error_code;
    String error_message;
    String from;
    String messaging_service_sid;
    String num_media;
    String num_segments;
    String price;
    String price_unit;
    String sid;
    String status;
    String subresource_urisMedia;
    String subresource_urisFeedback;
    String v_to;

    int end = json.IntOf("end");
    String first_page_uri = json.stringOf("first_page_uri");
    String next_page_uri = json.stringOf("next_page_uri");
    int page = json.IntOf("page");
    int page_size = json.IntOf("page_size");
    String previous_page_uri = json.stringOf("previous_page_uri");
    int start = json.IntOf("start");
    String uri = json.stringOf("uri");
    int i = 0;
    int count_i = json.SizeOfArray("messages");
    while (i < count_i) {
        json.put_I(i);
        account_sid = json.stringOf("messages[i].account_sid");
        api_version = json.stringOf("messages[i].api_version");
        body = json.stringOf("messages[i].body");
        date_created = json.stringOf("messages[i].date_created");
        date_sent = json.stringOf("messages[i].date_sent");
        date_updated = json.stringOf("messages[i].date_updated");
        direction = json.stringOf("messages[i].direction");
        error_code = json.stringOf("messages[i].error_code");
        error_message = json.stringOf("messages[i].error_message");
        from = json.stringOf("messages[i].from");
        messaging_service_sid = json.stringOf("messages[i].messaging_service_sid");
        num_media = json.stringOf("messages[i].num_media");
        num_segments = json.stringOf("messages[i].num_segments");
        price = json.stringOf("messages[i].price");
        price_unit = json.stringOf("messages[i].price_unit");
        sid = json.stringOf("messages[i].sid");
        status = json.stringOf("messages[i].status");
        subresource_urisMedia = json.stringOf("messages[i].subresource_uris.media");
        subresource_urisFeedback = json.stringOf("messages[i].subresource_uris.feedback");
        v_to = json.stringOf("messages[i].to");
        uri = json.stringOf("messages[i].uri");
        i = i + 1;
        }


  }

  static {
      System.loadLibrary("chilkat");

      // Note: If the incorrect library name is passed to System.loadLibrary,
      // then you will see the following error message at application startup:
      //"The application <your-application-name> has stopped unexpectedly. Please try again."
  }
}