box-node-sdk 1.39.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/CHANGELOG.md +233 -199
  2. package/README.md +48 -18
  3. package/lib/api-request.js +5 -5
  4. package/lib/api-request.js.map +1 -1
  5. package/lib/box-client.d.ts +12 -10
  6. package/lib/box-client.js +8 -8
  7. package/lib/box-node-sdk.d.ts +23 -10
  8. package/lib/box-node-sdk.js +40 -11
  9. package/lib/box-node-sdk.js.map +1 -1
  10. package/lib/chunked-uploader.js.map +1 -1
  11. package/lib/managers/collaboration-allowlist.js +8 -8
  12. package/lib/managers/collaboration-allowlist.js.map +1 -1
  13. package/lib/managers/collaborations.js +3 -3
  14. package/lib/managers/collaborations.js.map +1 -1
  15. package/lib/managers/collections.js +1 -1
  16. package/lib/managers/collections.js.map +1 -1
  17. package/lib/managers/comments.js +3 -3
  18. package/lib/managers/comments.js.map +1 -1
  19. package/lib/managers/device-pins.js +3 -3
  20. package/lib/managers/device-pins.js.map +1 -1
  21. package/lib/managers/enterprise.d.ts +2 -0
  22. package/lib/managers/enterprise.js +6 -5
  23. package/lib/managers/enterprise.js.map +1 -1
  24. package/lib/managers/events.js +3 -3
  25. package/lib/managers/events.js.map +1 -1
  26. package/lib/managers/files.d.ts +14 -0
  27. package/lib/managers/files.js +39 -39
  28. package/lib/managers/files.js.map +1 -1
  29. package/lib/managers/folders.d.ts +14 -1
  30. package/lib/managers/folders.js +20 -23
  31. package/lib/managers/folders.js.map +1 -1
  32. package/lib/managers/groups.js +11 -11
  33. package/lib/managers/groups.js.map +1 -1
  34. package/lib/managers/legal-hold-policies.js +11 -11
  35. package/lib/managers/legal-hold-policies.js.map +1 -1
  36. package/lib/managers/metadata.d.ts +4 -2
  37. package/lib/managers/metadata.js +28 -14
  38. package/lib/managers/metadata.js.map +1 -1
  39. package/lib/managers/recent-items.js +1 -1
  40. package/lib/managers/recent-items.js.map +1 -1
  41. package/lib/managers/retention-policies.js +11 -11
  42. package/lib/managers/retention-policies.js.map +1 -1
  43. package/lib/managers/search.js +1 -1
  44. package/lib/managers/search.js.map +1 -1
  45. package/lib/managers/sign-requests.generated.js +21 -10
  46. package/lib/managers/sign-requests.generated.js.map +1 -1
  47. package/lib/managers/storage-policies.js +7 -7
  48. package/lib/managers/storage-policies.js.map +1 -1
  49. package/lib/managers/tasks.js +10 -10
  50. package/lib/managers/tasks.js.map +1 -1
  51. package/lib/managers/terms-of-service.js +8 -8
  52. package/lib/managers/terms-of-service.js.map +1 -1
  53. package/lib/managers/trash.js +1 -1
  54. package/lib/managers/trash.js.map +1 -1
  55. package/lib/managers/users.js +8 -8
  56. package/lib/managers/users.js.map +1 -1
  57. package/lib/managers/web-links.js +6 -6
  58. package/lib/managers/web-links.js.map +1 -1
  59. package/lib/managers/webhooks.js +5 -5
  60. package/lib/managers/webhooks.js.map +1 -1
  61. package/lib/schemas/index.d.ts +3 -3
  62. package/lib/schemas/index.js +3 -3
  63. package/lib/schemas/index.js.map +1 -1
  64. package/lib/sessions/app-auth-session.js +1 -1
  65. package/lib/sessions/app-auth-session.js.map +1 -1
  66. package/lib/sessions/{anonymous-session.d.ts → ccg-session.d.ts} +18 -15
  67. package/lib/sessions/{anonymous-session.js → ccg-session.js} +23 -23
  68. package/lib/sessions/ccg-session.js.map +1 -0
  69. package/lib/sessions/persistent-session.js +2 -2
  70. package/lib/sessions/persistent-session.js.map +1 -1
  71. package/lib/token-manager.js +11 -10
  72. package/lib/token-manager.js.map +1 -1
  73. package/package.json +11 -9
  74. package/lib/sessions/anonymous-session.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,361 +1,395 @@
1
1
  # Changelog
2
2
 
3
- ## 1.39.0 (2021-08-30)
3
+ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
- **New Features and Enhancements:**
5
+ ## [2.2.0](https://github.com/box/box-node-sdk/compare/v2.1.0...v2.2.0) (2022-04-20)
6
6
 
7
- - Add support for Box Sign API ([#658](https://github.com/box/box-node-sdk/pull/658))
8
- - Enhance TS Imports ([#656](https://github.com/box/box-node-sdk/pull/656))
9
7
 
10
- ## 1.38.0 (2021-08-05)
8
+ ### New Features and Enhancements
11
9
 
12
- **New Features and Enhancements:**
10
+ * editable shared links ([#722](https://github.com/box/box-node-sdk/issues/722)) ([f0c0135](https://github.com/box/box-node-sdk/commit/f0c0135511fde46144e6c496432104321af443f6))
13
11
 
14
- - Add sensitive-language event types for admin invites ([#648](https://github.com/box/box-node-sdk/pull/648))
15
- - Use BetterDocs to adapt JSDocs to TypeScript ([#646](https://github.com/box/box-node-sdk/pull/646))
16
- - Change ProxyAgent import to be dynamic ([#641](https://github.com/box/box-node-sdk/pull/641))
17
- - New API for get files and file versions under retention ([#585](https://github.com/box/box-node-sdk/pull/585))
12
+ ## [2.1.0](https://github.com/box/box-node-sdk/compare/v2.0.0...v2.1.0) (2022-03-28)
18
13
 
19
- **Bug Fixes:**
20
14
 
21
- - Deeply freeze Config except Buffers and Readable streams ([#651](https://github.com/box/box-node-sdk/pull/651))
22
- - Fix a typo in docs of src/managers/search.ts ([#649](https://github.com/box/box-node-sdk/pull/649))
23
- - Update broken documentation link ([#647](https://github.com/box/box-node-sdk/pull/647))
24
- - fix type annotations for exchangeToken functions ([#645](https://github.com/box/box-node-sdk/pull/645))
25
- - Deprecate files getThumbnail API in favor of getRepresentationContent ([#627](https://github.com/box/box-node-sdk/pull/627))
15
+ ### New Features and Enhancements
26
16
 
27
- ## 1.37.2 (2021-05-20)
17
+ * Client Credentials Grant authentication method ([#709](https://github.com/box/box-node-sdk/issues/709)) ([fbf4e80](https://github.com/box/box-node-sdk/commit/fbf4e80648821e38479b24bf489e7d222ae6c18f))
18
+ * Deprecating `index_name` when executing metadata query ([#686](https://github.com/box/box-node-sdk/issues/686)) ([e01cc65](https://github.com/box/box-node-sdk/commit/e01cc650e4e793955be543e93928ad82a3254492))
19
+ * **test:** add support for testing with Jest ([#676](https://github.com/box/box-node-sdk/issues/676)) ([1a11759](https://github.com/box/box-node-sdk/commit/1a11759db999510c69d6a27f7becd565620bb000))
28
20
 
29
- **Bug Fixes:**
21
+ ### Bug Fixes
30
22
 
31
- - Fix backwards compatibility issue by moving some TypeScript @types as direct dependencies ([#630](https://github.com/box/box-node-sdk/pull/630))
23
+ * Client Credentials Grant authentication method supports token down-scoping ([#710](https://github.com/box/box-node-sdk/issues/710)) ([730368f](https://github.com/box/box-node-sdk/commit/730368f410ff56e9a8c90feea2192b29c08df198))
24
+ * Fix JWT expiration field being float instead of integer ([#715](https://github.com/box/box-node-sdk/issues/715)) ([7e950f1](https://github.com/box/box-node-sdk/commit/7e950f1265a52ce251c42a186c8196089a9ed858)), closes [#713](https://github.com/box/box-node-sdk/issues/713)
32
25
 
33
- ## 1.37.1 (2021-05-19)
26
+ ## [2.0.0](https://github.com/box/box-node-sdk/compare/v1.39.0...v2.0.0) (2021-09-29)
34
27
 
35
- **Bug Fixes:**
28
+ ### ⚠ BREAKING CHANGES
36
29
 
37
- - Insensitive language: replace whitelist with allowlist ([#625](https://github.com/box/box-node-sdk/pull/625))
30
+ * Drop support for Node 6,7 ([#670](https://github.com/box/box-node-sdk/pull/670))
38
31
 
39
- ## 1.37.0 (2021-04-16)
32
+ ### New Features and Enhancements:
40
33
 
41
- **New Features and Enhancements:**
34
+ * Add support for is_external_collab_restricted User property ([#668](https://github.com/box/box-node-sdk/pull/668))
35
+ * Bump proxy-agent from 4.0.0 to 5.0.0 ([#664](https://github.com/box/box-node-sdk/pull/664))
42
36
 
43
- - Add support for copyInstanceOnItemCopy field for metadata templates ([#572](https://github.com/box/box-node-sdk/pull/572))
37
+ ## [1.39.0](https://github.com/box/box-node-sdk/compare/v1.38.0...v1.39.0) (2021-08-30)
44
38
 
45
- **Bug Fixes:**
39
+ ### New Features and Enhancements:
46
40
 
47
- - Fix webhook signature validation ([#568](https://github.com/box/box-node-sdk/pull/568))
48
- - Update dependencies to patch security vulnerabilities ([#578](https://github.com/box/box-node-sdk/pull/578))
41
+ * Add support for Box Sign API ([#658](https://github.com/box/box-node-sdk/pull/658))
42
+ * Enhance TS Imports ([#656](https://github.com/box/box-node-sdk/pull/656))
49
43
 
50
- ## 1.36.0 (2021-01-27)
44
+ ## [1.38.0](https://github.com/box/box-node-sdk/compare/v1.37.2...v1.38.0) (2021-08-05)
51
45
 
52
- **New Features and Enhancements:**
46
+ ### New Features and Enhancements:
53
47
 
54
- - Add folder lock functionality ([#560](https://github.com/box/box-node-sdk/pull/560))
55
- - Add support for filtering groups by name ([#561](https://github.com/box/box-node-sdk/pull/561))
48
+ * Add sensitive-language event types for admin invites ([#648](https://github.com/box/box-node-sdk/pull/648))
49
+ * Use BetterDocs to adapt JSDocs to TypeScript ([#646](https://github.com/box/box-node-sdk/pull/646))
50
+ * Change ProxyAgent import to be dynamic ([#641](https://github.com/box/box-node-sdk/pull/641))
51
+ * New API for get files and file versions under retention ([#585](https://github.com/box/box-node-sdk/pull/585))
56
52
 
57
- **Bug Fixes:**
53
+ ### Bug Fixes:
58
54
 
59
- - Update proxy-agent to patch proxy support issue ([#563](https://github.com/box/box-node-sdk/pull/563))
60
- - Update dependencies to patch security vulnerabilities ([#566](https://github.com/box/box-node-sdk/pull/566))
55
+ * Deeply freeze Config except Buffers and Readable streams ([#651](https://github.com/box/box-node-sdk/pull/651))
56
+ * Fix a typo in docs of src/managers/search.ts ([#649](https://github.com/box/box-node-sdk/pull/649))
57
+ * Update broken documentation link ([#647](https://github.com/box/box-node-sdk/pull/647))
58
+ * fix type annotations for exchangeToken functions ([#645](https://github.com/box/box-node-sdk/pull/645))
59
+ * Deprecate files getThumbnail API in favor of getRepresentationContent ([#627](https://github.com/box/box-node-sdk/pull/627))
61
60
 
62
- ## 1.35.0 (2020-11-02)
61
+ ## [1.37.2](https://github.com/box/box-node-sdk/compare/v1.37.1...v1.37.2) (2021-05-20)
63
62
 
64
- **New Features and Enhancements:**
63
+ ### Bug Fixes:
65
64
 
66
- - Add support for search param to get shared link items ([#547](https://github.com/box/box-node-sdk/pull/547))
65
+ * Fix backwards compatibility issue by moving some TypeScript @types as direct dependencies ([#630](https://github.com/box/box-node-sdk/pull/630))
67
66
 
68
- ## 1.34.3 (2020-10-02)
67
+ ## [1.37.1](https://github.com/box/box-node-sdk/compare/v1.37.0..v1.37.1) (2021-05-19)
69
68
 
70
- **Bug Fixes:**
69
+ ### Bug Fixes:
71
70
 
72
- - Upgrade ajv dependency ([#545](https://github.com/box/box-node-sdk/pull/545))
71
+ * Insensitive language: replace whitelist with allowlist ([#625](https://github.com/box/box-node-sdk/pull/625))
73
72
 
74
- ## 1.34.2 [2020-08-20]
73
+ ## [1.37.0](https://github.com/box/box-node-sdk/compare/v1.36.0...v1.37.0) (2021-04-16)
75
74
 
76
- - Make iterator bug fix for uploading files non breaking ([#534](https://github.com/box/box-node-sdk/pull/534))
75
+ ### New Features and Enhancements:
77
76
 
78
- ## 1.34.1 [2020-08-17]
77
+ * Add support for copyInstanceOnItemCopy field for metadata templates ([#572](https://github.com/box/box-node-sdk/pull/572))
79
78
 
80
- - Fix iterator bug for uploading new file versions ([#531](https://github.com/box/box-node-sdk/pull/531))
79
+ ### Bug Fixes:
81
80
 
82
- ## 1.34.0 [2020-08-04]
81
+ * Fix webhook signature validation ([#568](https://github.com/box/box-node-sdk/pull/568))
82
+ * Update dependencies to patch security vulnerabilities ([#578](https://github.com/box/box-node-sdk/pull/578))
83
83
 
84
- - Add zip functionality ([#525](https://github.com/box/box-node-sdk/pull/525))
85
- - Add proxy support for `http`, `https`, `socks` and `pac` protocols ([#529](https://github.com/box/box-node-sdk/pull/529))
84
+ ## [1.36.0](https://github.com/box/box-node-sdk/compare/v1.35.0...v1.36.0) (2021-01-27)
86
85
 
87
- ## 1.33.0 [2020-06-25]
86
+ ### New Features and Enhancements:
88
87
 
89
- - Add path parameter sanitization ([#505](https://github.com/box/box-node-sdk/pull/505))
90
- - Add support for all streams for uploading files ([#519](https://github.com/box/box-node-sdk/pull/519))
88
+ * Add folder lock functionality ([#560](https://github.com/box/box-node-sdk/pull/560))
89
+ * Add support for filtering groups by name ([#561](https://github.com/box/box-node-sdk/pull/561))
91
90
 
92
- ## 1.32.0 [2020-04-01]
91
+ ### Bug Fixes:
93
92
 
94
- - Temporarily removed Node 4 and Node 5 builds from Travis, due to tests not passing. Will investigate, going forward ([#495](https://github.com/box/box-node-sdk/pull/495)).
95
- - Fixed an issue where an error is thrown during a retry when a response is not returned by the previous call ([#477](https://github.com/box/box-node-sdk/pull/477)).
96
- - Added the ability to [query](./docs/metadata.md#query) Box items based on their metadata ([#487](https://github.com/box/box-node-sdk/pull/487)).
93
+ * Update proxy-agent to patch proxy support issue ([#563](https://github.com/box/box-node-sdk/pull/563))
94
+ * Update dependencies to patch security vulnerabilities ([#566](https://github.com/box/box-node-sdk/pull/566))
97
95
 
98
- ## 1.31.0 [2020-02-13]
96
+ ## [1.35.0](https://github.com/box/box-node-sdk/compare/v1.34.3...v1.35.0) (2020-11-02)
99
97
 
100
- - Fixed Authentication Request Retries
101
- - Added marker-based paging for users endpoints
102
- - Added `getNextMarker()` to PagingIterator to get the next marker
98
+ ### New Features and Enhancements:
103
99
 
104
- ## 1.30.0 [2019-11-21]
100
+ * Add support for search param to get shared link items ([#547](https://github.com/box/box-node-sdk/pull/547))
105
101
 
106
- - Deprecated Batch API methods
107
- - Added support for [token exchange](./lib/box-client.js#L495) using shared links
102
+ ## [1.34.3](https://github.com/box/box-node-sdk/compare/v1.34.2...v1.34.3) (2020-10-02)
108
103
 
109
- ## 1.29.1 [2019-08-22]
104
+ ### Bug Fixes:
110
105
 
111
- - Fixed an issue where JWT authentication requests could fail after being rate limited
106
+ * Upgrade ajv dependency ([#545](https://github.com/box/box-node-sdk/pull/545))
112
107
 
113
- ## 1.29.0 [2019-04-25]
108
+ ## [1.34.2](https://github.com/box/box-node-sdk/compare/v1.34.1...v1.34.2) (2020-08-20)
114
109
 
115
- - Added convenience methods for setting metadata on [files](./docs/metadata.md#set-metadata-on-a-file)
110
+ * Make iterator bug fix for uploading files non breaking ([#534](https://github.com/box/box-node-sdk/pull/534))
111
+
112
+ ## [1.34.1](https://github.com/box/box-node-sdk/compare/v1.34.0...v1.34.1) (2020-08-17)
113
+
114
+ * Fix iterator bug for uploading new file versions ([#531](https://github.com/box/box-node-sdk/pull/531))
115
+
116
+ ## [1.34.0](https://github.com/box/box-node-sdk/compare/v1.33.0...v1.34.0) (2020-08-04)
117
+
118
+ * Add zip functionality ([#525](https://github.com/box/box-node-sdk/pull/525))
119
+ * Add proxy support for `http`, `https`, `socks` and `pac` protocols ([#529](https://github.com/box/box-node-sdk/pull/529))
120
+
121
+ ## [1.33.0](https://github.com/box/box-node-sdk/compare/v1.32.0...v1.33.0) (2020-06-25)
122
+
123
+ * Add path parameter sanitization ([#505](https://github.com/box/box-node-sdk/pull/505))
124
+ * Add support for all streams for uploading files ([#519](https://github.com/box/box-node-sdk/pull/519))
125
+
126
+ ## [1.32.0](https://github.com/box/box-node-sdk/compare/v1.31.0...v1.32.0) (2020-04-01)
127
+
128
+ * Temporarily removed Node 4 and Node 5 builds from Travis, due to tests not passing. Will investigate, going forward ([#495](https://github.com/box/box-node-sdk/pull/495)).
129
+ * Fixed an issue where an error is thrown during a retry when a response is not returned by the previous call ([#477](https://github.com/box/box-node-sdk/pull/477)).
130
+ * Added the ability to [query](./docs/metadata.md#query) Box items based on their metadata ([#487](https://github.com/box/box-node-sdk/pull/487)).
131
+
132
+ ## [1.31.0](https://github.com/box/box-node-sdk/compare/v1.30.0...v1.31.0) (2020-02-13)
133
+
134
+ * Fixed Authentication Request Retries
135
+ * Added marker-based paging for users endpoints
136
+ * Added `getNextMarker()` to PagingIterator to get the next marker
137
+
138
+ ## [1.30.0](https://github.com/box/box-node-sdk/compare/v1.29.1...v1.30.0) (2019-11-21)
139
+
140
+ * Deprecated Batch API methods
141
+ * Added support for [token exchange](./lib/box-client.js#L495) using shared links
142
+
143
+ ## [1.29.1](https://github.com/box/box-node-sdk/compare/v1.29.0...v1.29.1) (2019-08-22)
144
+
145
+ * Fixed an issue where JWT authentication requests could fail after being rate limited
146
+
147
+ ## [1.29.0](https://github.com/box/box-node-sdk/compare/v1.28.0...v1.29.0) (2019-04-25)
148
+
149
+ * Added convenience methods for setting metadata on [files](./docs/metadata.md#set-metadata-on-a-file)
116
150
  and [folders](./docs/metadata.md#set-metadata-on-a-folder) ([#376](https://github.com/box/box-node-sdk/pull/376))
117
151
 
118
- ## 1.28.0 [2019-03-28]
152
+ ## [1.28.0](https://github.com/box/box-node-sdk/compare/v1.27.0...v1.28.0) (2019-03-28)
119
153
 
120
- - Added methods for [moving](./docs/web-links.md#move-a-web-link) and [copying](./docs/web-links.md#move-a-web-link)
154
+ * Added methods for [moving](./docs/web-links.md#move-a-web-link) and [copying](./docs/web-links.md#move-a-web-link)
121
155
  weblinks, as well as [adding or removing from a collection](./docs/web-links.md#add-web-link-to-a-collection)
122
156
 
123
- ## 1.27.0 [2019-02-28]
157
+ ## [1.27.0](https://github.com/box/box-node-sdk/compare/v1.26.2...v1.27.0) (2019-02-28)
124
158
 
125
- - Added the trace ID from API response headers to error messages for easier debugging
126
- - Added more safety checks in the error flow to protect against throwing when handling a malformed request
127
- - Added support for [retrieving a user's avatar image](./docs/users.md#get-user-avatar)
159
+ * Added the trace ID from API response headers to error messages for easier debugging
160
+ * Added more safety checks in the error flow to protect against throwing when handling a malformed request
161
+ * Added support for [retrieving a user's avatar image](./docs/users.md#get-user-avatar)
128
162
 
129
- ## 1.26.2 [2019-02-22]
163
+ ## [1.26.2](https://github.com/box/box-node-sdk/compare/v1.26.1...v1.26.2) (2019-02-22)
130
164
 
131
- - Fixed an error where under high request rates, code in the error handling logic could throw when handling a
165
+ * Fixed an error where under high request rates, code in the error handling logic could throw when handling a
132
166
  malformed request
133
167
 
134
- ## 1.26.1 [2019-02-12]
168
+ ## [1.26.1](https://github.com/box/box-node-sdk/compare/v1.26.0...v1.26.1) (2019-02-12)
135
169
 
136
- - Fixed an error where some methods could throw an error when constructing an iterator
170
+ * Fixed an error where some methods could throw an error when constructing an iterator
137
171
 
138
- ## 1.26.0 [2019-02-12]
172
+ ## [1.26.0](https://github.com/box/box-node-sdk/compare/v1.25.0...v1.26.0) (2019-02-12)
139
173
 
140
- - Added support for [replying to a comment](./docs/comments.md#reply-to-a-comment) (thanks @jpan-box!)
141
- - Fixed an issue where calling `client.events.get()` could return an iterator that would only iterate over
174
+ * Added support for [replying to a comment](./docs/comments.md#reply-to-a-comment) (thanks @jpan-box!)
175
+ * Fixed an issue where calling `client.events.get()` could return an iterator that would only iterate over
142
176
  the first chunk of events. This method will now always return the raw JSON data in order to enable manual
143
177
  paging. For automatic paging through events, `client.events.getEventStream()` or
144
178
  `client.events.getEnterpriseEventStream()` should be used instead.
145
179
 
146
- ## 1.25.0 [2019-01-24]
180
+ ## [1.25.0](https://github.com/box/box-node-sdk/compare/v1.24.1...v1.25.0) (2019-01-24)
147
181
 
148
- - Added the `retryStrategy` config parameter to allow customizing how the SDK retries failing requests
182
+ * Added the `retryStrategy` config parameter to allow customizing how the SDK retries failing requests
149
183
 
150
- ## 1.24.1 [2019-01-11]
184
+ ## [1.24.1](https://github.com/box/box-node-sdk/compare/v1.24.0...v1.24.1) (2019-01-11)
151
185
 
152
- - Fixed an issue where token expiration was not being correctly handled
186
+ * Fixed an issue where token expiration was not being correctly handled
153
187
 
154
- ## 1.24.0 [2018-12-10]
188
+ ## [1.24.0](https://github.com/box/box-node-sdk/compare/v1.23.0...v1.24.0) (2018-12-10)
155
189
 
156
- - Added a configuration option for populating the first-party client analytics header information
190
+ * Added a configuration option for populating the first-party client analytics header information
157
191
 
158
- ## 1.23.0 [2018-11-21]
192
+ ## [1.23.0](https://github.com/box/box-node-sdk/compare/vA...v1.23.0) (2018-11-21)
159
193
 
160
- - Added an `etag` option to common file and folder methods to allow handling race conditions
161
- - [`client.files.update()`](./docs/files.md#update-a-files-information)
162
- - [`client.files.delete()`](./docs/files.md#delete-a-file)
163
- - [`client.files.deletePermanently()`](./docs/trash.md#delete-a-file-from-the-trash)
164
- - [`client.files.deleteVersion()`](./docs/files.md#delete-a-previous-file-version)
165
- - [`client.folders.update()`](./docs/folders.md#update-a-folders-information)
166
- - [`client.folders.delete()`](./docs/folders.md#delete-a-folder)
167
- - [`client.folders.deletePermanently()`](./docs/trash.md#delete-a-folder-from-the-trash)
194
+ * Added an `etag` option to common file and folder methods to allow handling race conditions
195
+ * [`client.files.update()`](./docs/files.md#update-a-files-information)
196
+ * [`client.files.delete()`](./docs/files.md#delete-a-file)
197
+ * [`client.files.deletePermanently()`](./docs/trash.md#delete-a-file-from-the-trash)
198
+ * [`client.files.deleteVersion()`](./docs/files.md#delete-a-previous-file-version)
199
+ * [`client.folders.update()`](./docs/folders.md#update-a-folders-information)
200
+ * [`client.folders.delete()`](./docs/folders.md#delete-a-folder)
201
+ * [`client.folders.deletePermanently()`](./docs/trash.md#delete-a-folder-from-the-trash)
168
202
 
169
- ## 1.22.1 [2018-11-15]
203
+ ## [1.22.1](https://github.com/box/box-node-sdk/compare/v1.22.0...v1.22.1) (2018-11-15)
170
204
 
171
- - Fixed an issue where retrying JWT auth token requests would sometimes fail due to a non-unique `jti` claim
205
+ * Fixed an issue where retrying JWT auth token requests would sometimes fail due to a non-unique `jti` claim
172
206
 
173
- ## 1.22.0 [2018-09-17]
207
+ ## [1.22.0](https://github.com/box/box-node-sdk/compare/v1.21.0...v1.22.0) (2018-09-17)
174
208
 
175
- - Chunked Uploader methods now return promises for [simpler handling of chunked uploads](./docs/files.md#automatic-uploader)
176
- - File attributes to set on the newly-uploaded file can now be
209
+ * Chunked Uploader methods now return promises for [simpler handling of chunked uploads](./docs/files.md#automatic-uploader)
210
+ * File attributes to set on the newly-uploaded file can now be
177
211
  [passed via `options.fileAttributes`](./docs/files.md#automatic-uploader) when creating a Chunked Uploader
178
212
 
179
- ## 1.21.0 [2018-09-13]
213
+ ## [1.21.0](https://github.com/box/box-node-sdk/compare/v1.20.0...v1.21.0) (2018-09-13)
180
214
 
181
- - Added the ability to close an Event Stream by calling `eventStream.destroy()` (thanks @boneskull!)
182
- - Improved error messages related to certain authentication failure cases
215
+ * Added the ability to close an Event Stream by calling `eventStream.destroy()` (thanks @boneskull!)
216
+ * Improved error messages related to certain authentication failure cases
183
217
 
184
- ## 1.20.0 [2018-08-09]
218
+ ## [1.20.0](https://github.com/box/box-node-sdk/compare/v1.19.0...v1.20.0) (2018-08-09)
185
219
 
186
- - Added missing values to the `client.webhooks.triggerTypes` enum (thanks @MathersMax!)
187
- - Added support for [Metadata Cascade Policies](./docs/metadata.md#create-cascade-policy)
220
+ * Added missing values to the `client.webhooks.triggerTypes` enum (thanks @MathersMax!)
221
+ * Added support for [Metadata Cascade Policies](./docs/metadata.md#create-cascade-policy)
188
222
 
189
- ## 1.19.0 [2018-06-14]
223
+ ## [1.19.0](https://github.com/box/box-node-sdk/compare/v1.18.0...v1.19.0) (2018-06-14)
190
224
 
191
- - Added `generateRepresentations` option to [`files.getRepresentationContent()`](./docs/files.md#get-representation-content)
225
+ * Added `generateRepresentations` option to [`files.getRepresentationContent()`](./docs/files.md#get-representation-content)
192
226
 
193
- ## 1.18.0 [2018-05-24]
227
+ ## [1.18.0](https://github.com/box/box-node-sdk/compare/v1.17.0...v1.18.0) (2018-05-24)
194
228
 
195
- - Updated dependencies to resolve potential security issues:
196
- - `request@2.87.0`
197
- - Transitive dependencies of `jsonwebtoken@8.2.1`
198
- - Added a static `BoxSDK.getBasicClient()` method to enable creating a client without needing
229
+ * Updated dependencies to resolve potential security issues:
230
+ * `request@2.87.0`
231
+ * Transitive dependencies of `jsonwebtoken@8.2.1`
232
+ * Added a static `BoxSDK.getBasicClient()` method to enable creating a client without needing
199
233
  to specify a client ID and secret (thanks to @cbetta)
200
234
 
201
- ## 1.17.0 [2018-05-10]
235
+ ## [1.17.0](https://github.com/box/box-node-sdk/compare/v1.16.1...v1.17.0) (2018-05-10)
202
236
 
203
- - Updated dependencies: `request@2.85.0`, `jsonwebtoken@8.2.1`
204
- - Added support for [Storage Policies](./docs/storage-policies.md)
205
- - Added the option to use a Token Store for caching tokens with App Auth using JWT
237
+ * Updated dependencies: `request@2.85.0`, `jsonwebtoken@8.2.1`
238
+ * Added support for [Storage Policies](./docs/storage-policies.md)
239
+ * Added the option to use a Token Store for caching tokens with App Auth using JWT
206
240
 
207
- ## 1.16.1 [2018-04-26]
241
+ ## [1.16.1](https://github.com/box/box-node-sdk/compare/v1.16.0...v1.16.1) (2018-04-26)
208
242
 
209
- - Fixed a bug where metadata template deletion would not properly return results via callback
243
+ * Fixed a bug where metadata template deletion would not properly return results via callback
210
244
 
211
- ## 1.16.0 [2018-04-10]
245
+ ## [1.16.0](https://github.com/box/box-node-sdk/compare/v1.15.0...v1.16.0) (2018-04-10)
212
246
 
213
- - Added support for [assigning Retention Policies to Metadata Templates](https://github.com/box/box-node-sdk/blob/main/docs/retention-policies.md#assign-retention-policy)
247
+ * Added support for [assigning Retention Policies to Metadata Templates](https://github.com/box/box-node-sdk/blob/main/docs/retention-policies.md#assign-retention-policy)
214
248
 
215
- ## 1.15.0 [2018-03-29]
249
+ ## [1.15.0](https://github.com/box/box-node-sdk/compare/v1.14.1...v1.15.0) (2018-03-29)
216
250
 
217
- - Fixed [`client.webhooks.validateMessage() and `sdk.validateWebhookMessage()`](https://github.com/box/box-node-sdk/blob/main/docs/webhooks.md#validate-a-webhook-message)
251
+ * Fixed [`client.webhooks.validateMessage() and `sdk.validateWebhookMessage()`](https://github.com/box/box-node-sdk/blob/main/docs/webhooks.md#validate-a-webhook-message)
218
252
  to accept the request body as an `Object`
219
- - Fixed `sdk.configure()` to correct reconfigure all options
220
- - Improved error messages for API errors and added the request object as `error.request` for easier debugging
253
+ * Fixed `sdk.configure()` to correct reconfigure all options
254
+ * Improved error messages for API errors and added the request object as `error.request` for easier debugging
221
255
 
222
- ## 1.14.1 [2018-03-13]
256
+ ## [1.14.1](https://github.com/box/box-node-sdk/compare/v1.14.0...v1.14.1) (2018-03-13)
223
257
 
224
- - Fixed a bug when `files.getReadStream()` was called with null options
258
+ * Fixed a bug when `files.getReadStream()` was called with null options
225
259
 
226
- ## 1.14.0 [2018-03-12]
260
+ ## [1.14.0](https://github.com/box/box-node-sdk/compare/v1.13.0...v1.14.0) (2018-03-12)
227
261
 
228
- - Added support for [getting a metadata template by ID](./docs/metadata.md#get-by-id)
229
- - Added a `byteRange` option to [file download](./docs/files.md#download-a-file) to support partial file download
230
- - Improved error messages when using promises and in authentication flows
262
+ * Added support for [getting a metadata template by ID](./docs/metadata.md#get-by-id)
263
+ * Added a `byteRange` option to [file download](./docs/files.md#download-a-file) to support partial file download
264
+ * Improved error messages when using promises and in authentication flows
231
265
 
232
- ## 1.13.0 [2018-03-01]
266
+ ## [1.13.0](https://github.com/box/box-node-sdk/compare/v1.12.1...v1.13.0) (2018-03-01)
233
267
 
234
- - Added support for getting a [stream of file representation contents](./docs/files.md#get-representation-content)
235
- - Switched to using exponential backoff for request retries
268
+ * Added support for getting a [stream of file representation contents](./docs/files.md#get-representation-content)
269
+ * Switched to using exponential backoff for request retries
236
270
 
237
- ## 1.12.1 [2018-01-25]
271
+ ## [1.12.1](https://github.com/box/box-node-sdk/compare/v1.12.0...v1.12.1) (2018-01-25)
238
272
 
239
- - Fixed an issue where chunked uploader would not work with response streams from the request library
273
+ * Fixed an issue where chunked uploader would not work with response streams from the request library
240
274
  (0e7014561f9cd0f7f38f98536b3f0c3946231d2e)
241
275
 
242
- ## 1.12.0 [2018-01-11]
276
+ ## [1.12.0](https://github.com/box/box-node-sdk/compare/v1.11.0...v1.12.0) (2018-01-11)
243
277
 
244
- - Added support for [metadata template deletion](./docs/metadata.md#delete-metadata-template)
278
+ * Added support for [metadata template deletion](./docs/metadata.md#delete-metadata-template)
245
279
 
246
- ## 1.11.0 [2017-12-12]
280
+ ## [1.11.0](https://github.com/box/box-node-sdk/compare/v1.10.1...v1.11.0) (2017-12-12)
247
281
 
248
- - Added options to preserve file timestamps on [file upload](./docs/files.md#upload-a-file)
282
+ * Added options to preserve file timestamps on [file upload](./docs/files.md#upload-a-file)
249
283
  and to rename a file or preserve modification timestamp on [new version upload](./docs/files.md#upload-a-new-version-of-a-file)
250
- - Added [Collaboration Whitelist](./docs/collaboration-whitelist.md) functionality to allow enterprise admins
284
+ * Added [Collaboration Whitelist](./docs/collaboration-whitelist.md) functionality to allow enterprise admins
251
285
  to control which external users can collaborate on their content
252
- - Added an option to Token Exchange to generate [annotator tokens](./docs/authentication.md#annotator-tokens) for use with Box View
286
+ * Added an option to Token Exchange to generate [annotator tokens](./docs/authentication.md#annotator-tokens) for use with Box View
253
287
 
254
- ## 1.10.1 [2017-11-28]
288
+ ## [1.10.1](https://github.com/box/box-node-sdk/compare/v1.10.0...v1.10.1) (2017-11-28)
255
289
 
256
- - Updated to jsonwebtoken@8.1.0 to fix an issue where some users were getting
290
+ * Updated to jsonwebtoken@8.1.0 to fix an issue where some users were getting
257
291
  an error when using App Auth
258
292
 
259
- ## 1.10.0 [2017-01-14]
293
+ ## [1.10.0](https://github.com/box/box-node-sdk/compare/v1.9.0...v1.10.0) (2017-01-14)
260
294
 
261
- - Added support for [Terms of Service](./docs/terms-of-service.md) endpoints
262
- - Fixed a bug where receiving a collection without paging parameters from the API
295
+ * Added support for [Terms of Service](./docs/terms-of-service.md) endpoints
296
+ * Fixed a bug where receiving a collection without paging parameters from the API
263
297
  would cause the SDK to throw an exception when using the `iterators` SDK option.
264
298
  Now, this will return an iterator over the items returned by the API.
265
- - Fixed a bug in Token Exchange where passing multiple scopes would result in an error
266
- - Added support for [getting Representations info on a file](./docs/files.md#get-representation-info)
299
+ * Fixed a bug in Token Exchange where passing multiple scopes would result in an error
300
+ * Added support for [getting Representations info on a file](./docs/files.md#get-representation-info)
267
301
 
268
- ## 1.9.0 [2017-09-12]
302
+ ## [1.9.0](https://github.com/box/box-node-sdk/compare/v1.8.0...v1.9.0) (2017-09-12)
269
303
 
270
- - Fixed token methods to return bluebird Promises instead of native Promises
271
- - Added support for the `notify` and `can_view_path` options on Collaborations
304
+ * Fixed token methods to return bluebird Promises instead of native Promises
305
+ * Added support for the `notify` and `can_view_path` options on Collaborations
272
306
 
273
- ## 1.8.0 [2017-08-21]
307
+ ## [1.8.0](https://github.com/box/box-node-sdk/compare/v1.7.0...v1.8.0) (2017-08-21)
274
308
 
275
- - Added support for [Batch API](./docs/client.md#batch-api)
276
- - Fixed a bug where the Event Stream would make more API calls than necessary,
309
+ * Added support for [Batch API](./docs/client.md#batch-api)
310
+ * Fixed a bug where the Event Stream would make more API calls than necessary,
277
311
  potentially hitting Box API rate limits
278
- - Added Promise support to methods on the SDK object
279
- - Added Node.js version to the User-Agent header that the SDK sends
280
- - Fixed a bug where using multiple Persistent Clients instances could cause some
312
+ * Added Promise support to methods on the SDK object
313
+ * Added Node.js version to the User-Agent header that the SDK sends
314
+ * Fixed a bug where using multiple Persistent Clients instances could cause some
281
315
  clients to end up with expired tokens
282
316
 
283
- ## 1.7.0 [2017-07-19]
317
+ ## [1.7.0](https://github.com/box/box-node-sdk/compare/v1.6.0...v1.7.0) (2017-07-19)
284
318
 
285
- - Add support for passing IP to all token methods, and fixed a bug where a client's IP was not being correctly reported on token refreshes
319
+ * Add support for passing IP to all token methods, and fixed a bug where a client's IP was not being correctly reported on token refreshes
286
320
 
287
- ## 1.6.0 [2017-06-23]
321
+ ## [1.6.0](https://github.com/box/box-node-sdk/compare/v1.5.1...v1.6.0) (2017-06-23)
288
322
 
289
- - Added [Recent Items](./docs/recent-items.md) support
290
- - Updated app auth expiration time default value and validation
323
+ * Added [Recent Items](./docs/recent-items.md) support
324
+ * Updated app auth expiration time default value and validation
291
325
 
292
- ## 1.5.1 [2017-06-15]
326
+ ## [1.5.1](https://github.com/box/box-node-sdk/compare/v1.5.0...v1.5.1) (2017-06-15)
293
327
 
294
- - Revert deep-freezing Config properties, since it was causing errors
328
+ * Revert deep-freezing Config properties, since it was causing errors
295
329
 
296
- ## 1.5.0 [2017-06-15]
330
+ ## [1.5.0](https://github.com/box/box-node-sdk/compare/v1.4.2...v1.5.0) (2017-06-15)
297
331
 
298
- - Added support for [Token Exchange](./docs/authentication.md#token-exchange),
332
+ * Added support for [Token Exchange](./docs/authentication.md#token-exchange),
299
333
  which allows a client to get downscoped tokens suitable for passing to a browser
300
334
  app or worker process.
301
- - Ensured deeply-nested Config properties are immutable
335
+ * Ensured deeply-nested Config properties are immutable
302
336
 
303
- ## 1.4.2 [2017-05-22]
337
+ ## [1.4.2](https://github.com/box/box-node-sdk/compare/v1.4.1...v1.4.2) (2017-05-22)
304
338
 
305
- - Fixed `BoxSDK.getPreconfiguredInstance()` to configure webhook keys
339
+ * Fixed `BoxSDK.getPreconfiguredInstance()` to configure webhook keys
306
340
 
307
- ## 1.4.1 [2017-05-22]
341
+ ## [1.4.1](https://github.com/box/box-node-sdk/compare/v1.4.0...v1.4.1) (2017-05-22)
308
342
 
309
- - Fixed `BoxSDK.getPreconfiguredInstance()` when app auth setttings are not populated
343
+ * Fixed `BoxSDK.getPreconfiguredInstance()` when app auth setttings are not populated
310
344
 
311
- ## 1.4.0 [2017-05-19]
345
+ ## [1.4.0](https://github.com/box/box-node-sdk/compare/v1.3.0...v1.4.0) (2017-05-19)
312
346
 
313
- - Added support for [file collaborations](./docs/collaborations.md#add-a-collaboration).
347
+ * Added support for [file collaborations](./docs/collaborations.md#add-a-collaboration).
314
348
  Users can now invite others to collaborate on single files.
315
349
  See [the blog post](https://blog.box.com/blog/file-collaboration-api/) for more information.
316
- - Fixed an issue where users were unable to use JWT Server Auth when their computers' clocks
350
+ * Fixed an issue where users were unable to use JWT Server Auth when their computers' clocks
317
351
  were not synchronized with the Box API servers.
318
- - All asynchronous client methods now return Promises in addition to taking a
352
+ * All asynchronous client methods now return Promises in addition to taking a
319
353
  (now-optional) callback parameter, so you can write more modern JS with the SDK.
320
- - The SDK can now be preconfigured using a JSON blob that can be downloaded in the
354
+ * The SDK can now be preconfigured using a JSON blob that can be downloaded in the
321
355
  Box Dev Console for JWT Server Authentication apps, making it easier to get started
322
356
  developing!
323
- - Added support for [chunked upload](./docs/files.md#chunked-upload), where a large
357
+ * Added support for [chunked upload](./docs/files.md#chunked-upload), where a large
324
358
  file can be uploaded one piece at a time. This makes large file uploads much faster
325
359
  and more reliable, since parts can be uploaded in parallel and failed parts can be
326
360
  retried in isolation.
327
- - Added an `is_confirmed` option to [email alias creation](./docs/users.md#add-email-alias) for
361
+ * Added an `is_confirmed` option to [email alias creation](./docs/users.md#add-email-alias) for
328
362
  admins to auto-confirm the alias.
329
- - Added support for the [Enterprise Events stream](./docs/events.md#enterprise-events).
330
- - Added an option to have collections methods (e.g. `folders.getItems()`,
363
+ * Added support for the [Enterprise Events stream](./docs/events.md#enterprise-events).
364
+ * Added an option to have collections methods (e.g. `folders.getItems()`,
331
365
  `enterprise.getUsers()`, etc) return [async iterators](./README.md#iterators) that will automatically
332
366
  page through the collection. This conforms to the [proposed async iteration spec](https://github.com/tc39/proposal-async-iteration),
333
367
  which will eventually allow them to be used in ergonomic for-await-of loop syntax.
334
368
 
335
- ## 1.3.0 [2017-01-24]
369
+ ## [1.3.0](https://github.com/box/box-node-sdk/compare/v1.2.0...v1.3.0) (2017-01-24)
336
370
 
337
- - Added `BoxSDK.validateWebhookMessage()` and `client.webhooks.validateMessage()` for validating webhook messages from Box
371
+ * Added `BoxSDK.validateWebhookMessage()` and `client.webhooks.validateMessage()` for validating webhook messages from Box
338
372
 
339
- ## 1.2.0 [2016-12-12]
373
+ ## [1.2.0](https://github.com/box/box-node-sdk/compare/v1.1.0...v1.2.0) (2016-12-12)
340
374
 
341
- - Added methods for all API endpoints; we now have full API coverage :tada:
342
- - Added support for renaming a file or folder on copy
343
- - Added `client.asUser(userID)` and `client.asSelf()` to support making calls on behalf of managed users
344
- - Fixed event streams so they don't go into an infinite error loop when auth expires
345
- - Fixed an error where App Auth clients would not be able to authorize due to clock skew
346
- - Fixed the `mdfilters` parameter in `client.search.query()` to support metadata search
347
- - Cloned options objects to prevent modification of passed-in objects by the SDK
348
- - Added better error messaging to the sample app
375
+ * Added methods for all API endpoints; we now have full API coverage :tada:
376
+ * Added support for renaming a file or folder on copy
377
+ * Added `client.asUser(userID)` and `client.asSelf()` to support making calls on behalf of managed users
378
+ * Fixed event streams so they don't go into an infinite error loop when auth expires
379
+ * Fixed an error where App Auth clients would not be able to authorize due to clock skew
380
+ * Fixed the `mdfilters` parameter in `client.search.query()` to support metadata search
381
+ * Cloned options objects to prevent modification of passed-in objects by the SDK
382
+ * Added better error messaging to the sample app
349
383
 
350
- ## 1.1.0 [2016-09-27]
384
+ ## [1.1.0](https://github.com/box/box-node-sdk/compare/v1.0.0...v1.1.0) (2016-09-27)
351
385
 
352
- - Added endpoint to get a file's tasks
353
- - Fixed issues with stream uploads
354
- - Improved performance of file uploads
355
- - Added endpoints to delete files and folders from trash
356
- - Added endpoint to get a trashed folder
357
- - Upgraded request dependency to fix ReDoS vulnerability
386
+ * Added endpoint to get a file's tasks
387
+ * Fixed issues with stream uploads
388
+ * Improved performance of file uploads
389
+ * Added endpoints to delete files and folders from trash
390
+ * Added endpoint to get a trashed folder
391
+ * Upgraded request dependency to fix ReDoS vulnerability
358
392
 
359
- ## 1.0.0 [2016-07-13]
393
+ ## [1.0.0] (2016-07-13)
360
394
 
361
395
  Initial release.