1 | # @androozka/zendesk-api-js
|
2 |
|
3 | ![npm](https://img.shields.io/npm/v/@androozka/zendesk-api-js)
|
4 | [![Build Status](https://travis-ci.com/androozka/zendesk-api-js.svg?branch=master)](https://travis-ci.com/androozka/zendesk-api-js)
|
5 | [![codecov](https://codecov.io/gh/androozka/zendesk-api-js/branch/master/graph/badge.svg)](https://codecov.io/gh/androozka/zendesk-api-js)
|
6 | [![David](https://img.shields.io/david/androozka/zendesk-api-js)](https://david-dm.org/androozka/zendesk-api-js)
|
7 | [![install size](https://packagephobia.now.sh/badge?p=@androozka/zendesk-api-js)](https://packagephobia.now.sh/result?p=@androozka/zendesk-api-js)
|
8 | [![npm downloads](https://img.shields.io/npm/dt/@androozka/zendesk-api-js)](http://npm-stat.com/charts.html?package=@androozka/zendesk-api-js)
|
9 | ![Twitter Follow](https://img.shields.io/twitter/follow/androozka?label=Follow&style=social)
|
10 |
|
11 | A JS library for interacting with the Zendesk API.
|
12 |
|
13 | ## Features
|
14 |
|
15 | - Generates Zendesk API request objects 😎
|
16 | - Send prepared object directly to axios 🤯
|
17 | - Mirrors [Zendesk's API documentation](https://developer.zendesk.com/rest_api/docs/zendesk-apis/resources) 👀
|
18 |
|
19 | ## Installing
|
20 |
|
21 | ### Using npm
|
22 |
|
23 | ```bash
|
24 | npm install @androozka/zendesk-api-js
|
25 | ```
|
26 |
|
27 | ### Using yarn
|
28 |
|
29 | ```bash
|
30 | yarn add @androozka/zendesk-api-js
|
31 | ```
|
32 |
|
33 | ## Usage
|
34 |
|
35 | ### Suggested libraries
|
36 |
|
37 | ```javascript
|
38 | const base64 = require('js-base64').Base64;
|
39 | const axios = require('axios');
|
40 | ```
|
41 |
|
42 | ### Zendesk account information
|
43 |
|
44 | ```javascript
|
45 | const instance = ''; // Name of Zendesk instance
|
46 | const email = ''; // Email address of Zendesk user
|
47 | const token = ''; // Generated Zendesk token
|
48 |
|
49 | const headers = {
|
50 | 'Content-Type': 'application/json',
|
51 | Authorization: `Basic ${base64.encode(`${email}/token:${token}`)}`
|
52 | };
|
53 | ```
|
54 |
|
55 | ### Choose framework version
|
56 |
|
57 | ```javascript
|
58 | const zaf_v2 = zdApi.v2({ instance, headers });
|
59 | ```
|
60 |
|
61 | ### Selecting API endpoints
|
62 |
|
63 | ```javascript
|
64 | const { support, sunshine } = zaf_v2;
|
65 | ```
|
66 |
|
67 | ## Examples
|
68 |
|
69 | ### Add tags to a ticket
|
70 |
|
71 | ```javascript
|
72 | const data = { tags: ['tag_1', 'tag_2', ... ] }
|
73 | const req = support.tags.add({ type: 'tickets', id: 123, data });
|
74 | const res = await axios(req);
|
75 | ```
|
76 |
|
77 | ## API Coverage Status
|
78 |
|
79 | ### Support API
|
80 |
|
81 | - [x] **Search**
|
82 | - [x] **Users**
|
83 | - [x] **Tickets**
|
84 | - [x] **Ticket Metrics**
|
85 | - [x] **Tags**
|
86 |
|
87 | #### Under Construction
|
88 |
|
89 | - [ ] Views
|
90 | - [ ] Organizations
|
91 | - [ ] Groups
|
92 | - [ ] Ticket Forms
|
93 | - [ ] Ticket Fields
|
94 | - [ ] User Fields
|
95 | - [ ] Organization Fields
|
96 | - [ ] Brands
|
97 | - [ ] User Identities
|
98 | - [ ] User Passwords
|
99 | - [ ] End Users
|
100 | - [ ] Group Memberships
|
101 | - [ ] Custom Agent Roles
|
102 | - [ ] Organization Subscriptions
|
103 | - [ ] Organization Memberships
|
104 | - [ ] Requests
|
105 | - [ ] Ticket Audits
|
106 | - [ ] Ticket Comments
|
107 | - [ ] Ticket Skips
|
108 | - [ ] Ticket Metric Events
|
109 | - [ ] Ticket Activities
|
110 | - [ ] Ticket Import
|
111 | - [ ] Attachments
|
112 | - [ ] Satisfaction Ratings
|
113 | - [ ] Satisfaction Reasons
|
114 | - [ ] Suspended Tickets
|
115 | - [ ] Sessions
|
116 | - [ ] Triggers
|
117 | - [ ] Automations
|
118 | - [ ] SLA Policies
|
119 | - [ ] Targets
|
120 | - [ ] Target Failures
|
121 | - [ ] Macros
|
122 | - [ ] Dynamic Content
|
123 | - [ ] Locales
|
124 | - [ ] Schedules
|
125 | - [ ] Sharing Agreements
|
126 | - [ ] Support Addresses
|
127 | - [ ] Job Statuses
|
128 | - [ ] Skill-based Routing
|
129 | - [ ] Incremental Skill-based Routing
|
130 | - [ ] Workspaces
|
131 | - [ ] Apps
|
132 | - [ ] App Installation Locations
|
133 | - [ ] App Locations
|
134 | - [ ] OAuth Clients
|
135 | - [ ] OAuth Tokens
|
136 | - [ ] OAuth Tokens for Grant Types
|
137 | - [ ] Authorized Global Clients
|
138 | - [ ] Account Settings
|
139 | - [ ] Audit Logs
|
140 | - [ ] Bookmarks
|
141 | - [ ] Push Notification Devices
|
142 | - [ ] Resource Collections
|
143 | - [ ] Channel Framework
|
144 | - [ ] Twitter Channel
|
145 |
|
146 | ### APIs Up Next
|
147 |
|
148 | - Sunshine API
|
149 | - Help Center API
|
150 | - Chat API
|
151 | - Talk API
|
152 | - Sell API
|
153 | - Answer Bot API
|
154 | - Status API
|
155 | - Reseller API
|
156 | - NPS API
|