Chilkat Online Tools

autoit / Support API / Incremental Sample Export

Back to Collection Items

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

$oHttp = ObjCreate("Chilkat.Http")
Local $bSuccess

$oHttp.BasicAuth = True
$oHttp.Login = "login"
$oHttp.Password = "password"

$oQueryParams = ObjCreate("Chilkat.JsonObject")
$oQueryParams.UpdateString("start_time","<integer>")

$oHttp.SetRequestHeader "Accept","application/json"

Local $oResp = $oHttp.QuickRequestParams("GET","https://example.zendesk.com/api/v2/incremental/:incremental_resource/sample",$oQueryParams)
If ($oHttp.LastMethodSuccess = False) Then
    ConsoleWrite($oHttp.LastErrorText & @CRLF)
    Exit
EndIf

$oSbResponseBody = ObjCreate("Chilkat.StringBuilder")
$oResp.GetBodySb($oSbResponseBody)

$oJResp = ObjCreate("Chilkat.JsonObject")
$oJResp.LoadSb($oSbResponseBody)
$oJResp.EmitCompact = False

ConsoleWrite("Response Body:" & @CRLF)
ConsoleWrite($oJResp.Emit() & @CRLF)

Local $iRespStatusCode = $oResp.StatusCode
ConsoleWrite("Response Status Code = " & $iRespStatusCode & @CRLF)
If ($iRespStatusCode >= 400) Then
    ConsoleWrite("Response Header:" & @CRLF)
    ConsoleWrite($oResp.Header & @CRLF)
    ConsoleWrite("Failed." & @CRLF)

    Exit
EndIf

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

; {
;   "count": "<integer>",
;   "end_of_stream": "<boolean>",
;   "end_time": "<integer>",
;   "next_page": "<string>",
;   "tickets": [
;     {
;       "requester_id": "<integer>",
;       "allow_attachments": "<boolean>",
;       "allow_channelback": "<boolean>",
;       "assignee_email": "<string>",
;       "assignee_id": "<integer>",
;       "attribute_value_ids": "<array>",
;       "brand_id": "<integer>",
;       "collaborator_ids": "<array>",
;       "collaborators": [
;         {
;           "email": "<email>",
;           "name": "<string>"
;         },
;         {
;           "email": "<email>",
;           "name": "<string>"
;         }
;       ],
;       "comment": {},
;       "created_at": "<dateTime>",
;       "custom_fields": "<array>",
;       "custom_status_id": "<integer>",
;       "description": "<string>",
;       "due_at": "<dateTime>",
;       "email_cc_ids": "<array>",
;       "email_ccs": {},
;       "external_id": "<string>",
;       "follower_ids": "<array>",
;       "followers": {},
;       "followup_ids": "<array>",
;       "forum_topic_id": "<integer>",
;       "from_messaging_channel": "<boolean>",
;       "group_id": "<integer>",
;       "has_incidents": "<boolean>",
;       "id": "<integer>",
;       "is_public": "<boolean>",
;       "macro_id": "<integer>",
;       "macro_ids": "<array>",
;       "metadata": {},
;       "organization_id": "<integer>",
;       "priority": "high",
;       "problem_id": "<integer>",
;       "raw_subject": "<string>",
;       "recipient": "<string>",
;       "requester": {},
;       "safe_update": "<boolean>",
;       "satisfaction_rating": {
;         "aliquad0": false
;       },
;       "sharing_agreement_ids": "<array>",
;       "status": "pending",
;       "subject": "<string>",
;       "submitter_id": "<integer>",
;       "tags": "<array>",
;       "ticket_form_id": "<integer>",
;       "type": "question",
;       "updated_at": "<dateTime>",
;       "updated_stamp": "<string>",
;       "url": "<string>",
;       "via": {
;         "channel": "<string>",
;         "source": {
;           "elit2f": -86657295.30733354
;         }
;       },
;       "via_followup_source_id": "<integer>",
;       "via_id": "<integer>",
;       "voice_comment": {}
;     },
;     {
;       "requester_id": "<integer>",
;       "allow_attachments": "<boolean>",
;       "allow_channelback": "<boolean>",
;       "assignee_email": "<string>",
;       "assignee_id": "<integer>",
;       "attribute_value_ids": "<array>",
;       "brand_id": "<integer>",
;       "collaborator_ids": "<array>",
;       "collaborators": [
;         {
;           "email": "<email>",
;           "name": "<string>"
;         },
;         {
;           "email": "<email>",
;           "name": "<string>"
;         }
;       ],
;       "comment": {},
;       "created_at": "<dateTime>",
;       "custom_fields": "<array>",
;       "custom_status_id": "<integer>",
;       "description": "<string>",
;       "due_at": "<dateTime>",
;       "email_cc_ids": "<array>",
;       "email_ccs": {},
;       "external_id": "<string>",
;       "follower_ids": "<array>",
;       "followers": {},
;       "followup_ids": "<array>",
;       "forum_topic_id": "<integer>",
;       "from_messaging_channel": "<boolean>",
;       "group_id": "<integer>",
;       "has_incidents": "<boolean>",
;       "id": "<integer>",
;       "is_public": "<boolean>",
;       "macro_id": "<integer>",
;       "macro_ids": "<array>",
;       "metadata": {},
;       "organization_id": "<integer>",
;       "priority": "high",
;       "problem_id": "<integer>",
;       "raw_subject": "<string>",
;       "recipient": "<string>",
;       "requester": {},
;       "safe_update": "<boolean>",
;       "satisfaction_rating": {
;         "minim_01": "minim tempor",
;         "ipsum8c2": false
;       },
;       "sharing_agreement_ids": "<array>",
;       "status": "open",
;       "subject": "<string>",
;       "submitter_id": "<integer>",
;       "tags": "<array>",
;       "ticket_form_id": "<integer>",
;       "type": "task",
;       "updated_at": "<dateTime>",
;       "updated_stamp": "<string>",
;       "url": "<string>",
;       "via": {
;         "channel": "<string>",
;         "source": {
;           "nostrud_ee": "dolore veniam consequat"
;         }
;       },
;       "via_followup_source_id": "<integer>",
;       "via_id": "<integer>",
;       "voice_comment": {}
;     }
;   ]
; }

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

Local $sRequester_id
Local $sAllow_attachments
Local $sAllow_channelback
Local $sAssignee_email
Local $sAssignee_id
Local $sAttribute_value_ids
Local $sBrand_id
Local $sCollaborator_ids
Local $sCreated_at
Local $sCustom_fields
Local $sCustom_status_id
Local $sDescription
Local $sDue_at
Local $sEmail_cc_ids
Local $sExternal_id
Local $sFollower_ids
Local $sFollowup_ids
Local $sForum_topic_id
Local $sFrom_messaging_channel
Local $sGroup_id
Local $sHas_incidents
Local $sId
Local $sIs_public
Local $sMacro_id
Local $sMacro_ids
Local $sOrganization_id
Local $sPriority
Local $sProblem_id
Local $sRaw_subject
Local $sRecipient
Local $safe_update
Local $bAliquad0
Local $sharing_agreement_ids
Local $status
Local $subject
Local $submitter_id
Local $sTags
Local $sTicket_form_id
Local $sV_type
Local $sUpdated_at
Local $sUpdated_stamp
Local $sUrl
Local $sChannel
Local $sElit2f
Local $sVia_followup_source_id
Local $sVia_id
Local $sMinim_01
Local $bIpsum8c2
Local $sNostrud_ee
Local $iJ
Local $iCount_j
Local $sEmail
Local $sName

Local $sCount = $oJResp.StringOf("count")
Local $sEnd_of_stream = $oJResp.StringOf("end_of_stream")
Local $sEnd_time = $oJResp.StringOf("end_time")
Local $sNext_page = $oJResp.StringOf("next_page")
Local $i = 0
Local $iCount_i = $oJResp.SizeOfArray("tickets")
While $i < $iCount_i
    $oJResp.I = $i
    $sRequester_id = $oJResp.StringOf("tickets[i].requester_id")
    $sAllow_attachments = $oJResp.StringOf("tickets[i].allow_attachments")
    $sAllow_channelback = $oJResp.StringOf("tickets[i].allow_channelback")
    $sAssignee_email = $oJResp.StringOf("tickets[i].assignee_email")
    $sAssignee_id = $oJResp.StringOf("tickets[i].assignee_id")
    $sAttribute_value_ids = $oJResp.StringOf("tickets[i].attribute_value_ids")
    $sBrand_id = $oJResp.StringOf("tickets[i].brand_id")
    $sCollaborator_ids = $oJResp.StringOf("tickets[i].collaborator_ids")
    $sCreated_at = $oJResp.StringOf("tickets[i].created_at")
    $sCustom_fields = $oJResp.StringOf("tickets[i].custom_fields")
    $sCustom_status_id = $oJResp.StringOf("tickets[i].custom_status_id")
    $sDescription = $oJResp.StringOf("tickets[i].description")
    $sDue_at = $oJResp.StringOf("tickets[i].due_at")
    $sEmail_cc_ids = $oJResp.StringOf("tickets[i].email_cc_ids")
    $sExternal_id = $oJResp.StringOf("tickets[i].external_id")
    $sFollower_ids = $oJResp.StringOf("tickets[i].follower_ids")
    $sFollowup_ids = $oJResp.StringOf("tickets[i].followup_ids")
    $sForum_topic_id = $oJResp.StringOf("tickets[i].forum_topic_id")
    $sFrom_messaging_channel = $oJResp.StringOf("tickets[i].from_messaging_channel")
    $sGroup_id = $oJResp.StringOf("tickets[i].group_id")
    $sHas_incidents = $oJResp.StringOf("tickets[i].has_incidents")
    $sId = $oJResp.StringOf("tickets[i].id")
    $sIs_public = $oJResp.StringOf("tickets[i].is_public")
    $sMacro_id = $oJResp.StringOf("tickets[i].macro_id")
    $sMacro_ids = $oJResp.StringOf("tickets[i].macro_ids")
    $sOrganization_id = $oJResp.StringOf("tickets[i].organization_id")
    $sPriority = $oJResp.StringOf("tickets[i].priority")
    $sProblem_id = $oJResp.StringOf("tickets[i].problem_id")
    $sRaw_subject = $oJResp.StringOf("tickets[i].raw_subject")
    $sRecipient = $oJResp.StringOf("tickets[i].recipient")
    $safe_update = $oJResp.StringOf("tickets[i].safe_update")
    $bAliquad0 = $oJResp.BoolOf("tickets[i].satisfaction_rating.aliquad0")
    $sharing_agreement_ids = $oJResp.StringOf("tickets[i].sharing_agreement_ids")
    $status = $oJResp.StringOf("tickets[i].status")
    $subject = $oJResp.StringOf("tickets[i].subject")
    $submitter_id = $oJResp.StringOf("tickets[i].submitter_id")
    $sTags = $oJResp.StringOf("tickets[i].tags")
    $sTicket_form_id = $oJResp.StringOf("tickets[i].ticket_form_id")
    $sV_type = $oJResp.StringOf("tickets[i].type")
    $sUpdated_at = $oJResp.StringOf("tickets[i].updated_at")
    $sUpdated_stamp = $oJResp.StringOf("tickets[i].updated_stamp")
    $sUrl = $oJResp.StringOf("tickets[i].url")
    $sChannel = $oJResp.StringOf("tickets[i].via.channel")
    $sElit2f = $oJResp.StringOf("tickets[i].via.source.elit2f")
    $sVia_followup_source_id = $oJResp.StringOf("tickets[i].via_followup_source_id")
    $sVia_id = $oJResp.StringOf("tickets[i].via_id")
    $sMinim_01 = $oJResp.StringOf("tickets[i].satisfaction_rating.minim_01")
    $bIpsum8c2 = $oJResp.BoolOf("tickets[i].satisfaction_rating.ipsum8c2")
    $sNostrud_ee = $oJResp.StringOf("tickets[i].via.source.nostrud_ee")
    $iJ = 0
    $iCount_j = $oJResp.SizeOfArray("tickets[i].collaborators")
    While $iJ < $iCount_j
        $oJResp.J = $iJ
        $sEmail = $oJResp.StringOf("tickets[i].collaborators[j].email")
        $sName = $oJResp.StringOf("tickets[i].collaborators[j].name")
        $iJ = $iJ + 1
    Wend
    $i = $i + 1
Wend

Curl Command

curl  -u login:password -G -d "start_time=%3Cinteger%3E"
	-H "Accept: application/json"
https://example.zendesk.com/api/v2/incremental/:incremental_resource/sample

Postman Collection Item JSON

{
  "name": "Incremental Sample Export",
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "Accept",
        "value": "application/json"
      }
    ],
    "url": {
      "raw": "{{baseUrl}}/api/v2/incremental/:incremental_resource/sample?start_time=<integer>",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "api",
        "v2",
        "incremental",
        ":incremental_resource",
        "sample"
      ],
      "query": [
        {
          "key": "start_time",
          "value": "<integer>",
          "description": "(Required) The time to start the incremental export from"
        }
      ],
      "variable": [
        {
          "key": "incremental_resource",
          "value": "<string>"
        }
      ]
    },
    "description": "Use this endpoint to test the incremental export format. It's more strict in terms of rate limiting,\nat 10 requests per 20 minutes instead of 10 requests per minute. It also returns only up to 50\nresults per request. Otherwise, it's identical to the above APIs.\n\nUse the `incremental_resource` parameter to specify the resource. Possible values are \"tickets\", \"ticket_events\", \"users\", or \"organizations\".\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/incremental/:incremental_resource/sample?start_time=<integer>",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "api",
            "v2",
            "incremental",
            ":incremental_resource",
            "sample"
          ],
          "query": [
            {
              "key": "start_time",
              "value": "<integer>",
              "description": "(Required) The time to start the incremental export from"
            }
          ],
          "variable": [
            {
              "key": "incremental_resource"
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"count\": \"<integer>\",\n  \"end_of_stream\": \"<boolean>\",\n  \"end_time\": \"<integer>\",\n  \"next_page\": \"<string>\",\n  \"tickets\": [\n    {\n      \"requester_id\": \"<integer>\",\n      \"allow_attachments\": \"<boolean>\",\n      \"allow_channelback\": \"<boolean>\",\n      \"assignee_email\": \"<string>\",\n      \"assignee_id\": \"<integer>\",\n      \"attribute_value_ids\": \"<array>\",\n      \"brand_id\": \"<integer>\",\n      \"collaborator_ids\": \"<array>\",\n      \"collaborators\": [\n        {\n          \"email\": \"<email>\",\n          \"name\": \"<string>\"\n        },\n        {\n          \"email\": \"<email>\",\n          \"name\": \"<string>\"\n        }\n      ],\n      \"comment\": {},\n      \"created_at\": \"<dateTime>\",\n      \"custom_fields\": \"<array>\",\n      \"custom_status_id\": \"<integer>\",\n      \"description\": \"<string>\",\n      \"due_at\": \"<dateTime>\",\n      \"email_cc_ids\": \"<array>\",\n      \"email_ccs\": {},\n      \"external_id\": \"<string>\",\n      \"follower_ids\": \"<array>\",\n      \"followers\": {},\n      \"followup_ids\": \"<array>\",\n      \"forum_topic_id\": \"<integer>\",\n      \"from_messaging_channel\": \"<boolean>\",\n      \"group_id\": \"<integer>\",\n      \"has_incidents\": \"<boolean>\",\n      \"id\": \"<integer>\",\n      \"is_public\": \"<boolean>\",\n      \"macro_id\": \"<integer>\",\n      \"macro_ids\": \"<array>\",\n      \"metadata\": {},\n      \"organization_id\": \"<integer>\",\n      \"priority\": \"high\",\n      \"problem_id\": \"<integer>\",\n      \"raw_subject\": \"<string>\",\n      \"recipient\": \"<string>\",\n      \"requester\": {},\n      \"safe_update\": \"<boolean>\",\n      \"satisfaction_rating\": {\n        \"aliquad0\": false\n      },\n      \"sharing_agreement_ids\": \"<array>\",\n      \"status\": \"pending\",\n      \"subject\": \"<string>\",\n      \"submitter_id\": \"<integer>\",\n      \"tags\": \"<array>\",\n      \"ticket_form_id\": \"<integer>\",\n      \"type\": \"question\",\n      \"updated_at\": \"<dateTime>\",\n      \"updated_stamp\": \"<string>\",\n      \"url\": \"<string>\",\n      \"via\": {\n        \"channel\": \"<string>\",\n        \"source\": {\n          \"elit2f\": -86657295.30733354\n        }\n      },\n      \"via_followup_source_id\": \"<integer>\",\n      \"via_id\": \"<integer>\",\n      \"voice_comment\": {}\n    },\n    {\n      \"requester_id\": \"<integer>\",\n      \"allow_attachments\": \"<boolean>\",\n      \"allow_channelback\": \"<boolean>\",\n      \"assignee_email\": \"<string>\",\n      \"assignee_id\": \"<integer>\",\n      \"attribute_value_ids\": \"<array>\",\n      \"brand_id\": \"<integer>\",\n      \"collaborator_ids\": \"<array>\",\n      \"collaborators\": [\n        {\n          \"email\": \"<email>\",\n          \"name\": \"<string>\"\n        },\n        {\n          \"email\": \"<email>\",\n          \"name\": \"<string>\"\n        }\n      ],\n      \"comment\": {},\n      \"created_at\": \"<dateTime>\",\n      \"custom_fields\": \"<array>\",\n      \"custom_status_id\": \"<integer>\",\n      \"description\": \"<string>\",\n      \"due_at\": \"<dateTime>\",\n      \"email_cc_ids\": \"<array>\",\n      \"email_ccs\": {},\n      \"external_id\": \"<string>\",\n      \"follower_ids\": \"<array>\",\n      \"followers\": {},\n      \"followup_ids\": \"<array>\",\n      \"forum_topic_id\": \"<integer>\",\n      \"from_messaging_channel\": \"<boolean>\",\n      \"group_id\": \"<integer>\",\n      \"has_incidents\": \"<boolean>\",\n      \"id\": \"<integer>\",\n      \"is_public\": \"<boolean>\",\n      \"macro_id\": \"<integer>\",\n      \"macro_ids\": \"<array>\",\n      \"metadata\": {},\n      \"organization_id\": \"<integer>\",\n      \"priority\": \"high\",\n      \"problem_id\": \"<integer>\",\n      \"raw_subject\": \"<string>\",\n      \"recipient\": \"<string>\",\n      \"requester\": {},\n      \"safe_update\": \"<boolean>\",\n      \"satisfaction_rating\": {\n        \"minim_01\": \"minim tempor\",\n        \"ipsum8c2\": false\n      },\n      \"sharing_agreement_ids\": \"<array>\",\n      \"status\": \"open\",\n      \"subject\": \"<string>\",\n      \"submitter_id\": \"<integer>\",\n      \"tags\": \"<array>\",\n      \"ticket_form_id\": \"<integer>\",\n      \"type\": \"task\",\n      \"updated_at\": \"<dateTime>\",\n      \"updated_stamp\": \"<string>\",\n      \"url\": \"<string>\",\n      \"via\": {\n        \"channel\": \"<string>\",\n        \"source\": {\n          \"nostrud_ee\": \"dolore veniam consequat\"\n        }\n      },\n      \"via_followup_source_id\": \"<integer>\",\n      \"via_id\": \"<integer>\",\n      \"voice_comment\": {}\n    }\n  ]\n}"
    }
  ]
}