Sample code for 30+ languages & platforms
Xojo Plugin

SMSAPI - List Contacts

See more SMSAPI Examples

List Contacts

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

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

Dim http As New Chilkat.Http

// Implements the following CURL command:

// curl -X GET -H "Authorization: Bearer token_api_oauth" https://api.smsapi.com/contacts?phone_number=48500000000

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

// Adds the "Authorization: Bearer token_api_oauth" header.
http.AuthToken = "token_api_oauth"

Dim sbResponseBody As New Chilkat.StringBuilder
success = http.QuickGetSb("https://api.smsapi.com/contacts?phone_number=48500000000",sbResponseBody)
If (success = False) Then
    System.DebugLog(http.LastErrorText)
    Return
End If

Dim jResp As New Chilkat.JsonObject
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = False

System.DebugLog("Response Body:")
System.DebugLog(jResp.Emit())

Dim respStatusCode As Int32
respStatusCode = http.LastStatus
System.DebugLog("Response Status Code = " + Str(respStatusCode))
If (respStatusCode >= 400) Then
    System.DebugLog("Response Header:")
    System.DebugLog(http.LastHeader)
    System.DebugLog("Failed.")
    Return
End If

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

// {
//   "size": 1,
//   "collection": [
//     {
//       "id": "5b83ba81a788494a0469490f",
//       "first_name": "name",
//       "last_name": "surname",
//       "phone_number": "48500000000",
//       "email": "bok@smsapi.com",
//       "gender": "male",
//       "city": "City",
//       "country": "Poland",
//       "source": "source",
//       "date_created": "2018-08-27T10:46:57+02:00",
//       "date_updated": "2018-08-27T10:46:57+02:00",
//       "groups": [
//         {
//           "id": "59a3ca1fa78849062837cd0c",
//           "name": "default",
//           "date_created": "2017-08-28T09:45:35+02:00",
//           "date_updated": "2017-08-28T09:45:35+02:00",
//           "description": "",
//           "created_by": "login",
//           "idx": null,
//           "contact_expire_after": null,
//           "contacts_count": null
//         }
//       ]
//     }
//   ]
// }

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

Dim date_created As New Chilkat.DtObj
Dim date_updated As New Chilkat.DtObj
Dim id As String
Dim first_name As String
Dim last_name As String
Dim phone_number As String
Dim email As String
Dim gender As String
Dim city As String
Dim country As String
Dim source As String
Dim j As Int32
Dim count_j As Int32
Dim name As String
Dim description As String
Dim created_by As String
Dim idx As String
Dim contact_expire_after As String
Dim contacts_count As String

Dim size As Int32
size = jResp.IntOf("size")
Dim i As Int32
i = 0
Dim count_i As Int32
count_i = jResp.SizeOfArray("collection")
While i < count_i
    jResp.I = i
    id = jResp.StringOf("collection[i].id")
    first_name = jResp.StringOf("collection[i].first_name")
    last_name = jResp.StringOf("collection[i].last_name")
    phone_number = jResp.StringOf("collection[i].phone_number")
    email = jResp.StringOf("collection[i].email")
    gender = jResp.StringOf("collection[i].gender")
    city = jResp.StringOf("collection[i].city")
    country = jResp.StringOf("collection[i].country")
    source = jResp.StringOf("collection[i].source")
    success = jResp.DtOf("collection[i].date_created",False,date_created)
    success = jResp.DtOf("collection[i].date_updated",False,date_updated)
    j = 0
    count_j = jResp.SizeOfArray("collection[i].groups")
    While j < count_j
        jResp.J = j
        id = jResp.StringOf("collection[i].groups[j].id")
        name = jResp.StringOf("collection[i].groups[j].name")
        success = jResp.DtOf("collection[i].groups[j].date_created",False,date_created)
        success = jResp.DtOf("collection[i].groups[j].date_updated",False,date_updated)
        description = jResp.StringOf("collection[i].groups[j].description")
        created_by = jResp.StringOf("collection[i].groups[j].created_by")
        idx = jResp.StringOf("collection[i].groups[j].idx")
        contact_expire_after = jResp.StringOf("collection[i].groups[j].contact_expire_after")
        contacts_count = jResp.StringOf("collection[i].groups[j].contacts_count")
        j = j + 1
    Wend
    i = i + 1
Wend