@appwrite.io/console 1.5.1 → 1.6.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.
- package/README.md +4 -4
- package/dist/cjs/sdk.js +7714 -9758
- package/dist/cjs/sdk.js.map +1 -1
- package/dist/esm/sdk.js +7714 -9758
- package/dist/esm/sdk.js.map +1 -1
- package/dist/iife/sdk.js +7714 -9758
- package/docs/examples/databases/update-float-attribute.md +2 -2
- package/docs/examples/databases/update-integer-attribute.md +2 -2
- package/docs/examples/health/{get-queue-usage-count.md → get-queue-stats-resources.md} +1 -1
- package/docs/examples/health/{get-queue-usage-dump.md → get-queue-stats-usage-dump.md} +1 -1
- package/docs/examples/organizations/create.md +5 -1
- package/docs/examples/organizations/update-plan.md +5 -1
- package/docs/examples/organizations/validate-invoice.md +14 -0
- package/package.json +1 -1
- package/src/client.ts +21 -4
- package/src/enums/credit-card.ts +1 -0
- package/src/enums/name.ts +3 -2
- package/src/enums/o-auth-provider.ts +1 -0
- package/src/enums/runtime.ts +3 -0
- package/src/models.ts +202 -5
- package/src/services/account.ts +126 -430
- package/src/services/assistant.ts +2 -7
- package/src/services/avatars.ts +7 -21
- package/src/services/backups.ts +24 -84
- package/src/services/console.ts +14 -49
- package/src/services/databases.ts +99 -350
- package/src/services/functions.ts +55 -192
- package/src/services/graphql.ts +4 -14
- package/src/services/health.ts +55 -207
- package/src/services/locale.ts +16 -56
- package/src/services/messaging.ts +92 -322
- package/src/services/migrations.ts +24 -84
- package/src/services/organizations.ts +118 -196
- package/src/services/project.ts +12 -42
- package/src/services/projects.ts +92 -322
- package/src/services/proxy.ts +10 -35
- package/src/services/storage.ts +27 -93
- package/src/services/teams.ts +28 -98
- package/src/services/users.ts +86 -301
- package/src/services/vcs.ts +20 -70
- package/types/enums/credit-card.d.ts +2 -1
- package/types/enums/name.d.ts +3 -2
- package/types/enums/o-auth-provider.d.ts +1 -0
- package/types/enums/runtime.d.ts +3 -0
- package/types/models.d.ts +202 -5
- package/types/services/account.d.ts +4 -128
- package/types/services/assistant.d.ts +0 -2
- package/types/services/avatars.d.ts +0 -14
- package/types/services/backups.d.ts +0 -24
- package/types/services/console.d.ts +0 -14
- package/types/services/databases.d.ts +5 -100
- package/types/services/functions.d.ts +0 -56
- package/types/services/graphql.d.ts +0 -4
- package/types/services/health.d.ts +5 -64
- package/types/services/locale.d.ts +0 -16
- package/types/services/messaging.d.ts +0 -92
- package/types/services/migrations.d.ts +0 -24
- package/types/services/organizations.d.ts +21 -60
- package/types/services/project.d.ts +0 -12
- package/types/services/projects.d.ts +0 -92
- package/types/services/proxy.d.ts +0 -10
- package/types/services/storage.d.ts +0 -30
- package/types/services/teams.d.ts +0 -28
- package/types/services/users.d.ts +0 -86
- package/types/services/vcs.d.ts +0 -20
- package/docs/examples/health/get-queue.md +0 -11
package/src/services/teams.ts
CHANGED
|
@@ -10,8 +10,6 @@ export class Teams {
|
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
-
* List teams
|
|
14
|
-
*
|
|
15
13
|
* Get a list of all the teams in which the current user is a member. You can use the parameters to filter your results.
|
|
16
14
|
*
|
|
17
15
|
* @param {string[]} queries
|
|
@@ -19,7 +17,7 @@ export class Teams {
|
|
|
19
17
|
* @throws {AppwriteException}
|
|
20
18
|
* @returns {Promise<Models.TeamList<Preferences>>}
|
|
21
19
|
*/
|
|
22
|
-
|
|
20
|
+
list<Preferences extends Models.Preferences>(queries?: string[], search?: string): Promise<Models.TeamList<Preferences>> {
|
|
23
21
|
const apiPath = '/teams';
|
|
24
22
|
const payload: Payload = {};
|
|
25
23
|
if (typeof queries !== 'undefined') {
|
|
@@ -34,10 +32,7 @@ export class Teams {
|
|
|
34
32
|
'content-type': 'application/json',
|
|
35
33
|
}
|
|
36
34
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
return await this.client.call(
|
|
35
|
+
return this.client.call(
|
|
41
36
|
'get',
|
|
42
37
|
uri,
|
|
43
38
|
apiHeaders,
|
|
@@ -45,8 +40,6 @@ export class Teams {
|
|
|
45
40
|
);
|
|
46
41
|
}
|
|
47
42
|
/**
|
|
48
|
-
* Create team
|
|
49
|
-
*
|
|
50
43
|
* Create a new team. The user who creates the team will automatically be assigned as the owner of the team. Only the users with the owner role can invite new members, add new owners and delete or update the team.
|
|
51
44
|
*
|
|
52
45
|
* @param {string} teamId
|
|
@@ -55,7 +48,7 @@ export class Teams {
|
|
|
55
48
|
* @throws {AppwriteException}
|
|
56
49
|
* @returns {Promise<Models.Team<Preferences>>}
|
|
57
50
|
*/
|
|
58
|
-
|
|
51
|
+
create<Preferences extends Models.Preferences>(teamId: string, name: string, roles?: string[]): Promise<Models.Team<Preferences>> {
|
|
59
52
|
if (typeof teamId === 'undefined') {
|
|
60
53
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
61
54
|
}
|
|
@@ -79,10 +72,7 @@ export class Teams {
|
|
|
79
72
|
'content-type': 'application/json',
|
|
80
73
|
}
|
|
81
74
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
return await this.client.call(
|
|
75
|
+
return this.client.call(
|
|
86
76
|
'post',
|
|
87
77
|
uri,
|
|
88
78
|
apiHeaders,
|
|
@@ -90,15 +80,13 @@ export class Teams {
|
|
|
90
80
|
);
|
|
91
81
|
}
|
|
92
82
|
/**
|
|
93
|
-
* Get team
|
|
94
|
-
*
|
|
95
83
|
* Get a team by its ID. All team members have read access for this resource.
|
|
96
84
|
*
|
|
97
85
|
* @param {string} teamId
|
|
98
86
|
* @throws {AppwriteException}
|
|
99
87
|
* @returns {Promise<Models.Team<Preferences>>}
|
|
100
88
|
*/
|
|
101
|
-
|
|
89
|
+
get<Preferences extends Models.Preferences>(teamId: string): Promise<Models.Team<Preferences>> {
|
|
102
90
|
if (typeof teamId === 'undefined') {
|
|
103
91
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
104
92
|
}
|
|
@@ -110,10 +98,7 @@ export class Teams {
|
|
|
110
98
|
'content-type': 'application/json',
|
|
111
99
|
}
|
|
112
100
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
return await this.client.call(
|
|
101
|
+
return this.client.call(
|
|
117
102
|
'get',
|
|
118
103
|
uri,
|
|
119
104
|
apiHeaders,
|
|
@@ -121,8 +106,6 @@ export class Teams {
|
|
|
121
106
|
);
|
|
122
107
|
}
|
|
123
108
|
/**
|
|
124
|
-
* Update name
|
|
125
|
-
*
|
|
126
109
|
* Update the team's name by its unique ID.
|
|
127
110
|
*
|
|
128
111
|
* @param {string} teamId
|
|
@@ -130,7 +113,7 @@ export class Teams {
|
|
|
130
113
|
* @throws {AppwriteException}
|
|
131
114
|
* @returns {Promise<Models.Team<Preferences>>}
|
|
132
115
|
*/
|
|
133
|
-
|
|
116
|
+
updateName<Preferences extends Models.Preferences>(teamId: string, name: string): Promise<Models.Team<Preferences>> {
|
|
134
117
|
if (typeof teamId === 'undefined') {
|
|
135
118
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
136
119
|
}
|
|
@@ -148,10 +131,7 @@ export class Teams {
|
|
|
148
131
|
'content-type': 'application/json',
|
|
149
132
|
}
|
|
150
133
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
return await this.client.call(
|
|
134
|
+
return this.client.call(
|
|
155
135
|
'put',
|
|
156
136
|
uri,
|
|
157
137
|
apiHeaders,
|
|
@@ -159,15 +139,13 @@ export class Teams {
|
|
|
159
139
|
);
|
|
160
140
|
}
|
|
161
141
|
/**
|
|
162
|
-
* Delete team
|
|
163
|
-
*
|
|
164
142
|
* Delete a team using its ID. Only team members with the owner role can delete the team.
|
|
165
143
|
*
|
|
166
144
|
* @param {string} teamId
|
|
167
145
|
* @throws {AppwriteException}
|
|
168
146
|
* @returns {Promise<{}>}
|
|
169
147
|
*/
|
|
170
|
-
|
|
148
|
+
delete(teamId: string): Promise<{}> {
|
|
171
149
|
if (typeof teamId === 'undefined') {
|
|
172
150
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
173
151
|
}
|
|
@@ -179,10 +157,7 @@ export class Teams {
|
|
|
179
157
|
'content-type': 'application/json',
|
|
180
158
|
}
|
|
181
159
|
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
return await this.client.call(
|
|
160
|
+
return this.client.call(
|
|
186
161
|
'delete',
|
|
187
162
|
uri,
|
|
188
163
|
apiHeaders,
|
|
@@ -190,8 +165,6 @@ export class Teams {
|
|
|
190
165
|
);
|
|
191
166
|
}
|
|
192
167
|
/**
|
|
193
|
-
* List team logs
|
|
194
|
-
*
|
|
195
168
|
* Get the team activity logs list by its unique ID.
|
|
196
169
|
*
|
|
197
170
|
* @param {string} teamId
|
|
@@ -199,7 +172,7 @@ export class Teams {
|
|
|
199
172
|
* @throws {AppwriteException}
|
|
200
173
|
* @returns {Promise<Models.LogList>}
|
|
201
174
|
*/
|
|
202
|
-
|
|
175
|
+
listLogs(teamId: string, queries?: string[]): Promise<Models.LogList> {
|
|
203
176
|
if (typeof teamId === 'undefined') {
|
|
204
177
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
205
178
|
}
|
|
@@ -214,10 +187,7 @@ export class Teams {
|
|
|
214
187
|
'content-type': 'application/json',
|
|
215
188
|
}
|
|
216
189
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
return await this.client.call(
|
|
190
|
+
return this.client.call(
|
|
221
191
|
'get',
|
|
222
192
|
uri,
|
|
223
193
|
apiHeaders,
|
|
@@ -225,8 +195,6 @@ export class Teams {
|
|
|
225
195
|
);
|
|
226
196
|
}
|
|
227
197
|
/**
|
|
228
|
-
* List team memberships
|
|
229
|
-
*
|
|
230
198
|
* Use this endpoint to list a team's members using the team's ID. All team members have read access to this endpoint. Hide sensitive attributes from the response by toggling membership privacy in the Console.
|
|
231
199
|
*
|
|
232
200
|
* @param {string} teamId
|
|
@@ -235,7 +203,7 @@ export class Teams {
|
|
|
235
203
|
* @throws {AppwriteException}
|
|
236
204
|
* @returns {Promise<Models.MembershipList>}
|
|
237
205
|
*/
|
|
238
|
-
|
|
206
|
+
listMemberships(teamId: string, queries?: string[], search?: string): Promise<Models.MembershipList> {
|
|
239
207
|
if (typeof teamId === 'undefined') {
|
|
240
208
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
241
209
|
}
|
|
@@ -253,10 +221,7 @@ export class Teams {
|
|
|
253
221
|
'content-type': 'application/json',
|
|
254
222
|
}
|
|
255
223
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
return await this.client.call(
|
|
224
|
+
return this.client.call(
|
|
260
225
|
'get',
|
|
261
226
|
uri,
|
|
262
227
|
apiHeaders,
|
|
@@ -264,8 +229,6 @@ export class Teams {
|
|
|
264
229
|
);
|
|
265
230
|
}
|
|
266
231
|
/**
|
|
267
|
-
* Create team membership
|
|
268
|
-
*
|
|
269
232
|
* Invite a new member to join your team. Provide an ID for existing users, or invite unregistered users using an email or phone number. If initiated from a Client SDK, Appwrite will send an email or sms with a link to join the team to the invited user, and an account will be created for them if one doesn't exist. If initiated from a Server SDK, the new member will be added automatically to the team.
|
|
270
233
|
|
|
271
234
|
You only need to provide one of a user ID, email, or phone number. Appwrite will prioritize accepting the user ID > email > phone number if you provide more than one of these parameters.
|
|
@@ -285,7 +248,7 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
285
248
|
* @throws {AppwriteException}
|
|
286
249
|
* @returns {Promise<Models.Membership>}
|
|
287
250
|
*/
|
|
288
|
-
|
|
251
|
+
createMembership(teamId: string, roles: string[], email?: string, userId?: string, phone?: string, url?: string, name?: string): Promise<Models.Membership> {
|
|
289
252
|
if (typeof teamId === 'undefined') {
|
|
290
253
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
291
254
|
}
|
|
@@ -318,10 +281,7 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
318
281
|
'content-type': 'application/json',
|
|
319
282
|
}
|
|
320
283
|
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
return await this.client.call(
|
|
284
|
+
return this.client.call(
|
|
325
285
|
'post',
|
|
326
286
|
uri,
|
|
327
287
|
apiHeaders,
|
|
@@ -329,8 +289,6 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
329
289
|
);
|
|
330
290
|
}
|
|
331
291
|
/**
|
|
332
|
-
* Get team membership
|
|
333
|
-
*
|
|
334
292
|
* Get a team member by the membership unique id. All team members have read access for this resource. Hide sensitive attributes from the response by toggling membership privacy in the Console.
|
|
335
293
|
*
|
|
336
294
|
* @param {string} teamId
|
|
@@ -338,7 +296,7 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
338
296
|
* @throws {AppwriteException}
|
|
339
297
|
* @returns {Promise<Models.Membership>}
|
|
340
298
|
*/
|
|
341
|
-
|
|
299
|
+
getMembership(teamId: string, membershipId: string): Promise<Models.Membership> {
|
|
342
300
|
if (typeof teamId === 'undefined') {
|
|
343
301
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
344
302
|
}
|
|
@@ -353,10 +311,7 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
353
311
|
'content-type': 'application/json',
|
|
354
312
|
}
|
|
355
313
|
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
return await this.client.call(
|
|
314
|
+
return this.client.call(
|
|
360
315
|
'get',
|
|
361
316
|
uri,
|
|
362
317
|
apiHeaders,
|
|
@@ -364,8 +319,6 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
364
319
|
);
|
|
365
320
|
}
|
|
366
321
|
/**
|
|
367
|
-
* Update membership
|
|
368
|
-
*
|
|
369
322
|
* Modify the roles of a team member. Only team members with the owner role have access to this endpoint. Learn more about [roles and permissions](https://appwrite.io/docs/permissions).
|
|
370
323
|
|
|
371
324
|
*
|
|
@@ -375,7 +328,7 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
375
328
|
* @throws {AppwriteException}
|
|
376
329
|
* @returns {Promise<Models.Membership>}
|
|
377
330
|
*/
|
|
378
|
-
|
|
331
|
+
updateMembership(teamId: string, membershipId: string, roles: string[]): Promise<Models.Membership> {
|
|
379
332
|
if (typeof teamId === 'undefined') {
|
|
380
333
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
381
334
|
}
|
|
@@ -396,10 +349,7 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
396
349
|
'content-type': 'application/json',
|
|
397
350
|
}
|
|
398
351
|
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
return await this.client.call(
|
|
352
|
+
return this.client.call(
|
|
403
353
|
'patch',
|
|
404
354
|
uri,
|
|
405
355
|
apiHeaders,
|
|
@@ -407,8 +357,6 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
407
357
|
);
|
|
408
358
|
}
|
|
409
359
|
/**
|
|
410
|
-
* Delete team membership
|
|
411
|
-
*
|
|
412
360
|
* This endpoint allows a user to leave a team or for a team owner to delete the membership of any other team member. You can also use this endpoint to delete a user membership even if it is not accepted.
|
|
413
361
|
*
|
|
414
362
|
* @param {string} teamId
|
|
@@ -416,7 +364,7 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
416
364
|
* @throws {AppwriteException}
|
|
417
365
|
* @returns {Promise<{}>}
|
|
418
366
|
*/
|
|
419
|
-
|
|
367
|
+
deleteMembership(teamId: string, membershipId: string): Promise<{}> {
|
|
420
368
|
if (typeof teamId === 'undefined') {
|
|
421
369
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
422
370
|
}
|
|
@@ -431,10 +379,7 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
431
379
|
'content-type': 'application/json',
|
|
432
380
|
}
|
|
433
381
|
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
return await this.client.call(
|
|
382
|
+
return this.client.call(
|
|
438
383
|
'delete',
|
|
439
384
|
uri,
|
|
440
385
|
apiHeaders,
|
|
@@ -442,8 +387,6 @@ Please note that to avoid a [Redirect Attack](https://github.com/OWASP/CheatShee
|
|
|
442
387
|
);
|
|
443
388
|
}
|
|
444
389
|
/**
|
|
445
|
-
* Update team membership status
|
|
446
|
-
*
|
|
447
390
|
* Use this endpoint to allow a user to accept an invitation to join a team after being redirected back to your app from the invitation email received by the user.
|
|
448
391
|
|
|
449
392
|
If the request is successful, a session for the user is automatically created.
|
|
@@ -456,7 +399,7 @@ If the request is successful, a session for the user is automatically created.
|
|
|
456
399
|
* @throws {AppwriteException}
|
|
457
400
|
* @returns {Promise<Models.Membership>}
|
|
458
401
|
*/
|
|
459
|
-
|
|
402
|
+
updateMembershipStatus(teamId: string, membershipId: string, userId: string, secret: string): Promise<Models.Membership> {
|
|
460
403
|
if (typeof teamId === 'undefined') {
|
|
461
404
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
462
405
|
}
|
|
@@ -483,10 +426,7 @@ If the request is successful, a session for the user is automatically created.
|
|
|
483
426
|
'content-type': 'application/json',
|
|
484
427
|
}
|
|
485
428
|
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
return await this.client.call(
|
|
429
|
+
return this.client.call(
|
|
490
430
|
'patch',
|
|
491
431
|
uri,
|
|
492
432
|
apiHeaders,
|
|
@@ -494,15 +434,13 @@ If the request is successful, a session for the user is automatically created.
|
|
|
494
434
|
);
|
|
495
435
|
}
|
|
496
436
|
/**
|
|
497
|
-
* Get team preferences
|
|
498
|
-
*
|
|
499
437
|
* Get the team's shared preferences by its unique ID. If a preference doesn't need to be shared by all team members, prefer storing them in [user preferences](https://appwrite.io/docs/references/cloud/client-web/account#getPrefs).
|
|
500
438
|
*
|
|
501
439
|
* @param {string} teamId
|
|
502
440
|
* @throws {AppwriteException}
|
|
503
441
|
* @returns {Promise<Preferences>}
|
|
504
442
|
*/
|
|
505
|
-
|
|
443
|
+
getPrefs<Preferences extends Models.Preferences>(teamId: string): Promise<Preferences> {
|
|
506
444
|
if (typeof teamId === 'undefined') {
|
|
507
445
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
508
446
|
}
|
|
@@ -514,10 +452,7 @@ If the request is successful, a session for the user is automatically created.
|
|
|
514
452
|
'content-type': 'application/json',
|
|
515
453
|
}
|
|
516
454
|
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
return await this.client.call(
|
|
455
|
+
return this.client.call(
|
|
521
456
|
'get',
|
|
522
457
|
uri,
|
|
523
458
|
apiHeaders,
|
|
@@ -525,8 +460,6 @@ If the request is successful, a session for the user is automatically created.
|
|
|
525
460
|
);
|
|
526
461
|
}
|
|
527
462
|
/**
|
|
528
|
-
* Update preferences
|
|
529
|
-
*
|
|
530
463
|
* Update the team's preferences by its unique ID. The object you pass is stored as is and replaces any previous value. The maximum allowed prefs size is 64kB and throws an error if exceeded.
|
|
531
464
|
*
|
|
532
465
|
* @param {string} teamId
|
|
@@ -534,7 +467,7 @@ If the request is successful, a session for the user is automatically created.
|
|
|
534
467
|
* @throws {AppwriteException}
|
|
535
468
|
* @returns {Promise<Preferences>}
|
|
536
469
|
*/
|
|
537
|
-
|
|
470
|
+
updatePrefs<Preferences extends Models.Preferences>(teamId: string, prefs: object): Promise<Preferences> {
|
|
538
471
|
if (typeof teamId === 'undefined') {
|
|
539
472
|
throw new AppwriteException('Missing required parameter: "teamId"');
|
|
540
473
|
}
|
|
@@ -552,10 +485,7 @@ If the request is successful, a session for the user is automatically created.
|
|
|
552
485
|
'content-type': 'application/json',
|
|
553
486
|
}
|
|
554
487
|
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
return await this.client.call(
|
|
488
|
+
return this.client.call(
|
|
559
489
|
'put',
|
|
560
490
|
uri,
|
|
561
491
|
apiHeaders,
|