Back to Collection Items
        Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
$http = New-Object Chilkat.Http
$http.BasicAuth = $true
$http.Login = "username"
$http.Password = "password"
# Use this online tool to generate code from sample JSON: Generate Code to Create JSON
# The following JSON is sent in the request body.
# {
#   "author": {
#     "type": "business",
#     "displayName": "Steve",
#     "avatarUrl": "https://www.gravatar.com/image.jpg"
#   },
#   "content": {
#     "type": "text",
#     "text": "Hello!"
#   },
#   "metadata": {
#     "lang": "en-ca"
#   }
# }
$json = New-Object Chilkat.JsonObject
$json.UpdateString("author.type","business")
$json.UpdateString("author.displayName","Steve")
$json.UpdateString("author.avatarUrl","https://www.gravatar.com/image.jpg")
$json.UpdateString("content.type","text")
$json.UpdateString("content.text","Hello!")
$json.UpdateString("metadata.lang","en-ca")
$http.SetRequestHeader("Content-Type","application/json")
$resp = New-Object Chilkat.HttpResponse
$success = $http.HttpJson("POST","https://domain.com/",$json,"application/json",$resp)
if ($success -eq $false) {
    $($http.LastErrorText)
    exit
}
$sbResponseBody = New-Object Chilkat.StringBuilder
$resp.GetBodySb($sbResponseBody)
$jResp = New-Object Chilkat.JsonObject
$jResp.LoadSb($sbResponseBody)
$jResp.EmitCompact = $false
$("Response Body:")
$($jResp.Emit())
$respStatusCode = $resp.StatusCode
$("Response Status Code = " + $respStatusCode)
if ($respStatusCode -ge 400) {
    $("Response Header:")
    $($resp.Header)
    $("Failed.")
    exit
}
# Sample JSON response:
# (Sample code for parsing the JSON response is shown below)
# {
#   "messages": [
#     {
#       "id": "5f748c1a2b5315fc007e7977",
#       "received": "2020-09-30T13:46:02.733Z",
#       "author": {
#         "type": "business",
#         "displayName": "Steve",
#         "avatarUrl": "https://www.gravatar.com/image.jpg"
#       },
#       "content": {
#         "type": "text",
#         "text": "Hello!"
#       },
#       "metadata": {
#         "lang": "en-ca"
#       },
#       "source": {
#         "type": "api:conversations"
#       }
#     }
#   ]
# }
# Sample code for parsing the JSON response...
# Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
$i = 0
$count_i = $jResp.SizeOfArray("messages")
while ($i -lt $count_i) {
    $jResp.I = $i
    $id = $jResp.StringOf("messages[i].id")
    $received = $jResp.StringOf("messages[i].received")
    $v_Type = $jResp.StringOf("messages[i].author.type")
    $DisplayName = $jResp.StringOf("messages[i].author.displayName")
    $AvatarUrl = $jResp.StringOf("messages[i].author.avatarUrl")
    $contentType = $jResp.StringOf("messages[i].content.type")
    $Text = $jResp.StringOf("messages[i].content.text")
    $Lang = $jResp.StringOf("messages[i].metadata.lang")
    $sourceType = $jResp.StringOf("messages[i].source.type")
    $i = $i + 1
}
        Curl Command
        curl -X POST
	-u 'username:password'
	-H "Content-Type: application/json"
	-d '{
    "author": {
        "type": "business",
        "displayName": "Steve",
        "avatarUrl": "https://www.gravatar.com/image.jpg"
    },
    "content": {
        "type": "text",
        "text": "Hello!"
    },
    "metadata": {
        "lang": "en-ca"
    }
}'
https://domain.com/
        Postman Collection Item JSON
        {
  "name": "Post Message",
  "_postman_id": "28e280a8-5ef8-4ca0-90fc-788603ddd036",
  "request": {
    "method": "POST",
    "header": [
      {
        "key": "Content-Type",
        "value": "application/json"
      }
    ],
    "body": {
      "mode": "raw",
      "raw": "{\n    \"author\": {\n        \"type\": \"business\",\n        \"displayName\": \"Steve\",\n        \"avatarUrl\": \"https://www.gravatar.com/image.jpg\"\n    },\n    \"content\": {\n        \"type\": \"text\",\n        \"text\": \"Hello!\"\n    },\n    \"metadata\": {\n        \"lang\": \"en-ca\"\n    }\n}"
    },
    "url": "{{url}}/v2/apps/{{appId}}/conversations/{{conversationId}}/messages",
    "description": "Send a message in a particular conversation."
  },
  "response": [
    {
      "id": "f660acde-ae81-4787-b433-18bf650ddef6",
      "name": "Created",
      "originalRequest": {
        "method": "POST",
        "header": [
          {
            "description": {
              "content": "Added as a part of security scheme: bearer",
              "type": "text/plain"
            },
            "key": "Authorization",
            "value": "Bearer <token>"
          }
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n    \"author\": {\n        \"type\": \"business\",\n        \"displayName\": \"Steve\",\n        \"avatarUrl\": \"https://www.gravatar.com/image.jpg\"\n    },\n    \"content\": {\n        \"type\": \"text\",\n        \"text\": \"Hello!\"\n    },\n    \"metadata\": {\n        \"lang\": \"en-ca\"\n    }\n}"
        },
        "url": {
          "raw": "{{baseUrl}}/v2/apps/:appId/conversations/:conversationId/messages",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "v2",
            "apps",
            ":appId",
            "conversations",
            ":conversationId",
            "messages"
          ],
          "variable": [
            {
              "key": "appId"
            },
            {
              "key": "conversationId"
            }
          ]
        }
      },
      "status": "Created",
      "code": 201,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n \"messages\": [\n  {\n   \"id\": \"5f748c1a2b5315fc007e7977\",\n   \"received\": \"2020-09-30T13:46:02.733Z\",\n   \"author\": {\n    \"type\": \"business\",\n    \"displayName\": \"Steve\",\n    \"avatarUrl\": \"https://www.gravatar.com/image.jpg\"\n   },\n   \"content\": {\n    \"type\": \"text\",\n    \"text\": \"Hello!\"\n   },\n   \"metadata\": {\n    \"lang\": \"en-ca\"\n   },\n   \"source\": {\n    \"type\": \"api:conversations\"\n   }\n  }\n ]\n}"
    }
  ]
}