Why Engineering cannot code something properly (Data Export)?
I am wondering why is it so hard for Zendesk engineering to create code which exports all fields to either CSV, JSON, or XML in the same way.
Why do you have to exclude some fields (like multi-line) from CSV? Its completely illogical to create these half backed tools. How is CSV export useful if it does not have all fields? Can someone explain it to me?
Why the export includes "Description" field which is multi-line, but does not include other multi-line? Where is the logic?
More over Zendesk says one thing, and your article says something else. How is this possible? I just wrote a program for CSV and I have to redo it.
I really feel that there is no common sense in engineering department.
JIRA export will export all fields. No exception. That is how proper system should work!
-
Hi Jiri,
This may not be the answer you're after, however, I'll put it out there anyways for you.
You can use the API to pull a full list of all the ticket fields in your account and it will display in JSON format for you. It will include all ticket fields types in the API call.
Zendesk API - List Ticket fields
Best,
Amie
-
Hi Amie B
Having the ability to get JSON does not justify not to have the fields in CSV if you provide that kind of export. Why to even provide CSV when you don't have all fields then?
Your JSON format does not include Custom Field names. Only IDs. This means its very difficult to know what is what and needs to cross matched with the fields.
Also your JSON format includes tag values on fields, rather then the values itself. Again very difficult to work with it, because all the field ID and values needs to be replaced to human readable form.
Example of custom fields.
- Why we cannot have a name of the field in it?
- Why the values are tags not the real values of the fields?
- The IDs and Values needs to be converted to human readable form with additional effort. (Export to CSV uses the field names and proper values, hence it is much easier to work with)
"custom_fields": [
{
"id": 360015283851,
"value": "70_severity_4"
},
{
"id": 360016758872,
"value": null
}
], -
That's odd. When I run the /api/v2/ticket_fields call on my test account. It lists all of my ticket fields including custom fields with their names and the value names etc.
The example below is using the above API call, and it's showing you the result of a custom field in my account. A multi-select field in fact.
{
"url": "https://z3nbiscuit.zendesk.com/api/v2/ticket_fields/360042092353.json",
"id": 360042092353,
"type": "multiselect",
"title": "IT Access",
"raw_title": "IT Access",
"description": "",
"raw_description": "",
"position": 9999,
"active": true,
"required": false,
"collapsed_for_agents": false,
"regexp_for_validation": null,
"title_in_portal": "Select what IT Access",
"raw_title_in_portal": "Select what IT Access",
"visible_in_portal": true,
"editable_in_portal": true,
"required_in_portal": false,
"tag": null,
"created_at": "2020-05-27T04:10:53Z",
"updated_at": "2020-05-27T04:10:53Z",
"removable": true,
"agent_description": null,
"custom_field_options": [
{
"id": 360051230613,
"name": "AWS Access",
"raw_name": "AWS Access",
"value": "aws_access",
"default": false
},
{
"id": 360051230633,
"name": "Citrix Access",
"raw_name": "Citrix Access",
"value": "citrix_access",
"default": false
},
{
"id": 360051230653,
"name": "CRM Access",
"raw_name": "CRM Access",
"value": "crm_access",
"default": false
},
{
"id": 360051230673,
"name": "Folder/OneDrive Access",
"raw_name": "Folder/OneDrive Access",
"value": "folder/onedrive_access",
"default": false
},
{
"id": 360051230693,
"name": "Jira Confluence Access",
"raw_name": "Jira Confluence Access",
"value": "jira_confluence_access",
"default": false
},
{
"id": 360051230713,
"name": "Jira Projects Access",
"raw_name": "Jira Projects Access",
"value": "jira_projects_access",
"default": false
},
{
"id": 360051230733,
"name": "Mailbox Access",
"raw_name": "Mailbox Access",
"value": "mailbox_access",
"default": false
},
{
"id": 360051230753,
"name": "VPN Access",
"raw_name": "VPN Access",
"value": "vpn_access",
"default": false
}
]
},screenshot of code:
I'm not sure why your results display like they do in your last reply, however I can confirm that the List ticket fields API does in fact return all data relating to the ticket field that you're looking for. Even the screenshot in the developer docs here show you all the data displayed for ticket fields, whether its a system or custom, doesn't matter - https://developer.zendesk.com/rest_api/docs/support/ticket_fields#list-ticket-fields
Best,
Amie
-
Hi Ami.
I think that you are missing the point. You provide export in Zendesk interface under Reports. That export is basically useless.
I am not sure why did you bring the example of
/api/v2/ticket_fields
. This is not ticket export API.Jira or other tools provide export either into CSV or JSON, which has got everyone what normal person need. Whatever is in Zendesk does not make any sense from use case perspective.
-
Hi Jiri,
I understand your frustration; zendesk should include the option for all ticket fields out of box. I imagine it might be too much data, as many zendesk instances I've seen have so many forms and fields and could confuse the normal user.
What I do for requests like this is use code.
zenpy (python) has a beautiful wrapper to extract all data in a pretty simple format.
-
I found a code-free solution, if you have explore, you can export all the data you've ever wanted
Narrow the ticket data you're looking for in explore, configure the 'drill through metrics'
Click on the number of tickets > drill through > Export as CSV
after you download this, it can be a LOT of data - easiest way is to create a google sheets doc and import the data there.
Let me know if this works for you!
Please sign in to leave a comment.
6 Comments