The processor uses the Zendesk Incremental Exports API to initially export a complete list of items from some arbitrary milestone, and then periodically poll the API to incrementally export items that have been added or changed since the previous poll. The processor extracts data from the response and emits a flow file having an array of objects as content if the response was not empty, also placing an attribute on the flow file having the value of the number of records fetched. If the response was empty, no flow file is emitted. SplitJson processor can be used the split the array of records into distinct flow files where each flow file will contain exactly one record.
Zendesk Incremental Exports API uses basic authentication. Either a password or an authentication token have to be provided. Authentication token can be created in Zendesk API Settings, so the users don't have to expose their passwords, and also auth tokens can be revoked quickly if necessary.
Zendesk Incremental Exports API supports cursor and time based export methods. Cursor based method is the preferred way and should be used where available. Due to the limitations of time based export the result set may contain duplicated records. For more details on export methods please visit this guide
Because of limitations with time-based pagination, the exported data may contain duplicate items. The processor won't do the deduplication, instead DetectDuplicate or DeduplicateRecord processors can be used with UpdateAttribute processor to extract the necessary attributes from the flow file content. Please see the following guide for details and the list of attributes to use in the deduplication process.