Sample code for 30+ languages & platforms
B4X

SMSAPI - Create a Contact

See more SMSAPI Examples

Create a Contact

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

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

Dim http As ChilkatHttp
http.Initialize("http")

'  Implements the following CURL command:

'  curl -X POST https://api.smsapi.com/contacts -H "Authorization: Bearer token_api_oauth" \
'  -d "phone_number=48500000000&email=bok@smsapi.com&first_name=Name&last_name=Last_name&gender=gender&description=description&city=city&groups=default"

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

Dim req As ChilkatHttpRequest
req.Initialize
req.HttpVerb = "POST"
req.Path = "/contacts"
req.ContentType = "application/x-www-form-urlencoded"
req.AddParam("phone_number", "48500000000")
req.AddParam("email", "bok@smsapi.com")
req.AddParam("first_name", "Name")
req.AddParam("last_name", "Last_name")
req.AddParam("gender", "gender")
req.AddParam("description", "description")
req.AddParam("city", "city")
req.AddParam("groups", "default")

req.AddHeader("Authorization", "Bearer token_api_oauth")

Dim resp As ChilkatHttpResponse
resp.Initialize
success = http.HttpReq("https://api.smsapi.com/contacts", req, resp)
If success = False Then
    Log(http.LastErrorText)
    Return
End If


Dim sbResponseBody As ChilkatStringBuilder
sbResponseBody.Initialize
resp.GetBodySb(sbResponseBody)
Dim jResp As ChilkatJsonObject
jResp.Initialize
jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = False

Log("Response Body:")
Log(jResp.Emit)

Dim respStatusCode As Int = resp.StatusCode
Log("Response Status Code = " & respStatusCode)
If respStatusCode >= 400 Then
    Log("Response Header:")
    Log(resp.Header)
    Log("Failed.")
    Return
End If


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

'  {
'    "id": "5b802315a788494a04690d1d",
'    "first_name": "string",
'    "last_name": "string",
'    "phone_number": "48500000000",
'    "email": "bok@smsapi.com",
'    "gender": "gender",
'    "city": "city",
'    "date_created": "2018-08-24T17:24:05+02:00",
'    "date_updated": "2018-08-24T17:24:05+02:00",
'    "description": "description",
'    "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": "username",
'        "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 ChilkatDtObj
date_created.Initialize
Dim date_updated As ChilkatDtObj
date_updated.Initialize
Dim name As String
Dim created_by As String
Dim idx As String
Dim contact_expire_after As String
Dim contacts_count As String

Dim id As String = jResp.StringOf("id")
Dim first_name As String = jResp.StringOf("first_name")
Dim last_name As String = jResp.StringOf("last_name")
Dim phone_number As String = jResp.StringOf("phone_number")
Dim email As String = jResp.StringOf("email")
Dim gender As String = jResp.StringOf("gender")
Dim city As String = jResp.StringOf("city")
jResp.DtOf("date_created", False, date_created)
jResp.DtOf("date_updated", False, date_updated)
Dim description As String = jResp.StringOf("description")
Dim i As Int = 0
Dim count_i As Int = jResp.SizeOfArray("groups")
Do While i < count_i
    jResp.I = i
    id = jResp.StringOf("groups[i].id")
    name = jResp.StringOf("groups[i].name")
    jResp.DtOf("groups[i].date_created", False, date_created)
    jResp.DtOf("groups[i].date_updated", False, date_updated)
    description = jResp.StringOf("groups[i].description")
    created_by = jResp.StringOf("groups[i].created_by")
    idx = jResp.StringOf("groups[i].idx")
    contact_expire_after = jResp.StringOf("groups[i].contact_expire_after")
    contacts_count = jResp.StringOf("groups[i].contacts_count")
    i = i + 1
Loop