VB6 / Support API / Update Workspace
Back to Collection Items
' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim http As New ChilkatHttp
Dim success As Long
http.BasicAuth = 1
http.Login = "login"
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.
' {
' "workspace": {
' "conditions": {
' "all": [
' {
' "field": "<string>",
' "operator": "<string>",
' "value": "<string>"
' },
' {
' "field": "<string>",
' "operator": "<string>",
' "value": "<string>"
' }
' ],
' "any": [
' {
' "field": "<string>",
' "operator": "<string>",
' "value": "<string>"
' },
' {
' "field": "<string>",
' "operator": "<string>",
' "value": "<string>"
' }
' ]
' },
' "description": "<string>",
' "macros": [
' "<number>",
' "<number>"
' ],
' "ticket_form_id": "<number>",
' "title": "<string>"
' }
' }
Dim json As New ChilkatJsonObject
success = json.UpdateString("workspace.conditions.all[0].field","<string>")
success = json.UpdateString("workspace.conditions.all[0].operator","<string>")
success = json.UpdateString("workspace.conditions.all[0].value","<string>")
success = json.UpdateString("workspace.conditions.all[1].field","<string>")
success = json.UpdateString("workspace.conditions.all[1].operator","<string>")
success = json.UpdateString("workspace.conditions.all[1].value","<string>")
success = json.UpdateString("workspace.conditions.any[0].field","<string>")
success = json.UpdateString("workspace.conditions.any[0].operator","<string>")
success = json.UpdateString("workspace.conditions.any[0].value","<string>")
success = json.UpdateString("workspace.conditions.any[1].field","<string>")
success = json.UpdateString("workspace.conditions.any[1].operator","<string>")
success = json.UpdateString("workspace.conditions.any[1].value","<string>")
success = json.UpdateString("workspace.description","<string>")
success = json.UpdateString("workspace.macros[0]","<number>")
success = json.UpdateString("workspace.macros[1]","<number>")
success = json.UpdateString("workspace.ticket_form_id","<number>")
success = json.UpdateString("workspace.title","<string>")
http.SetRequestHeader "Content-Type","application/json"
http.SetRequestHeader "Accept","application/json"
Dim sbRequestBody As New ChilkatStringBuilder
success = json.EmitSb(sbRequestBody)
Dim resp As ChilkatHttpResponse
Set resp = http.PTextSb("PUT","https://example.zendesk.com/api/v2/workspaces/:workspace_id",sbRequestBody,"utf-8","application/json",0,0)
If (http.LastMethodSuccess = 0) Then
Debug.Print http.LastErrorText
Exit Sub
End If
Dim sbResponseBody As New ChilkatStringBuilder
success = resp.GetBodySb(sbResponseBody)
Dim jResp As New ChilkatJsonObject
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = 0
Debug.Print "Response Body:"
Debug.Print jResp.Emit()
Dim respStatusCode As Long
respStatusCode = resp.StatusCode
Debug.Print "Response Status Code = " & respStatusCode
If (respStatusCode >= 400) Then
Debug.Print "Response Header:"
Debug.Print resp.Header
Debug.Print "Failed."
Exit Sub
End If
' Sample JSON response:
' (Sample code for parsing the JSON response is shown below)
' {
' "workspace": {
' "activated": "<boolean>",
' "apps": [
' {
' "ad_be": true,
' "ead07": 69455617,
' "adipisicinga": true
' },
' {
' "fugiat_e": false,
' "dolorf7": -57129708.70016649
' }
' ],
' "conditions": {
' "all": [
' {
' "field": "<string>",
' "operator": "<string>",
' "value": "<string>"
' },
' {
' "field": "<string>",
' "operator": "<string>",
' "value": "<string>"
' }
' ],
' "any": [
' {
' "field": "<string>",
' "operator": "<string>",
' "value": "<string>"
' },
' {
' "field": "<string>",
' "operator": "<string>",
' "value": "<string>"
' }
' ]
' },
' "created_at": "<dateTime>",
' "description": "<string>",
' "id": "<integer>",
' "macro_ids": [
' "<integer>",
' "<integer>"
' ],
' "macros": [
' "<integer>",
' "<integer>"
' ],
' "position": "<integer>",
' "prefer_workspace_app_order": "<boolean>",
' "selected_macros": [
' {
' "actions": [
' {
' "field": "<string>",
' "value": "<string>"
' },
' {
' "field": "<string>",
' "value": "<string>"
' }
' ],
' "title": "<string>",
' "active": "<boolean>",
' "created_at": "<dateTime>",
' "default": "<boolean>",
' "description": "<string>",
' "id": "<integer>",
' "position": "<integer>",
' "restriction": {
' "in_f25": true,
' "nisid81": "reprehenderit anim nostrud id",
' "minim_886": false
' },
' "updated_at": "<dateTime>",
' "url": "<string>",
' "app_installation": "<string>",
' "categories": "<string>",
' "permissions": "<string>",
' "usage_1h": "<integer>",
' "usage_7d": "<integer>",
' "usage_24h": "<integer>",
' "usage_30d": "<integer>"
' },
' {
' "actions": [
' {
' "field": "<string>",
' "value": "<string>"
' },
' {
' "field": "<string>",
' "value": "<string>"
' }
' ],
' "title": "<string>",
' "active": "<boolean>",
' "created_at": "<dateTime>",
' "default": "<boolean>",
' "description": "<string>",
' "id": "<integer>",
' "position": "<integer>",
' "restriction": {
' "culpa__d7": false,
' "ad7": true,
' "esse0": -82046233.9137964,
' "veniam_f": -91185504
' },
' "updated_at": "<dateTime>",
' "url": "<string>",
' "app_installation": "<string>",
' "categories": "<string>",
' "permissions": "<string>",
' "usage_1h": "<integer>",
' "usage_7d": "<integer>",
' "usage_24h": "<integer>",
' "usage_30d": "<integer>"
' }
' ],
' "ticket_form_id": "<integer>",
' "title": "<string>",
' "updated_at": "<dateTime>",
' "url": "<string>"
' }
' }
' Sample code for parsing the JSON response...
' Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
Dim ad_be As Long
Dim ead07 As Long
Dim adipisicinga As Long
Dim fugiat_e As Long
Dim dolorf7 As String
Dim field As String
Dim operator As String
Dim value As String
Dim strVal As String
Dim title As String
Dim active As String
Dim created_at As String
Dim default As String
Dim description As String
Dim id As String
Dim position As String
Dim In_f25 As Long
Dim Nisid81 As String
Dim Minim_886 As Long
Dim updated_at As String
Dim url As String
Dim app_installation As String
Dim categories As String
Dim permissions As String
Dim usage_1h As String
Dim usage_7d As String
Dim usage_24h As String
Dim usage_30d As String
Dim Culpa__d7 As Long
Dim Ad7 As Long
Dim Esse0 As String
Dim Veniam_f As Long
Dim j As Long
Dim count_j As Long
Dim Activated As String
Activated = jResp.StringOf("workspace.activated")
Dim Created_at As String
Created_at = jResp.StringOf("workspace.created_at")
Dim Description As String
Description = jResp.StringOf("workspace.description")
Dim Id As String
Id = jResp.StringOf("workspace.id")
Dim Position As String
Position = jResp.StringOf("workspace.position")
Dim Prefer_workspace_app_order As String
Prefer_workspace_app_order = jResp.StringOf("workspace.prefer_workspace_app_order")
Dim Ticket_form_id As String
Ticket_form_id = jResp.StringOf("workspace.ticket_form_id")
Dim Title As String
Title = jResp.StringOf("workspace.title")
Dim Updated_at As String
Updated_at = jResp.StringOf("workspace.updated_at")
Dim v_Url As String
v_Url = jResp.StringOf("workspace.url")
Dim i As Long
i = 0
Dim count_i As Long
count_i = jResp.SizeOfArray("workspace.apps")
Do While i < count_i
jResp.I = i
ad_be = jResp.BoolOf("workspace.apps[i].ad_be")
ead07 = jResp.IntOf("workspace.apps[i].ead07")
adipisicinga = jResp.BoolOf("workspace.apps[i].adipisicinga")
fugiat_e = jResp.BoolOf("workspace.apps[i].fugiat_e")
dolorf7 = jResp.StringOf("workspace.apps[i].dolorf7")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("workspace.conditions.all")
Do While i < count_i
jResp.I = i
field = jResp.StringOf("workspace.conditions.all[i].field")
operator = jResp.StringOf("workspace.conditions.all[i].operator")
value = jResp.StringOf("workspace.conditions.all[i].value")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("workspace.conditions.any")
Do While i < count_i
jResp.I = i
field = jResp.StringOf("workspace.conditions.any[i].field")
operator = jResp.StringOf("workspace.conditions.any[i].operator")
value = jResp.StringOf("workspace.conditions.any[i].value")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("workspace.macro_ids")
Do While i < count_i
jResp.I = i
strVal = jResp.StringOf("workspace.macro_ids[i]")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("workspace.macros")
Do While i < count_i
jResp.I = i
strVal = jResp.StringOf("workspace.macros[i]")
i = i + 1
Loop
i = 0
count_i = jResp.SizeOfArray("workspace.selected_macros")
Do While i < count_i
jResp.I = i
title = jResp.StringOf("workspace.selected_macros[i].title")
active = jResp.StringOf("workspace.selected_macros[i].active")
created_at = jResp.StringOf("workspace.selected_macros[i].created_at")
default = jResp.StringOf("workspace.selected_macros[i].default")
description = jResp.StringOf("workspace.selected_macros[i].description")
id = jResp.StringOf("workspace.selected_macros[i].id")
position = jResp.StringOf("workspace.selected_macros[i].position")
In_f25 = jResp.BoolOf("workspace.selected_macros[i].restriction.in_f25")
Nisid81 = jResp.StringOf("workspace.selected_macros[i].restriction.nisid81")
Minim_886 = jResp.BoolOf("workspace.selected_macros[i].restriction.minim_886")
updated_at = jResp.StringOf("workspace.selected_macros[i].updated_at")
url = jResp.StringOf("workspace.selected_macros[i].url")
app_installation = jResp.StringOf("workspace.selected_macros[i].app_installation")
categories = jResp.StringOf("workspace.selected_macros[i].categories")
permissions = jResp.StringOf("workspace.selected_macros[i].permissions")
usage_1h = jResp.StringOf("workspace.selected_macros[i].usage_1h")
usage_7d = jResp.StringOf("workspace.selected_macros[i].usage_7d")
usage_24h = jResp.StringOf("workspace.selected_macros[i].usage_24h")
usage_30d = jResp.StringOf("workspace.selected_macros[i].usage_30d")
Culpa__d7 = jResp.BoolOf("workspace.selected_macros[i].restriction.culpa__d7")
Ad7 = jResp.BoolOf("workspace.selected_macros[i].restriction.ad7")
Esse0 = jResp.StringOf("workspace.selected_macros[i].restriction.esse0")
Veniam_f = jResp.IntOf("workspace.selected_macros[i].restriction.veniam_f")
j = 0
count_j = jResp.SizeOfArray("workspace.selected_macros[i].actions")
Do While j < count_j
jResp.J = j
field = jResp.StringOf("workspace.selected_macros[i].actions[j].field")
value = jResp.StringOf("workspace.selected_macros[i].actions[j].value")
j = j + 1
Loop
i = i + 1
Loop
Curl Command
curl -u login:password -X PUT
-H "Content-Type: application/json"
-H "Accept: application/json"
-d '{
"workspace": {
"conditions": {
"all": [
{
"field": "<string>",
"operator": "<string>",
"value": "<string>"
},
{
"field": "<string>",
"operator": "<string>",
"value": "<string>"
}
],
"any": [
{
"field": "<string>",
"operator": "<string>",
"value": "<string>"
},
{
"field": "<string>",
"operator": "<string>",
"value": "<string>"
}
]
},
"description": "<string>",
"macros": [
"<number>",
"<number>"
],
"ticket_form_id": "<number>",
"title": "<string>"
}
}'
https://example.zendesk.com/api/v2/workspaces/:workspace_id
Postman Collection Item JSON
{
"name": "Update Workspace",
"request": {
"method": "PUT",
"header": [
{
"key": "Content-Type",
"value": "application/json"
},
{
"key": "Accept",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"workspace\": {\n \"conditions\": {\n \"all\": [\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n },\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"any\": [\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n },\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n }\n ]\n },\n \"description\": \"<string>\",\n \"macros\": [\n \"<number>\",\n \"<number>\"\n ],\n \"ticket_form_id\": \"<number>\",\n \"title\": \"<string>\"\n }\n}",
"options": {
"raw": {
"headerFamily": "json",
"language": "json"
}
}
},
"url": {
"raw": "{{baseUrl}}/api/v2/workspaces/:workspace_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v2",
"workspaces",
":workspace_id"
],
"variable": [
{
"key": "workspace_id",
"value": "<integer>"
}
]
},
"description": "#### Allowed For\n* Admins"
},
"response": [
{
"name": "OK",
"originalRequest": {
"method": "PUT",
"header": [
{
"key": "Content-Type",
"value": "application/json"
},
{
"description": "Added as a part of security scheme: basic",
"key": "Authorization",
"value": "Basic <credentials>"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"workspace\": {\n \"conditions\": {\n \"all\": [\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n },\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"any\": [\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n },\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n }\n ]\n },\n \"description\": \"<string>\",\n \"macros\": [\n \"<number>\",\n \"<number>\"\n ],\n \"ticket_form_id\": \"<number>\",\n \"title\": \"<string>\"\n }\n}",
"options": {
"raw": {
"headerFamily": "json",
"language": "json"
}
}
},
"url": {
"raw": "{{baseUrl}}/api/v2/workspaces/:workspace_id",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"v2",
"workspaces",
":workspace_id"
],
"variable": [
{
"key": "workspace_id"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"workspace\": {\n \"activated\": \"<boolean>\",\n \"apps\": [\n {\n \"ad_be\": true,\n \"ead07\": 69455617,\n \"adipisicinga\": true\n },\n {\n \"fugiat_e\": false,\n \"dolorf7\": -57129708.70016649\n }\n ],\n \"conditions\": {\n \"all\": [\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n },\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"any\": [\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n },\n {\n \"field\": \"<string>\",\n \"operator\": \"<string>\",\n \"value\": \"<string>\"\n }\n ]\n },\n \"created_at\": \"<dateTime>\",\n \"description\": \"<string>\",\n \"id\": \"<integer>\",\n \"macro_ids\": [\n \"<integer>\",\n \"<integer>\"\n ],\n \"macros\": [\n \"<integer>\",\n \"<integer>\"\n ],\n \"position\": \"<integer>\",\n \"prefer_workspace_app_order\": \"<boolean>\",\n \"selected_macros\": [\n {\n \"actions\": [\n {\n \"field\": \"<string>\",\n \"value\": \"<string>\"\n },\n {\n \"field\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"title\": \"<string>\",\n \"active\": \"<boolean>\",\n \"created_at\": \"<dateTime>\",\n \"default\": \"<boolean>\",\n \"description\": \"<string>\",\n \"id\": \"<integer>\",\n \"position\": \"<integer>\",\n \"restriction\": {\n \"in_f25\": true,\n \"nisid81\": \"reprehenderit anim nostrud id\",\n \"minim_886\": false\n },\n \"updated_at\": \"<dateTime>\",\n \"url\": \"<string>\",\n \"app_installation\": \"<string>\",\n \"categories\": \"<string>\",\n \"permissions\": \"<string>\",\n \"usage_1h\": \"<integer>\",\n \"usage_7d\": \"<integer>\",\n \"usage_24h\": \"<integer>\",\n \"usage_30d\": \"<integer>\"\n },\n {\n \"actions\": [\n {\n \"field\": \"<string>\",\n \"value\": \"<string>\"\n },\n {\n \"field\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"title\": \"<string>\",\n \"active\": \"<boolean>\",\n \"created_at\": \"<dateTime>\",\n \"default\": \"<boolean>\",\n \"description\": \"<string>\",\n \"id\": \"<integer>\",\n \"position\": \"<integer>\",\n \"restriction\": {\n \"culpa__d7\": false,\n \"ad7\": true,\n \"esse0\": -82046233.9137964,\n \"veniam_f\": -91185504\n },\n \"updated_at\": \"<dateTime>\",\n \"url\": \"<string>\",\n \"app_installation\": \"<string>\",\n \"categories\": \"<string>\",\n \"permissions\": \"<string>\",\n \"usage_1h\": \"<integer>\",\n \"usage_7d\": \"<integer>\",\n \"usage_24h\": \"<integer>\",\n \"usage_30d\": \"<integer>\"\n }\n ],\n \"ticket_form_id\": \"<integer>\",\n \"title\": \"<string>\",\n \"updated_at\": \"<dateTime>\",\n \"url\": \"<string>\"\n }\n}"
}
]
}