Sample code for 30+ languages & platforms
AutoIt

REST POST JSON using Gzip Content Encoding

See more REST Examples

Demonstrates how to send a JSON POST using the gzip Content-Encoding.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

;  This requires the Chilkat API to have been previously unlocked.
;  See Global Unlock Sample for sample code.

;  Use the online tool at https://tools.chilkat.io/Default.cshtml
;  to generate the JSON code that creates this JSON:

;  {
;      "lists": [
;          {
;              "id": "1511199999"
;          }
;      ],
;      "confirmed": false,
;      "email_addresses": [
;          {
;              "email_address": "support@chilkatsoft.com"
;          }
;      ],
;      "first_name": "Matt",
;      "last_name": "Smith"
;  }
;  

$oJson = ObjCreate("Chilkat.JsonObject")
$oJson.UpdateString("lists[0].id","1511199999")
$oJson.UpdateBool("confirmed",False)
$oJson.UpdateString("email_addresses[0].email_address","support@chilkatsoft.com")
$oJson.UpdateString("first_name","Matt")
$oJson.UpdateString("last_name","Smith")

$oRest = ObjCreate("Chilkat.Rest")

$bSuccess = $oRest.Connect("api.constantcontact.com",443,True,True)
If ($bSuccess <> True) Then
    ConsoleWrite($oRest.LastErrorText & @CRLF)
    Exit
EndIf

$oRest.AddHeader("Content-Type","application/json")
$oRest.AddHeader("Authorization","Bearer xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx")

;  Tell the server you'll accept only an application/json response.
$oRest.AddHeader("Accept","application/json")

;  Indicate that we'll be sending the request body gzipped.
$oRest.AddHeader("Content-Encoding","gzip")

$oSbReq = ObjCreate("Chilkat.StringBuilder")
$oJson.EmitSb($oSbReq)

;  Send the POST.
$oSbResp = ObjCreate("Chilkat.StringBuilder")
$bSuccess = $oRest.FullRequestSb("POST","/v2/contacts?action_by=ACTION_BY_VISITOR&api_key=xxxxxxx",$oSbReq,$oSbResp)
If ($bSuccess <> True) Then
    ConsoleWrite($oRest.LastErrorText & @CRLF)
    Exit
EndIf

ConsoleWrite("Response body:" & @CRLF)
ConsoleWrite($oSbResp.GetAsString() & @CRLF)

If ($oRest.ResponseStatusCode <> 200) Then
    ConsoleWrite("Received error response code: " & $oRest.ResponseStatusCode & @CRLF)
    Exit
EndIf

$oJsonResp = ObjCreate("Chilkat.JsonObject")
$oJsonResp.LoadSb($oSbResp)

;  Use the online tool at https://tools.chilkat.io/jsonParse.cshtml
;  to generate the JSON code that parses the JSON response..