Skip to content

Zendesk

Implementation Summary

Fidesops uses the following Zendesk endpoints to retrieve and delete Personally Identifiable Information (PII) when processing a Data Subject Request (DSR). Right to Access and Right to Delete (Right to Forget) support for each endpoint is noted below.

Endpoint Right to Access Right to Delete
Search Yes No
Identities Yes No
Tickets Yes Yes
Ticket Comments Yes Yes

Connection Settings

Fidesops provides a Postman collection for easily establishing connections to your third party applications. Additional connection instructions may be found in the configuration guide.

Deletion requests are fulfilled by masking PII via UPDATE endpoints. To give fidesops permission to remove PII using DELETE endpoints, ensure the masking_strict variable in your fidesops.toml file is set to false.

Example Zendesk Configuration

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
saas_config:
  fides_key: zendesk_connector_example
  name: Zendesk SaaS Config
  type: zendesk
  description: A sample schema representing the Zendesk connector for Fidesops
  version: 0.0.1

  connector_params:
    - name: domain
    - name: username
    - name: api_key
    - name: page_size

  client_config:
    protocol: https
    host: <domain>
    authentication:
      strategy: basic
      configuration:
        username: <username>
        password: <api_key>

  test_request:
    method: GET
    path: /api/v2/users/search.json
    query_params:
      - name: query
        value: test@ethyca

  endpoints:
    - name: users
      requests:
        read:
          method: GET
          path: /api/v2/users/search.json
          query_params:
            - name: query
              value: <email>
          param_values:
            - name: email
              identity: email
          data_path: users
        delete:
          method: DELETE
          path: /api/v2/users/<user_id>.json
          param_values:
            - name: user_id
              references:
                - dataset: zendesk_connector_example
                  field: users.id
                  direction: from
    - name: user_identities
      requests:
        read:
          method: GET
          path: /api/v2/users/<user_id>/identities.json
          query_params:
            - name: page[size]
              value: <page_size>
          param_values:
            - name: user_id
              references:
                - dataset: zendesk_connector_example
                  field: users.id
                  direction: from
            - name: page_size
              connector_param: page_size
          data_path: identities
          pagination:
            strategy: link
            configuration:
              source: body
              path: links.next
    - name: tickets
      requests:
        read:
          method: GET
          path: /api/v2/users/<user_id>/tickets/requested.json
          query_params:
            - name: page[size]
              value: <page_size>
          param_values:
            - name: user_id
              references:
                - dataset: zendesk_connector_example
                  field: users.id
                  direction: from
            - name: page_size
              connector_param: page_size
          data_path: tickets
          pagination:
            strategy: link
            configuration:
              source: body
              path: links.next
        delete:
          method: DELETE
          path: /api/v2/tickets/<ticket_id>.json
          param_values:
            - name: ticket_id
              references:
                - dataset: zendesk_connector_example
                  field: tickets.id
                  direction: from
    - name: ticket_comments
      requests:
        read:
          method: GET
          path: /api/v2/tickets/<ticket_id>/comments.json
          query_params:
            - name: page[size]
              value: <page_size>
          param_values:
            - name: ticket_id
              references:
                - dataset: zendesk_connector_example
                  field: tickets.id
                  direction: from
            - name: page_size
              connector_param: page_size
          data_path: comments
          pagination:
            strategy: link
            configuration:
              source: body
              path: links.next
Back to top