1 | type Jira = { |
2 | username: string; |
3 | password: string; |
4 | domain: string; |
5 | }; |
6 | |
7 | * Update dashboard |
8 | * Updates a dashboard, replacing all the dashboard details with those provided. |
9 |
|
10 | **[Permissions](#permissions) required:** None |
11 |
|
12 | The dashboard to be updated must be owned by the user. |
13 | */ |
14 | export async function main( |
15 | auth: Jira, |
16 | id: string, |
17 | body: { |
18 | description?: string; |
19 | editPermissions: { |
20 | group?: { groupId?: string; name?: string; self?: string }; |
21 | id?: number; |
22 | project?: { |
23 | archived?: boolean; |
24 | archivedBy?: { |
25 | accountId?: string; |
26 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
27 | active?: boolean; |
28 | applicationRoles?: { |
29 | callback?: {}; |
30 | items?: { |
31 | defaultGroups?: string[]; |
32 | defaultGroupsDetails?: { |
33 | groupId?: string; |
34 | name?: string; |
35 | self?: string; |
36 | }[]; |
37 | defined?: boolean; |
38 | groupDetails?: { |
39 | groupId?: string; |
40 | name?: string; |
41 | self?: string; |
42 | }[]; |
43 | groups?: string[]; |
44 | hasUnlimitedSeats?: boolean; |
45 | key?: string; |
46 | name?: string; |
47 | numberOfSeats?: number; |
48 | platform?: boolean; |
49 | remainingSeats?: number; |
50 | selectedByDefault?: boolean; |
51 | userCount?: number; |
52 | userCountDescription?: string; |
53 | }[]; |
54 | "max-results"?: number; |
55 | pagingCallback?: {}; |
56 | size?: number; |
57 | }; |
58 | avatarUrls?: { |
59 | "16x16"?: string; |
60 | "24x24"?: string; |
61 | "32x32"?: string; |
62 | "48x48"?: string; |
63 | }; |
64 | displayName?: string; |
65 | emailAddress?: string; |
66 | expand?: string; |
67 | groups?: { |
68 | callback?: {}; |
69 | items?: { groupId?: string; name?: string; self?: string }[]; |
70 | "max-results"?: number; |
71 | pagingCallback?: {}; |
72 | size?: number; |
73 | }; |
74 | key?: string; |
75 | locale?: string; |
76 | name?: string; |
77 | self?: string; |
78 | timeZone?: string; |
79 | }; |
80 | archivedDate?: string; |
81 | assigneeType?: "PROJECT_LEAD" | "UNASSIGNED"; |
82 | avatarUrls?: { |
83 | "16x16"?: string; |
84 | "24x24"?: string; |
85 | "32x32"?: string; |
86 | "48x48"?: string; |
87 | }; |
88 | components?: { |
89 | ari?: string; |
90 | assignee?: { |
91 | accountId?: string; |
92 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
93 | active?: boolean; |
94 | applicationRoles?: { |
95 | callback?: {}; |
96 | items?: { |
97 | defaultGroups?: string[]; |
98 | defaultGroupsDetails?: { |
99 | groupId?: string; |
100 | name?: string; |
101 | self?: string; |
102 | }[]; |
103 | defined?: boolean; |
104 | groupDetails?: { |
105 | groupId?: string; |
106 | name?: string; |
107 | self?: string; |
108 | }[]; |
109 | groups?: string[]; |
110 | hasUnlimitedSeats?: boolean; |
111 | key?: string; |
112 | name?: string; |
113 | numberOfSeats?: number; |
114 | platform?: boolean; |
115 | remainingSeats?: number; |
116 | selectedByDefault?: boolean; |
117 | userCount?: number; |
118 | userCountDescription?: string; |
119 | }[]; |
120 | "max-results"?: number; |
121 | pagingCallback?: {}; |
122 | size?: number; |
123 | }; |
124 | avatarUrls?: { |
125 | "16x16"?: string; |
126 | "24x24"?: string; |
127 | "32x32"?: string; |
128 | "48x48"?: string; |
129 | }; |
130 | displayName?: string; |
131 | emailAddress?: string; |
132 | expand?: string; |
133 | groups?: { |
134 | callback?: {}; |
135 | items?: { groupId?: string; name?: string; self?: string }[]; |
136 | "max-results"?: number; |
137 | pagingCallback?: {}; |
138 | size?: number; |
139 | }; |
140 | key?: string; |
141 | locale?: string; |
142 | name?: string; |
143 | self?: string; |
144 | timeZone?: string; |
145 | }; |
146 | assigneeType?: |
147 | | "PROJECT_DEFAULT" |
148 | | "COMPONENT_LEAD" |
149 | | "PROJECT_LEAD" |
150 | | "UNASSIGNED"; |
151 | description?: string; |
152 | id?: string; |
153 | isAssigneeTypeValid?: boolean; |
154 | lead?: { |
155 | accountId?: string; |
156 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
157 | active?: boolean; |
158 | applicationRoles?: { |
159 | callback?: {}; |
160 | items?: { |
161 | defaultGroups?: string[]; |
162 | defaultGroupsDetails?: { |
163 | groupId?: string; |
164 | name?: string; |
165 | self?: string; |
166 | }[]; |
167 | defined?: boolean; |
168 | groupDetails?: { |
169 | groupId?: string; |
170 | name?: string; |
171 | self?: string; |
172 | }[]; |
173 | groups?: string[]; |
174 | hasUnlimitedSeats?: boolean; |
175 | key?: string; |
176 | name?: string; |
177 | numberOfSeats?: number; |
178 | platform?: boolean; |
179 | remainingSeats?: number; |
180 | selectedByDefault?: boolean; |
181 | userCount?: number; |
182 | userCountDescription?: string; |
183 | }[]; |
184 | "max-results"?: number; |
185 | pagingCallback?: {}; |
186 | size?: number; |
187 | }; |
188 | avatarUrls?: { |
189 | "16x16"?: string; |
190 | "24x24"?: string; |
191 | "32x32"?: string; |
192 | "48x48"?: string; |
193 | }; |
194 | displayName?: string; |
195 | emailAddress?: string; |
196 | expand?: string; |
197 | groups?: { |
198 | callback?: {}; |
199 | items?: { groupId?: string; name?: string; self?: string }[]; |
200 | "max-results"?: number; |
201 | pagingCallback?: {}; |
202 | size?: number; |
203 | }; |
204 | key?: string; |
205 | locale?: string; |
206 | name?: string; |
207 | self?: string; |
208 | timeZone?: string; |
209 | }; |
210 | leadAccountId?: string; |
211 | leadUserName?: string; |
212 | metadata?: { [k: string]: string }; |
213 | name?: string; |
214 | project?: string; |
215 | projectId?: number; |
216 | realAssignee?: { |
217 | accountId?: string; |
218 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
219 | active?: boolean; |
220 | applicationRoles?: { |
221 | callback?: {}; |
222 | items?: { |
223 | defaultGroups?: string[]; |
224 | defaultGroupsDetails?: { |
225 | groupId?: string; |
226 | name?: string; |
227 | self?: string; |
228 | }[]; |
229 | defined?: boolean; |
230 | groupDetails?: { |
231 | groupId?: string; |
232 | name?: string; |
233 | self?: string; |
234 | }[]; |
235 | groups?: string[]; |
236 | hasUnlimitedSeats?: boolean; |
237 | key?: string; |
238 | name?: string; |
239 | numberOfSeats?: number; |
240 | platform?: boolean; |
241 | remainingSeats?: number; |
242 | selectedByDefault?: boolean; |
243 | userCount?: number; |
244 | userCountDescription?: string; |
245 | }[]; |
246 | "max-results"?: number; |
247 | pagingCallback?: {}; |
248 | size?: number; |
249 | }; |
250 | avatarUrls?: { |
251 | "16x16"?: string; |
252 | "24x24"?: string; |
253 | "32x32"?: string; |
254 | "48x48"?: string; |
255 | }; |
256 | displayName?: string; |
257 | emailAddress?: string; |
258 | expand?: string; |
259 | groups?: { |
260 | callback?: {}; |
261 | items?: { groupId?: string; name?: string; self?: string }[]; |
262 | "max-results"?: number; |
263 | pagingCallback?: {}; |
264 | size?: number; |
265 | }; |
266 | key?: string; |
267 | locale?: string; |
268 | name?: string; |
269 | self?: string; |
270 | timeZone?: string; |
271 | }; |
272 | realAssigneeType?: |
273 | | "PROJECT_DEFAULT" |
274 | | "COMPONENT_LEAD" |
275 | | "PROJECT_LEAD" |
276 | | "UNASSIGNED"; |
277 | self?: string; |
278 | }[]; |
279 | deleted?: boolean; |
280 | deletedBy?: { |
281 | accountId?: string; |
282 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
283 | active?: boolean; |
284 | applicationRoles?: { |
285 | callback?: {}; |
286 | items?: { |
287 | defaultGroups?: string[]; |
288 | defaultGroupsDetails?: { |
289 | groupId?: string; |
290 | name?: string; |
291 | self?: string; |
292 | }[]; |
293 | defined?: boolean; |
294 | groupDetails?: { |
295 | groupId?: string; |
296 | name?: string; |
297 | self?: string; |
298 | }[]; |
299 | groups?: string[]; |
300 | hasUnlimitedSeats?: boolean; |
301 | key?: string; |
302 | name?: string; |
303 | numberOfSeats?: number; |
304 | platform?: boolean; |
305 | remainingSeats?: number; |
306 | selectedByDefault?: boolean; |
307 | userCount?: number; |
308 | userCountDescription?: string; |
309 | }[]; |
310 | "max-results"?: number; |
311 | pagingCallback?: {}; |
312 | size?: number; |
313 | }; |
314 | avatarUrls?: { |
315 | "16x16"?: string; |
316 | "24x24"?: string; |
317 | "32x32"?: string; |
318 | "48x48"?: string; |
319 | }; |
320 | displayName?: string; |
321 | emailAddress?: string; |
322 | expand?: string; |
323 | groups?: { |
324 | callback?: {}; |
325 | items?: { groupId?: string; name?: string; self?: string }[]; |
326 | "max-results"?: number; |
327 | pagingCallback?: {}; |
328 | size?: number; |
329 | }; |
330 | key?: string; |
331 | locale?: string; |
332 | name?: string; |
333 | self?: string; |
334 | timeZone?: string; |
335 | }; |
336 | deletedDate?: string; |
337 | description?: string; |
338 | email?: string; |
339 | expand?: string; |
340 | favourite?: boolean; |
341 | id?: string; |
342 | insight?: { lastIssueUpdateTime?: string; totalIssueCount?: number }; |
343 | isPrivate?: boolean; |
344 | issueTypeHierarchy?: { |
345 | baseLevelId?: number; |
346 | levels?: { |
347 | aboveLevelId?: number; |
348 | belowLevelId?: number; |
349 | externalUuid?: string; |
350 | hierarchyLevelNumber?: number; |
351 | id?: number; |
352 | issueTypeIds?: number[]; |
353 | level?: number; |
354 | name?: string; |
355 | projectConfigurationId?: number; |
356 | }[]; |
357 | }; |
358 | issueTypes?: { |
359 | avatarId?: number; |
360 | description?: string; |
361 | entityId?: string; |
362 | hierarchyLevel?: number; |
363 | iconUrl?: string; |
364 | id?: string; |
365 | name?: string; |
366 | scope?: { |
367 | project?: { |
368 | avatarUrls?: { |
369 | "16x16"?: string; |
370 | "24x24"?: string; |
371 | "32x32"?: string; |
372 | "48x48"?: string; |
373 | }; |
374 | id?: string; |
375 | key?: string; |
376 | name?: string; |
377 | projectCategory?: { |
378 | description?: string; |
379 | id?: string; |
380 | name?: string; |
381 | self?: string; |
382 | }; |
383 | projectTypeKey?: "software" | "service_desk" | "business"; |
384 | self?: string; |
385 | simplified?: boolean; |
386 | }; |
387 | type?: "PROJECT" | "TEMPLATE"; |
388 | [k: string]: unknown; |
389 | }; |
390 | self?: string; |
391 | subtask?: boolean; |
392 | }[]; |
393 | key?: string; |
394 | landingPageInfo?: { |
395 | attributes?: { [k: string]: string }; |
396 | boardId?: number; |
397 | boardName?: string; |
398 | projectKey?: string; |
399 | projectType?: string; |
400 | queueCategory?: string; |
401 | queueId?: number; |
402 | queueName?: string; |
403 | simpleBoard?: boolean; |
404 | simplified?: boolean; |
405 | url?: string; |
406 | }; |
407 | lead?: { |
408 | accountId?: string; |
409 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
410 | active?: boolean; |
411 | applicationRoles?: { |
412 | callback?: {}; |
413 | items?: { |
414 | defaultGroups?: string[]; |
415 | defaultGroupsDetails?: { |
416 | groupId?: string; |
417 | name?: string; |
418 | self?: string; |
419 | }[]; |
420 | defined?: boolean; |
421 | groupDetails?: { |
422 | groupId?: string; |
423 | name?: string; |
424 | self?: string; |
425 | }[]; |
426 | groups?: string[]; |
427 | hasUnlimitedSeats?: boolean; |
428 | key?: string; |
429 | name?: string; |
430 | numberOfSeats?: number; |
431 | platform?: boolean; |
432 | remainingSeats?: number; |
433 | selectedByDefault?: boolean; |
434 | userCount?: number; |
435 | userCountDescription?: string; |
436 | }[]; |
437 | "max-results"?: number; |
438 | pagingCallback?: {}; |
439 | size?: number; |
440 | }; |
441 | avatarUrls?: { |
442 | "16x16"?: string; |
443 | "24x24"?: string; |
444 | "32x32"?: string; |
445 | "48x48"?: string; |
446 | }; |
447 | displayName?: string; |
448 | emailAddress?: string; |
449 | expand?: string; |
450 | groups?: { |
451 | callback?: {}; |
452 | items?: { groupId?: string; name?: string; self?: string }[]; |
453 | "max-results"?: number; |
454 | pagingCallback?: {}; |
455 | size?: number; |
456 | }; |
457 | key?: string; |
458 | locale?: string; |
459 | name?: string; |
460 | self?: string; |
461 | timeZone?: string; |
462 | }; |
463 | name?: string; |
464 | permissions?: { canEdit?: boolean }; |
465 | projectCategory?: { |
466 | description?: string; |
467 | id?: string; |
468 | name?: string; |
469 | self?: string; |
470 | }; |
471 | projectTypeKey?: "software" | "service_desk" | "business"; |
472 | properties?: { [k: string]: { [k: string]: unknown } }; |
473 | retentionTillDate?: string; |
474 | roles?: { [k: string]: string }; |
475 | self?: string; |
476 | simplified?: boolean; |
477 | style?: "classic" | "next-gen"; |
478 | url?: string; |
479 | uuid?: string; |
480 | versions?: { |
481 | approvers?: { |
482 | accountId?: string; |
483 | declineReason?: string; |
484 | description?: string; |
485 | status?: string; |
486 | [k: string]: unknown; |
487 | }[]; |
488 | archived?: boolean; |
489 | description?: string; |
490 | driver?: string; |
491 | expand?: string; |
492 | id?: string; |
493 | issuesStatusForFixVersion?: { |
494 | done?: number; |
495 | inProgress?: number; |
496 | toDo?: number; |
497 | unmapped?: number; |
498 | [k: string]: unknown; |
499 | }; |
500 | moveUnfixedIssuesTo?: string; |
501 | name?: string; |
502 | operations?: { |
503 | href?: string; |
504 | iconClass?: string; |
505 | id?: string; |
506 | label?: string; |
507 | styleClass?: string; |
508 | title?: string; |
509 | weight?: number; |
510 | }[]; |
511 | overdue?: boolean; |
512 | project?: string; |
513 | projectId?: number; |
514 | releaseDate?: string; |
515 | released?: boolean; |
516 | self?: string; |
517 | startDate?: string; |
518 | userReleaseDate?: string; |
519 | userStartDate?: string; |
520 | }[]; |
521 | }; |
522 | role?: { |
523 | actors?: { |
524 | actorGroup?: { |
525 | displayName?: string; |
526 | groupId?: string; |
527 | name?: string; |
528 | }; |
529 | actorUser?: { accountId?: string }; |
530 | avatarUrl?: string; |
531 | displayName?: string; |
532 | id?: number; |
533 | name?: string; |
534 | type?: "atlassian-group-role-actor" | "atlassian-user-role-actor"; |
535 | }[]; |
536 | admin?: boolean; |
537 | currentUserRole?: boolean; |
538 | default?: boolean; |
539 | description?: string; |
540 | id?: number; |
541 | name?: string; |
542 | roleConfigurable?: boolean; |
543 | scope?: { |
544 | project?: { |
545 | avatarUrls?: { |
546 | "16x16"?: string; |
547 | "24x24"?: string; |
548 | "32x32"?: string; |
549 | "48x48"?: string; |
550 | }; |
551 | id?: string; |
552 | key?: string; |
553 | name?: string; |
554 | projectCategory?: { |
555 | description?: string; |
556 | id?: string; |
557 | name?: string; |
558 | self?: string; |
559 | }; |
560 | projectTypeKey?: "software" | "service_desk" | "business"; |
561 | self?: string; |
562 | simplified?: boolean; |
563 | }; |
564 | type?: "PROJECT" | "TEMPLATE"; |
565 | [k: string]: unknown; |
566 | }; |
567 | self?: string; |
568 | translatedName?: string; |
569 | }; |
570 | type: |
571 | | "user" |
572 | | "group" |
573 | | "project" |
574 | | "projectRole" |
575 | | "global" |
576 | | "loggedin" |
577 | | "authenticated" |
578 | | "project-unknown"; |
579 | user?: { |
580 | accountId?: string; |
581 | active?: boolean; |
582 | avatarUrls?: { |
583 | "16x16"?: string; |
584 | "24x24"?: string; |
585 | "32x32"?: string; |
586 | "48x48"?: string; |
587 | }; |
588 | displayName?: string; |
589 | key?: string; |
590 | name?: string; |
591 | self?: string; |
592 | }; |
593 | }[]; |
594 | name: string; |
595 | sharePermissions: { |
596 | group?: { groupId?: string; name?: string; self?: string }; |
597 | id?: number; |
598 | project?: { |
599 | archived?: boolean; |
600 | archivedBy?: { |
601 | accountId?: string; |
602 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
603 | active?: boolean; |
604 | applicationRoles?: { |
605 | callback?: {}; |
606 | items?: { |
607 | defaultGroups?: string[]; |
608 | defaultGroupsDetails?: { |
609 | groupId?: string; |
610 | name?: string; |
611 | self?: string; |
612 | }[]; |
613 | defined?: boolean; |
614 | groupDetails?: { |
615 | groupId?: string; |
616 | name?: string; |
617 | self?: string; |
618 | }[]; |
619 | groups?: string[]; |
620 | hasUnlimitedSeats?: boolean; |
621 | key?: string; |
622 | name?: string; |
623 | numberOfSeats?: number; |
624 | platform?: boolean; |
625 | remainingSeats?: number; |
626 | selectedByDefault?: boolean; |
627 | userCount?: number; |
628 | userCountDescription?: string; |
629 | }[]; |
630 | "max-results"?: number; |
631 | pagingCallback?: {}; |
632 | size?: number; |
633 | }; |
634 | avatarUrls?: { |
635 | "16x16"?: string; |
636 | "24x24"?: string; |
637 | "32x32"?: string; |
638 | "48x48"?: string; |
639 | }; |
640 | displayName?: string; |
641 | emailAddress?: string; |
642 | expand?: string; |
643 | groups?: { |
644 | callback?: {}; |
645 | items?: { groupId?: string; name?: string; self?: string }[]; |
646 | "max-results"?: number; |
647 | pagingCallback?: {}; |
648 | size?: number; |
649 | }; |
650 | key?: string; |
651 | locale?: string; |
652 | name?: string; |
653 | self?: string; |
654 | timeZone?: string; |
655 | }; |
656 | archivedDate?: string; |
657 | assigneeType?: "PROJECT_LEAD" | "UNASSIGNED"; |
658 | avatarUrls?: { |
659 | "16x16"?: string; |
660 | "24x24"?: string; |
661 | "32x32"?: string; |
662 | "48x48"?: string; |
663 | }; |
664 | components?: { |
665 | ari?: string; |
666 | assignee?: { |
667 | accountId?: string; |
668 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
669 | active?: boolean; |
670 | applicationRoles?: { |
671 | callback?: {}; |
672 | items?: { |
673 | defaultGroups?: string[]; |
674 | defaultGroupsDetails?: { |
675 | groupId?: string; |
676 | name?: string; |
677 | self?: string; |
678 | }[]; |
679 | defined?: boolean; |
680 | groupDetails?: { |
681 | groupId?: string; |
682 | name?: string; |
683 | self?: string; |
684 | }[]; |
685 | groups?: string[]; |
686 | hasUnlimitedSeats?: boolean; |
687 | key?: string; |
688 | name?: string; |
689 | numberOfSeats?: number; |
690 | platform?: boolean; |
691 | remainingSeats?: number; |
692 | selectedByDefault?: boolean; |
693 | userCount?: number; |
694 | userCountDescription?: string; |
695 | }[]; |
696 | "max-results"?: number; |
697 | pagingCallback?: {}; |
698 | size?: number; |
699 | }; |
700 | avatarUrls?: { |
701 | "16x16"?: string; |
702 | "24x24"?: string; |
703 | "32x32"?: string; |
704 | "48x48"?: string; |
705 | }; |
706 | displayName?: string; |
707 | emailAddress?: string; |
708 | expand?: string; |
709 | groups?: { |
710 | callback?: {}; |
711 | items?: { groupId?: string; name?: string; self?: string }[]; |
712 | "max-results"?: number; |
713 | pagingCallback?: {}; |
714 | size?: number; |
715 | }; |
716 | key?: string; |
717 | locale?: string; |
718 | name?: string; |
719 | self?: string; |
720 | timeZone?: string; |
721 | }; |
722 | assigneeType?: |
723 | | "PROJECT_DEFAULT" |
724 | | "COMPONENT_LEAD" |
725 | | "PROJECT_LEAD" |
726 | | "UNASSIGNED"; |
727 | description?: string; |
728 | id?: string; |
729 | isAssigneeTypeValid?: boolean; |
730 | lead?: { |
731 | accountId?: string; |
732 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
733 | active?: boolean; |
734 | applicationRoles?: { |
735 | callback?: {}; |
736 | items?: { |
737 | defaultGroups?: string[]; |
738 | defaultGroupsDetails?: { |
739 | groupId?: string; |
740 | name?: string; |
741 | self?: string; |
742 | }[]; |
743 | defined?: boolean; |
744 | groupDetails?: { |
745 | groupId?: string; |
746 | name?: string; |
747 | self?: string; |
748 | }[]; |
749 | groups?: string[]; |
750 | hasUnlimitedSeats?: boolean; |
751 | key?: string; |
752 | name?: string; |
753 | numberOfSeats?: number; |
754 | platform?: boolean; |
755 | remainingSeats?: number; |
756 | selectedByDefault?: boolean; |
757 | userCount?: number; |
758 | userCountDescription?: string; |
759 | }[]; |
760 | "max-results"?: number; |
761 | pagingCallback?: {}; |
762 | size?: number; |
763 | }; |
764 | avatarUrls?: { |
765 | "16x16"?: string; |
766 | "24x24"?: string; |
767 | "32x32"?: string; |
768 | "48x48"?: string; |
769 | }; |
770 | displayName?: string; |
771 | emailAddress?: string; |
772 | expand?: string; |
773 | groups?: { |
774 | callback?: {}; |
775 | items?: { groupId?: string; name?: string; self?: string }[]; |
776 | "max-results"?: number; |
777 | pagingCallback?: {}; |
778 | size?: number; |
779 | }; |
780 | key?: string; |
781 | locale?: string; |
782 | name?: string; |
783 | self?: string; |
784 | timeZone?: string; |
785 | }; |
786 | leadAccountId?: string; |
787 | leadUserName?: string; |
788 | metadata?: { [k: string]: string }; |
789 | name?: string; |
790 | project?: string; |
791 | projectId?: number; |
792 | realAssignee?: { |
793 | accountId?: string; |
794 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
795 | active?: boolean; |
796 | applicationRoles?: { |
797 | callback?: {}; |
798 | items?: { |
799 | defaultGroups?: string[]; |
800 | defaultGroupsDetails?: { |
801 | groupId?: string; |
802 | name?: string; |
803 | self?: string; |
804 | }[]; |
805 | defined?: boolean; |
806 | groupDetails?: { |
807 | groupId?: string; |
808 | name?: string; |
809 | self?: string; |
810 | }[]; |
811 | groups?: string[]; |
812 | hasUnlimitedSeats?: boolean; |
813 | key?: string; |
814 | name?: string; |
815 | numberOfSeats?: number; |
816 | platform?: boolean; |
817 | remainingSeats?: number; |
818 | selectedByDefault?: boolean; |
819 | userCount?: number; |
820 | userCountDescription?: string; |
821 | }[]; |
822 | "max-results"?: number; |
823 | pagingCallback?: {}; |
824 | size?: number; |
825 | }; |
826 | avatarUrls?: { |
827 | "16x16"?: string; |
828 | "24x24"?: string; |
829 | "32x32"?: string; |
830 | "48x48"?: string; |
831 | }; |
832 | displayName?: string; |
833 | emailAddress?: string; |
834 | expand?: string; |
835 | groups?: { |
836 | callback?: {}; |
837 | items?: { groupId?: string; name?: string; self?: string }[]; |
838 | "max-results"?: number; |
839 | pagingCallback?: {}; |
840 | size?: number; |
841 | }; |
842 | key?: string; |
843 | locale?: string; |
844 | name?: string; |
845 | self?: string; |
846 | timeZone?: string; |
847 | }; |
848 | realAssigneeType?: |
849 | | "PROJECT_DEFAULT" |
850 | | "COMPONENT_LEAD" |
851 | | "PROJECT_LEAD" |
852 | | "UNASSIGNED"; |
853 | self?: string; |
854 | }[]; |
855 | deleted?: boolean; |
856 | deletedBy?: { |
857 | accountId?: string; |
858 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
859 | active?: boolean; |
860 | applicationRoles?: { |
861 | callback?: {}; |
862 | items?: { |
863 | defaultGroups?: string[]; |
864 | defaultGroupsDetails?: { |
865 | groupId?: string; |
866 | name?: string; |
867 | self?: string; |
868 | }[]; |
869 | defined?: boolean; |
870 | groupDetails?: { |
871 | groupId?: string; |
872 | name?: string; |
873 | self?: string; |
874 | }[]; |
875 | groups?: string[]; |
876 | hasUnlimitedSeats?: boolean; |
877 | key?: string; |
878 | name?: string; |
879 | numberOfSeats?: number; |
880 | platform?: boolean; |
881 | remainingSeats?: number; |
882 | selectedByDefault?: boolean; |
883 | userCount?: number; |
884 | userCountDescription?: string; |
885 | }[]; |
886 | "max-results"?: number; |
887 | pagingCallback?: {}; |
888 | size?: number; |
889 | }; |
890 | avatarUrls?: { |
891 | "16x16"?: string; |
892 | "24x24"?: string; |
893 | "32x32"?: string; |
894 | "48x48"?: string; |
895 | }; |
896 | displayName?: string; |
897 | emailAddress?: string; |
898 | expand?: string; |
899 | groups?: { |
900 | callback?: {}; |
901 | items?: { groupId?: string; name?: string; self?: string }[]; |
902 | "max-results"?: number; |
903 | pagingCallback?: {}; |
904 | size?: number; |
905 | }; |
906 | key?: string; |
907 | locale?: string; |
908 | name?: string; |
909 | self?: string; |
910 | timeZone?: string; |
911 | }; |
912 | deletedDate?: string; |
913 | description?: string; |
914 | email?: string; |
915 | expand?: string; |
916 | favourite?: boolean; |
917 | id?: string; |
918 | insight?: { lastIssueUpdateTime?: string; totalIssueCount?: number }; |
919 | isPrivate?: boolean; |
920 | issueTypeHierarchy?: { |
921 | baseLevelId?: number; |
922 | levels?: { |
923 | aboveLevelId?: number; |
924 | belowLevelId?: number; |
925 | externalUuid?: string; |
926 | hierarchyLevelNumber?: number; |
927 | id?: number; |
928 | issueTypeIds?: number[]; |
929 | level?: number; |
930 | name?: string; |
931 | projectConfigurationId?: number; |
932 | }[]; |
933 | }; |
934 | issueTypes?: { |
935 | avatarId?: number; |
936 | description?: string; |
937 | entityId?: string; |
938 | hierarchyLevel?: number; |
939 | iconUrl?: string; |
940 | id?: string; |
941 | name?: string; |
942 | scope?: { |
943 | project?: { |
944 | avatarUrls?: { |
945 | "16x16"?: string; |
946 | "24x24"?: string; |
947 | "32x32"?: string; |
948 | "48x48"?: string; |
949 | }; |
950 | id?: string; |
951 | key?: string; |
952 | name?: string; |
953 | projectCategory?: { |
954 | description?: string; |
955 | id?: string; |
956 | name?: string; |
957 | self?: string; |
958 | }; |
959 | projectTypeKey?: "software" | "service_desk" | "business"; |
960 | self?: string; |
961 | simplified?: boolean; |
962 | }; |
963 | type?: "PROJECT" | "TEMPLATE"; |
964 | [k: string]: unknown; |
965 | }; |
966 | self?: string; |
967 | subtask?: boolean; |
968 | }[]; |
969 | key?: string; |
970 | landingPageInfo?: { |
971 | attributes?: { [k: string]: string }; |
972 | boardId?: number; |
973 | boardName?: string; |
974 | projectKey?: string; |
975 | projectType?: string; |
976 | queueCategory?: string; |
977 | queueId?: number; |
978 | queueName?: string; |
979 | simpleBoard?: boolean; |
980 | simplified?: boolean; |
981 | url?: string; |
982 | }; |
983 | lead?: { |
984 | accountId?: string; |
985 | accountType?: "atlassian" | "app" | "customer" | "unknown"; |
986 | active?: boolean; |
987 | applicationRoles?: { |
988 | callback?: {}; |
989 | items?: { |
990 | defaultGroups?: string[]; |
991 | defaultGroupsDetails?: { |
992 | groupId?: string; |
993 | name?: string; |
994 | self?: string; |
995 | }[]; |
996 | defined?: boolean; |
997 | groupDetails?: { |
998 | groupId?: string; |
999 | name?: string; |
1000 | self?: string; |
1001 | }[]; |
1002 | groups?: string[]; |
1003 | hasUnlimitedSeats?: boolean; |
1004 | key?: string; |
1005 | name?: string; |
1006 | numberOfSeats?: number; |
1007 | platform?: boolean; |
1008 | remainingSeats?: number; |
1009 | selectedByDefault?: boolean; |
1010 | userCount?: number; |
1011 | userCountDescription?: string; |
1012 | }[]; |
1013 | "max-results"?: number; |
1014 | pagingCallback?: {}; |
1015 | size?: number; |
1016 | }; |
1017 | avatarUrls?: { |
1018 | "16x16"?: string; |
1019 | "24x24"?: string; |
1020 | "32x32"?: string; |
1021 | "48x48"?: string; |
1022 | }; |
1023 | displayName?: string; |
1024 | emailAddress?: string; |
1025 | expand?: string; |
1026 | groups?: { |
1027 | callback?: {}; |
1028 | items?: { groupId?: string; name?: string; self?: string }[]; |
1029 | "max-results"?: number; |
1030 | pagingCallback?: {}; |
1031 | size?: number; |
1032 | }; |
1033 | key?: string; |
1034 | locale?: string; |
1035 | name?: string; |
1036 | self?: string; |
1037 | timeZone?: string; |
1038 | }; |
1039 | name?: string; |
1040 | permissions?: { canEdit?: boolean }; |
1041 | projectCategory?: { |
1042 | description?: string; |
1043 | id?: string; |
1044 | name?: string; |
1045 | self?: string; |
1046 | }; |
1047 | projectTypeKey?: "software" | "service_desk" | "business"; |
1048 | properties?: { [k: string]: { [k: string]: unknown } }; |
1049 | retentionTillDate?: string; |
1050 | roles?: { [k: string]: string }; |
1051 | self?: string; |
1052 | simplified?: boolean; |
1053 | style?: "classic" | "next-gen"; |
1054 | url?: string; |
1055 | uuid?: string; |
1056 | versions?: { |
1057 | approvers?: { |
1058 | accountId?: string; |
1059 | declineReason?: string; |
1060 | description?: string; |
1061 | status?: string; |
1062 | [k: string]: unknown; |
1063 | }[]; |
1064 | archived?: boolean; |
1065 | description?: string; |
1066 | driver?: string; |
1067 | expand?: string; |
1068 | id?: string; |
1069 | issuesStatusForFixVersion?: { |
1070 | done?: number; |
1071 | inProgress?: number; |
1072 | toDo?: number; |
1073 | unmapped?: number; |
1074 | [k: string]: unknown; |
1075 | }; |
1076 | moveUnfixedIssuesTo?: string; |
1077 | name?: string; |
1078 | operations?: { |
1079 | href?: string; |
1080 | iconClass?: string; |
1081 | id?: string; |
1082 | label?: string; |
1083 | styleClass?: string; |
1084 | title?: string; |
1085 | weight?: number; |
1086 | }[]; |
1087 | overdue?: boolean; |
1088 | project?: string; |
1089 | projectId?: number; |
1090 | releaseDate?: string; |
1091 | released?: boolean; |
1092 | self?: string; |
1093 | startDate?: string; |
1094 | userReleaseDate?: string; |
1095 | userStartDate?: string; |
1096 | }[]; |
1097 | }; |
1098 | role?: { |
1099 | actors?: { |
1100 | actorGroup?: { |
1101 | displayName?: string; |
1102 | groupId?: string; |
1103 | name?: string; |
1104 | }; |
1105 | actorUser?: { accountId?: string }; |
1106 | avatarUrl?: string; |
1107 | displayName?: string; |
1108 | id?: number; |
1109 | name?: string; |
1110 | type?: "atlassian-group-role-actor" | "atlassian-user-role-actor"; |
1111 | }[]; |
1112 | admin?: boolean; |
1113 | currentUserRole?: boolean; |
1114 | default?: boolean; |
1115 | description?: string; |
1116 | id?: number; |
1117 | name?: string; |
1118 | roleConfigurable?: boolean; |
1119 | scope?: { |
1120 | project?: { |
1121 | avatarUrls?: { |
1122 | "16x16"?: string; |
1123 | "24x24"?: string; |
1124 | "32x32"?: string; |
1125 | "48x48"?: string; |
1126 | }; |
1127 | id?: string; |
1128 | key?: string; |
1129 | name?: string; |
1130 | projectCategory?: { |
1131 | description?: string; |
1132 | id?: string; |
1133 | name?: string; |
1134 | self?: string; |
1135 | }; |
1136 | projectTypeKey?: "software" | "service_desk" | "business"; |
1137 | self?: string; |
1138 | simplified?: boolean; |
1139 | }; |
1140 | type?: "PROJECT" | "TEMPLATE"; |
1141 | [k: string]: unknown; |
1142 | }; |
1143 | self?: string; |
1144 | translatedName?: string; |
1145 | }; |
1146 | type: |
1147 | | "user" |
1148 | | "group" |
1149 | | "project" |
1150 | | "projectRole" |
1151 | | "global" |
1152 | | "loggedin" |
1153 | | "authenticated" |
1154 | | "project-unknown"; |
1155 | user?: { |
1156 | accountId?: string; |
1157 | active?: boolean; |
1158 | avatarUrls?: { |
1159 | "16x16"?: string; |
1160 | "24x24"?: string; |
1161 | "32x32"?: string; |
1162 | "48x48"?: string; |
1163 | }; |
1164 | displayName?: string; |
1165 | key?: string; |
1166 | name?: string; |
1167 | self?: string; |
1168 | }; |
1169 | }[]; |
1170 | } |
1171 | ) { |
1172 | const url = new URL( |
1173 | `https://${auth.domain}.atlassian.net/rest/api/2/dashboard/${id}` |
1174 | ); |
1175 |
|
1176 | const response = await fetch(url, { |
1177 | method: "PUT", |
1178 | headers: { |
1179 | "Content-Type": "application/json", |
1180 | Authorization: "Basic " + btoa(`${auth.username}:${auth.password}`), |
1181 | }, |
1182 | body: JSON.stringify(body), |
1183 | }); |
1184 | if (!response.ok) { |
1185 | const text = await response.text(); |
1186 | throw new Error(`${response.status} ${text}`); |
1187 | } |
1188 | return await response.json(); |
1189 | } |
1190 |
|