Chilkat Online Tools

delphiAx / Support API / List Workspaces

Back to Collection Items

var
http: TChilkatHttp;
success: Integer;
sbResponseBody: TChilkatStringBuilder;
jResp: TChilkatJsonObject;
respStatusCode: Integer;
activated: WideString;
created_at: WideString;
description: WideString;
id: WideString;
position: WideString;
prefer_workspace_app_order: WideString;
ticket_form_id: WideString;
title: WideString;
updated_at: WideString;
url: WideString;
j: Integer;
count_j: Integer;
ut_1: Integer;
Lorem_ec: WideString;
sed_a: WideString;
laborum_: WideString;
dolore_72: Integer;
Duis_e27: Integer;
do_7b: Integer;
eu_6: Integer;
field: WideString;
operator: WideString;
value: WideString;
strVal: WideString;
active: WideString;
default: WideString;
Elit_0: Integer;
Loreme7: Integer;
app_installation: WideString;
categories: WideString;
permissions: WideString;
usage_1h: WideString;
usage_7d: WideString;
usage_24h: WideString;
usage_30d: WideString;
Ut_2: Integer;
Exf9: Integer;
Magna_5: Integer;
Nostrud_7: Integer;
Ex69c: Integer;
Ut_a: WideString;
Mollit__: Integer;
Deseruntc_: Integer;
Consequatd0: Integer;
Id_4a: Integer;
k: Integer;
count_k: Integer;
count: WideString;
next_page: WideString;
previous_page: WideString;
i: Integer;
count_i: Integer;

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

http := TChilkatHttp.Create(Self);

http.BasicAuth := 1;
http.Login := 'login';
http.Password := 'password';

http.SetRequestHeader('Accept','application/json');

sbResponseBody := TChilkatStringBuilder.Create(Self);
success := http.QuickGetSb('https://example.zendesk.com/api/v2/workspaces',sbResponseBody.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(http.LastErrorText);
    Exit;
  end;

jResp := TChilkatJsonObject.Create(Self);
jResp.LoadSb(sbResponseBody.ControlInterface);
jResp.EmitCompact := 0;

Memo1.Lines.Add('Response Body:');
Memo1.Lines.Add(jResp.Emit());

respStatusCode := http.LastStatus;
Memo1.Lines.Add('Response Status Code = ' + IntToStr(respStatusCode));
if (respStatusCode >= 400) then
  begin
    Memo1.Lines.Add('Response Header:');
    Memo1.Lines.Add(http.LastHeader);
    Memo1.Lines.Add('Failed.');
    Exit;
  end;

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

// {
//   "workspaces": [
//     {
//       "activated": "<boolean>",
//       "apps": [
//         {
//           "ut_1": true
//         },
//         {
//           "Lorem_ec": "ut ipsum nulla voluptate",
//           "sed_a": 38535010.16636646
//         }
//       ],
//       "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": {
//             "elit_0": 95926683,
//             "Loreme7": 1915356
//           },
//           "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": {
//             "ut_2": true,
//             "exf9": false,
//             "magna_5": 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>"
//         }
//       ],
//       "ticket_form_id": "<integer>",
//       "title": "<string>",
//       "updated_at": "<dateTime>",
//       "url": "<string>"
//     },
//     {
//       "activated": "<boolean>",
//       "apps": [
//         {
//           "laborum_": "esse elit mollit nulla",
//           "dolore_72": 44930495
//         },
//         {
//           "Duis_e27": false,
//           "do_7b": true,
//           "eu_6": true
//         }
//       ],
//       "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": {
//             "nostrud_7": false,
//             "ex69c": -43731952,
//             "ut_a": "anim nostrud pariatur",
//             "mollit__": -87941840
//           },
//           "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": {
//             "deseruntc_": false,
//             "consequatd0": 17786909,
//             "id_4a": 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>"
//         }
//       ],
//       "ticket_form_id": "<integer>",
//       "title": "<string>",
//       "updated_at": "<dateTime>",
//       "url": "<string>"
//     }
//   ],
//   "count": "<integer>",
//   "next_page": "<string>",
//   "previous_page": "<string>"
// }

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

count := jResp.StringOf('count');
next_page := jResp.StringOf('next_page');
previous_page := jResp.StringOf('previous_page');
i := 0;
count_i := jResp.SizeOfArray('workspaces');
while i < count_i do
  begin
    jResp.I := i;
    activated := jResp.StringOf('workspaces[i].activated');
    created_at := jResp.StringOf('workspaces[i].created_at');
    description := jResp.StringOf('workspaces[i].description');
    id := jResp.StringOf('workspaces[i].id');
    position := jResp.StringOf('workspaces[i].position');
    prefer_workspace_app_order := jResp.StringOf('workspaces[i].prefer_workspace_app_order');
    ticket_form_id := jResp.StringOf('workspaces[i].ticket_form_id');
    title := jResp.StringOf('workspaces[i].title');
    updated_at := jResp.StringOf('workspaces[i].updated_at');
    url := jResp.StringOf('workspaces[i].url');
    j := 0;
    count_j := jResp.SizeOfArray('workspaces[i].apps');
    while j < count_j do
      begin
        jResp.J := j;
        ut_1 := jResp.BoolOf('workspaces[i].apps[j].ut_1');
        Lorem_ec := jResp.StringOf('workspaces[i].apps[j].Lorem_ec');
        sed_a := jResp.StringOf('workspaces[i].apps[j].sed_a');
        laborum_ := jResp.StringOf('workspaces[i].apps[j].laborum_');
        dolore_72 := jResp.IntOf('workspaces[i].apps[j].dolore_72');
        Duis_e27 := jResp.BoolOf('workspaces[i].apps[j].Duis_e27');
        do_7b := jResp.BoolOf('workspaces[i].apps[j].do_7b');
        eu_6 := jResp.BoolOf('workspaces[i].apps[j].eu_6');
        j := j + 1;
      end;

    j := 0;
    count_j := jResp.SizeOfArray('workspaces[i].conditions.all');
    while j < count_j do
      begin
        jResp.J := j;
        field := jResp.StringOf('workspaces[i].conditions.all[j].field');
        operator := jResp.StringOf('workspaces[i].conditions.all[j].operator');
        value := jResp.StringOf('workspaces[i].conditions.all[j].value');
        j := j + 1;
      end;

    j := 0;
    count_j := jResp.SizeOfArray('workspaces[i].conditions.any');
    while j < count_j do
      begin
        jResp.J := j;
        field := jResp.StringOf('workspaces[i].conditions.any[j].field');
        operator := jResp.StringOf('workspaces[i].conditions.any[j].operator');
        value := jResp.StringOf('workspaces[i].conditions.any[j].value');
        j := j + 1;
      end;

    j := 0;
    count_j := jResp.SizeOfArray('workspaces[i].macro_ids');
    while j < count_j do
      begin
        jResp.J := j;
        strVal := jResp.StringOf('workspaces[i].macro_ids[j]');
        j := j + 1;
      end;

    j := 0;
    count_j := jResp.SizeOfArray('workspaces[i].macros');
    while j < count_j do
      begin
        jResp.J := j;
        strVal := jResp.StringOf('workspaces[i].macros[j]');
        j := j + 1;
      end;

    j := 0;
    count_j := jResp.SizeOfArray('workspaces[i].selected_macros');
    while j < count_j do
      begin
        jResp.J := j;
        title := jResp.StringOf('workspaces[i].selected_macros[j].title');
        active := jResp.StringOf('workspaces[i].selected_macros[j].active');
        created_at := jResp.StringOf('workspaces[i].selected_macros[j].created_at');
        default := jResp.StringOf('workspaces[i].selected_macros[j].default');
        description := jResp.StringOf('workspaces[i].selected_macros[j].description');
        id := jResp.StringOf('workspaces[i].selected_macros[j].id');
        position := jResp.StringOf('workspaces[i].selected_macros[j].position');
        Elit_0 := jResp.IntOf('workspaces[i].selected_macros[j].restriction.elit_0');
        Loreme7 := jResp.IntOf('workspaces[i].selected_macros[j].restriction.Loreme7');
        updated_at := jResp.StringOf('workspaces[i].selected_macros[j].updated_at');
        url := jResp.StringOf('workspaces[i].selected_macros[j].url');
        app_installation := jResp.StringOf('workspaces[i].selected_macros[j].app_installation');
        categories := jResp.StringOf('workspaces[i].selected_macros[j].categories');
        permissions := jResp.StringOf('workspaces[i].selected_macros[j].permissions');
        usage_1h := jResp.StringOf('workspaces[i].selected_macros[j].usage_1h');
        usage_7d := jResp.StringOf('workspaces[i].selected_macros[j].usage_7d');
        usage_24h := jResp.StringOf('workspaces[i].selected_macros[j].usage_24h');
        usage_30d := jResp.StringOf('workspaces[i].selected_macros[j].usage_30d');
        Ut_2 := jResp.BoolOf('workspaces[i].selected_macros[j].restriction.ut_2');
        Exf9 := jResp.BoolOf('workspaces[i].selected_macros[j].restriction.exf9');
        Magna_5 := jResp.BoolOf('workspaces[i].selected_macros[j].restriction.magna_5');
        Nostrud_7 := jResp.BoolOf('workspaces[i].selected_macros[j].restriction.nostrud_7');
        Ex69c := jResp.IntOf('workspaces[i].selected_macros[j].restriction.ex69c');
        Ut_a := jResp.StringOf('workspaces[i].selected_macros[j].restriction.ut_a');
        Mollit__ := jResp.IntOf('workspaces[i].selected_macros[j].restriction.mollit__');
        Deseruntc_ := jResp.BoolOf('workspaces[i].selected_macros[j].restriction.deseruntc_');
        Consequatd0 := jResp.IntOf('workspaces[i].selected_macros[j].restriction.consequatd0');
        Id_4a := jResp.BoolOf('workspaces[i].selected_macros[j].restriction.id_4a');
        k := 0;
        count_k := jResp.SizeOfArray('workspaces[i].selected_macros[j].actions');
        while k < count_k do
          begin
            jResp.K := k;
            field := jResp.StringOf('workspaces[i].selected_macros[j].actions[k].field');
            value := jResp.StringOf('workspaces[i].selected_macros[j].actions[k].value');
            k := k + 1;
          end;

        j := j + 1;
      end;

    i := i + 1;
  end;

Curl Command

curl  -u login:password -X GET
	-H "Accept: application/json"
https://example.zendesk.com/api/v2/workspaces

Postman Collection Item JSON

{
  "name": "List Workspaces",
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      }
    ],
    "url": {
      "raw": "{{baseUrl}}/api/v2/workspaces",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "api",
        "v2",
        "workspaces"
      ]
    },
    "description": "#### Allowed For\n\n* Admins, Agents\n"
  },
  "response": [
    {
      "name": "Success Response",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: basic",
            "key": "Authorization",
            "value": "Basic <credentials>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/api/v2/workspaces",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "v2",
            "workspaces"
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"workspaces\": [\n    {\n      \"activated\": \"<boolean>\",\n      \"apps\": [\n        {\n          \"ut_1\": true\n        },\n        {\n          \"Lorem_ec\": \"ut ipsum nulla voluptate\",\n          \"sed_a\": 38535010.16636646\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            \"elit_0\": 95926683,\n            \"Loreme7\": 1915356\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            \"ut_2\": true,\n            \"exf9\": false,\n            \"magna_5\": 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      \"ticket_form_id\": \"<integer>\",\n      \"title\": \"<string>\",\n      \"updated_at\": \"<dateTime>\",\n      \"url\": \"<string>\"\n    },\n    {\n      \"activated\": \"<boolean>\",\n      \"apps\": [\n        {\n          \"laborum_\": \"esse elit mollit nulla\",\n          \"dolore_72\": 44930495\n        },\n        {\n          \"Duis_e27\": false,\n          \"do_7b\": true,\n          \"eu_6\": true\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            \"nostrud_7\": false,\n            \"ex69c\": -43731952,\n            \"ut_a\": \"anim nostrud pariatur\",\n            \"mollit__\": -87941840\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            \"deseruntc_\": false,\n            \"consequatd0\": 17786909,\n            \"id_4a\": 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      \"ticket_form_id\": \"<integer>\",\n      \"title\": \"<string>\",\n      \"updated_at\": \"<dateTime>\",\n      \"url\": \"<string>\"\n    }\n  ],\n  \"count\": \"<integer>\",\n  \"next_page\": \"<string>\",\n  \"previous_page\": \"<string>\"\n}"
    }
  ]
}