Skip to content

Where people and agents ship software together. The open-source git platform for the whole job: issues, agents, checks and deploys to the edge.

7,413 linesCodeBlameRaw
1// @generated from apps/docs/src/data/openapi.json by crates/g1t/src/ops.rs.
2// Do not edit: run `G1T_WRITE_OPS=1 cargo test -p g1t ops_table`.
3
4use crate::ops::{Field, In, Operation, Param};
5
6#[rustfmt::skip]
7pub static OPERATIONS: &[Operation] = &[
8 Operation {
9 id: "add_ai_provider",
10 method: "POST",
11 path: "/workspaces/{workspace}/ai/providers",
12 tag: "AI",
13 summary: "Add an AI provider",
14 scope: Some("workspace:admin"),
15 params: &[
16 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
17 ],
18 body: &[
19 Field { name: "config", kind: "object", required: false, values: &[] },
20 Field { name: "name", kind: "string", required: false, values: &[] },
21 Field { name: "provider", kind: "string", required: true, values: &["anthropic", "openai", "gemini", "xai", "mistral", "deepseek", "azure_openai", "openrouter", "groq", "together", "fireworks", "cerebras", "anthropic_endpoint", "openai_endpoint"] },
22 Field { name: "secret", kind: "string", required: false, values: &[] },
23 ],
24 },
25 Operation {
26 id: "get_ask_settings",
27 method: "GET",
28 path: "/workspaces/{workspace}/ai/ask",
29 tag: "AI",
30 summary: "Get Ask settings",
31 scope: Some("workspace:read"),
32 params: &[
33 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
34 ],
35 body: &[],
36 },
37 Operation {
38 id: "list_ai_providers",
39 method: "GET",
40 path: "/workspaces/{workspace}/ai/providers",
41 tag: "AI",
42 summary: "List AI providers",
43 scope: Some("workspace:read"),
44 params: &[
45 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
46 ],
47 body: &[],
48 },
49 Operation {
50 id: "remove_ai_provider",
51 method: "DELETE",
52 path: "/workspaces/{workspace}/ai/providers/{id}",
53 tag: "AI",
54 summary: "Remove an AI provider",
55 scope: Some("workspace:admin"),
56 params: &[
57 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
58 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
59 ],
60 body: &[],
61 },
62 Operation {
63 id: "set_ask_settings",
64 method: "PUT",
65 path: "/workspaces/{workspace}/ai/ask",
66 tag: "AI",
67 summary: "Set Ask settings",
68 scope: Some("workspace:admin"),
69 params: &[
70 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
71 ],
72 body: &[
73 Field { name: "model", kind: "string", required: false, values: &[] },
74 Field { name: "provider_id", kind: "string", required: false, values: &[] },
75 ],
76 },
77 Operation {
78 id: "test_ai_provider",
79 method: "POST",
80 path: "/workspaces/{workspace}/ai/providers/{id}/test",
81 tag: "AI",
82 summary: "Test an AI provider",
83 scope: Some("workspace:admin"),
84 params: &[
85 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
86 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
87 ],
88 body: &[],
89 },
90 Operation {
91 id: "update_ai_provider",
92 method: "PATCH",
93 path: "/workspaces/{workspace}/ai/providers/{id}",
94 tag: "AI",
95 summary: "Update an AI provider",
96 scope: Some("workspace:admin"),
97 params: &[
98 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
99 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
100 ],
101 body: &[
102 Field { name: "config", kind: "object", required: false, values: &[] },
103 Field { name: "name", kind: "string", required: false, values: &[] },
104 Field { name: "secret", kind: "string", required: false, values: &[] },
105 ],
106 },
107 Operation {
108 id: "accept_repo_invitation",
109 method: "PATCH",
110 path: "/user/repository_invitations/{id}",
111 tag: "Access",
112 summary: "Accept a repository invitation",
113 scope: Some("account:write"),
114 params: &[
115 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
116 ],
117 body: &[],
118 },
119 Operation {
120 id: "add_collaborator",
121 method: "POST",
122 path: "/repos/{owner}/{name}/collaborators",
123 tag: "Access",
124 summary: "Add a collaborator",
125 scope: Some("access:admin"),
126 params: &[
127 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
128 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
129 ],
130 body: &[
131 Field { name: "invitee", kind: "string", required: true, values: &[] },
132 Field { name: "role", kind: "string", required: true, values: &["read", "triage", "write", "maintain", "admin"] },
133 ],
134 },
135 Operation {
136 id: "create_deploy_key",
137 method: "POST",
138 path: "/repos/{owner}/{name}/keys",
139 tag: "Access",
140 summary: "Create a deploy key",
141 scope: Some("access:admin"),
142 params: &[
143 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
144 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
145 ],
146 body: &[
147 Field { name: "key", kind: "string", required: true, values: &[] },
148 Field { name: "read_only", kind: "boolean", required: false, values: &[] },
149 Field { name: "title", kind: "string", required: false, values: &[] },
150 ],
151 },
152 Operation {
153 id: "decline_repo_invitation",
154 method: "DELETE",
155 path: "/user/repository_invitations/{id}",
156 tag: "Access",
157 summary: "Decline a repository invitation",
158 scope: Some("account:write"),
159 params: &[
160 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
161 ],
162 body: &[],
163 },
164 Operation {
165 id: "delete_deploy_key",
166 method: "DELETE",
167 path: "/repos/{owner}/{name}/keys/{id}",
168 tag: "Access",
169 summary: "Delete a deploy key",
170 scope: Some("access:admin"),
171 params: &[
172 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
173 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
174 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
175 ],
176 body: &[],
177 },
178 Operation {
179 id: "get_collaborator_permission",
180 method: "GET",
181 path: "/repos/{owner}/{name}/collaborators/{username}/permission",
182 tag: "Access",
183 summary: "Get someone's permission",
184 scope: Some("access:read"),
185 params: &[
186 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
187 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
188 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
189 ],
190 body: &[],
191 },
192 Operation {
193 id: "get_deploy_key",
194 method: "GET",
195 path: "/repos/{owner}/{name}/keys/{id}",
196 tag: "Access",
197 summary: "Get a deploy key",
198 scope: Some("access:read"),
199 params: &[
200 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
201 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
202 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
203 ],
204 body: &[],
205 },
206 Operation {
207 id: "list_collaborators",
208 method: "GET",
209 path: "/repos/{owner}/{name}/collaborators",
210 tag: "Access",
211 summary: "List who has access",
212 scope: Some("access:read"),
213 params: &[
214 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
215 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
216 ],
217 body: &[],
218 },
219 Operation {
220 id: "list_deploy_keys",
221 method: "GET",
222 path: "/repos/{owner}/{name}/keys",
223 tag: "Access",
224 summary: "List deploy keys",
225 scope: Some("access:read"),
226 params: &[
227 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
228 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
229 ],
230 body: &[],
231 },
232 Operation {
233 id: "list_my_repo_invitations",
234 method: "GET",
235 path: "/user/repository_invitations",
236 tag: "Access",
237 summary: "List your repository invitations",
238 scope: Some("account:read"),
239 params: &[],
240 body: &[],
241 },
242 Operation {
243 id: "list_outside_collaborators",
244 method: "GET",
245 path: "/workspaces/{workspace}/outside_collaborators",
246 tag: "Access",
247 summary: "List outside collaborators",
248 scope: Some("access:read"),
249 params: &[
250 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
251 ],
252 body: &[],
253 },
254 Operation {
255 id: "list_repo_invitations",
256 method: "GET",
257 path: "/repos/{owner}/{name}/invitations",
258 tag: "Access",
259 summary: "List a repository's invitations",
260 scope: Some("access:read"),
261 params: &[
262 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
263 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
264 ],
265 body: &[],
266 },
267 Operation {
268 id: "remove_collaborator",
269 method: "DELETE",
270 path: "/repos/{owner}/{name}/collaborators/{username}",
271 tag: "Access",
272 summary: "Remove a collaborator",
273 scope: Some("access:admin"),
274 params: &[
275 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
276 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
277 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
278 ],
279 body: &[],
280 },
281 Operation {
282 id: "revoke_repo_invitation",
283 method: "DELETE",
284 path: "/repos/{owner}/{name}/invitations/{id}",
285 tag: "Access",
286 summary: "Revoke a repository invitation",
287 scope: Some("access:admin"),
288 params: &[
289 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
290 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
291 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
292 ],
293 body: &[],
294 },
295 Operation {
296 id: "set_base_permission",
297 method: "PUT",
298 path: "/workspaces/{workspace}/base_permission",
299 tag: "Access",
300 summary: "Set the base permission",
301 scope: Some("access:admin"),
302 params: &[
303 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
304 ],
305 body: &[
306 Field { name: "base_permission", kind: "string", required: true, values: &["none", "read", "write", "admin"] },
307 ],
308 },
309 Operation {
310 id: "update_collaborator",
311 method: "PATCH",
312 path: "/repos/{owner}/{name}/collaborators/{username}",
313 tag: "Access",
314 summary: "Change a collaborator's role",
315 scope: Some("access:admin"),
316 params: &[
317 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
318 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
319 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
320 ],
321 body: &[
322 Field { name: "role", kind: "string", required: true, values: &["read", "triage", "write", "maintain", "admin"] },
323 ],
324 },
325 Operation {
326 id: "add_email",
327 method: "POST",
328 path: "/user/emails",
329 tag: "Accounts",
330 summary: "Add an email address",
331 scope: Some("account:write"),
332 params: &[],
333 body: &[
334 Field { name: "email", kind: "string", required: true, values: &[] },
335 Field { name: "password", kind: "string", required: true, values: &[] },
336 ],
337 },
338 Operation {
339 id: "confirm_email",
340 method: "POST",
341 path: "/user/emails/confirm",
342 tag: "Accounts",
343 summary: "Confirm an email address",
344 scope: Some("account:write"),
345 params: &[],
346 body: &[
347 Field { name: "code", kind: "string", required: true, values: &[] },
348 ],
349 },
350 Operation {
351 id: "device_code",
352 method: "POST",
353 path: "/device/code",
354 tag: "Accounts",
355 summary: "Start signing in",
356 scope: None,
357 params: &[],
358 body: &[
359 Field { name: "client_name", kind: "string", required: false, values: &[] },
360 ],
361 },
362 Operation {
363 id: "device_token",
364 method: "POST",
365 path: "/device/token",
366 tag: "Accounts",
367 summary: "Finish signing in",
368 scope: None,
369 params: &[],
370 body: &[
371 Field { name: "device_code", kind: "string", required: true, values: &[] },
372 ],
373 },
374 Operation {
375 id: "list_emails",
376 method: "GET",
377 path: "/user/emails",
378 tag: "Accounts",
379 summary: "List your email addresses",
380 scope: Some("account:read"),
381 params: &[],
382 body: &[],
383 },
384 Operation {
385 id: "remove_email",
386 method: "DELETE",
387 path: "/user/emails/{email}",
388 tag: "Accounts",
389 summary: "Remove an email address",
390 scope: Some("account:write"),
391 params: &[
392 Param { name: "email", location: In::Path, kind: "string", required: true, values: &[] },
393 ],
394 body: &[
395 Field { name: "password", kind: "string", required: true, values: &[] },
396 ],
397 },
398 Operation {
399 id: "update_email_settings",
400 method: "PATCH",
401 path: "/user/email-settings",
402 tag: "Accounts",
403 summary: "Change your email settings",
404 scope: Some("account:write"),
405 params: &[],
406 body: &[
407 Field { name: "backup", kind: "string", required: false, values: &[] },
408 Field { name: "block_private_pushes", kind: "boolean", required: false, values: &[] },
409 Field { name: "password", kind: "string", required: false, values: &[] },
410 Field { name: "primary", kind: "string", required: false, values: &[] },
411 Field { name: "private_email", kind: "boolean", required: false, values: &[] },
412 ],
413 },
414 Operation {
415 id: "whoami",
416 method: "GET",
417 path: "/user",
418 tag: "Accounts",
419 summary: "Get the current user",
420 scope: None,
421 params: &[],
422 body: &[],
423 },
424 Operation {
425 id: "cancel_workflow_run",
426 method: "POST",
427 path: "/repos/{owner}/{name}/actions/runs/{id}/cancel",
428 tag: "Actions",
429 summary: "Cancel a workflow run",
430 scope: Some("workflows:write"),
431 params: &[
432 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
433 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
434 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
435 ],
436 body: &[
437 Field { name: "force", kind: "boolean", required: false, values: &[] },
438 ],
439 },
440 Operation {
441 id: "delete_artifact",
442 method: "DELETE",
443 path: "/repos/{owner}/{name}/actions/artifacts/{id}",
444 tag: "Actions",
445 summary: "Delete an artifact",
446 scope: Some("workflows:write"),
447 params: &[
448 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
449 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
450 Param { name: "id", location: In::Path, kind: "integer", required: true, values: &[] },
451 ],
452 body: &[],
453 },
454 Operation {
455 id: "delete_cache",
456 method: "DELETE",
457 path: "/repos/{owner}/{name}/actions/caches/{id}",
458 tag: "Actions",
459 summary: "Delete a cache by id",
460 scope: Some("workflows:write"),
461 params: &[
462 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
463 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
464 Param { name: "id", location: In::Path, kind: "integer", required: true, values: &[] },
465 ],
466 body: &[],
467 },
468 Operation {
469 id: "delete_caches_by_key",
470 method: "DELETE",
471 path: "/repos/{owner}/{name}/actions/caches",
472 tag: "Actions",
473 summary: "Delete caches by key",
474 scope: Some("workflows:write"),
475 params: &[
476 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
477 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
478 ],
479 body: &[
480 Field { name: "key", kind: "string", required: true, values: &[] },
481 Field { name: "ref", kind: "string", required: false, values: &[] },
482 ],
483 },
484 Operation {
485 id: "disable_workflow",
486 method: "PUT",
487 path: "/repos/{owner}/{name}/actions/workflows/{workflow}/disable",
488 tag: "Actions",
489 summary: "Turn a workflow off",
490 scope: Some("workflows:write"),
491 params: &[
492 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
493 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
494 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
495 ],
496 body: &[
497 Field { name: "enabled", kind: "boolean", required: true, values: &[] },
498 ],
499 },
500 Operation {
501 id: "dispatch_workflow",
502 method: "POST",
503 path: "/repos/{owner}/{name}/actions/workflows/{workflow}/dispatches",
504 tag: "Actions",
505 summary: "Run a workflow",
506 scope: Some("workflows:write"),
507 params: &[
508 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
509 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
510 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
511 ],
512 body: &[
513 Field { name: "inputs", kind: "object", required: false, values: &[] },
514 Field { name: "ref", kind: "string", required: false, values: &[] },
515 ],
516 },
517 Operation {
518 id: "download_artifact",
519 method: "GET",
520 path: "/repos/{owner}/{name}/actions/artifacts/{id}/zip",
521 tag: "Actions",
522 summary: "Download an artifact",
523 scope: Some("workflows:read"),
524 params: &[
525 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
526 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
527 Param { name: "id", location: In::Path, kind: "integer", required: true, values: &[] },
528 ],
529 body: &[],
530 },
531 Operation {
532 id: "enable_workflow",
533 method: "PUT",
534 path: "/repos/{owner}/{name}/actions/workflows/{workflow}/enable",
535 tag: "Actions",
536 summary: "Turn a workflow on",
537 scope: Some("workflows:write"),
538 params: &[
539 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
540 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
541 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
542 ],
543 body: &[
544 Field { name: "enabled", kind: "boolean", required: true, values: &[] },
545 ],
546 },
547 Operation {
548 id: "force_cancel_workflow_run",
549 method: "POST",
550 path: "/repos/{owner}/{name}/actions/runs/{id}/force-cancel",
551 tag: "Actions",
552 summary: "Force-cancel a workflow run",
553 scope: Some("workflows:write"),
554 params: &[
555 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
556 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
557 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
558 ],
559 body: &[
560 Field { name: "force", kind: "boolean", required: false, values: &[] },
561 ],
562 },
563 Operation {
564 id: "get_artifact",
565 method: "GET",
566 path: "/repos/{owner}/{name}/actions/artifacts/{id}",
567 tag: "Actions",
568 summary: "Get an artifact",
569 scope: Some("workflows:read"),
570 params: &[
571 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
572 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
573 Param { name: "id", location: In::Path, kind: "integer", required: true, values: &[] },
574 ],
575 body: &[],
576 },
577 Operation {
578 id: "get_artifact_retention",
579 method: "GET",
580 path: "/repos/{owner}/{name}/actions/permissions/artifact-and-log-retention",
581 tag: "Actions",
582 summary: "Get artifact retention",
583 scope: Some("workflows:read"),
584 params: &[
585 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
586 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
587 ],
588 body: &[],
589 },
590 Operation {
591 id: "get_cache_usage",
592 method: "GET",
593 path: "/repos/{owner}/{name}/actions/cache/usage",
594 tag: "Actions",
595 summary: "Get a repository's cache usage",
596 scope: Some("workflows:read"),
597 params: &[
598 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
599 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
600 ],
601 body: &[],
602 },
603 Operation {
604 id: "get_job_logs",
605 method: "GET",
606 path: "/repos/{owner}/{name}/actions/jobs/{job}/logs",
607 tag: "Actions",
608 summary: "Get a job's log",
609 scope: Some("workflows:read"),
610 params: &[
611 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
612 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
613 Param { name: "job", location: In::Path, kind: "string", required: true, values: &[] },
614 Param { name: "after", location: In::Query, kind: "integer", required: false, values: &[] },
615 Param { name: "tail", location: In::Query, kind: "integer", required: false, values: &[] },
616 ],
617 body: &[],
618 },
619 Operation {
620 id: "get_workflow",
621 method: "GET",
622 path: "/repos/{owner}/{name}/actions/workflows/{workflow}",
623 tag: "Actions",
624 summary: "Get a workflow",
625 scope: Some("workflows:read"),
626 params: &[
627 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
628 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
629 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
630 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
631 ],
632 body: &[],
633 },
634 Operation {
635 id: "get_workflow_run",
636 method: "GET",
637 path: "/repos/{owner}/{name}/actions/runs/{id}",
638 tag: "Actions",
639 summary: "Get a workflow run",
640 scope: Some("workflows:read"),
641 params: &[
642 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
643 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
644 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
645 ],
646 body: &[],
647 },
648 Operation {
649 id: "get_workflow_run_attempt",
650 method: "GET",
651 path: "/repos/{owner}/{name}/actions/runs/{id}/attempts/{attempt}",
652 tag: "Actions",
653 summary: "Get a workflow run attempt",
654 scope: Some("workflows:read"),
655 params: &[
656 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
657 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
658 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
659 Param { name: "attempt", location: In::Path, kind: "integer", required: true, values: &[] },
660 ],
661 body: &[],
662 },
663 Operation {
664 id: "list_artifacts",
665 method: "GET",
666 path: "/repos/{owner}/{name}/actions/artifacts",
667 tag: "Actions",
668 summary: "List a repository's artifacts",
669 scope: Some("workflows:read"),
670 params: &[
671 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
672 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
673 Param { name: "name", location: In::Query, kind: "string", required: false, values: &[] },
674 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
675 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
676 ],
677 body: &[],
678 },
679 Operation {
680 id: "list_caches",
681 method: "GET",
682 path: "/repos/{owner}/{name}/actions/caches",
683 tag: "Actions",
684 summary: "List a repository's caches",
685 scope: Some("workflows:read"),
686 params: &[
687 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
688 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
689 Param { name: "key", location: In::Query, kind: "string", required: false, values: &[] },
690 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
691 Param { name: "sort", location: In::Query, kind: "string", required: false, values: &["last_accessed_at", "created_at", "size_in_bytes"] },
692 Param { name: "direction", location: In::Query, kind: "string", required: false, values: &["asc", "desc"] },
693 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
694 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
695 ],
696 body: &[],
697 },
698 Operation {
699 id: "list_runs_of_workflow",
700 method: "GET",
701 path: "/repos/{owner}/{name}/actions/workflows/{workflow}/runs",
702 tag: "Actions",
703 summary: "List a workflow's runs",
704 scope: Some("workflows:read"),
705 params: &[
706 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
707 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
708 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
709 Param { name: "branch", location: In::Query, kind: "string", required: false, values: &[] },
710 Param { name: "event", location: In::Query, kind: "string", required: false, values: &[] },
711 Param { name: "status", location: In::Query, kind: "string", required: false, values: &[] },
712 Param { name: "head_sha", location: In::Query, kind: "string", required: false, values: &[] },
713 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
714 Param { name: "until", location: In::Query, kind: "string", required: false, values: &[] },
715 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
716 ],
717 body: &[],
718 },
719 Operation {
720 id: "list_workflow_run_artifacts",
721 method: "GET",
722 path: "/repos/{owner}/{name}/actions/runs/{id}/artifacts",
723 tag: "Actions",
724 summary: "List a workflow run's artifacts",
725 scope: Some("workflows:read"),
726 params: &[
727 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
728 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
729 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
730 Param { name: "name", location: In::Query, kind: "string", required: false, values: &[] },
731 ],
732 body: &[],
733 },
734 Operation {
735 id: "list_workflow_runs",
736 method: "GET",
737 path: "/repos/{owner}/{name}/actions/runs",
738 tag: "Actions",
739 summary: "List workflow runs",
740 scope: Some("workflows:read"),
741 params: &[
742 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
743 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
744 Param { name: "workflow", location: In::Query, kind: "string", required: false, values: &[] },
745 Param { name: "branch", location: In::Query, kind: "string", required: false, values: &[] },
746 Param { name: "event", location: In::Query, kind: "string", required: false, values: &[] },
747 Param { name: "pull", location: In::Query, kind: "integer", required: false, values: &[] },
748 Param { name: "head_sha", location: In::Query, kind: "string", required: false, values: &[] },
749 Param { name: "status", location: In::Query, kind: "string", required: false, values: &[] },
750 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
751 Param { name: "until", location: In::Query, kind: "string", required: false, values: &[] },
752 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
753 ],
754 body: &[],
755 },
756 Operation {
757 id: "list_workflows",
758 method: "GET",
759 path: "/repos/{owner}/{name}/actions/workflows",
760 tag: "Actions",
761 summary: "List workflows",
762 scope: Some("workflows:read"),
763 params: &[
764 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
765 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
766 ],
767 body: &[],
768 },
769 Operation {
770 id: "rerun_failed_jobs",
771 method: "POST",
772 path: "/repos/{owner}/{name}/actions/runs/{id}/rerun-failed-jobs",
773 tag: "Actions",
774 summary: "Re-run failed jobs",
775 scope: Some("workflows:write"),
776 params: &[
777 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
778 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
779 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
780 ],
781 body: &[
782 Field { name: "debug", kind: "boolean", required: false, values: &[] },
783 Field { name: "enable_debug_logging", kind: "boolean", required: false, values: &[] },
784 Field { name: "failed_only", kind: "boolean", required: false, values: &[] },
785 Field { name: "job", kind: "string", required: false, values: &[] },
786 ],
787 },
788 Operation {
789 id: "rerun_job",
790 method: "POST",
791 path: "/repos/{owner}/{name}/actions/jobs/{job}/rerun",
792 tag: "Actions",
793 summary: "Re-run a job",
794 scope: Some("workflows:write"),
795 params: &[
796 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
797 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
798 Param { name: "job", location: In::Path, kind: "string", required: true, values: &[] },
799 ],
800 body: &[
801 Field { name: "debug", kind: "boolean", required: false, values: &[] },
802 Field { name: "enable_debug_logging", kind: "boolean", required: false, values: &[] },
803 Field { name: "failed_only", kind: "boolean", required: false, values: &[] },
804 Field { name: "id", kind: "string", required: false, values: &[] },
805 ],
806 },
807 Operation {
808 id: "rerun_workflow_run",
809 method: "POST",
810 path: "/repos/{owner}/{name}/actions/runs/{id}/rerun",
811 tag: "Actions",
812 summary: "Re-run a workflow run",
813 scope: Some("workflows:write"),
814 params: &[
815 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
816 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
817 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
818 ],
819 body: &[
820 Field { name: "debug", kind: "boolean", required: false, values: &[] },
821 Field { name: "enable_debug_logging", kind: "boolean", required: false, values: &[] },
822 Field { name: "failed_only", kind: "boolean", required: false, values: &[] },
823 Field { name: "job", kind: "string", required: false, values: &[] },
824 ],
825 },
826 Operation {
827 id: "set_artifact_retention",
828 method: "PUT",
829 path: "/repos/{owner}/{name}/actions/permissions/artifact-and-log-retention",
830 tag: "Actions",
831 summary: "Set artifact retention",
832 scope: Some("workflows:write"),
833 params: &[
834 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
835 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
836 ],
837 body: &[
838 Field { name: "days", kind: "integer", required: true, values: &[] },
839 ],
840 },
841 Operation {
842 id: "update_workflow",
843 method: "PATCH",
844 path: "/repos/{owner}/{name}/actions/workflows/{workflow}",
845 tag: "Actions",
846 summary: "Turn a workflow on or off",
847 scope: Some("workflows:write"),
848 params: &[
849 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
850 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
851 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
852 ],
853 body: &[
854 Field { name: "enabled", kind: "boolean", required: true, values: &[] },
855 ],
856 },
857 Operation {
858 id: "create_workspace_artifact",
859 method: "POST",
860 path: "/workspaces/{workspace}/artifacts",
861 tag: "Artifacts",
862 summary: "Create an artifact",
863 scope: Some("artifacts:write"),
864 params: &[
865 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
866 ],
867 body: &[
868 Field { name: "icon", kind: "string", required: false, values: &[] },
869 Field { name: "kind", kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
870 Field { name: "markdown", kind: "string", required: false, values: &[] },
871 Field { name: "parent_id", kind: "string", required: false, values: &[] },
872 Field { name: "space", kind: "string", required: false, values: &[] },
873 Field { name: "template_id", kind: "string", required: false, values: &[] },
874 Field { name: "title", kind: "string", required: false, values: &[] },
875 ],
876 },
877 Operation {
878 id: "edit_workspace_artifact",
879 method: "PUT",
880 path: "/workspaces/{workspace}/artifacts/{artifact_id}/content",
881 tag: "Artifacts",
882 summary: "Edit an artifact's content",
883 scope: Some("artifacts:write"),
884 params: &[
885 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
886 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
887 ],
888 body: &[
889 Field { name: "kind", kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
890 Field { name: "markdown", kind: "string", required: false, values: &[] },
891 Field { name: "marks_current", kind: "boolean", required: false, values: &[] },
892 Field { name: "note", kind: "string", required: false, values: &[] },
893 Field { name: "ops", kind: "array", required: false, values: &[] },
894 Field { name: "suggest_only", kind: "boolean", required: false, values: &[] },
895 Field { name: "target", kind: "object", required: false, values: &[] },
896 ],
897 },
898 Operation {
899 id: "get_workspace_artifact",
900 method: "GET",
901 path: "/workspaces/{workspace}/artifacts/{artifact_id}",
902 tag: "Artifacts",
903 summary: "Get an artifact",
904 scope: Some("artifacts:read"),
905 params: &[
906 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
907 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
908 ],
909 body: &[],
910 },
911 Operation {
912 id: "get_workspace_artifact_access",
913 method: "GET",
914 path: "/workspaces/{workspace}/artifacts/{artifact_id}/access",
915 tag: "Artifacts",
916 summary: "Get who can open an artifact",
917 scope: Some("artifacts:read"),
918 params: &[
919 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
920 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
921 ],
922 body: &[],
923 },
924 Operation {
925 id: "get_workspace_artifact_content",
926 method: "GET",
927 path: "/workspaces/{workspace}/artifacts/{artifact_id}/content",
928 tag: "Artifacts",
929 summary: "Get an artifact's content",
930 scope: Some("artifacts:read"),
931 params: &[
932 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
933 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
934 ],
935 body: &[],
936 },
937 Operation {
938 id: "list_workspace_artifact_spaces",
939 method: "GET",
940 path: "/workspaces/{workspace}/artifact-spaces",
941 tag: "Artifacts",
942 summary: "List artifact spaces",
943 scope: Some("artifacts:read"),
944 params: &[
945 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
946 ],
947 body: &[],
948 },
949 Operation {
950 id: "list_workspace_artifact_templates",
951 method: "GET",
952 path: "/workspaces/{workspace}/artifact-templates",
953 tag: "Artifacts",
954 summary: "List artifact templates",
955 scope: Some("artifacts:read"),
956 params: &[
957 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
958 Param { name: "kind", location: In::Query, kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
959 ],
960 body: &[],
961 },
962 Operation {
963 id: "list_workspace_artifact_versions",
964 method: "GET",
965 path: "/workspaces/{workspace}/artifacts/{artifact_id}/versions",
966 tag: "Artifacts",
967 summary: "List an artifact's versions",
968 scope: Some("artifacts:read"),
969 params: &[
970 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
971 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
972 ],
973 body: &[],
974 },
975 Operation {
976 id: "list_workspace_artifacts",
977 method: "GET",
978 path: "/workspaces/{workspace}/artifacts",
979 tag: "Artifacts",
980 summary: "List a workspace's artifacts",
981 scope: Some("artifacts:read"),
982 params: &[
983 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
984 Param { name: "tab", location: In::Query, kind: "string", required: false, values: &["all", "yours", "shared"] },
985 Param { name: "kind", location: In::Query, kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
986 Param { name: "space", location: In::Query, kind: "string", required: false, values: &[] },
987 Param { name: "project", location: In::Query, kind: "string", required: false, values: &[] },
988 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
989 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "trashed"] },
990 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
991 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
992 ],
993 body: &[],
994 },
995 Operation {
996 id: "purge_workspace_artifact",
997 method: "POST",
998 path: "/workspaces/{workspace}/artifacts/{artifact_id}/purge",
999 tag: "Artifacts",
1000 summary: "Delete an artifact for good",
1001 scope: Some("artifacts:admin"),
1002 params: &[
1003 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1004 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
1005 ],
1006 body: &[],
1007 },
1008 Operation {
1009 id: "query_workspace_dataset",
1010 method: "POST",
1011 path: "/workspaces/{workspace}/datasets/query",
1012 tag: "Artifacts",
1013 summary: "Query a dataset",
1014 scope: Some("artifacts:read"),
1015 params: &[
1016 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1017 ],
1018 body: &[
1019 Field { name: "query", kind: "object", required: true, values: &[] },
1020 ],
1021 },
1022 Operation {
1023 id: "restore_workspace_artifact",
1024 method: "POST",
1025 path: "/workspaces/{workspace}/artifacts/{artifact_id}/restore",
1026 tag: "Artifacts",
1027 summary: "Restore an artifact from the trash",
1028 scope: Some("artifacts:write"),
1029 params: &[
1030 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1031 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
1032 ],
1033 body: &[],
1034 },
1035 Operation {
1036 id: "restore_workspace_artifact_version",
1037 method: "POST",
1038 path: "/workspaces/{workspace}/artifacts/{artifact_id}/versions/{version_id}/restore",
1039 tag: "Artifacts",
1040 summary: "Restore an artifact version",
1041 scope: Some("artifacts:write"),
1042 params: &[
1043 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1044 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
1045 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
1046 ],
1047 body: &[],
1048 },
1049 Operation {
1050 id: "search_workspace_artifacts",
1051 method: "GET",
1052 path: "/workspaces/{workspace}/artifacts/search",
1053 tag: "Artifacts",
1054 summary: "Search a workspace's artifacts",
1055 scope: Some("artifacts:read"),
1056 params: &[
1057 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1058 Param { name: "q", location: In::Query, kind: "string", required: true, values: &[] },
1059 Param { name: "kind", location: In::Query, kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
1060 Param { name: "space", location: In::Query, kind: "string", required: false, values: &[] },
1061 Param { name: "project", location: In::Query, kind: "string", required: false, values: &[] },
1062 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
1063 ],
1064 body: &[],
1065 },
1066 Operation {
1067 id: "set_workspace_artifact_access",
1068 method: "PUT",
1069 path: "/workspaces/{workspace}/artifacts/{artifact_id}/access",
1070 tag: "Artifacts",
1071 summary: "Share an artifact",
1072 scope: Some("artifacts:admin"),
1073 params: &[
1074 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1075 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
1076 ],
1077 body: &[
1078 Field { name: "agent", kind: "string", required: false, values: &[] },
1079 Field { name: "agent_mode", kind: "string", required: false, values: &["suggest", "edit"] },
1080 Field { name: "general_access", kind: "string", required: false, values: &["none", "workspace", "link"] },
1081 Field { name: "general_role", kind: "string", required: false, values: &["view", "comment", "edit"] },
1082 Field { name: "inherit", kind: "boolean", required: false, values: &[] },
1083 Field { name: "notify", kind: "string", required: false, values: &[] },
1084 Field { name: "principal", kind: "string", required: false, values: &[] },
1085 Field { name: "role", kind: "string", required: false, values: &["view", "comment", "edit", "manage", "none"] },
1086 Field { name: "team", kind: "string", required: false, values: &[] },
1087 Field { name: "username", kind: "string", required: false, values: &[] },
1088 ],
1089 },
1090 Operation {
1091 id: "trash_workspace_artifact",
1092 method: "DELETE",
1093 path: "/workspaces/{workspace}/artifacts/{artifact_id}",
1094 tag: "Artifacts",
1095 summary: "Move an artifact to the trash",
1096 scope: Some("artifacts:write"),
1097 params: &[
1098 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1099 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
1100 ],
1101 body: &[],
1102 },
1103 Operation {
1104 id: "update_workspace_artifact",
1105 method: "PATCH",
1106 path: "/workspaces/{workspace}/artifacts/{artifact_id}",
1107 tag: "Artifacts",
1108 summary: "Update an artifact",
1109 scope: Some("artifacts:write"),
1110 params: &[
1111 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1112 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
1113 ],
1114 body: &[
1115 Field { name: "before_id", kind: "string", required: false, values: &[] },
1116 Field { name: "icon", kind: "string", required: false, values: &[] },
1117 Field { name: "parent_id", kind: "string", required: false, values: &[] },
1118 Field { name: "space", kind: "string", required: false, values: &[] },
1119 Field { name: "title", kind: "string", required: false, values: &[] },
1120 ],
1121 },
1122 Operation {
1123 id: "get_billing_details",
1124 method: "GET",
1125 path: "/workspaces/{workspace}/billing_details",
1126 tag: "Billing",
1127 summary: "Get a workspace's billing details",
1128 scope: Some("billing:read"),
1129 params: &[
1130 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1131 ],
1132 body: &[],
1133 },
1134 Operation {
1135 id: "get_budget",
1136 method: "GET",
1137 path: "/workspaces/{workspace}/budget",
1138 tag: "Billing",
1139 summary: "Get a workspace's budget",
1140 scope: Some("billing:read"),
1141 params: &[
1142 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1143 ],
1144 body: &[],
1145 },
1146 Operation {
1147 id: "get_usage",
1148 method: "GET",
1149 path: "/workspaces/{workspace}/usage",
1150 tag: "Billing",
1151 summary: "Get a workspace's usage",
1152 scope: Some("billing:read"),
1153 params: &[
1154 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1155 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
1156 Param { name: "until", location: In::Query, kind: "string", required: false, values: &[] },
1157 Param { name: "products", location: In::Query, kind: "array", required: false, values: &[] },
1158 Param { name: "projects", location: In::Query, kind: "array", required: false, values: &[] },
1159 Param { name: "group_by", location: In::Query, kind: "string", required: false, values: &["product", "project", "day"] },
1160 ],
1161 body: &[],
1162 },
1163 Operation {
1164 id: "list_invoices",
1165 method: "GET",
1166 path: "/workspaces/{workspace}/invoices",
1167 tag: "Billing",
1168 summary: "List a workspace's invoices",
1169 scope: Some("billing:read"),
1170 params: &[
1171 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1172 ],
1173 body: &[],
1174 },
1175 Operation {
1176 id: "set_budget",
1177 method: "PUT",
1178 path: "/workspaces/{workspace}/budget",
1179 tag: "Billing",
1180 summary: "Change a workspace's budget",
1181 scope: Some("billing:write"),
1182 params: &[
1183 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1184 ],
1185 body: &[
1186 Field { name: "alerts", kind: "array", required: false, values: &[] },
1187 Field { name: "amount_micros", kind: "integer", required: false, values: &[] },
1188 Field { name: "pause_at_limit", kind: "boolean", required: false, values: &[] },
1189 Field { name: "webhook", kind: "string", required: false, values: &[] },
1190 ],
1191 },
1192 Operation {
1193 id: "create_check_run",
1194 method: "POST",
1195 path: "/repos/{owner}/{name}/check-runs",
1196 tag: "Checks",
1197 summary: "Create a check run",
1198 scope: Some("checks:write"),
1199 params: &[
1200 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1201 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1202 ],
1203 body: &[
1204 Field { name: "actions", kind: "array", required: false, values: &[] },
1205 Field { name: "app", kind: "string", required: false, values: &[] },
1206 Field { name: "completed_at", kind: "string", required: false, values: &[] },
1207 Field { name: "conclusion", kind: "string", required: false, values: &["success", "failure", "neutral", "cancelled", "skipped", "timed_out", "action_required"] },
1208 Field { name: "details_url", kind: "string", required: false, values: &[] },
1209 Field { name: "external_id", kind: "string", required: false, values: &[] },
1210 Field { name: "head_sha", kind: "string", required: true, values: &[] },
1211 Field { name: "name", kind: "string", required: true, values: &[] },
1212 Field { name: "output", kind: "object", required: false, values: &[] },
1213 Field { name: "started_at", kind: "string", required: false, values: &[] },
1214 Field { name: "status", kind: "string", required: false, values: &["queued", "in_progress", "completed"] },
1215 ],
1216 },
1217 Operation {
1218 id: "create_commit_status",
1219 method: "POST",
1220 path: "/repos/{owner}/{name}/statuses/{sha}",
1221 tag: "Checks",
1222 summary: "Create a commit status",
1223 scope: Some("checks:write"),
1224 params: &[
1225 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1226 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1227 Param { name: "sha", location: In::Path, kind: "string", required: true, values: &[] },
1228 ],
1229 body: &[
1230 Field { name: "context", kind: "string", required: false, values: &[] },
1231 Field { name: "description", kind: "string", required: false, values: &[] },
1232 Field { name: "state", kind: "string", required: true, values: &["pending", "success", "failure", "error"] },
1233 Field { name: "target_url", kind: "string", required: false, values: &[] },
1234 ],
1235 },
1236 Operation {
1237 id: "get_check_run",
1238 method: "GET",
1239 path: "/repos/{owner}/{name}/check-runs/{id}",
1240 tag: "Checks",
1241 summary: "Get a check run",
1242 scope: Some("checks:read"),
1243 params: &[
1244 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1245 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1246 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1247 ],
1248 body: &[],
1249 },
1250 Operation {
1251 id: "get_check_suite",
1252 method: "GET",
1253 path: "/repos/{owner}/{name}/check-suites/{id}",
1254 tag: "Checks",
1255 summary: "Get a check suite",
1256 scope: Some("checks:read"),
1257 params: &[
1258 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1259 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1260 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1261 ],
1262 body: &[],
1263 },
1264 Operation {
1265 id: "get_combined_status",
1266 method: "GET",
1267 path: "/repos/{owner}/{name}/commits/{ref}/status",
1268 tag: "Checks",
1269 summary: "Get a commit's combined status",
1270 scope: Some("checks:read"),
1271 params: &[
1272 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1273 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1274 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
1275 ],
1276 body: &[],
1277 },
1278 Operation {
1279 id: "list_check_run_annotations",
1280 method: "GET",
1281 path: "/repos/{owner}/{name}/check-runs/{id}/annotations",
1282 tag: "Checks",
1283 summary: "List a check run's annotations",
1284 scope: Some("checks:read"),
1285 params: &[
1286 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1287 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1288 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1289 ],
1290 body: &[],
1291 },
1292 Operation {
1293 id: "list_check_runs_for_ref",
1294 method: "GET",
1295 path: "/repos/{owner}/{name}/commits/{ref}/check-runs",
1296 tag: "Checks",
1297 summary: "List a commit's check runs",
1298 scope: Some("checks:read"),
1299 params: &[
1300 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1301 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1302 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
1303 Param { name: "check_name", location: In::Query, kind: "string", required: false, values: &[] },
1304 Param { name: "status", location: In::Query, kind: "string", required: false, values: &["queued", "in_progress", "completed"] },
1305 Param { name: "app", location: In::Query, kind: "string", required: false, values: &[] },
1306 Param { name: "filter", location: In::Query, kind: "string", required: false, values: &["latest", "all"] },
1307 ],
1308 body: &[],
1309 },
1310 Operation {
1311 id: "list_check_suites_for_ref",
1312 method: "GET",
1313 path: "/repos/{owner}/{name}/commits/{ref}/check-suites",
1314 tag: "Checks",
1315 summary: "List a commit's check suites",
1316 scope: Some("checks:read"),
1317 params: &[
1318 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1319 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1320 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
1321 Param { name: "app", location: In::Query, kind: "string", required: false, values: &[] },
1322 Param { name: "check_name", location: In::Query, kind: "string", required: false, values: &[] },
1323 ],
1324 body: &[],
1325 },
1326 Operation {
1327 id: "list_commit_statuses",
1328 method: "GET",
1329 path: "/repos/{owner}/{name}/commits/{ref}/statuses",
1330 tag: "Checks",
1331 summary: "List a commit's statuses",
1332 scope: Some("checks:read"),
1333 params: &[
1334 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1335 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1336 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
1337 ],
1338 body: &[],
1339 },
1340 Operation {
1341 id: "rerequest_check_run",
1342 method: "POST",
1343 path: "/repos/{owner}/{name}/check-runs/{id}/rerequest",
1344 tag: "Checks",
1345 summary: "Rerequest a check run",
1346 scope: Some("checks:write"),
1347 params: &[
1348 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1349 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1350 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1351 ],
1352 body: &[],
1353 },
1354 Operation {
1355 id: "rerequest_check_suite",
1356 method: "POST",
1357 path: "/repos/{owner}/{name}/check-suites/{id}/rerequest",
1358 tag: "Checks",
1359 summary: "Rerequest a check suite",
1360 scope: Some("checks:write"),
1361 params: &[
1362 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1363 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1364 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1365 ],
1366 body: &[],
1367 },
1368 Operation {
1369 id: "update_check_run",
1370 method: "PATCH",
1371 path: "/repos/{owner}/{name}/check-runs/{id}",
1372 tag: "Checks",
1373 summary: "Update a check run",
1374 scope: Some("checks:write"),
1375 params: &[
1376 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1377 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1378 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1379 ],
1380 body: &[
1381 Field { name: "actions", kind: "array", required: false, values: &[] },
1382 Field { name: "completed_at", kind: "string", required: false, values: &[] },
1383 Field { name: "conclusion", kind: "string", required: false, values: &["success", "failure", "neutral", "cancelled", "skipped", "timed_out", "action_required"] },
1384 Field { name: "details_url", kind: "string", required: false, values: &[] },
1385 Field { name: "external_id", kind: "string", required: false, values: &[] },
1386 Field { name: "name", kind: "string", required: false, values: &[] },
1387 Field { name: "output", kind: "object", required: false, values: &[] },
1388 Field { name: "started_at", kind: "string", required: false, values: &[] },
1389 Field { name: "status", kind: "string", required: false, values: &["queued", "in_progress", "completed"] },
1390 ],
1391 },
1392 Operation {
1393 id: "get_code_scanning_alert",
1394 method: "GET",
1395 path: "/repos/{owner}/{name}/code-scanning/alerts/{number}",
1396 tag: "Code scanning",
1397 summary: "Get a code scanning alert",
1398 scope: Some("security:read"),
1399 params: &[
1400 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1401 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1402 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1403 ],
1404 body: &[],
1405 },
1406 Operation {
1407 id: "get_sarif_upload",
1408 method: "GET",
1409 path: "/repos/{owner}/{name}/code-scanning/sarifs/{id}",
1410 tag: "Code scanning",
1411 summary: "Get a SARIF upload",
1412 scope: Some("security:read"),
1413 params: &[
1414 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1415 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1416 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1417 ],
1418 body: &[],
1419 },
1420 Operation {
1421 id: "list_code_scanning_alerts",
1422 method: "GET",
1423 path: "/repos/{owner}/{name}/code-scanning/alerts",
1424 tag: "Code scanning",
1425 summary: "List code scanning alerts",
1426 scope: Some("security:read"),
1427 params: &[
1428 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1429 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1430 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
1431 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
1432 Param { name: "tool", location: In::Query, kind: "string", required: false, values: &[] },
1433 Param { name: "rule_id", location: In::Query, kind: "string", required: false, values: &[] },
1434 ],
1435 body: &[],
1436 },
1437 Operation {
1438 id: "list_code_scanning_alerts_for_workspace",
1439 method: "GET",
1440 path: "/workspaces/{workspace}/code-scanning/alerts",
1441 tag: "Code scanning",
1442 summary: "List code scanning alerts for a workspace",
1443 scope: Some("security:read"),
1444 params: &[
1445 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1446 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
1447 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
1448 Param { name: "tool", location: In::Query, kind: "string", required: false, values: &[] },
1449 Param { name: "rule_id", location: In::Query, kind: "string", required: false, values: &[] },
1450 ],
1451 body: &[],
1452 },
1453 Operation {
1454 id: "list_code_scanning_analyses",
1455 method: "GET",
1456 path: "/repos/{owner}/{name}/code-scanning/analyses",
1457 tag: "Code scanning",
1458 summary: "List code scanning analyses",
1459 scope: Some("security:read"),
1460 params: &[
1461 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1462 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1463 ],
1464 body: &[],
1465 },
1466 Operation {
1467 id: "update_code_scanning_alert",
1468 method: "PATCH",
1469 path: "/repos/{owner}/{name}/code-scanning/alerts/{number}",
1470 tag: "Code scanning",
1471 summary: "Dismiss or reopen a code scanning alert",
1472 scope: Some("security:write"),
1473 params: &[
1474 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1475 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1476 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1477 ],
1478 body: &[
1479 Field { name: "dismissed_comment", kind: "string", required: false, values: &[] },
1480 Field { name: "dismissed_reason", kind: "string", required: false, values: &["false_positive", "wont_fix", "used_in_tests"] },
1481 Field { name: "state", kind: "string", required: true, values: &["open", "dismissed"] },
1482 ],
1483 },
1484 Operation {
1485 id: "upload_sarif",
1486 method: "POST",
1487 path: "/repos/{owner}/{name}/code-scanning/sarifs",
1488 tag: "Code scanning",
1489 summary: "Upload a SARIF file",
1490 scope: Some("security:write"),
1491 params: &[
1492 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1493 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1494 ],
1495 body: &[
1496 Field { name: "category", kind: "string", required: false, values: &[] },
1497 Field { name: "checkout_uri", kind: "string", required: false, values: &[] },
1498 Field { name: "commit_sha", kind: "string", required: true, values: &[] },
1499 Field { name: "ref", kind: "string", required: true, values: &[] },
1500 Field { name: "sarif", kind: "string", required: true, values: &[] },
1501 Field { name: "tool_name", kind: "string", required: false, values: &[] },
1502 ],
1503 },
1504 Operation {
1505 id: "create_commit_comment",
1506 method: "POST",
1507 path: "/repos/{owner}/{name}/commits/{sha}/comments",
1508 tag: "Commit comments",
1509 summary: "Comment on a commit",
1510 scope: Some("work:write"),
1511 params: &[
1512 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1513 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1514 Param { name: "sha", location: In::Path, kind: "string", required: true, values: &[] },
1515 ],
1516 body: &[
1517 Field { name: "body", kind: "string", required: true, values: &[] },
1518 Field { name: "line", kind: "integer", required: false, values: &[] },
1519 Field { name: "path", kind: "string", required: false, values: &[] },
1520 ],
1521 },
1522 Operation {
1523 id: "delete_commit_comment",
1524 method: "DELETE",
1525 path: "/repos/{owner}/{name}/comments/{comment_id}",
1526 tag: "Commit comments",
1527 summary: "Delete a commit comment",
1528 scope: Some("work:write"),
1529 params: &[
1530 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1531 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1532 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
1533 ],
1534 body: &[],
1535 },
1536 Operation {
1537 id: "list_commit_comments",
1538 method: "GET",
1539 path: "/repos/{owner}/{name}/commits/{sha}/comments",
1540 tag: "Commit comments",
1541 summary: "List a commit's comments",
1542 scope: Some("repo:read"),
1543 params: &[
1544 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1545 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1546 Param { name: "sha", location: In::Path, kind: "string", required: true, values: &[] },
1547 ],
1548 body: &[],
1549 },
1550 Operation {
1551 id: "list_repo_commit_comments",
1552 method: "GET",
1553 path: "/repos/{owner}/{name}/comments",
1554 tag: "Commit comments",
1555 summary: "List a repository's commit comments",
1556 scope: Some("repo:read"),
1557 params: &[
1558 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1559 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1560 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
1561 ],
1562 body: &[],
1563 },
1564 Operation {
1565 id: "update_commit_comment",
1566 method: "PATCH",
1567 path: "/repos/{owner}/{name}/comments/{comment_id}",
1568 tag: "Commit comments",
1569 summary: "Edit a commit comment",
1570 scope: Some("work:write"),
1571 params: &[
1572 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1573 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1574 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
1575 ],
1576 body: &[
1577 Field { name: "body", kind: "string", required: true, values: &[] },
1578 ],
1579 },
1580 Operation {
1581 id: "list_decisions",
1582 method: "GET",
1583 path: "/repos/{owner}/{name}/pulls/{number}/decisions",
1584 tag: "Decisions and why",
1585 summary: "List a pull request's decisions",
1586 scope: Some("pull_requests:read"),
1587 params: &[
1588 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1589 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1590 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1591 ],
1592 body: &[],
1593 },
1594 Operation {
1595 id: "record_decision",
1596 method: "POST",
1597 path: "/repos/{owner}/{name}/pulls/{number}/decisions",
1598 tag: "Decisions and why",
1599 summary: "Record a decision",
1600 scope: Some("pull_requests:write"),
1601 params: &[
1602 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1603 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1604 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1605 ],
1606 body: &[
1607 Field { name: "evidence", kind: "object", required: false, values: &[] },
1608 Field { name: "kind", kind: "string", required: true, values: &["proposal", "claim", "fix", "note"] },
1609 Field { name: "session_id", kind: "string", required: false, values: &[] },
1610 Field { name: "summary", kind: "string", required: true, values: &[] },
1611 ],
1612 },
1613 Operation {
1614 id: "why",
1615 method: "GET",
1616 path: "/repos/{owner}/{name}/why",
1617 tag: "Decisions and why",
1618 summary: "Explain a line",
1619 scope: Some("code:read"),
1620 params: &[
1621 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1622 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1623 Param { name: "path", location: In::Query, kind: "string", required: true, values: &[] },
1624 Param { name: "line", location: In::Query, kind: "integer", required: true, values: &[] },
1625 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
1626 ],
1627 body: &[],
1628 },
1629 Operation {
1630 id: "create_deployment",
1631 method: "POST",
1632 path: "/repos/{owner}/{name}/deployments",
1633 tag: "Deployments",
1634 summary: "Create a deployment",
1635 scope: Some("deployments:write"),
1636 params: &[
1637 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1638 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1639 ],
1640 body: &[
1641 Field { name: "description", kind: "string", required: false, values: &[] },
1642 Field { name: "environment", kind: "string", required: false, values: &[] },
1643 Field { name: "environment_url", kind: "string", required: false, values: &[] },
1644 Field { name: "log_url", kind: "string", required: false, values: &[] },
1645 Field { name: "payload", kind: "object", required: false, values: &[] },
1646 Field { name: "production_environment", kind: "boolean", required: false, values: &[] },
1647 Field { name: "ref", kind: "string", required: true, values: &[] },
1648 Field { name: "sha", kind: "string", required: false, values: &[] },
1649 Field { name: "state", kind: "string", required: false, values: &["queued", "in_progress", "success", "failure", "error", "inactive"] },
1650 Field { name: "task", kind: "string", required: false, values: &[] },
1651 Field { name: "transient_environment", kind: "boolean", required: false, values: &[] },
1652 ],
1653 },
1654 Operation {
1655 id: "create_deployment_status",
1656 method: "POST",
1657 path: "/repos/{owner}/{name}/deployments/{id}/statuses",
1658 tag: "Deployments",
1659 summary: "Create a deployment status",
1660 scope: Some("deployments:write"),
1661 params: &[
1662 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1663 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1664 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1665 ],
1666 body: &[
1667 Field { name: "auto_inactive", kind: "boolean", required: false, values: &[] },
1668 Field { name: "description", kind: "string", required: false, values: &[] },
1669 Field { name: "environment_url", kind: "string", required: false, values: &[] },
1670 Field { name: "log_url", kind: "string", required: false, values: &[] },
1671 Field { name: "state", kind: "string", required: true, values: &["queued", "in_progress", "success", "failure", "error", "inactive"] },
1672 ],
1673 },
1674 Operation {
1675 id: "get_deployment",
1676 method: "GET",
1677 path: "/repos/{owner}/{name}/deployments/{id}",
1678 tag: "Deployments",
1679 summary: "Get a deployment",
1680 scope: Some("deployments:read"),
1681 params: &[
1682 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1683 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1684 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1685 ],
1686 body: &[],
1687 },
1688 Operation {
1689 id: "get_deployment_settings",
1690 method: "GET",
1691 path: "/workspaces/{workspace}/projects/{project}/deployments/settings",
1692 tag: "Deployments",
1693 summary: "Get a project's deployment settings",
1694 scope: Some("deployments:read"),
1695 params: &[
1696 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1697 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
1698 ],
1699 body: &[],
1700 },
1701 Operation {
1702 id: "get_environment",
1703 method: "GET",
1704 path: "/repos/{owner}/{name}/environments/{environment}",
1705 tag: "Deployments",
1706 summary: "Get an environment",
1707 scope: Some("deployments:read"),
1708 params: &[
1709 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1710 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1711 Param { name: "environment", location: In::Path, kind: "string", required: true, values: &[] },
1712 ],
1713 body: &[],
1714 },
1715 Operation {
1716 id: "list_deployment_statuses",
1717 method: "GET",
1718 path: "/repos/{owner}/{name}/deployments/{id}/statuses",
1719 tag: "Deployments",
1720 summary: "List deployment statuses",
1721 scope: Some("deployments:read"),
1722 params: &[
1723 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1724 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1725 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1726 ],
1727 body: &[],
1728 },
1729 Operation {
1730 id: "list_deployments",
1731 method: "GET",
1732 path: "/repos/{owner}/{name}/deployments",
1733 tag: "Deployments",
1734 summary: "List deployments",
1735 scope: Some("deployments:read"),
1736 params: &[
1737 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1738 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1739 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
1740 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
1741 Param { name: "sha", location: In::Query, kind: "string", required: false, values: &[] },
1742 Param { name: "task", location: In::Query, kind: "string", required: false, values: &[] },
1743 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["queued", "in_progress", "success", "failure", "error", "inactive"] },
1744 Param { name: "source", location: In::Query, kind: "string", required: false, values: &["api", "actions", "g1t_page"] },
1745 Param { name: "creator", location: In::Query, kind: "string", required: false, values: &[] },
1746 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
1747 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
1748 ],
1749 body: &[],
1750 },
1751 Operation {
1752 id: "list_environments",
1753 method: "GET",
1754 path: "/repos/{owner}/{name}/environments",
1755 tag: "Deployments",
1756 summary: "List environments",
1757 scope: Some("deployments:read"),
1758 params: &[
1759 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1760 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1761 ],
1762 body: &[],
1763 },
1764 Operation {
1765 id: "start_deployment_build",
1766 method: "POST",
1767 path: "/repos/{owner}/{name}/deployments/builds",
1768 tag: "Deployments",
1769 summary: "Start a g1t.page build from a workflow",
1770 scope: Some("deployments:write"),
1771 params: &[
1772 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1773 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1774 ],
1775 body: &[
1776 Field { name: "project", kind: "string", required: false, values: &[] },
1777 Field { name: "sha", kind: "string", required: false, values: &[] },
1778 ],
1779 },
1780 Operation {
1781 id: "update_deployment_settings",
1782 method: "PATCH",
1783 path: "/workspaces/{workspace}/projects/{project}/deployments/settings",
1784 tag: "Deployments",
1785 summary: "Update a project's deployment settings",
1786 scope: Some("repo:admin"),
1787 params: &[
1788 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1789 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
1790 ],
1791 body: &[
1792 Field { name: "build_as", kind: "string", required: false, values: &["auto", "static", "workers", "docker"] },
1793 Field { name: "build_command", kind: "string", required: false, values: &[] },
1794 Field { name: "dockerfile", kind: "string", required: false, values: &[] },
1795 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
1796 Field { name: "idle_days", kind: "integer", required: false, values: &[] },
1797 Field { name: "instance_type", kind: "string", required: false, values: &["lite", "basic", "standard-1", "standard-2", "standard-3", "standard-4"] },
1798 Field { name: "output_dir", kind: "string", required: false, values: &[] },
1799 Field { name: "previews", kind: "boolean", required: false, values: &[] },
1800 Field { name: "production", kind: "boolean", required: false, values: &[] },
1801 Field { name: "via_workflow", kind: "boolean", required: false, values: &[] },
1802 ],
1803 },
1804 Operation {
1805 id: "get_onboarding",
1806 method: "GET",
1807 path: "/workspaces/{workspace}/onboarding",
1808 tag: "Getting started",
1809 summary: "Get your Getting started in a workspace",
1810 scope: Some("workspace:read"),
1811 params: &[
1812 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1813 ],
1814 body: &[],
1815 },
1816 Operation {
1817 id: "update_onboarding",
1818 method: "PATCH",
1819 path: "/workspaces/{workspace}/onboarding",
1820 tag: "Getting started",
1821 summary: "Dismiss or skip steps of Getting started",
1822 scope: Some("account:write"),
1823 params: &[
1824 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1825 ],
1826 body: &[
1827 Field { name: "dismissed", kind: "boolean", required: false, values: &[] },
1828 Field { name: "skipped", kind: "array", required: false, values: &[] },
1829 ],
1830 },
1831 Operation {
1832 id: "connect_integration",
1833 method: "POST",
1834 path: "/workspaces/{workspace}/integrations",
1835 tag: "Integrations",
1836 summary: "Connect an integration",
1837 scope: Some("workspace:admin"),
1838 params: &[
1839 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1840 ],
1841 body: &[
1842 Field { name: "config", kind: "object", required: false, values: &[] },
1843 Field { name: "name", kind: "string", required: false, values: &[] },
1844 Field { name: "provider", kind: "string", required: true, values: &["sentry", "datadog", "webhook", "jira", "linear"] },
1845 Field { name: "secret", kind: "string", required: false, values: &[] },
1846 Field { name: "signing_secret", kind: "string", required: false, values: &[] },
1847 ],
1848 },
1849 Operation {
1850 id: "disconnect_integration",
1851 method: "DELETE",
1852 path: "/workspaces/{workspace}/integrations/{id}",
1853 tag: "Integrations",
1854 summary: "Disconnect an integration",
1855 scope: Some("workspace:admin"),
1856 params: &[
1857 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1858 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1859 ],
1860 body: &[],
1861 },
1862 Operation {
1863 id: "get_context",
1864 method: "GET",
1865 path: "/repos/{owner}/{name}/context",
1866 tag: "Integrations",
1867 summary: "Look up a ticket",
1868 scope: Some("work:read"),
1869 params: &[
1870 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1871 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1872 Param { name: "reference", location: In::Query, kind: "string", required: true, values: &[] },
1873 ],
1874 body: &[],
1875 },
1876 Operation {
1877 id: "list_integrations",
1878 method: "GET",
1879 path: "/workspaces/{workspace}/integrations",
1880 tag: "Integrations",
1881 summary: "List integrations",
1882 scope: Some("workspace:read"),
1883 params: &[
1884 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1885 ],
1886 body: &[],
1887 },
1888 Operation {
1889 id: "test_integration",
1890 method: "POST",
1891 path: "/workspaces/{workspace}/integrations/{id}/test",
1892 tag: "Integrations",
1893 summary: "Test an integration",
1894 scope: Some("workspace:admin"),
1895 params: &[
1896 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1897 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1898 ],
1899 body: &[],
1900 },
1901 Operation {
1902 id: "update_integration",
1903 method: "PATCH",
1904 path: "/workspaces/{workspace}/integrations/{id}",
1905 tag: "Integrations",
1906 summary: "Update an integration",
1907 scope: Some("workspace:admin"),
1908 params: &[
1909 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1910 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1911 ],
1912 body: &[
1913 Field { name: "config", kind: "object", required: false, values: &[] },
1914 Field { name: "name", kind: "string", required: false, values: &[] },
1915 Field { name: "secret", kind: "string", required: false, values: &[] },
1916 Field { name: "signing_secret", kind: "string", required: false, values: &[] },
1917 ],
1918 },
1919 Operation {
1920 id: "accept_invitation",
1921 method: "POST",
1922 path: "/user/invitations/{id}/accept",
1923 tag: "Invites",
1924 summary: "Accept a workspace invitation",
1925 scope: Some("account:write"),
1926 params: &[
1927 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1928 ],
1929 body: &[],
1930 },
1931 Operation {
1932 id: "create_invite",
1933 method: "POST",
1934 path: "/user/invites",
1935 tag: "Invites",
1936 summary: "Invite a friend to g1t",
1937 scope: Some("account:write"),
1938 params: &[],
1939 body: &[
1940 Field { name: "email", kind: "string", required: true, values: &[] },
1941 Field { name: "message", kind: "string", required: false, values: &[] },
1942 Field { name: "role", kind: "string", required: false, values: &["member", "owner"] },
1943 Field { name: "workspace", kind: "string", required: false, values: &[] },
1944 ],
1945 },
1946 Operation {
1947 id: "decline_invitation",
1948 method: "POST",
1949 path: "/user/invitations/{id}/decline",
1950 tag: "Invites",
1951 summary: "Decline a workspace invitation",
1952 scope: Some("account:write"),
1953 params: &[
1954 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1955 ],
1956 body: &[],
1957 },
1958 Operation {
1959 id: "invite_member",
1960 method: "POST",
1961 path: "/workspaces/{workspace}/invitations",
1962 tag: "Invites",
1963 summary: "Invite someone to a workspace",
1964 scope: Some("workspace:admin"),
1965 params: &[
1966 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1967 ],
1968 body: &[
1969 Field { name: "email", kind: "string", required: false, values: &[] },
1970 Field { name: "role", kind: "string", required: false, values: &["member", "owner"] },
1971 Field { name: "username", kind: "string", required: false, values: &[] },
1972 ],
1973 },
1974 Operation {
1975 id: "list_invitations",
1976 method: "GET",
1977 path: "/user/invitations",
1978 tag: "Invites",
1979 summary: "List your workspace invitations",
1980 scope: Some("account:read"),
1981 params: &[],
1982 body: &[],
1983 },
1984 Operation {
1985 id: "list_invites",
1986 method: "GET",
1987 path: "/user/invites",
1988 tag: "Invites",
1989 summary: "List your invites to g1t",
1990 scope: Some("account:read"),
1991 params: &[],
1992 body: &[],
1993 },
1994 Operation {
1995 id: "list_workspace_invites",
1996 method: "GET",
1997 path: "/workspaces/{workspace}/invitations",
1998 tag: "Invites",
1999 summary: "List a workspace's invites",
2000 scope: Some("workspace:read"),
2001 params: &[
2002 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2003 ],
2004 body: &[],
2005 },
2006 Operation {
2007 id: "resend_invite",
2008 method: "POST",
2009 path: "/user/invites/{id}/resend",
2010 tag: "Invites",
2011 summary: "Send an invite to g1t again",
2012 scope: Some("account:write"),
2013 params: &[
2014 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2015 ],
2016 body: &[],
2017 },
2018 Operation {
2019 id: "revoke_invite",
2020 method: "DELETE",
2021 path: "/user/invites/{id}",
2022 tag: "Invites",
2023 summary: "Revoke an invite to g1t",
2024 scope: Some("account:write"),
2025 params: &[
2026 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2027 ],
2028 body: &[],
2029 },
2030 Operation {
2031 id: "revoke_workspace_invite",
2032 method: "DELETE",
2033 path: "/workspaces/{workspace}/invitations/{id}",
2034 tag: "Invites",
2035 summary: "Revoke a workspace's invite",
2036 scope: Some("workspace:admin"),
2037 params: &[
2038 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2039 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2040 ],
2041 body: &[],
2042 },
2043 Operation {
2044 id: "add_default_labels",
2045 method: "POST",
2046 path: "/workspaces/{workspace}/labels/defaults",
2047 tag: "Labels and milestones",
2048 summary: "Add the default labels",
2049 scope: Some("work:write"),
2050 params: &[
2051 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2052 ],
2053 body: &[],
2054 },
2055 Operation {
2056 id: "create_label",
2057 method: "POST",
2058 path: "/workspaces/{workspace}/labels",
2059 tag: "Labels and milestones",
2060 summary: "Create a label",
2061 scope: Some("work:write"),
2062 params: &[
2063 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2064 ],
2065 body: &[
2066 Field { name: "color", kind: "string", required: false, values: &[] },
2067 Field { name: "description", kind: "string", required: false, values: &[] },
2068 Field { name: "label", kind: "string", required: true, values: &[] },
2069 ],
2070 },
2071 Operation {
2072 id: "create_milestone",
2073 method: "POST",
2074 path: "/workspaces/{workspace}/milestones",
2075 tag: "Labels and milestones",
2076 summary: "Create a milestone",
2077 scope: Some("work:write"),
2078 params: &[
2079 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2080 ],
2081 body: &[
2082 Field { name: "description", kind: "string", required: false, values: &[] },
2083 Field { name: "due_on", kind: "string", required: false, values: &[] },
2084 Field { name: "state", kind: "string", required: false, values: &["open", "closed"] },
2085 Field { name: "title", kind: "string", required: true, values: &[] },
2086 ],
2087 },
2088 Operation {
2089 id: "delete_label",
2090 method: "DELETE",
2091 path: "/workspaces/{workspace}/labels/{label}",
2092 tag: "Labels and milestones",
2093 summary: "Delete a label",
2094 scope: Some("work:write"),
2095 params: &[
2096 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2097 Param { name: "label", location: In::Path, kind: "string", required: true, values: &[] },
2098 ],
2099 body: &[],
2100 },
2101 Operation {
2102 id: "delete_milestone",
2103 method: "DELETE",
2104 path: "/workspaces/{workspace}/milestones/{milestone}",
2105 tag: "Labels and milestones",
2106 summary: "Delete a milestone",
2107 scope: Some("work:write"),
2108 params: &[
2109 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2110 Param { name: "milestone", location: In::Path, kind: "integer", required: true, values: &[] },
2111 ],
2112 body: &[],
2113 },
2114 Operation {
2115 id: "get_milestone",
2116 method: "GET",
2117 path: "/workspaces/{workspace}/milestones/{milestone}",
2118 tag: "Labels and milestones",
2119 summary: "Get a milestone",
2120 scope: Some("work:read"),
2121 params: &[
2122 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2123 Param { name: "milestone", location: In::Path, kind: "integer", required: true, values: &[] },
2124 ],
2125 body: &[],
2126 },
2127 Operation {
2128 id: "list_labels",
2129 method: "GET",
2130 path: "/workspaces/{workspace}/labels",
2131 tag: "Labels and milestones",
2132 summary: "List labels",
2133 scope: Some("work:read"),
2134 params: &[
2135 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2136 ],
2137 body: &[],
2138 },
2139 Operation {
2140 id: "list_milestones",
2141 method: "GET",
2142 path: "/workspaces/{workspace}/milestones",
2143 tag: "Labels and milestones",
2144 summary: "List milestones",
2145 scope: Some("work:read"),
2146 params: &[
2147 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2148 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
2149 ],
2150 body: &[],
2151 },
2152 Operation {
2153 id: "update_label",
2154 method: "PATCH",
2155 path: "/workspaces/{workspace}/labels/{label}",
2156 tag: "Labels and milestones",
2157 summary: "Update a label",
2158 scope: Some("work:write"),
2159 params: &[
2160 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2161 Param { name: "label", location: In::Path, kind: "string", required: true, values: &[] },
2162 ],
2163 body: &[
2164 Field { name: "color", kind: "string", required: false, values: &[] },
2165 Field { name: "description", kind: "string", required: false, values: &[] },
2166 Field { name: "new_name", kind: "string", required: false, values: &[] },
2167 ],
2168 },
2169 Operation {
2170 id: "update_milestone",
2171 method: "PATCH",
2172 path: "/workspaces/{workspace}/milestones/{milestone}",
2173 tag: "Labels and milestones",
2174 summary: "Update a milestone",
2175 scope: Some("work:write"),
2176 params: &[
2177 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2178 Param { name: "milestone", location: In::Path, kind: "integer", required: true, values: &[] },
2179 ],
2180 body: &[
2181 Field { name: "description", kind: "string", required: false, values: &[] },
2182 Field { name: "due_on", kind: "string", required: false, values: &[] },
2183 Field { name: "state", kind: "string", required: false, values: &["open", "closed"] },
2184 Field { name: "title", kind: "string", required: false, values: &[] },
2185 ],
2186 },
2187 Operation {
2188 id: "leave_workspace",
2189 method: "DELETE",
2190 path: "/user/memberships/{workspace}",
2191 tag: "Members",
2192 summary: "Leave a workspace",
2193 scope: Some("account:write"),
2194 params: &[
2195 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2196 ],
2197 body: &[],
2198 },
2199 Operation {
2200 id: "list_members",
2201 method: "GET",
2202 path: "/workspaces/{workspace}/members",
2203 tag: "Members",
2204 summary: "List a workspace's members",
2205 scope: Some("workspace:read"),
2206 params: &[
2207 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2208 ],
2209 body: &[],
2210 },
2211 Operation {
2212 id: "remove_member",
2213 method: "DELETE",
2214 path: "/workspaces/{workspace}/members/{username}",
2215 tag: "Members",
2216 summary: "Remove a member",
2217 scope: Some("workspace:admin"),
2218 params: &[
2219 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2220 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
2221 ],
2222 body: &[],
2223 },
2224 Operation {
2225 id: "transfer_ownership",
2226 method: "POST",
2227 path: "/workspaces/{workspace}/transfer_ownership",
2228 tag: "Members",
2229 summary: "Transfer a workspace's ownership",
2230 scope: Some("workspace:admin"),
2231 params: &[
2232 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2233 ],
2234 body: &[
2235 Field { name: "username", kind: "string", required: true, values: &[] },
2236 ],
2237 },
2238 Operation {
2239 id: "update_member",
2240 method: "PATCH",
2241 path: "/workspaces/{workspace}/members/{username}",
2242 tag: "Members",
2243 summary: "Change a member's role",
2244 scope: Some("workspace:admin"),
2245 params: &[
2246 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2247 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
2248 ],
2249 body: &[
2250 Field { name: "org_roles", kind: "array", required: false, values: &[] },
2251 Field { name: "role", kind: "string", required: false, values: &["owner", "member"] },
2252 ],
2253 },
2254 Operation {
2255 id: "delete_pull_request_subscription",
2256 method: "DELETE",
2257 path: "/repos/{owner}/{name}/pulls/{number}/subscription",
2258 tag: "Notifications",
2259 summary: "Unsubscribe from a pull request",
2260 scope: Some("notifications:write"),
2261 params: &[
2262 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2263 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2264 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2265 ],
2266 body: &[
2267 Field { name: "id", kind: "string", required: false, values: &[] },
2268 Field { name: "workspace", kind: "string", required: false, values: &[] },
2269 ],
2270 },
2271 Operation {
2272 id: "delete_repo_subscription",
2273 method: "DELETE",
2274 path: "/repos/{owner}/{name}/subscription",
2275 tag: "Notifications",
2276 summary: "Stop watching a repository",
2277 scope: Some("notifications:write"),
2278 params: &[
2279 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2280 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2281 ],
2282 body: &[],
2283 },
2284 Operation {
2285 id: "delete_thread_subscription",
2286 method: "DELETE",
2287 path: "/notifications/threads/{id}/subscription",
2288 tag: "Notifications",
2289 summary: "Unsubscribe from a thread",
2290 scope: Some("notifications:write"),
2291 params: &[
2292 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2293 ],
2294 body: &[
2295 Field { name: "number", kind: "integer", required: false, values: &[] },
2296 Field { name: "workspace", kind: "string", required: false, values: &[] },
2297 ],
2298 },
2299 Operation {
2300 id: "delete_work_item_subscription",
2301 method: "DELETE",
2302 path: "/workspaces/{workspace}/work/{number}/subscription",
2303 tag: "Notifications",
2304 summary: "Unsubscribe from a work item",
2305 scope: Some("notifications:write"),
2306 params: &[
2307 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2308 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2309 ],
2310 body: &[
2311 Field { name: "id", kind: "string", required: false, values: &[] },
2312 ],
2313 },
2314 Operation {
2315 id: "get_notification_thread",
2316 method: "GET",
2317 path: "/notifications/threads/{id}",
2318 tag: "Notifications",
2319 summary: "Get a thread",
2320 scope: Some("notifications:read"),
2321 params: &[
2322 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2323 ],
2324 body: &[],
2325 },
2326 Operation {
2327 id: "get_pull_request_subscription",
2328 method: "GET",
2329 path: "/repos/{owner}/{name}/pulls/{number}/subscription",
2330 tag: "Notifications",
2331 summary: "Get your subscription to a pull request",
2332 scope: Some("notifications:read"),
2333 params: &[
2334 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2335 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2336 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2337 ],
2338 body: &[],
2339 },
2340 Operation {
2341 id: "get_repo_subscription",
2342 method: "GET",
2343 path: "/repos/{owner}/{name}/subscription",
2344 tag: "Notifications",
2345 summary: "Get how you watch a repository",
2346 scope: Some("notifications:read"),
2347 params: &[
2348 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2349 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2350 ],
2351 body: &[],
2352 },
2353 Operation {
2354 id: "get_thread_subscription",
2355 method: "GET",
2356 path: "/notifications/threads/{id}/subscription",
2357 tag: "Notifications",
2358 summary: "Get a thread subscription",
2359 scope: Some("notifications:read"),
2360 params: &[
2361 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2362 ],
2363 body: &[],
2364 },
2365 Operation {
2366 id: "get_work_item_subscription",
2367 method: "GET",
2368 path: "/workspaces/{workspace}/work/{number}/subscription",
2369 tag: "Notifications",
2370 summary: "Get your subscription to a work item",
2371 scope: Some("notifications:read"),
2372 params: &[
2373 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2374 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2375 ],
2376 body: &[],
2377 },
2378 Operation {
2379 id: "list_notifications",
2380 method: "GET",
2381 path: "/notifications",
2382 tag: "Notifications",
2383 summary: "List notifications",
2384 scope: Some("notifications:read"),
2385 params: &[
2386 Param { name: "all", location: In::Query, kind: "boolean", required: false, values: &[] },
2387 Param { name: "participating", location: In::Query, kind: "boolean", required: false, values: &[] },
2388 Param { name: "view", location: In::Query, kind: "string", required: false, values: &["inbox", "saved", "done"] },
2389 Param { name: "reason", location: In::Query, kind: "string", required: false, values: &["agent", "review_requested", "assign", "mention", "team_mention", "ci_activity", "security_alert", "state_change", "author", "comment", "manual", "subscribed"] },
2390 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["error", "warning", "success", "info"] },
2391 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
2392 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
2393 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2394 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
2395 ],
2396 body: &[],
2397 },
2398 Operation {
2399 id: "list_repo_notifications",
2400 method: "GET",
2401 path: "/repos/{owner}/{name}/notifications",
2402 tag: "Notifications",
2403 summary: "List a repository's notifications",
2404 scope: Some("notifications:read"),
2405 params: &[
2406 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2407 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2408 Param { name: "all", location: In::Query, kind: "boolean", required: false, values: &[] },
2409 Param { name: "participating", location: In::Query, kind: "boolean", required: false, values: &[] },
2410 Param { name: "view", location: In::Query, kind: "string", required: false, values: &["inbox", "saved", "done"] },
2411 Param { name: "reason", location: In::Query, kind: "string", required: false, values: &["agent", "review_requested", "assign", "mention", "team_mention", "ci_activity", "security_alert", "state_change", "author", "comment", "manual", "subscribed"] },
2412 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["error", "warning", "success", "info"] },
2413 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
2414 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
2415 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2416 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
2417 ],
2418 body: &[],
2419 },
2420 Operation {
2421 id: "list_watched_repos",
2422 method: "GET",
2423 path: "/user/subscriptions",
2424 tag: "Notifications",
2425 summary: "List repositories you watch",
2426 scope: Some("notifications:read"),
2427 params: &[],
2428 body: &[],
2429 },
2430 Operation {
2431 id: "mark_notifications_read",
2432 method: "PUT",
2433 path: "/notifications",
2434 tag: "Notifications",
2435 summary: "Mark notifications read",
2436 scope: Some("notifications:write"),
2437 params: &[],
2438 body: &[
2439 Field { name: "last_read_at", kind: "string", required: false, values: &[] },
2440 Field { name: "read", kind: "boolean", required: false, values: &[] },
2441 ],
2442 },
2443 Operation {
2444 id: "mark_repo_notifications_read",
2445 method: "PUT",
2446 path: "/repos/{owner}/{name}/notifications",
2447 tag: "Notifications",
2448 summary: "Mark a repository's notifications read",
2449 scope: Some("notifications:write"),
2450 params: &[
2451 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2452 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2453 ],
2454 body: &[
2455 Field { name: "last_read_at", kind: "string", required: false, values: &[] },
2456 Field { name: "read", kind: "boolean", required: false, values: &[] },
2457 ],
2458 },
2459 Operation {
2460 id: "mark_thread_done",
2461 method: "DELETE",
2462 path: "/notifications/threads/{id}",
2463 tag: "Notifications",
2464 summary: "Mark a thread done",
2465 scope: Some("notifications:write"),
2466 params: &[
2467 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2468 ],
2469 body: &[
2470 Field { name: "done", kind: "boolean", required: false, values: &[] },
2471 ],
2472 },
2473 Operation {
2474 id: "mark_thread_read",
2475 method: "PATCH",
2476 path: "/notifications/threads/{id}",
2477 tag: "Notifications",
2478 summary: "Mark a thread read",
2479 scope: Some("notifications:write"),
2480 params: &[
2481 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2482 ],
2483 body: &[
2484 Field { name: "read", kind: "boolean", required: false, values: &[] },
2485 ],
2486 },
2487 Operation {
2488 id: "save_thread",
2489 method: "PUT",
2490 path: "/notifications/threads/{id}/saved",
2491 tag: "Notifications",
2492 summary: "Save a thread",
2493 scope: Some("notifications:write"),
2494 params: &[
2495 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2496 ],
2497 body: &[
2498 Field { name: "saved", kind: "boolean", required: false, values: &[] },
2499 ],
2500 },
2501 Operation {
2502 id: "set_pull_request_subscription",
2503 method: "PUT",
2504 path: "/repos/{owner}/{name}/pulls/{number}/subscription",
2505 tag: "Notifications",
2506 summary: "Subscribe to a pull request",
2507 scope: Some("notifications:write"),
2508 params: &[
2509 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2510 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2511 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2512 ],
2513 body: &[
2514 Field { name: "id", kind: "string", required: false, values: &[] },
2515 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2516 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2517 Field { name: "workspace", kind: "string", required: false, values: &[] },
2518 ],
2519 },
2520 Operation {
2521 id: "set_repo_subscription",
2522 method: "PUT",
2523 path: "/repos/{owner}/{name}/subscription",
2524 tag: "Notifications",
2525 summary: "Watch a repository",
2526 scope: Some("notifications:write"),
2527 params: &[
2528 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2529 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2530 ],
2531 body: &[
2532 Field { name: "events", kind: "array", required: false, values: &[] },
2533 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2534 Field { name: "level", kind: "string", required: false, values: &["participating", "all", "ignore", "custom"] },
2535 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2536 ],
2537 },
2538 Operation {
2539 id: "set_thread_subscription",
2540 method: "PUT",
2541 path: "/notifications/threads/{id}/subscription",
2542 tag: "Notifications",
2543 summary: "Set a thread subscription",
2544 scope: Some("notifications:write"),
2545 params: &[
2546 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2547 ],
2548 body: &[
2549 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2550 Field { name: "number", kind: "integer", required: false, values: &[] },
2551 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2552 Field { name: "workspace", kind: "string", required: false, values: &[] },
2553 ],
2554 },
2555 Operation {
2556 id: "set_work_item_subscription",
2557 method: "PUT",
2558 path: "/workspaces/{workspace}/work/{number}/subscription",
2559 tag: "Notifications",
2560 summary: "Subscribe to a work item",
2561 scope: Some("notifications:write"),
2562 params: &[
2563 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2564 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2565 ],
2566 body: &[
2567 Field { name: "id", kind: "string", required: false, values: &[] },
2568 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2569 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2570 ],
2571 },
2572 Operation {
2573 id: "snooze_thread",
2574 method: "PUT",
2575 path: "/notifications/threads/{id}/snooze",
2576 tag: "Notifications",
2577 summary: "Snooze a thread",
2578 scope: Some("notifications:write"),
2579 params: &[
2580 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2581 ],
2582 body: &[
2583 Field { name: "until", kind: "string", required: false, values: &[] },
2584 ],
2585 },
2586 Operation {
2587 id: "unsave_thread",
2588 method: "DELETE",
2589 path: "/notifications/threads/{id}/saved",
2590 tag: "Notifications",
2591 summary: "Unsave a thread",
2592 scope: Some("notifications:write"),
2593 params: &[
2594 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2595 ],
2596 body: &[
2597 Field { name: "saved", kind: "boolean", required: false, values: &[] },
2598 ],
2599 },
2600 Operation {
2601 id: "unsnooze_thread",
2602 method: "DELETE",
2603 path: "/notifications/threads/{id}/snooze",
2604 tag: "Notifications",
2605 summary: "Bring a snoozed thread back",
2606 scope: Some("notifications:write"),
2607 params: &[
2608 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2609 ],
2610 body: &[
2611 Field { name: "until", kind: "string", required: false, values: &[] },
2612 ],
2613 },
2614 Operation {
2615 id: "create_ingest_token",
2616 method: "POST",
2617 path: "/workspaces/{workspace}/projects/{project}/observability/tokens",
2618 tag: "Observability",
2619 summary: "Create an ingest token",
2620 scope: Some("observability:write"),
2621 params: &[
2622 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2623 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2624 ],
2625 body: &[
2626 Field { name: "name", kind: "string", required: true, values: &[] },
2627 ],
2628 },
2629 Operation {
2630 id: "create_telemetry_export",
2631 method: "POST",
2632 path: "/workspaces/{workspace}/projects/{project}/observability/exports",
2633 tag: "Observability",
2634 summary: "Create a telemetry export",
2635 scope: Some("observability:write"),
2636 params: &[
2637 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2638 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2639 ],
2640 body: &[
2641 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
2642 Field { name: "endpoint", kind: "string", required: true, values: &[] },
2643 Field { name: "headers", kind: "object", required: false, values: &[] },
2644 Field { name: "name", kind: "string", required: true, values: &[] },
2645 Field { name: "signals", kind: "array", required: false, values: &[] },
2646 ],
2647 },
2648 Operation {
2649 id: "delete_ingest_token",
2650 method: "DELETE",
2651 path: "/workspaces/{workspace}/projects/{project}/observability/tokens/{id}",
2652 tag: "Observability",
2653 summary: "Delete an ingest token",
2654 scope: Some("observability:write"),
2655 params: &[
2656 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2657 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2658 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2659 ],
2660 body: &[],
2661 },
2662 Operation {
2663 id: "delete_telemetry_export",
2664 method: "DELETE",
2665 path: "/workspaces/{workspace}/projects/{project}/observability/exports/{id}",
2666 tag: "Observability",
2667 summary: "Delete a telemetry export",
2668 scope: Some("observability:write"),
2669 params: &[
2670 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2671 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2672 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2673 ],
2674 body: &[],
2675 },
2676 Operation {
2677 id: "get_metric",
2678 method: "GET",
2679 path: "/workspaces/{workspace}/projects/{project}/observability/metrics/{metric}",
2680 tag: "Observability",
2681 summary: "Get a metric",
2682 scope: Some("observability:read"),
2683 params: &[
2684 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2685 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2686 Param { name: "metric", location: In::Path, kind: "string", required: true, values: &[] },
2687 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2688 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2689 Param { name: "aggregate", location: In::Query, kind: "string", required: false, values: &["avg", "sum", "min", "max", "p50", "p95", "p99"] },
2690 Param { name: "group_by", location: In::Query, kind: "string", required: false, values: &[] },
2691 Param { name: "step", location: In::Query, kind: "integer", required: false, values: &[] },
2692 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2693 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2694 ],
2695 body: &[],
2696 },
2697 Operation {
2698 id: "get_observability_overview",
2699 method: "GET",
2700 path: "/workspaces/{workspace}/projects/{project}/observability/overview",
2701 tag: "Observability",
2702 summary: "Get a project's observability overview",
2703 scope: Some("observability:read"),
2704 params: &[
2705 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2706 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2707 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2708 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2709 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2710 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2711 Param { name: "deployment_id", location: In::Query, kind: "string", required: false, values: &[] },
2712 Param { name: "step", location: In::Query, kind: "integer", required: false, values: &[] },
2713 ],
2714 body: &[],
2715 },
2716 Operation {
2717 id: "get_observability_settings",
2718 method: "GET",
2719 path: "/workspaces/{workspace}/projects/{project}/observability/settings",
2720 tag: "Observability",
2721 summary: "Get observability settings",
2722 scope: Some("observability:read"),
2723 params: &[
2724 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2725 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2726 ],
2727 body: &[],
2728 },
2729 Operation {
2730 id: "get_observability_usage",
2731 method: "GET",
2732 path: "/workspaces/{workspace}/projects/{project}/observability/usage",
2733 tag: "Observability",
2734 summary: "Get observability usage",
2735 scope: Some("observability:read"),
2736 params: &[
2737 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2738 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2739 ],
2740 body: &[],
2741 },
2742 Operation {
2743 id: "get_request",
2744 method: "GET",
2745 path: "/workspaces/{workspace}/projects/{project}/observability/requests/{id}",
2746 tag: "Observability",
2747 summary: "Get a request",
2748 scope: Some("observability:read"),
2749 params: &[
2750 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2751 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2752 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2753 ],
2754 body: &[],
2755 },
2756 Operation {
2757 id: "get_trace",
2758 method: "GET",
2759 path: "/workspaces/{workspace}/projects/{project}/observability/traces/{trace_id}",
2760 tag: "Observability",
2761 summary: "Get a trace",
2762 scope: Some("observability:read"),
2763 params: &[
2764 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2765 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2766 Param { name: "trace_id", location: In::Path, kind: "string", required: true, values: &[] },
2767 ],
2768 body: &[],
2769 },
2770 Operation {
2771 id: "list_errors",
2772 method: "GET",
2773 path: "/workspaces/{workspace}/projects/{project}/observability/errors",
2774 tag: "Observability",
2775 summary: "List errors",
2776 scope: Some("observability:read"),
2777 params: &[
2778 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2779 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2780 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "resolved", "ignored"] },
2781 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2782 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2783 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2784 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2785 ],
2786 body: &[],
2787 },
2788 Operation {
2789 id: "list_ingest_tokens",
2790 method: "GET",
2791 path: "/workspaces/{workspace}/projects/{project}/observability/tokens",
2792 tag: "Observability",
2793 summary: "List ingest tokens",
2794 scope: Some("observability:read"),
2795 params: &[
2796 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2797 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2798 ],
2799 body: &[],
2800 },
2801 Operation {
2802 id: "list_logs",
2803 method: "GET",
2804 path: "/workspaces/{workspace}/projects/{project}/observability/logs",
2805 tag: "Observability",
2806 summary: "List logs",
2807 scope: Some("observability:read"),
2808 params: &[
2809 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2810 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2811 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2812 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2813 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2814 Param { name: "level", location: In::Query, kind: "string", required: false, values: &[] },
2815 Param { name: "trace_id", location: In::Query, kind: "string", required: false, values: &[] },
2816 Param { name: "request_id", location: In::Query, kind: "string", required: false, values: &[] },
2817 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2818 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2819 Param { name: "deployment_id", location: In::Query, kind: "string", required: false, values: &[] },
2820 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2821 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2822 ],
2823 body: &[],
2824 },
2825 Operation {
2826 id: "list_metrics",
2827 method: "GET",
2828 path: "/workspaces/{workspace}/projects/{project}/observability/metrics",
2829 tag: "Observability",
2830 summary: "List metrics",
2831 scope: Some("observability:read"),
2832 params: &[
2833 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2834 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2835 ],
2836 body: &[],
2837 },
2838 Operation {
2839 id: "list_requests",
2840 method: "GET",
2841 path: "/workspaces/{workspace}/projects/{project}/observability/requests",
2842 tag: "Observability",
2843 summary: "List requests",
2844 scope: Some("observability:read"),
2845 params: &[
2846 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2847 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2848 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2849 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2850 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2851 Param { name: "status", location: In::Query, kind: "string", required: false, values: &[] },
2852 Param { name: "errors_only", location: In::Query, kind: "boolean", required: false, values: &[] },
2853 Param { name: "route", location: In::Query, kind: "string", required: false, values: &[] },
2854 Param { name: "min_duration_ms", location: In::Query, kind: "integer", required: false, values: &[] },
2855 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2856 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2857 Param { name: "deployment_id", location: In::Query, kind: "string", required: false, values: &[] },
2858 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2859 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2860 ],
2861 body: &[],
2862 },
2863 Operation {
2864 id: "list_telemetry_exports",
2865 method: "GET",
2866 path: "/workspaces/{workspace}/projects/{project}/observability/exports",
2867 tag: "Observability",
2868 summary: "List telemetry exports",
2869 scope: Some("observability:read"),
2870 params: &[
2871 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2872 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2873 ],
2874 body: &[],
2875 },
2876 Operation {
2877 id: "list_traces",
2878 method: "GET",
2879 path: "/workspaces/{workspace}/projects/{project}/observability/traces",
2880 tag: "Observability",
2881 summary: "List traces",
2882 scope: Some("observability:read"),
2883 params: &[
2884 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2885 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2886 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2887 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2888 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2889 Param { name: "errors_only", location: In::Query, kind: "boolean", required: false, values: &[] },
2890 Param { name: "min_duration_ms", location: In::Query, kind: "integer", required: false, values: &[] },
2891 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2892 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2893 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2894 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2895 ],
2896 body: &[],
2897 },
2898 Operation {
2899 id: "update_error",
2900 method: "PATCH",
2901 path: "/workspaces/{workspace}/projects/{project}/observability/errors/{fingerprint}",
2902 tag: "Observability",
2903 summary: "Update an error",
2904 scope: Some("observability:write"),
2905 params: &[
2906 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2907 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2908 Param { name: "fingerprint", location: In::Path, kind: "string", required: true, values: &[] },
2909 ],
2910 body: &[
2911 Field { name: "item_number", kind: "integer", required: false, values: &[] },
2912 Field { name: "state", kind: "string", required: false, values: &["open", "resolved", "ignored"] },
2913 ],
2914 },
2915 Operation {
2916 id: "update_observability_settings",
2917 method: "PATCH",
2918 path: "/workspaces/{workspace}/projects/{project}/observability/settings",
2919 tag: "Observability",
2920 summary: "Update observability settings",
2921 scope: Some("observability:write"),
2922 params: &[
2923 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2924 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2925 ],
2926 body: &[
2927 Field { name: "deployments", kind: "boolean", required: false, values: &[] },
2928 Field { name: "retention_days", kind: "integer", required: false, values: &[] },
2929 ],
2930 },
2931 Operation {
2932 id: "update_telemetry_export",
2933 method: "PATCH",
2934 path: "/workspaces/{workspace}/projects/{project}/observability/exports/{id}",
2935 tag: "Observability",
2936 summary: "Update a telemetry export",
2937 scope: Some("observability:write"),
2938 params: &[
2939 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2940 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2941 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2942 ],
2943 body: &[
2944 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
2945 Field { name: "endpoint", kind: "string", required: false, values: &[] },
2946 Field { name: "headers", kind: "object", required: false, values: &[] },
2947 Field { name: "name", kind: "string", required: false, values: &[] },
2948 Field { name: "signals", kind: "array", required: false, values: &[] },
2949 ],
2950 },
2951 Operation {
2952 id: "delete_package",
2953 method: "DELETE",
2954 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}",
2955 tag: "Packages",
2956 summary: "Delete a package",
2957 scope: Some("packages:delete"),
2958 params: &[
2959 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2960 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
2961 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
2962 ],
2963 body: &[],
2964 },
2965 Operation {
2966 id: "delete_package_version",
2967 method: "DELETE",
2968 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions/{version_id}",
2969 tag: "Packages",
2970 summary: "Delete a package version",
2971 scope: Some("packages:delete"),
2972 params: &[
2973 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2974 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
2975 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
2976 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
2977 ],
2978 body: &[],
2979 },
2980 Operation {
2981 id: "get_package",
2982 method: "GET",
2983 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}",
2984 tag: "Packages",
2985 summary: "Get a package",
2986 scope: Some("packages:read"),
2987 params: &[
2988 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2989 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
2990 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
2991 ],
2992 body: &[],
2993 },
2994 Operation {
2995 id: "get_package_version",
2996 method: "GET",
2997 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions/{version_id}",
2998 tag: "Packages",
2999 summary: "Get a package version",
3000 scope: Some("packages:read"),
3001 params: &[
3002 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3003 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3004 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3005 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
3006 ],
3007 body: &[],
3008 },
3009 Operation {
3010 id: "link_package",
3011 method: "PUT",
3012 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/repository",
3013 tag: "Packages",
3014 summary: "Link a package to a repository",
3015 scope: Some("packages:write"),
3016 params: &[
3017 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3018 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3019 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3020 ],
3021 body: &[
3022 Field { name: "repository", kind: "string", required: true, values: &[] },
3023 ],
3024 },
3025 Operation {
3026 id: "list_package_access",
3027 method: "GET",
3028 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/access",
3029 tag: "Packages",
3030 summary: "List who has access to a package",
3031 scope: Some("packages:read"),
3032 params: &[
3033 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3034 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3035 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3036 ],
3037 body: &[],
3038 },
3039 Operation {
3040 id: "list_package_actions_access",
3041 method: "GET",
3042 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/actions-access",
3043 tag: "Packages",
3044 summary: "List a package's Actions access",
3045 scope: Some("packages:read"),
3046 params: &[
3047 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3048 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3049 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3050 ],
3051 body: &[],
3052 },
3053 Operation {
3054 id: "list_package_versions",
3055 method: "GET",
3056 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions",
3057 tag: "Packages",
3058 summary: "List a package's versions",
3059 scope: Some("packages:read"),
3060 params: &[
3061 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3062 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3063 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3064 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "deleted"] },
3065 ],
3066 body: &[],
3067 },
3068 Operation {
3069 id: "list_packages",
3070 method: "GET",
3071 path: "/workspaces/{workspace}/packages",
3072 tag: "Packages",
3073 summary: "List a workspace's packages",
3074 scope: Some("packages:read"),
3075 params: &[
3076 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3077 Param { name: "package_type", location: In::Query, kind: "string", required: false, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3078 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
3079 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "deleted"] },
3080 ],
3081 body: &[],
3082 },
3083 Operation {
3084 id: "remove_package_access",
3085 method: "DELETE",
3086 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/access",
3087 tag: "Packages",
3088 summary: "Remove a person's or team's role on a package",
3089 scope: Some("packages:write"),
3090 params: &[
3091 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3092 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3093 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3094 ],
3095 body: &[
3096 Field { name: "team", kind: "string", required: false, values: &[] },
3097 Field { name: "username", kind: "string", required: false, values: &[] },
3098 ],
3099 },
3100 Operation {
3101 id: "remove_package_actions_access",
3102 method: "DELETE",
3103 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/actions-access/{repository}",
3104 tag: "Packages",
3105 summary: "Remove a repository's Actions access to a package",
3106 scope: Some("packages:write"),
3107 params: &[
3108 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3109 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3110 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3111 Param { name: "repository", location: In::Path, kind: "string", required: true, values: &[] },
3112 ],
3113 body: &[],
3114 },
3115 Operation {
3116 id: "restore_package",
3117 method: "POST",
3118 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/restore",
3119 tag: "Packages",
3120 summary: "Restore a package",
3121 scope: Some("packages:delete"),
3122 params: &[
3123 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3124 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3125 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3126 ],
3127 body: &[],
3128 },
3129 Operation {
3130 id: "restore_package_version",
3131 method: "POST",
3132 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions/{version_id}/restore",
3133 tag: "Packages",
3134 summary: "Restore a package version",
3135 scope: Some("packages:delete"),
3136 params: &[
3137 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3138 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3139 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3140 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
3141 ],
3142 body: &[],
3143 },
3144 Operation {
3145 id: "set_package_access",
3146 method: "PUT",
3147 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/access",
3148 tag: "Packages",
3149 summary: "Give a person or team a role on a package",
3150 scope: Some("packages:write"),
3151 params: &[
3152 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3153 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3154 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3155 ],
3156 body: &[
3157 Field { name: "role", kind: "string", required: true, values: &["read", "write", "admin"] },
3158 Field { name: "team", kind: "string", required: false, values: &[] },
3159 Field { name: "username", kind: "string", required: false, values: &[] },
3160 ],
3161 },
3162 Operation {
3163 id: "set_package_actions_access",
3164 method: "PUT",
3165 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/actions-access",
3166 tag: "Packages",
3167 summary: "Give a repository's workflows access to a package",
3168 scope: Some("packages:write"),
3169 params: &[
3170 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3171 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3172 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3173 ],
3174 body: &[
3175 Field { name: "repository", kind: "string", required: true, values: &[] },
3176 Field { name: "role", kind: "string", required: true, values: &["read", "write"] },
3177 ],
3178 },
3179 Operation {
3180 id: "unlink_package",
3181 method: "DELETE",
3182 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/repository",
3183 tag: "Packages",
3184 summary: "Unlink a package from its repository",
3185 scope: Some("packages:write"),
3186 params: &[
3187 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3188 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3189 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3190 ],
3191 body: &[],
3192 },
3193 Operation {
3194 id: "update_package",
3195 method: "PATCH",
3196 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}",
3197 tag: "Packages",
3198 summary: "Update a package",
3199 scope: Some("packages:write"),
3200 params: &[
3201 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3202 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3203 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3204 ],
3205 body: &[
3206 Field { name: "inherit_access", kind: "boolean", required: false, values: &[] },
3207 Field { name: "visibility", kind: "string", required: false, values: &["public", "private"] },
3208 ],
3209 },
3210 Operation {
3211 id: "get_token_policy",
3212 method: "GET",
3213 path: "/workspaces/{workspace}/personal-access-token-policy",
3214 tag: "Personal access tokens",
3215 summary: "Get a workspace's personal access token policy",
3216 scope: Some("workspace:read"),
3217 params: &[
3218 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3219 ],
3220 body: &[],
3221 },
3222 Operation {
3223 id: "list_member_tokens",
3224 method: "GET",
3225 path: "/workspaces/{workspace}/personal-access-tokens",
3226 tag: "Personal access tokens",
3227 summary: "List the personal access tokens that reach a workspace",
3228 scope: Some("access:read"),
3229 params: &[
3230 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3231 ],
3232 body: &[],
3233 },
3234 Operation {
3235 id: "list_token_requests",
3236 method: "GET",
3237 path: "/workspaces/{workspace}/personal-access-token-requests",
3238 tag: "Personal access tokens",
3239 summary: "List personal access tokens waiting for approval",
3240 scope: Some("access:read"),
3241 params: &[
3242 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3243 ],
3244 body: &[],
3245 },
3246 Operation {
3247 id: "review_token_request",
3248 method: "POST",
3249 path: "/workspaces/{workspace}/personal-access-token-requests/{id}",
3250 tag: "Personal access tokens",
3251 summary: "Approve or deny a personal access token",
3252 scope: Some("access:admin"),
3253 params: &[
3254 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3255 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3256 ],
3257 body: &[
3258 Field { name: "decision", kind: "string", required: true, values: &["approve", "deny"] },
3259 Field { name: "reason", kind: "string", required: false, values: &[] },
3260 ],
3261 },
3262 Operation {
3263 id: "revoke_member_token",
3264 method: "POST",
3265 path: "/workspaces/{workspace}/personal-access-tokens/{id}",
3266 tag: "Personal access tokens",
3267 summary: "Revoke a member's token in a workspace",
3268 scope: Some("access:admin"),
3269 params: &[
3270 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3271 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3272 ],
3273 body: &[
3274 Field { name: "reason", kind: "string", required: false, values: &[] },
3275 ],
3276 },
3277 Operation {
3278 id: "set_token_policy",
3279 method: "PATCH",
3280 path: "/workspaces/{workspace}/personal-access-token-policy",
3281 tag: "Personal access tokens",
3282 summary: "Set a workspace's personal access token policy",
3283 scope: Some("workspace:admin"),
3284 params: &[
3285 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3286 ],
3287 body: &[
3288 Field { name: "allow_tokens_for_all_workspaces", kind: "boolean", required: false, values: &[] },
3289 Field { name: "allow_tokens_for_this_workspace", kind: "boolean", required: false, values: &[] },
3290 Field { name: "forbid_no_expiry", kind: "boolean", required: false, values: &[] },
3291 Field { name: "max_lifetime_days", kind: "integer", required: false, values: &[] },
3292 Field { name: "require_approval", kind: "boolean", required: false, values: &[] },
3293 ],
3294 },
3295 Operation {
3296 id: "list_pinned_projects",
3297 method: "GET",
3298 path: "/user/pinned_projects/{workspace}",
3299 tag: "Pinned projects",
3300 summary: "List your pinned projects",
3301 scope: Some("account:read"),
3302 params: &[
3303 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3304 ],
3305 body: &[],
3306 },
3307 Operation {
3308 id: "pin_project",
3309 method: "PUT",
3310 path: "/user/pinned_projects/{workspace}/{project}",
3311 tag: "Pinned projects",
3312 summary: "Pin a project",
3313 scope: Some("account:write"),
3314 params: &[
3315 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3316 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3317 ],
3318 body: &[
3319 Field { name: "position", kind: "integer", required: false, values: &[] },
3320 ],
3321 },
3322 Operation {
3323 id: "reorder_pinned_projects",
3324 method: "PUT",
3325 path: "/user/pinned_projects/{workspace}",
3326 tag: "Pinned projects",
3327 summary: "Reorder your pinned projects",
3328 scope: Some("account:write"),
3329 params: &[
3330 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3331 ],
3332 body: &[
3333 Field { name: "projects", kind: "array", required: true, values: &[] },
3334 ],
3335 },
3336 Operation {
3337 id: "unpin_project",
3338 method: "DELETE",
3339 path: "/user/pinned_projects/{workspace}/{project}",
3340 tag: "Pinned projects",
3341 summary: "Unpin a project",
3342 scope: Some("account:write"),
3343 params: &[
3344 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3345 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3346 ],
3347 body: &[],
3348 },
3349 Operation {
3350 id: "get_project",
3351 method: "GET",
3352 path: "/workspaces/{workspace}/projects/{project}",
3353 tag: "Projects",
3354 summary: "Get a project",
3355 scope: Some("repo:read"),
3356 params: &[
3357 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3358 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3359 ],
3360 body: &[],
3361 },
3362 Operation {
3363 id: "list_projects",
3364 method: "GET",
3365 path: "/workspaces/{workspace}/projects",
3366 tag: "Projects",
3367 summary: "List a workspace's projects",
3368 scope: Some("repo:read"),
3369 params: &[
3370 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3371 ],
3372 body: &[],
3373 },
3374 Operation {
3375 id: "update_project",
3376 method: "PATCH",
3377 path: "/workspaces/{workspace}/projects/{project}",
3378 tag: "Projects",
3379 summary: "Update a project",
3380 scope: Some("repo:write"),
3381 params: &[
3382 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3383 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3384 ],
3385 body: &[
3386 Field { name: "description", kind: "string", required: false, values: &[] },
3387 Field { name: "docs_url", kind: "string", required: false, values: &[] },
3388 Field { name: "homepage", kind: "string", required: false, values: &[] },
3389 Field { name: "kind", kind: "string", required: false, values: &["auto", "app", "library", "tool", "docs", "other"] },
3390 Field { name: "links", kind: "array", required: false, values: &[] },
3391 Field { name: "name", kind: "string", required: false, values: &[] },
3392 Field { name: "production_url", kind: "string", required: false, values: &[] },
3393 Field { name: "root_dir", kind: "string", required: false, values: &[] },
3394 Field { name: "runs", kind: "string", required: false, values: &["auto", "g1t", "elsewhere"] },
3395 ],
3396 },
3397 Operation {
3398 id: "add_comment",
3399 method: "POST",
3400 path: "/repos/{owner}/{name}/pulls/{number}/comments",
3401 tag: "Pull requests",
3402 summary: "Comment on a pull request",
3403 scope: Some("pull_requests:write"),
3404 params: &[
3405 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3406 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3407 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3408 ],
3409 body: &[
3410 Field { name: "body", kind: "string", required: true, values: &[] },
3411 Field { name: "line", kind: "integer", required: false, values: &[] },
3412 Field { name: "path", kind: "string", required: false, values: &[] },
3413 ],
3414 },
3415 Operation {
3416 id: "close_pull_request",
3417 method: "POST",
3418 path: "/repos/{owner}/{name}/pulls/{number}/close",
3419 tag: "Pull requests",
3420 summary: "Close a pull request",
3421 scope: Some("pull_requests:write"),
3422 params: &[
3423 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3424 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3425 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3426 ],
3427 body: &[],
3428 },
3429 Operation {
3430 id: "convert_pull_request_to_draft",
3431 method: "POST",
3432 path: "/repos/{owner}/{name}/pulls/{number}/draft",
3433 tag: "Pull requests",
3434 summary: "Convert a pull request to a draft",
3435 scope: Some("pull_requests:write"),
3436 params: &[
3437 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3438 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3439 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3440 ],
3441 body: &[],
3442 },
3443 Operation {
3444 id: "create_pull_request",
3445 method: "POST",
3446 path: "/repos/{owner}/{name}/pulls",
3447 tag: "Pull requests",
3448 summary: "Create a pull request",
3449 scope: Some("pull_requests:write"),
3450 params: &[
3451 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3452 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3453 ],
3454 body: &[
3455 Field { name: "agent", kind: "string", required: false, values: &[] },
3456 Field { name: "base", kind: "string", required: false, values: &[] },
3457 Field { name: "body", kind: "string", required: false, values: &[] },
3458 Field { name: "branch", kind: "string", required: false, values: &[] },
3459 Field { name: "head_repo", kind: "string", required: false, values: &[] },
3460 Field { name: "item", kind: "integer", required: false, values: &[] },
3461 Field { name: "title", kind: "string", required: false, values: &[] },
3462 ],
3463 },
3464 Operation {
3465 id: "delete_comment",
3466 method: "DELETE",
3467 path: "/repos/{owner}/{name}/pulls/comments/{comment_id}",
3468 tag: "Pull requests",
3469 summary: "Delete a pull request comment",
3470 scope: Some("pull_requests:write"),
3471 params: &[
3472 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3473 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3474 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
3475 ],
3476 body: &[],
3477 },
3478 Operation {
3479 id: "delete_pull_request_head_branch",
3480 method: "DELETE",
3481 path: "/repos/{owner}/{name}/pulls/{number}/head-branch",
3482 tag: "Pull requests",
3483 summary: "Delete a pull request's branch",
3484 scope: Some("pull_requests:write"),
3485 params: &[
3486 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3487 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3488 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3489 ],
3490 body: &[],
3491 },
3492 Operation {
3493 id: "disable_pull_request_auto_merge",
3494 method: "DELETE",
3495 path: "/repos/{owner}/{name}/pulls/{number}/auto-merge",
3496 tag: "Pull requests",
3497 summary: "Disable auto-merge",
3498 scope: Some("pull_requests:write"),
3499 params: &[
3500 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3501 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3502 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3503 ],
3504 body: &[],
3505 },
3506 Operation {
3507 id: "edit_comment",
3508 method: "PATCH",
3509 path: "/repos/{owner}/{name}/pulls/comments/{comment_id}",
3510 tag: "Pull requests",
3511 summary: "Edit a pull request comment",
3512 scope: Some("pull_requests:write"),
3513 params: &[
3514 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3515 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3516 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
3517 ],
3518 body: &[
3519 Field { name: "body", kind: "string", required: true, values: &[] },
3520 ],
3521 },
3522 Operation {
3523 id: "enable_pull_request_auto_merge",
3524 method: "PUT",
3525 path: "/repos/{owner}/{name}/pulls/{number}/auto-merge",
3526 tag: "Pull requests",
3527 summary: "Enable auto-merge",
3528 scope: Some("pull_requests:write"),
3529 params: &[
3530 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3531 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3532 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3533 ],
3534 body: &[
3535 Field { name: "commit_message", kind: "string", required: false, values: &[] },
3536 Field { name: "commit_title", kind: "string", required: false, values: &[] },
3537 Field { name: "merge_method", kind: "string", required: false, values: &["merge", "squash", "rebase", "fast_forward"] },
3538 ],
3539 },
3540 Operation {
3541 id: "get_merge_queue",
3542 method: "GET",
3543 path: "/repos/{owner}/{name}/queue",
3544 tag: "Pull requests",
3545 summary: "Get the merge queue",
3546 scope: Some("pull_requests:read"),
3547 params: &[
3548 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3549 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3550 ],
3551 body: &[],
3552 },
3553 Operation {
3554 id: "get_pull_request",
3555 method: "GET",
3556 path: "/repos/{owner}/{name}/pulls/{number}",
3557 tag: "Pull requests",
3558 summary: "Get a pull request",
3559 scope: Some("pull_requests:read"),
3560 params: &[
3561 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3562 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3563 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3564 ],
3565 body: &[],
3566 },
3567 Operation {
3568 id: "get_pull_request_changes",
3569 method: "GET",
3570 path: "/repos/{owner}/{name}/pulls/{number}/changes",
3571 tag: "Pull requests",
3572 summary: "Get a pull request's changes",
3573 scope: Some("pull_requests:read"),
3574 params: &[
3575 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3576 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3577 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3578 Param { name: "paths", location: In::Query, kind: "array", required: false, values: &[] },
3579 ],
3580 body: &[],
3581 },
3582 Operation {
3583 id: "get_pull_request_merge_options",
3584 method: "GET",
3585 path: "/repos/{owner}/{name}/pulls/{number}/merge-options",
3586 tag: "Pull requests",
3587 summary: "Get a pull request's merge options",
3588 scope: Some("pull_requests:read"),
3589 params: &[
3590 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3591 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3592 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3593 ],
3594 body: &[],
3595 },
3596 Operation {
3597 id: "list_pull_requests",
3598 method: "GET",
3599 path: "/repos/{owner}/{name}/pulls",
3600 tag: "Pull requests",
3601 summary: "List pull requests",
3602 scope: Some("pull_requests:read"),
3603 params: &[
3604 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3605 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3606 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
3607 Param { name: "label", location: In::Query, kind: "string", required: false, values: &[] },
3608 Param { name: "milestone", location: In::Query, kind: "integer", required: false, values: &[] },
3609 Param { name: "base", location: In::Query, kind: "string", required: false, values: &[] },
3610 ],
3611 body: &[],
3612 },
3613 Operation {
3614 id: "mark_pull_request_ready",
3615 method: "POST",
3616 path: "/repos/{owner}/{name}/pulls/{number}/ready",
3617 tag: "Pull requests",
3618 summary: "Mark a pull request ready",
3619 scope: Some("pull_requests:write"),
3620 params: &[
3621 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3622 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3623 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3624 ],
3625 body: &[
3626 Field { name: "summary", kind: "string", required: true, values: &[] },
3627 ],
3628 },
3629 Operation {
3630 id: "merge_pull_request",
3631 method: "POST",
3632 path: "/repos/{owner}/{name}/pulls/{number}/merge",
3633 tag: "Pull requests",
3634 summary: "Merge a pull request",
3635 scope: Some("pull_requests:write"),
3636 params: &[
3637 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3638 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3639 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3640 ],
3641 body: &[
3642 Field { name: "bypass_rules", kind: "boolean", required: false, values: &[] },
3643 Field { name: "commit_message", kind: "string", required: false, values: &[] },
3644 Field { name: "commit_title", kind: "string", required: false, values: &[] },
3645 Field { name: "delete_branch", kind: "boolean", required: false, values: &[] },
3646 Field { name: "ignore_checks", kind: "boolean", required: false, values: &[] },
3647 Field { name: "keep_item_open", kind: "boolean", required: false, values: &[] },
3648 Field { name: "merge_method", kind: "string", required: false, values: &["merge", "squash", "rebase", "fast_forward"] },
3649 Field { name: "sha", kind: "string", required: false, values: &[] },
3650 ],
3651 },
3652 Operation {
3653 id: "react",
3654 method: "POST",
3655 path: "/repos/{owner}/{name}/pulls/{number}/reactions",
3656 tag: "Pull requests",
3657 summary: "React to a pull request",
3658 scope: Some("pull_requests:write"),
3659 params: &[
3660 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3661 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3662 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3663 ],
3664 body: &[
3665 Field { name: "comment_id", kind: "string", required: false, values: &[] },
3666 Field { name: "content", kind: "string", required: true, values: &["+1", "-1", "laugh", "hooray", "confused", "heart", "rocket", "eyes"] },
3667 Field { name: "remove", kind: "boolean", required: false, values: &[] },
3668 ],
3669 },
3670 Operation {
3671 id: "remove_requested_reviewers",
3672 method: "DELETE",
3673 path: "/repos/{owner}/{name}/pulls/{number}/requested_reviewers",
3674 tag: "Pull requests",
3675 summary: "Remove requested reviewers",
3676 scope: Some("pull_requests:write"),
3677 params: &[
3678 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3679 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3680 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3681 ],
3682 body: &[
3683 Field { name: "reviewers", kind: "array", required: false, values: &[] },
3684 Field { name: "team_reviewers", kind: "array", required: false, values: &[] },
3685 ],
3686 },
3687 Operation {
3688 id: "reopen_pull_request",
3689 method: "POST",
3690 path: "/repos/{owner}/{name}/pulls/{number}/reopen",
3691 tag: "Pull requests",
3692 summary: "Reopen a pull request",
3693 scope: Some("pull_requests:write"),
3694 params: &[
3695 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3696 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3697 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3698 ],
3699 body: &[],
3700 },
3701 Operation {
3702 id: "request_reviewers",
3703 method: "POST",
3704 path: "/repos/{owner}/{name}/pulls/{number}/requested_reviewers",
3705 tag: "Pull requests",
3706 summary: "Request reviewers",
3707 scope: Some("pull_requests:write"),
3708 params: &[
3709 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3710 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3711 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3712 ],
3713 body: &[
3714 Field { name: "reviewers", kind: "array", required: false, values: &[] },
3715 Field { name: "team_reviewers", kind: "array", required: false, values: &[] },
3716 ],
3717 },
3718 Operation {
3719 id: "restore_pull_request_head_branch",
3720 method: "POST",
3721 path: "/repos/{owner}/{name}/pulls/{number}/head-branch/restore",
3722 tag: "Pull requests",
3723 summary: "Restore a pull request's branch",
3724 scope: Some("pull_requests:write"),
3725 params: &[
3726 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3727 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3728 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3729 ],
3730 body: &[],
3731 },
3732 Operation {
3733 id: "review_pull_request",
3734 method: "POST",
3735 path: "/repos/{owner}/{name}/pulls/{number}/reviews",
3736 tag: "Pull requests",
3737 summary: "Review a pull request",
3738 scope: Some("pull_requests:write"),
3739 params: &[
3740 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3741 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3742 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3743 ],
3744 body: &[
3745 Field { name: "body", kind: "string", required: false, values: &[] },
3746 Field { name: "verdict", kind: "string", required: true, values: &["approve", "request_changes"] },
3747 ],
3748 },
3749 Operation {
3750 id: "update_pull_request",
3751 method: "PATCH",
3752 path: "/repos/{owner}/{name}/pulls/{number}",
3753 tag: "Pull requests",
3754 summary: "Update a pull request",
3755 scope: Some("pull_requests:write"),
3756 params: &[
3757 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3758 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3759 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3760 ],
3761 body: &[
3762 Field { name: "assignees", kind: "array", required: false, values: &[] },
3763 Field { name: "base", kind: "string", required: false, values: &[] },
3764 Field { name: "labels", kind: "array", required: false, values: &[] },
3765 Field { name: "milestone", kind: "integer", required: false, values: &[] },
3766 Field { name: "reviewers", kind: "array", required: false, values: &[] },
3767 Field { name: "state", kind: "string", required: false, values: &["open", "closed"] },
3768 ],
3769 },
3770 Operation {
3771 id: "update_pull_request_branch",
3772 method: "PUT",
3773 path: "/repos/{owner}/{name}/pulls/{number}/update-branch",
3774 tag: "Pull requests",
3775 summary: "Update a pull request's branch",
3776 scope: Some("pull_requests:write"),
3777 params: &[
3778 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3779 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3780 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3781 ],
3782 body: &[
3783 Field { name: "expected_head_sha", kind: "string", required: false, values: &[] },
3784 Field { name: "update_method", kind: "string", required: false, values: &["merge", "rebase"] },
3785 ],
3786 },
3787 Operation {
3788 id: "create_release",
3789 method: "POST",
3790 path: "/repos/{owner}/{name}/releases",
3791 tag: "Releases",
3792 summary: "Create a release",
3793 scope: Some("repo:write"),
3794 params: &[
3795 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3796 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3797 ],
3798 body: &[
3799 Field { name: "body", kind: "string", required: false, values: &[] },
3800 Field { name: "draft", kind: "boolean", required: false, values: &[] },
3801 Field { name: "prerelease", kind: "boolean", required: false, values: &[] },
3802 Field { name: "release_name", kind: "string", required: false, values: &[] },
3803 Field { name: "tag_name", kind: "string", required: true, values: &[] },
3804 Field { name: "target", kind: "string", required: false, values: &[] },
3805 ],
3806 },
3807 Operation {
3808 id: "delete_release",
3809 method: "DELETE",
3810 path: "/repos/{owner}/{name}/releases/{id}",
3811 tag: "Releases",
3812 summary: "Delete a release",
3813 scope: Some("repo:write"),
3814 params: &[
3815 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3816 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3817 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3818 ],
3819 body: &[],
3820 },
3821 Operation {
3822 id: "get_latest_release",
3823 method: "GET",
3824 path: "/repos/{owner}/{name}/releases/latest",
3825 tag: "Releases",
3826 summary: "Get the latest release",
3827 scope: Some("repo:read"),
3828 params: &[
3829 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3830 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3831 ],
3832 body: &[],
3833 },
3834 Operation {
3835 id: "get_release",
3836 method: "GET",
3837 path: "/repos/{owner}/{name}/releases/{id}",
3838 tag: "Releases",
3839 summary: "Get a release",
3840 scope: Some("repo:read"),
3841 params: &[
3842 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3843 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3844 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3845 ],
3846 body: &[],
3847 },
3848 Operation {
3849 id: "get_release_by_tag",
3850 method: "GET",
3851 path: "/repos/{owner}/{name}/releases/tags/{tag}",
3852 tag: "Releases",
3853 summary: "Get a release by its tag",
3854 scope: Some("repo:read"),
3855 params: &[
3856 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3857 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3858 Param { name: "tag", location: In::Path, kind: "string", required: true, values: &[] },
3859 ],
3860 body: &[],
3861 },
3862 Operation {
3863 id: "list_releases",
3864 method: "GET",
3865 path: "/repos/{owner}/{name}/releases",
3866 tag: "Releases",
3867 summary: "List releases",
3868 scope: Some("repo:read"),
3869 params: &[
3870 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3871 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3872 ],
3873 body: &[],
3874 },
3875 Operation {
3876 id: "update_release",
3877 method: "PATCH",
3878 path: "/repos/{owner}/{name}/releases/{id}",
3879 tag: "Releases",
3880 summary: "Update a release",
3881 scope: Some("repo:write"),
3882 params: &[
3883 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3884 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3885 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3886 ],
3887 body: &[
3888 Field { name: "body", kind: "string", required: false, values: &[] },
3889 Field { name: "draft", kind: "boolean", required: false, values: &[] },
3890 Field { name: "prerelease", kind: "boolean", required: false, values: &[] },
3891 Field { name: "release_name", kind: "string", required: false, values: &[] },
3892 ],
3893 },
3894 Operation {
3895 id: "archive_repo",
3896 method: "POST",
3897 path: "/repos/{owner}/{name}/archive",
3898 tag: "Repositories",
3899 summary: "Archive a repository",
3900 scope: Some("repo:admin"),
3901 params: &[
3902 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3903 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3904 ],
3905 body: &[],
3906 },
3907 Operation {
3908 id: "create_branch",
3909 method: "POST",
3910 path: "/repos/{owner}/{name}/branches",
3911 tag: "Repositories",
3912 summary: "Create a branch",
3913 scope: Some("repo:write"),
3914 params: &[
3915 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3916 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3917 ],
3918 body: &[
3919 Field { name: "from", kind: "string", required: false, values: &[] },
3920 Field { name: "name", kind: "string", required: true, values: &[] },
3921 ],
3922 },
3923 Operation {
3924 id: "create_repo",
3925 method: "POST",
3926 path: "/repos",
3927 tag: "Repositories",
3928 summary: "Create a repository",
3929 scope: Some("repo:create"),
3930 params: &[],
3931 body: &[
3932 Field { name: "deploy", kind: "boolean", required: false, values: &[] },
3933 Field { name: "description", kind: "string", required: false, values: &[] },
3934 Field { name: "import_url", kind: "string", required: false, values: &[] },
3935 Field { name: "name", kind: "string", required: true, values: &[] },
3936 Field { name: "private", kind: "boolean", required: false, values: &[] },
3937 Field { name: "workspace", kind: "string", required: false, values: &[] },
3938 ],
3939 },
3940 Operation {
3941 id: "delete_branch",
3942 method: "DELETE",
3943 path: "/repos/{owner}/{name}/branches/{branch}",
3944 tag: "Repositories",
3945 summary: "Delete a branch",
3946 scope: Some("repo:write"),
3947 params: &[
3948 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3949 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3950 Param { name: "branch", location: In::Path, kind: "string", required: true, values: &[] },
3951 ],
3952 body: &[
3953 Field { name: "head", kind: "string", required: false, values: &[] },
3954 ],
3955 },
3956 Operation {
3957 id: "delete_repo",
3958 method: "DELETE",
3959 path: "/repos/{owner}/{name}",
3960 tag: "Repositories",
3961 summary: "Delete a repository",
3962 scope: Some("repo:admin"),
3963 params: &[
3964 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3965 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3966 ],
3967 body: &[
3968 Field { name: "confirm", kind: "string", required: true, values: &[] },
3969 ],
3970 },
3971 Operation {
3972 id: "detach_fork",
3973 method: "POST",
3974 path: "/repos/{owner}/{name}/detach",
3975 tag: "Repositories",
3976 summary: "Detach a fork",
3977 scope: Some("repo:admin"),
3978 params: &[
3979 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3980 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3981 ],
3982 body: &[],
3983 },
3984 Operation {
3985 id: "download_tarball_archive",
3986 method: "GET",
3987 path: "/repos/{owner}/{name}/tarball/{ref}",
3988 tag: "Repositories",
3989 summary: "Download a repository archive (tar)",
3990 scope: Some("code:read"),
3991 params: &[
3992 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3993 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3994 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
3995 ],
3996 body: &[],
3997 },
3998 Operation {
3999 id: "download_zipball_archive",
4000 method: "GET",
4001 path: "/repos/{owner}/{name}/zipball/{ref}",
4002 tag: "Repositories",
4003 summary: "Download a repository archive (zip)",
4004 scope: Some("code:read"),
4005 params: &[
4006 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4007 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4008 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
4009 ],
4010 body: &[],
4011 },
4012 Operation {
4013 id: "fork_repo",
4014 method: "POST",
4015 path: "/repos/{owner}/{name}/forks",
4016 tag: "Repositories",
4017 summary: "Fork a repository",
4018 scope: Some("repo:write"),
4019 params: &[
4020 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4021 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4022 ],
4023 body: &[
4024 Field { name: "default_branch_only", kind: "boolean", required: false, values: &[] },
4025 Field { name: "name", kind: "string", required: false, values: &[] },
4026 Field { name: "workspace", kind: "string", required: false, values: &[] },
4027 ],
4028 },
4029 Operation {
4030 id: "get_codeowners_errors",
4031 method: "GET",
4032 path: "/repos/{owner}/{name}/codeowners/errors",
4033 tag: "Repositories",
4034 summary: "List CODEOWNERS errors",
4035 scope: Some("repo:read"),
4036 params: &[
4037 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4038 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4039 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
4040 ],
4041 body: &[],
4042 },
4043 Operation {
4044 id: "get_contents",
4045 method: "GET",
4046 path: "/repos/{owner}/{name}/contents",
4047 tag: "Repositories",
4048 summary: "Get repository contents",
4049 scope: Some("code:read"),
4050 params: &[
4051 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4052 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4053 Param { name: "path", location: In::Query, kind: "string", required: false, values: &[] },
4054 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
4055 ],
4056 body: &[],
4057 },
4058 Operation {
4059 id: "get_repo",
4060 method: "GET",
4061 path: "/repos/{owner}/{name}",
4062 tag: "Repositories",
4063 summary: "Get a repository",
4064 scope: Some("repo:read"),
4065 params: &[
4066 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4067 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4068 ],
4069 body: &[],
4070 },
4071 Operation {
4072 id: "get_repo_settings",
4073 method: "GET",
4074 path: "/repos/{owner}/{name}/settings",
4075 tag: "Repositories",
4076 summary: "Get repository settings",
4077 scope: Some("repo:read"),
4078 params: &[
4079 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4080 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4081 ],
4082 body: &[],
4083 },
4084 Operation {
4085 id: "list_check_names",
4086 method: "GET",
4087 path: "/repos/{owner}/{name}/check-names",
4088 tag: "Repositories",
4089 summary: "List check names",
4090 scope: Some("repo:read"),
4091 params: &[
4092 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4093 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4094 ],
4095 body: &[],
4096 },
4097 Operation {
4098 id: "list_commits",
4099 method: "GET",
4100 path: "/repos/{owner}/{name}/commits",
4101 tag: "Repositories",
4102 summary: "List commits",
4103 scope: Some("code:read"),
4104 params: &[
4105 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4106 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4107 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
4108 Param { name: "path", location: In::Query, kind: "string", required: false, values: &[] },
4109 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4110 ],
4111 body: &[],
4112 },
4113 Operation {
4114 id: "list_deleted_repos",
4115 method: "GET",
4116 path: "/workspaces/{workspace}/repos/deleted",
4117 tag: "Repositories",
4118 summary: "List recently deleted repositories",
4119 scope: Some("repo:read"),
4120 params: &[
4121 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4122 ],
4123 body: &[],
4124 },
4125 Operation {
4126 id: "list_events",
4127 method: "GET",
4128 path: "/repos/{owner}/{name}/events",
4129 tag: "Repositories",
4130 summary: "List repository events",
4131 scope: Some("repo:read"),
4132 params: &[
4133 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4134 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4135 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
4136 Param { name: "after", location: In::Query, kind: "string", required: false, values: &[] },
4137 Param { name: "types", location: In::Query, kind: "array", required: false, values: &[] },
4138 Param { name: "numbers", location: In::Query, kind: "array", required: false, values: &[] },
4139 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
4140 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4141 Param { name: "wait", location: In::Query, kind: "integer", required: false, values: &[] },
4142 ],
4143 body: &[],
4144 },
4145 Operation {
4146 id: "list_forks",
4147 method: "GET",
4148 path: "/repos/{owner}/{name}/forks",
4149 tag: "Repositories",
4150 summary: "List forks",
4151 scope: Some("repo:read"),
4152 params: &[
4153 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4154 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4155 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4156 ],
4157 body: &[],
4158 },
4159 Operation {
4160 id: "list_repos",
4161 method: "GET",
4162 path: "/repos",
4163 tag: "Repositories",
4164 summary: "List repositories",
4165 scope: Some("repo:read"),
4166 params: &[
4167 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
4168 ],
4169 body: &[],
4170 },
4171 Operation {
4172 id: "purge_repo",
4173 method: "POST",
4174 path: "/repos/{owner}/{name}/purge",
4175 tag: "Repositories",
4176 summary: "Purge a deleted repository",
4177 scope: Some("repo:admin"),
4178 params: &[
4179 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4180 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4181 ],
4182 body: &[
4183 Field { name: "confirm", kind: "string", required: true, values: &[] },
4184 ],
4185 },
4186 Operation {
4187 id: "rename_branch",
4188 method: "POST",
4189 path: "/repos/{owner}/{name}/branches/{branch}/rename",
4190 tag: "Repositories",
4191 summary: "Rename a branch",
4192 scope: Some("repo:write"),
4193 params: &[
4194 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4195 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4196 Param { name: "branch", location: In::Path, kind: "string", required: true, values: &[] },
4197 ],
4198 body: &[
4199 Field { name: "new_name", kind: "string", required: true, values: &[] },
4200 ],
4201 },
4202 Operation {
4203 id: "rename_repo",
4204 method: "POST",
4205 path: "/repos/{owner}/{name}/rename",
4206 tag: "Repositories",
4207 summary: "Rename a repository",
4208 scope: Some("repo:admin"),
4209 params: &[
4210 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4211 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4212 ],
4213 body: &[
4214 Field { name: "name", kind: "string", required: true, values: &[] },
4215 ],
4216 },
4217 Operation {
4218 id: "restore_repo",
4219 method: "POST",
4220 path: "/repos/{owner}/{name}/restore",
4221 tag: "Repositories",
4222 summary: "Restore a deleted repository",
4223 scope: Some("repo:admin"),
4224 params: &[
4225 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4226 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4227 ],
4228 body: &[],
4229 },
4230 Operation {
4231 id: "set_repo_visibility",
4232 method: "POST",
4233 path: "/repos/{owner}/{name}/visibility",
4234 tag: "Repositories",
4235 summary: "Change a repository's visibility",
4236 scope: Some("repo:admin"),
4237 params: &[
4238 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4239 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4240 ],
4241 body: &[
4242 Field { name: "confirm", kind: "string", required: true, values: &[] },
4243 Field { name: "private", kind: "boolean", required: true, values: &[] },
4244 ],
4245 },
4246 Operation {
4247 id: "sync_fork",
4248 method: "POST",
4249 path: "/repos/{owner}/{name}/merge-upstream",
4250 tag: "Repositories",
4251 summary: "Sync a fork",
4252 scope: Some("repo:write"),
4253 params: &[
4254 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4255 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4256 ],
4257 body: &[
4258 Field { name: "branch", kind: "string", required: false, values: &[] },
4259 ],
4260 },
4261 Operation {
4262 id: "transfer_repo",
4263 method: "POST",
4264 path: "/repos/{owner}/{name}/transfer",
4265 tag: "Repositories",
4266 summary: "Transfer a repository",
4267 scope: Some("repo:admin"),
4268 params: &[
4269 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4270 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4271 ],
4272 body: &[
4273 Field { name: "to", kind: "string", required: true, values: &[] },
4274 ],
4275 },
4276 Operation {
4277 id: "unarchive_repo",
4278 method: "POST",
4279 path: "/repos/{owner}/{name}/unarchive",
4280 tag: "Repositories",
4281 summary: "Unarchive a repository",
4282 scope: Some("repo:admin"),
4283 params: &[
4284 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4285 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4286 ],
4287 body: &[],
4288 },
4289 Operation {
4290 id: "update_repo",
4291 method: "PATCH",
4292 path: "/repos/{owner}/{name}",
4293 tag: "Repositories",
4294 summary: "Update a repository",
4295 scope: Some("repo:write"),
4296 params: &[
4297 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4298 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4299 ],
4300 body: &[
4301 Field { name: "allow_forking", kind: "boolean", required: false, values: &[] },
4302 Field { name: "default_branch", kind: "string", required: false, values: &[] },
4303 Field { name: "description", kind: "string", required: false, values: &[] },
4304 Field { name: "max_ref_updates", kind: "integer", required: false, values: &[] },
4305 Field { name: "private", kind: "boolean", required: false, values: &[] },
4306 Field { name: "protected", kind: "boolean", required: false, values: &[] },
4307 Field { name: "topics", kind: "array", required: false, values: &[] },
4308 Field { name: "website", kind: "string", required: false, values: &[] },
4309 ],
4310 },
4311 Operation {
4312 id: "update_repo_settings",
4313 method: "PATCH",
4314 path: "/repos/{owner}/{name}/settings",
4315 tag: "Repositories",
4316 summary: "Update repository settings",
4317 scope: Some("repo:write"),
4318 params: &[
4319 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4320 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4321 ],
4322 body: &[
4323 Field { name: "allow_auto_merge", kind: "boolean", required: false, values: &[] },
4324 Field { name: "allow_commit_comments", kind: "boolean", required: false, values: &[] },
4325 Field { name: "allow_fast_forward", kind: "boolean", required: false, values: &[] },
4326 Field { name: "allow_ignoring_checks", kind: "boolean", required: false, values: &[] },
4327 Field { name: "allow_merge_commit", kind: "boolean", required: false, values: &[] },
4328 Field { name: "allow_rebase_merge", kind: "boolean", required: false, values: &[] },
4329 Field { name: "allow_squash_merge", kind: "boolean", required: false, values: &[] },
4330 Field { name: "auto_close_items", kind: "boolean", required: false, values: &[] },
4331 Field { name: "auto_merge", kind: "boolean", required: false, values: &[] },
4332 Field { name: "count_agent_approvals", kind: "boolean", required: false, values: &[] },
4333 Field { name: "default_merge_method", kind: "string", required: false, values: &["merge", "squash", "rebase", "fast_forward"] },
4334 Field { name: "delete_branch_on_merge", kind: "boolean", required: false, values: &[] },
4335 Field { name: "has_work_items", kind: "boolean", required: false, values: &[] },
4336 Field { name: "merge_commit_message", kind: "string", required: false, values: &["default", "pull_title", "pull_title_and_description", "custom"] },
4337 Field { name: "merge_commit_template", kind: "string", required: false, values: &[] },
4338 Field { name: "merge_queue", kind: "boolean", required: false, values: &[] },
4339 Field { name: "require_code_owner_review", kind: "boolean", required: false, values: &[] },
4340 Field { name: "require_up_to_date", kind: "boolean", required: false, values: &[] },
4341 Field { name: "require_web_commit_sign_off", kind: "boolean", required: false, values: &[] },
4342 Field { name: "required_approvals", kind: "integer", required: false, values: &[] },
4343 Field { name: "required_checks", kind: "array", required: false, values: &[] },
4344 Field { name: "squash_commit_message", kind: "string", required: false, values: &["default", "pull_title", "pull_title_and_description", "pull_title_and_commits", "custom"] },
4345 Field { name: "squash_commit_template", kind: "string", required: false, values: &[] },
4346 Field { name: "suggest_updating_branches", kind: "boolean", required: false, values: &[] },
4347 ],
4348 },
4349 Operation {
4350 id: "get_languages",
4351 method: "GET",
4352 path: "/repos/{owner}/{name}/languages",
4353 tag: "Repository insights",
4354 summary: "Get a repository's languages",
4355 scope: Some("repo:read"),
4356 params: &[
4357 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4358 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4359 ],
4360 body: &[],
4361 },
4362 Operation {
4363 id: "get_license",
4364 method: "GET",
4365 path: "/repos/{owner}/{name}/license",
4366 tag: "Repository insights",
4367 summary: "Get a repository's license",
4368 scope: Some("repo:read"),
4369 params: &[
4370 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4371 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4372 ],
4373 body: &[],
4374 },
4375 Operation {
4376 id: "list_contributors",
4377 method: "GET",
4378 path: "/repos/{owner}/{name}/contributors",
4379 tag: "Repository insights",
4380 summary: "List a repository's contributors",
4381 scope: Some("repo:read"),
4382 params: &[
4383 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4384 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4385 ],
4386 body: &[],
4387 },
4388 Operation {
4389 id: "create_repo_ruleset",
4390 method: "POST",
4391 path: "/repos/{owner}/{name}/rulesets",
4392 tag: "Rules",
4393 summary: "Create a repository ruleset",
4394 scope: Some("repo:admin"),
4395 params: &[
4396 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4397 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4398 ],
4399 body: &[
4400 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4401 Field { name: "conditions", kind: "object", required: false, values: &[] },
4402 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4403 Field { name: "rules", kind: "array", required: false, values: &[] },
4404 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4405 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4406 ],
4407 },
4408 Operation {
4409 id: "create_workspace_ruleset",
4410 method: "POST",
4411 path: "/workspaces/{workspace}/rulesets",
4412 tag: "Rules",
4413 summary: "Create a workspace ruleset",
4414 scope: Some("workspace:admin"),
4415 params: &[
4416 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4417 ],
4418 body: &[
4419 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4420 Field { name: "conditions", kind: "object", required: false, values: &[] },
4421 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4422 Field { name: "rules", kind: "array", required: false, values: &[] },
4423 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4424 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4425 ],
4426 },
4427 Operation {
4428 id: "delete_repo_ruleset",
4429 method: "DELETE",
4430 path: "/repos/{owner}/{name}/rulesets/{id}",
4431 tag: "Rules",
4432 summary: "Delete a repository ruleset",
4433 scope: Some("repo:admin"),
4434 params: &[
4435 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4436 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4437 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4438 ],
4439 body: &[],
4440 },
4441 Operation {
4442 id: "delete_workspace_ruleset",
4443 method: "DELETE",
4444 path: "/workspaces/{workspace}/rulesets/{id}",
4445 tag: "Rules",
4446 summary: "Delete a workspace ruleset",
4447 scope: Some("workspace:admin"),
4448 params: &[
4449 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4450 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4451 ],
4452 body: &[],
4453 },
4454 Operation {
4455 id: "get_branch_rules",
4456 method: "GET",
4457 path: "/repos/{owner}/{name}/rules/branches/{branch}",
4458 tag: "Rules",
4459 summary: "Get the rules for a branch",
4460 scope: Some("repo:read"),
4461 params: &[
4462 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4463 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4464 Param { name: "branch", location: In::Path, kind: "string", required: true, values: &[] },
4465 Param { name: "target", location: In::Query, kind: "string", required: false, values: &["branch", "tag"] },
4466 ],
4467 body: &[],
4468 },
4469 Operation {
4470 id: "get_repo_ruleset",
4471 method: "GET",
4472 path: "/repos/{owner}/{name}/rulesets/{id}",
4473 tag: "Rules",
4474 summary: "Get a repository ruleset",
4475 scope: Some("repo:read"),
4476 params: &[
4477 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4478 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4479 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4480 ],
4481 body: &[],
4482 },
4483 Operation {
4484 id: "get_workspace_ruleset",
4485 method: "GET",
4486 path: "/workspaces/{workspace}/rulesets/{id}",
4487 tag: "Rules",
4488 summary: "Get a workspace ruleset",
4489 scope: Some("workspace:read"),
4490 params: &[
4491 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4492 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4493 ],
4494 body: &[],
4495 },
4496 Operation {
4497 id: "list_repo_rulesets",
4498 method: "GET",
4499 path: "/repos/{owner}/{name}/rulesets",
4500 tag: "Rules",
4501 summary: "List a repository's rulesets",
4502 scope: Some("repo:read"),
4503 params: &[
4504 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4505 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4506 Param { name: "include_parents", location: In::Query, kind: "boolean", required: false, values: &[] },
4507 ],
4508 body: &[],
4509 },
4510 Operation {
4511 id: "list_rule_evaluations",
4512 method: "GET",
4513 path: "/repos/{owner}/{name}/rules/evaluations",
4514 tag: "Rules",
4515 summary: "List a repository's rule evaluations",
4516 scope: Some("repo:read"),
4517 params: &[
4518 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4519 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4520 Param { name: "ruleset_id", location: In::Query, kind: "string", required: false, values: &[] },
4521 Param { name: "verdict", location: In::Query, kind: "string", required: false, values: &["pass", "fail", "bypass"] },
4522 Param { name: "problems_only", location: In::Query, kind: "boolean", required: false, values: &[] },
4523 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
4524 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4525 ],
4526 body: &[],
4527 },
4528 Operation {
4529 id: "list_workspace_rule_evaluations",
4530 method: "GET",
4531 path: "/workspaces/{workspace}/rules/evaluations",
4532 tag: "Rules",
4533 summary: "List a workspace's rule evaluations",
4534 scope: Some("workspace:read"),
4535 params: &[
4536 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4537 Param { name: "ruleset_id", location: In::Query, kind: "string", required: false, values: &[] },
4538 Param { name: "verdict", location: In::Query, kind: "string", required: false, values: &["pass", "fail", "bypass"] },
4539 Param { name: "problems_only", location: In::Query, kind: "boolean", required: false, values: &[] },
4540 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
4541 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4542 ],
4543 body: &[],
4544 },
4545 Operation {
4546 id: "list_workspace_rulesets",
4547 method: "GET",
4548 path: "/workspaces/{workspace}/rulesets",
4549 tag: "Rules",
4550 summary: "List a workspace's rulesets",
4551 scope: Some("workspace:read"),
4552 params: &[
4553 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4554 ],
4555 body: &[],
4556 },
4557 Operation {
4558 id: "update_repo_ruleset",
4559 method: "PUT",
4560 path: "/repos/{owner}/{name}/rulesets/{id}",
4561 tag: "Rules",
4562 summary: "Update a repository ruleset",
4563 scope: Some("repo:admin"),
4564 params: &[
4565 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4566 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4567 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4568 ],
4569 body: &[
4570 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4571 Field { name: "conditions", kind: "object", required: false, values: &[] },
4572 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4573 Field { name: "rules", kind: "array", required: false, values: &[] },
4574 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4575 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4576 ],
4577 },
4578 Operation {
4579 id: "update_workspace_ruleset",
4580 method: "PUT",
4581 path: "/workspaces/{workspace}/rulesets/{id}",
4582 tag: "Rules",
4583 summary: "Update a workspace ruleset",
4584 scope: Some("workspace:admin"),
4585 params: &[
4586 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4587 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4588 ],
4589 body: &[
4590 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4591 Field { name: "conditions", kind: "object", required: false, values: &[] },
4592 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4593 Field { name: "rules", kind: "array", required: false, values: &[] },
4594 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4595 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4596 ],
4597 },
4598 Operation {
4599 id: "approve_workflow_run",
4600 method: "POST",
4601 path: "/repos/{owner}/{name}/actions/runs/{id}/approve",
4602 tag: "Run protection",
4603 summary: "Approve a workflow run",
4604 scope: Some("workflows:write"),
4605 params: &[
4606 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4607 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4608 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4609 ],
4610 body: &[],
4611 },
4612 Operation {
4613 id: "create_repository_dispatch",
4614 method: "POST",
4615 path: "/repos/{owner}/{name}/dispatches",
4616 tag: "Run protection",
4617 summary: "Create a repository dispatch event",
4618 scope: Some("code:write"),
4619 params: &[
4620 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4621 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4622 ],
4623 body: &[
4624 Field { name: "client_payload", kind: "object", required: false, values: &[] },
4625 Field { name: "event_type", kind: "string", required: true, values: &[] },
4626 ],
4627 },
4628 Operation {
4629 id: "create_workspace_managed_workflow",
4630 method: "POST",
4631 path: "/workspaces/{workspace}/actions/managed-workflows",
4632 tag: "Run protection",
4633 summary: "Add a workflow a workspace manages",
4634 scope: Some("workspace:admin"),
4635 params: &[
4636 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4637 ],
4638 body: &[
4639 Field { name: "mode", kind: "string", required: true, values: &["required", "default"] },
4640 Field { name: "name", kind: "string", required: true, values: &[] },
4641 Field { name: "repositories", kind: "array", required: false, values: &[] },
4642 Field { name: "source", kind: "string", required: true, values: &[] },
4643 Field { name: "visibility", kind: "string", required: false, values: &["all", "public", "private"] },
4644 ],
4645 },
4646 Operation {
4647 id: "delete_environment",
4648 method: "DELETE",
4649 path: "/repos/{owner}/{name}/environments/{environment}",
4650 tag: "Run protection",
4651 summary: "Delete an environment's protection rules",
4652 scope: Some("repo:admin"),
4653 params: &[
4654 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4655 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4656 Param { name: "environment", location: In::Path, kind: "string", required: true, values: &[] },
4657 ],
4658 body: &[],
4659 },
4660 Operation {
4661 id: "delete_workspace_managed_workflow",
4662 method: "DELETE",
4663 path: "/workspaces/{workspace}/actions/managed-workflows/{workflow}",
4664 tag: "Run protection",
4665 summary: "Remove a workflow a workspace manages",
4666 scope: Some("workspace:admin"),
4667 params: &[
4668 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4669 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
4670 ],
4671 body: &[],
4672 },
4673 Operation {
4674 id: "get_actions_access",
4675 method: "GET",
4676 path: "/repos/{owner}/{name}/actions/permissions/access",
4677 tag: "Run protection",
4678 summary: "Get who may use a repository's actions and workflows",
4679 scope: Some("repo:read"),
4680 params: &[
4681 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4682 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4683 ],
4684 body: &[],
4685 },
4686 Operation {
4687 id: "get_actions_permissions",
4688 method: "GET",
4689 path: "/repos/{owner}/{name}/actions/permissions",
4690 tag: "Run protection",
4691 summary: "Get whether a repository's workflows run",
4692 scope: Some("repo:read"),
4693 params: &[
4694 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4695 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4696 ],
4697 body: &[],
4698 },
4699 Operation {
4700 id: "get_fork_pr_approval",
4701 method: "GET",
4702 path: "/repos/{owner}/{name}/actions/permissions/fork-pr-contributor-approval",
4703 tag: "Run protection",
4704 summary: "Get the approval policy for outside pull requests",
4705 scope: Some("repo:read"),
4706 params: &[
4707 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4708 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4709 ],
4710 body: &[],
4711 },
4712 Operation {
4713 id: "get_pending_deployments",
4714 method: "GET",
4715 path: "/repos/{owner}/{name}/actions/runs/{id}/pending_deployments",
4716 tag: "Run protection",
4717 summary: "Get a run's pending deployments",
4718 scope: Some("workflows:read"),
4719 params: &[
4720 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4721 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4722 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4723 ],
4724 body: &[],
4725 },
4726 Operation {
4727 id: "get_workflow_permissions",
4728 method: "GET",
4729 path: "/repos/{owner}/{name}/actions/permissions/workflow",
4730 tag: "Run protection",
4731 summary: "Get the default workflow permissions",
4732 scope: Some("repo:read"),
4733 params: &[
4734 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4735 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4736 ],
4737 body: &[],
4738 },
4739 Operation {
4740 id: "get_workspace_workflow_permissions",
4741 method: "GET",
4742 path: "/workspaces/{workspace}/actions/permissions/workflow",
4743 tag: "Run protection",
4744 summary: "Get a workspace's default workflow permissions",
4745 scope: Some("workspace:read"),
4746 params: &[
4747 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4748 ],
4749 body: &[],
4750 },
4751 Operation {
4752 id: "list_workspace_managed_workflows",
4753 method: "GET",
4754 path: "/workspaces/{workspace}/actions/managed-workflows",
4755 tag: "Run protection",
4756 summary: "List the workflows a workspace manages",
4757 scope: Some("workspace:read"),
4758 params: &[
4759 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4760 ],
4761 body: &[],
4762 },
4763 Operation {
4764 id: "review_pending_deployments",
4765 method: "POST",
4766 path: "/repos/{owner}/{name}/actions/runs/{id}/pending_deployments",
4767 tag: "Run protection",
4768 summary: "Review a run's pending deployments",
4769 scope: Some("workflows:write"),
4770 params: &[
4771 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4772 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4773 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4774 ],
4775 body: &[
4776 Field { name: "comment", kind: "string", required: false, values: &[] },
4777 Field { name: "environment_names", kind: "array", required: false, values: &[] },
4778 Field { name: "state", kind: "string", required: true, values: &["approved", "rejected"] },
4779 ],
4780 },
4781 Operation {
4782 id: "set_actions_access",
4783 method: "PUT",
4784 path: "/repos/{owner}/{name}/actions/permissions/access",
4785 tag: "Run protection",
4786 summary: "Set who may use a repository's actions and workflows",
4787 scope: Some("repo:admin"),
4788 params: &[
4789 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4790 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4791 ],
4792 body: &[
4793 Field { name: "access_level", kind: "string", required: true, values: &["none", "organization", "user"] },
4794 ],
4795 },
4796 Operation {
4797 id: "set_actions_permissions",
4798 method: "PUT",
4799 path: "/repos/{owner}/{name}/actions/permissions",
4800 tag: "Run protection",
4801 summary: "Turn a repository's workflows on or off",
4802 scope: Some("repo:admin"),
4803 params: &[
4804 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4805 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4806 ],
4807 body: &[
4808 Field { name: "enabled", kind: "boolean", required: true, values: &[] },
4809 ],
4810 },
4811 Operation {
4812 id: "set_fork_pr_approval",
4813 method: "PUT",
4814 path: "/repos/{owner}/{name}/actions/permissions/fork-pr-contributor-approval",
4815 tag: "Run protection",
4816 summary: "Set the approval policy for outside pull requests",
4817 scope: Some("repo:admin"),
4818 params: &[
4819 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4820 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4821 ],
4822 body: &[
4823 Field { name: "approval_policy", kind: "string", required: true, values: &["first_time_contributors", "outside_contributors", "all_external_contributors"] },
4824 ],
4825 },
4826 Operation {
4827 id: "set_workflow_permissions",
4828 method: "PUT",
4829 path: "/repos/{owner}/{name}/actions/permissions/workflow",
4830 tag: "Run protection",
4831 summary: "Set the default workflow permissions",
4832 scope: Some("repo:admin"),
4833 params: &[
4834 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4835 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4836 ],
4837 body: &[
4838 Field { name: "can_approve_pull_request_reviews", kind: "boolean", required: false, values: &[] },
4839 Field { name: "default_workflow_permissions", kind: "string", required: false, values: &["read", "write", "inherit"] },
4840 ],
4841 },
4842 Operation {
4843 id: "set_workspace_workflow_permissions",
4844 method: "PUT",
4845 path: "/workspaces/{workspace}/actions/permissions/workflow",
4846 tag: "Run protection",
4847 summary: "Set a workspace's default workflow permissions",
4848 scope: Some("workspace:admin"),
4849 params: &[
4850 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4851 ],
4852 body: &[
4853 Field { name: "can_approve_pull_request_reviews", kind: "boolean", required: false, values: &[] },
4854 Field { name: "default_workflow_permissions", kind: "string", required: false, values: &["read", "write"] },
4855 Field { name: "max_workflow_permissions", kind: "string", required: false, values: &["read", "write"] },
4856 ],
4857 },
4858 Operation {
4859 id: "update_environment",
4860 method: "PUT",
4861 path: "/repos/{owner}/{name}/environments/{environment}",
4862 tag: "Run protection",
4863 summary: "Create or update an environment's protection rules",
4864 scope: Some("repo:admin"),
4865 params: &[
4866 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4867 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4868 Param { name: "environment", location: In::Path, kind: "string", required: true, values: &[] },
4869 ],
4870 body: &[
4871 Field { name: "branch_policies", kind: "array", required: false, values: &[] },
4872 Field { name: "can_admins_bypass", kind: "boolean", required: false, values: &[] },
4873 Field { name: "deployment_branch_policy", kind: "object", required: false, values: &[] },
4874 Field { name: "prevent_self_review", kind: "boolean", required: false, values: &[] },
4875 Field { name: "reviewers", kind: "array", required: false, values: &[] },
4876 Field { name: "wait_timer", kind: "integer", required: false, values: &[] },
4877 ],
4878 },
4879 Operation {
4880 id: "update_workspace_managed_workflow",
4881 method: "PATCH",
4882 path: "/workspaces/{workspace}/actions/managed-workflows/{workflow}",
4883 tag: "Run protection",
4884 summary: "Update a workflow a workspace manages",
4885 scope: Some("workspace:admin"),
4886 params: &[
4887 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4888 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
4889 ],
4890 body: &[
4891 Field { name: "mode", kind: "string", required: false, values: &["required", "default"] },
4892 Field { name: "refresh", kind: "boolean", required: false, values: &[] },
4893 Field { name: "repositories", kind: "array", required: false, values: &[] },
4894 Field { name: "source", kind: "string", required: false, values: &[] },
4895 Field { name: "visibility", kind: "string", required: false, values: &["all", "public", "private"] },
4896 ],
4897 },
4898 Operation {
4899 id: "create_runner_group",
4900 method: "POST",
4901 path: "/workspaces/{workspace}/actions/runner-groups",
4902 tag: "Runners",
4903 summary: "Create a runner group",
4904 scope: Some("runners:admin"),
4905 params: &[
4906 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4907 ],
4908 body: &[
4909 Field { name: "id", kind: "string", required: false, values: &[] },
4910 Field { name: "name", kind: "string", required: true, values: &[] },
4911 Field { name: "repositories", kind: "array", required: false, values: &[] },
4912 ],
4913 },
4914 Operation {
4915 id: "create_runner_registration_token",
4916 method: "POST",
4917 path: "/repos/{owner}/{name}/actions/runners/registration-token",
4918 tag: "Runners",
4919 summary: "Create a runner registration token",
4920 scope: Some("runners:admin"),
4921 params: &[
4922 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4923 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4924 ],
4925 body: &[
4926 Field { name: "group", kind: "string", required: false, values: &[] },
4927 Field { name: "workspace", kind: "string", required: false, values: &[] },
4928 ],
4929 },
4930 Operation {
4931 id: "create_runner_registration_token_for_workspace",
4932 method: "POST",
4933 path: "/workspaces/{workspace}/actions/runners/registration-token",
4934 tag: "Runners",
4935 summary: "Create a runner registration token for a workspace",
4936 scope: Some("runners:admin"),
4937 params: &[
4938 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4939 ],
4940 body: &[
4941 Field { name: "group", kind: "string", required: false, values: &[] },
4942 ],
4943 },
4944 Operation {
4945 id: "delete_runner_group",
4946 method: "DELETE",
4947 path: "/workspaces/{workspace}/actions/runner-groups/{id}",
4948 tag: "Runners",
4949 summary: "Delete a runner group",
4950 scope: Some("runners:admin"),
4951 params: &[
4952 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4953 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4954 ],
4955 body: &[],
4956 },
4957 Operation {
4958 id: "get_runner_settings",
4959 method: "GET",
4960 path: "/repos/{owner}/{name}/actions/runner-settings",
4961 tag: "Runners",
4962 summary: "Get runner settings",
4963 scope: Some("runners:read"),
4964 params: &[
4965 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4966 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4967 ],
4968 body: &[],
4969 },
4970 Operation {
4971 id: "get_runner_settings_for_workspace",
4972 method: "GET",
4973 path: "/workspaces/{workspace}/actions/runner-settings",
4974 tag: "Runners",
4975 summary: "Get runner settings for a workspace",
4976 scope: Some("runners:read"),
4977 params: &[
4978 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4979 ],
4980 body: &[],
4981 },
4982 Operation {
4983 id: "list_runner_groups",
4984 method: "GET",
4985 path: "/workspaces/{workspace}/actions/runner-groups",
4986 tag: "Runners",
4987 summary: "List runner groups",
4988 scope: Some("runners:read"),
4989 params: &[
4990 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4991 ],
4992 body: &[],
4993 },
4994 Operation {
4995 id: "list_runners",
4996 method: "GET",
4997 path: "/repos/{owner}/{name}/actions/runners",
4998 tag: "Runners",
4999 summary: "List self-hosted runners",
5000 scope: Some("runners:read"),
5001 params: &[
5002 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5003 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5004 ],
5005 body: &[],
5006 },
5007 Operation {
5008 id: "list_runners_for_workspace",
5009 method: "GET",
5010 path: "/workspaces/{workspace}/actions/runners",
5011 tag: "Runners",
5012 summary: "List self-hosted runners for a workspace",
5013 scope: Some("runners:read"),
5014 params: &[
5015 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5016 ],
5017 body: &[],
5018 },
5019 Operation {
5020 id: "remove_runner",
5021 method: "DELETE",
5022 path: "/repos/{owner}/{name}/actions/runners/{id}",
5023 tag: "Runners",
5024 summary: "Remove a self-hosted runner",
5025 scope: Some("runners:admin"),
5026 params: &[
5027 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5028 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5029 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5030 ],
5031 body: &[
5032 Field { name: "workspace", kind: "string", required: false, values: &[] },
5033 ],
5034 },
5035 Operation {
5036 id: "remove_runner_for_workspace",
5037 method: "DELETE",
5038 path: "/workspaces/{workspace}/actions/runners/{id}",
5039 tag: "Runners",
5040 summary: "Remove a self-hosted runner for a workspace",
5041 scope: Some("runners:admin"),
5042 params: &[
5043 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5044 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5045 ],
5046 body: &[],
5047 },
5048 Operation {
5049 id: "update_runner_group",
5050 method: "PATCH",
5051 path: "/workspaces/{workspace}/actions/runner-groups/{id}",
5052 tag: "Runners",
5053 summary: "Change a runner group",
5054 scope: Some("runners:admin"),
5055 params: &[
5056 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5057 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5058 ],
5059 body: &[
5060 Field { name: "name", kind: "string", required: false, values: &[] },
5061 Field { name: "repositories", kind: "array", required: false, values: &[] },
5062 ],
5063 },
5064 Operation {
5065 id: "update_runner_settings",
5066 method: "PATCH",
5067 path: "/repos/{owner}/{name}/actions/runner-settings",
5068 tag: "Runners",
5069 summary: "Change runner settings",
5070 scope: Some("runners:admin"),
5071 params: &[
5072 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5073 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5074 ],
5075 body: &[
5076 Field { name: "agent_labels", kind: "array", required: false, values: &[] },
5077 Field { name: "agents_on_self_hosted", kind: "boolean", required: false, values: &[] },
5078 Field { name: "fork_pull_requests", kind: "boolean", required: false, values: &[] },
5079 Field { name: "inherit", kind: "boolean", required: false, values: &[] },
5080 Field { name: "workspace", kind: "string", required: false, values: &[] },
5081 ],
5082 },
5083 Operation {
5084 id: "update_runner_settings_for_workspace",
5085 method: "PATCH",
5086 path: "/workspaces/{workspace}/actions/runner-settings",
5087 tag: "Runners",
5088 summary: "Change runner settings for a workspace",
5089 scope: Some("runners:admin"),
5090 params: &[
5091 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5092 ],
5093 body: &[
5094 Field { name: "agent_labels", kind: "array", required: false, values: &[] },
5095 Field { name: "agents_on_self_hosted", kind: "boolean", required: false, values: &[] },
5096 Field { name: "fork_pull_requests", kind: "boolean", required: false, values: &[] },
5097 Field { name: "inherit", kind: "boolean", required: false, values: &[] },
5098 ],
5099 },
5100 Operation {
5101 id: "search",
5102 method: "GET",
5103 path: "/search",
5104 tag: "Search",
5105 summary: "Search g1t",
5106 scope: Some("repo:read"),
5107 params: &[
5108 Param { name: "q", location: In::Query, kind: "string", required: true, values: &[] },
5109 Param { name: "type", location: In::Query, kind: "string", required: false, values: &["repositories", "code", "items", "pulls", "people"] },
5110 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
5111 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
5112 ],
5113 body: &[],
5114 },
5115 Operation {
5116 id: "bypass_push_protection",
5117 method: "POST",
5118 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}/bypass",
5119 tag: "Secret scanning",
5120 summary: "Bypass push protection",
5121 scope: Some("security:write"),
5122 params: &[
5123 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5124 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5125 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5126 ],
5127 body: &[
5128 Field { name: "comment", kind: "string", required: false, values: &[] },
5129 Field { name: "reason", kind: "string", required: true, values: &["false_positive", "used_in_tests", "will_fix_later"] },
5130 ],
5131 },
5132 Operation {
5133 id: "check_secret_validity",
5134 method: "POST",
5135 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}/validity",
5136 tag: "Secret scanning",
5137 summary: "Check whether a secret still works",
5138 scope: Some("security:write"),
5139 params: &[
5140 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5141 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5142 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5143 ],
5144 body: &[],
5145 },
5146 Operation {
5147 id: "create_custom_pattern",
5148 method: "POST",
5149 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns",
5150 tag: "Secret scanning",
5151 summary: "Create a custom pattern",
5152 scope: Some("security:write"),
5153 params: &[
5154 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5155 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5156 ],
5157 body: &[
5158 Field { name: "after", kind: "string", required: false, values: &[] },
5159 Field { name: "before", kind: "string", required: false, values: &[] },
5160 Field { name: "pattern", kind: "string", required: true, values: &[] },
5161 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
5162 Field { name: "publish", kind: "boolean", required: false, values: &[] },
5163 Field { name: "test_strings", kind: "array", required: false, values: &[] },
5164 Field { name: "workspace", kind: "string", required: false, values: &[] },
5165 ],
5166 },
5167 Operation {
5168 id: "create_custom_pattern_for_workspace",
5169 method: "POST",
5170 path: "/workspaces/{workspace}/secret-scanning/custom-patterns",
5171 tag: "Secret scanning",
5172 summary: "Create a custom pattern for a workspace",
5173 scope: Some("security:write"),
5174 params: &[
5175 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5176 ],
5177 body: &[
5178 Field { name: "after", kind: "string", required: false, values: &[] },
5179 Field { name: "before", kind: "string", required: false, values: &[] },
5180 Field { name: "pattern", kind: "string", required: true, values: &[] },
5181 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
5182 Field { name: "publish", kind: "boolean", required: false, values: &[] },
5183 Field { name: "test_strings", kind: "array", required: false, values: &[] },
5184 ],
5185 },
5186 Operation {
5187 id: "delete_custom_pattern",
5188 method: "DELETE",
5189 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns/{id}",
5190 tag: "Secret scanning",
5191 summary: "Delete a custom pattern",
5192 scope: Some("security:write"),
5193 params: &[
5194 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5195 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5196 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5197 ],
5198 body: &[
5199 Field { name: "workspace", kind: "string", required: false, values: &[] },
5200 ],
5201 },
5202 Operation {
5203 id: "delete_custom_pattern_for_workspace",
5204 method: "DELETE",
5205 path: "/workspaces/{workspace}/secret-scanning/custom-patterns/{id}",
5206 tag: "Secret scanning",
5207 summary: "Delete a custom pattern for a workspace",
5208 scope: Some("security:write"),
5209 params: &[
5210 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5211 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5212 ],
5213 body: &[],
5214 },
5215 Operation {
5216 id: "dry_run_custom_pattern",
5217 method: "POST",
5218 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns/dry-run",
5219 tag: "Secret scanning",
5220 summary: "Dry-run a custom pattern",
5221 scope: Some("security:write"),
5222 params: &[
5223 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5224 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5225 ],
5226 body: &[
5227 Field { name: "after", kind: "string", required: false, values: &[] },
5228 Field { name: "before", kind: "string", required: false, values: &[] },
5229 Field { name: "pattern", kind: "string", required: true, values: &[] },
5230 Field { name: "pattern_name", kind: "string", required: false, values: &[] },
5231 Field { name: "repos", kind: "array", required: false, values: &[] },
5232 Field { name: "workspace", kind: "string", required: false, values: &[] },
5233 ],
5234 },
5235 Operation {
5236 id: "dry_run_custom_pattern_for_workspace",
5237 method: "POST",
5238 path: "/workspaces/{workspace}/secret-scanning/custom-patterns/dry-run",
5239 tag: "Secret scanning",
5240 summary: "Dry-run a custom pattern for a workspace",
5241 scope: Some("security:write"),
5242 params: &[
5243 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5244 ],
5245 body: &[
5246 Field { name: "after", kind: "string", required: false, values: &[] },
5247 Field { name: "before", kind: "string", required: false, values: &[] },
5248 Field { name: "pattern", kind: "string", required: true, values: &[] },
5249 Field { name: "pattern_name", kind: "string", required: false, values: &[] },
5250 Field { name: "repos", kind: "array", required: false, values: &[] },
5251 ],
5252 },
5253 Operation {
5254 id: "get_secret_scanning_alert",
5255 method: "GET",
5256 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}",
5257 tag: "Secret scanning",
5258 summary: "Get a secret scanning alert",
5259 scope: Some("security:read"),
5260 params: &[
5261 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5262 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5263 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5264 ],
5265 body: &[],
5266 },
5267 Operation {
5268 id: "list_bypass_requests",
5269 method: "GET",
5270 path: "/workspaces/{workspace}/secret-scanning/bypass-requests",
5271 tag: "Secret scanning",
5272 summary: "List push protection bypass requests",
5273 scope: Some("security:read"),
5274 params: &[
5275 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5276 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["pending", "approved", "denied", "cancelled"] },
5277 Param { name: "repo", location: In::Query, kind: "string", required: false, values: &[] },
5278 ],
5279 body: &[],
5280 },
5281 Operation {
5282 id: "list_custom_patterns",
5283 method: "GET",
5284 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns",
5285 tag: "Secret scanning",
5286 summary: "List custom patterns",
5287 scope: Some("security:read"),
5288 params: &[
5289 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5290 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5291 ],
5292 body: &[],
5293 },
5294 Operation {
5295 id: "list_custom_patterns_for_workspace",
5296 method: "GET",
5297 path: "/workspaces/{workspace}/secret-scanning/custom-patterns",
5298 tag: "Secret scanning",
5299 summary: "List custom patterns for a workspace",
5300 scope: Some("security:read"),
5301 params: &[
5302 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5303 ],
5304 body: &[],
5305 },
5306 Operation {
5307 id: "list_secret_scanning_alerts",
5308 method: "GET",
5309 path: "/repos/{owner}/{name}/secret-scanning/alerts",
5310 tag: "Secret scanning",
5311 summary: "List secret scanning alerts",
5312 scope: Some("security:read"),
5313 params: &[
5314 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5315 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5316 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
5317 Param { name: "secret_type", location: In::Query, kind: "string", required: false, values: &[] },
5318 Param { name: "validity", location: In::Query, kind: "string", required: false, values: &["active", "inactive", "unknown", "unsupported"] },
5319 Param { name: "bypassed", location: In::Query, kind: "boolean", required: false, values: &[] },
5320 ],
5321 body: &[],
5322 },
5323 Operation {
5324 id: "list_secret_scanning_alerts_for_workspace",
5325 method: "GET",
5326 path: "/workspaces/{workspace}/secret-scanning/alerts",
5327 tag: "Secret scanning",
5328 summary: "List secret scanning alerts for a workspace",
5329 scope: Some("security:read"),
5330 params: &[
5331 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5332 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
5333 Param { name: "secret_type", location: In::Query, kind: "string", required: false, values: &[] },
5334 Param { name: "validity", location: In::Query, kind: "string", required: false, values: &["active", "inactive", "unknown", "unsupported"] },
5335 Param { name: "bypassed", location: In::Query, kind: "boolean", required: false, values: &[] },
5336 ],
5337 body: &[],
5338 },
5339 Operation {
5340 id: "list_secret_scanning_locations",
5341 method: "GET",
5342 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}/locations",
5343 tag: "Secret scanning",
5344 summary: "List where a secret was found",
5345 scope: Some("security:read"),
5346 params: &[
5347 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5348 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5349 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5350 ],
5351 body: &[],
5352 },
5353 Operation {
5354 id: "review_bypass_request",
5355 method: "PATCH",
5356 path: "/workspaces/{workspace}/secret-scanning/bypass-requests/{id}",
5357 tag: "Secret scanning",
5358 summary: "Review a bypass request",
5359 scope: Some("security:write"),
5360 params: &[
5361 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5362 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5363 ],
5364 body: &[
5365 Field { name: "comment", kind: "string", required: false, values: &[] },
5366 Field { name: "decision", kind: "string", required: true, values: &["approve", "deny", "cancel"] },
5367 ],
5368 },
5369 Operation {
5370 id: "update_custom_pattern",
5371 method: "PATCH",
5372 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns/{id}",
5373 tag: "Secret scanning",
5374 summary: "Update a custom pattern",
5375 scope: Some("security:write"),
5376 params: &[
5377 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5378 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5379 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5380 ],
5381 body: &[
5382 Field { name: "after", kind: "string", required: false, values: &[] },
5383 Field { name: "before", kind: "string", required: false, values: &[] },
5384 Field { name: "pattern", kind: "string", required: true, values: &[] },
5385 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
5386 Field { name: "publish", kind: "boolean", required: false, values: &[] },
5387 Field { name: "test_strings", kind: "array", required: false, values: &[] },
5388 Field { name: "workspace", kind: "string", required: false, values: &[] },
5389 ],
5390 },
5391 Operation {
5392 id: "update_custom_pattern_for_workspace",
5393 method: "PATCH",
5394 path: "/workspaces/{workspace}/secret-scanning/custom-patterns/{id}",
5395 tag: "Secret scanning",
5396 summary: "Update a custom pattern for a workspace",
5397 scope: Some("security:write"),
5398 params: &[
5399 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5400 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5401 ],
5402 body: &[
5403 Field { name: "after", kind: "string", required: false, values: &[] },
5404 Field { name: "before", kind: "string", required: false, values: &[] },
5405 Field { name: "pattern", kind: "string", required: true, values: &[] },
5406 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
5407 Field { name: "publish", kind: "boolean", required: false, values: &[] },
5408 Field { name: "test_strings", kind: "array", required: false, values: &[] },
5409 ],
5410 },
5411 Operation {
5412 id: "update_secret_scanning_alert",
5413 method: "PATCH",
5414 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}",
5415 tag: "Secret scanning",
5416 summary: "Dismiss or reopen a secret scanning alert",
5417 scope: Some("security:write"),
5418 params: &[
5419 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5420 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5421 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5422 ],
5423 body: &[
5424 Field { name: "comment", kind: "string", required: false, values: &[] },
5425 Field { name: "reason", kind: "string", required: false, values: &["false_positive", "used_in_tests", "revoked", "wont_fix"] },
5426 Field { name: "state", kind: "string", required: true, values: &["open", "dismissed"] },
5427 ],
5428 },
5429 Operation {
5430 id: "delete_actions_secret",
5431 method: "DELETE",
5432 path: "/repos/{owner}/{name}/actions/secrets/{setting}",
5433 tag: "Secrets and variables",
5434 summary: "Delete a secret",
5435 scope: Some("secrets:admin"),
5436 params: &[
5437 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5438 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5439 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5440 ],
5441 body: &[
5442 Field { name: "id", kind: "string", required: false, values: &[] },
5443 Field { name: "workspace", kind: "string", required: false, values: &[] },
5444 ],
5445 },
5446 Operation {
5447 id: "delete_actions_secret_for_workspace",
5448 method: "DELETE",
5449 path: "/workspaces/{workspace}/actions/secrets/{setting}",
5450 tag: "Secrets and variables",
5451 summary: "Delete a secret for a workspace",
5452 scope: Some("secrets:admin"),
5453 params: &[
5454 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5455 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5456 ],
5457 body: &[
5458 Field { name: "id", kind: "string", required: false, values: &[] },
5459 ],
5460 },
5461 Operation {
5462 id: "delete_actions_variable",
5463 method: "DELETE",
5464 path: "/repos/{owner}/{name}/actions/variables/{setting}",
5465 tag: "Secrets and variables",
5466 summary: "Delete a variable",
5467 scope: Some("secrets:admin"),
5468 params: &[
5469 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5470 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5471 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5472 ],
5473 body: &[
5474 Field { name: "id", kind: "string", required: false, values: &[] },
5475 Field { name: "workspace", kind: "string", required: false, values: &[] },
5476 ],
5477 },
5478 Operation {
5479 id: "delete_actions_variable_for_workspace",
5480 method: "DELETE",
5481 path: "/workspaces/{workspace}/actions/variables/{setting}",
5482 tag: "Secrets and variables",
5483 summary: "Delete a variable for a workspace",
5484 scope: Some("secrets:admin"),
5485 params: &[
5486 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5487 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5488 ],
5489 body: &[
5490 Field { name: "id", kind: "string", required: false, values: &[] },
5491 ],
5492 },
5493 Operation {
5494 id: "list_actions_secrets",
5495 method: "GET",
5496 path: "/repos/{owner}/{name}/actions/secrets",
5497 tag: "Secrets and variables",
5498 summary: "List secrets",
5499 scope: Some("secrets:read"),
5500 params: &[
5501 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5502 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5503 ],
5504 body: &[],
5505 },
5506 Operation {
5507 id: "list_actions_secrets_for_workspace",
5508 method: "GET",
5509 path: "/workspaces/{workspace}/actions/secrets",
5510 tag: "Secrets and variables",
5511 summary: "List secrets for a workspace",
5512 scope: Some("secrets:read"),
5513 params: &[
5514 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5515 ],
5516 body: &[],
5517 },
5518 Operation {
5519 id: "list_actions_variables",
5520 method: "GET",
5521 path: "/repos/{owner}/{name}/actions/variables",
5522 tag: "Secrets and variables",
5523 summary: "List variables",
5524 scope: Some("secrets:read"),
5525 params: &[
5526 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5527 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5528 ],
5529 body: &[],
5530 },
5531 Operation {
5532 id: "list_actions_variables_for_workspace",
5533 method: "GET",
5534 path: "/workspaces/{workspace}/actions/variables",
5535 tag: "Secrets and variables",
5536 summary: "List variables for a workspace",
5537 scope: Some("secrets:read"),
5538 params: &[
5539 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5540 ],
5541 body: &[],
5542 },
5543 Operation {
5544 id: "set_actions_secret",
5545 method: "PUT",
5546 path: "/repos/{owner}/{name}/actions/secrets/{setting}",
5547 tag: "Secrets and variables",
5548 summary: "Set a secret",
5549 scope: Some("secrets:admin"),
5550 params: &[
5551 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5552 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5553 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5554 ],
5555 body: &[
5556 Field { name: "available_to", kind: "array", required: false, values: &[] },
5557 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5558 Field { name: "environments", kind: "array", required: false, values: &[] },
5559 Field { name: "id", kind: "string", required: false, values: &[] },
5560 Field { name: "note", kind: "string", required: false, values: &[] },
5561 Field { name: "projects", kind: "array", required: false, values: &[] },
5562 Field { name: "value", kind: "string", required: false, values: &[] },
5563 Field { name: "workspace", kind: "string", required: false, values: &[] },
5564 ],
5565 },
5566 Operation {
5567 id: "set_actions_secret_for_workspace",
5568 method: "PUT",
5569 path: "/workspaces/{workspace}/actions/secrets/{setting}",
5570 tag: "Secrets and variables",
5571 summary: "Set a secret for a workspace",
5572 scope: Some("secrets:admin"),
5573 params: &[
5574 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5575 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5576 ],
5577 body: &[
5578 Field { name: "available_to", kind: "array", required: false, values: &[] },
5579 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5580 Field { name: "environments", kind: "array", required: false, values: &[] },
5581 Field { name: "id", kind: "string", required: false, values: &[] },
5582 Field { name: "note", kind: "string", required: false, values: &[] },
5583 Field { name: "projects", kind: "array", required: false, values: &[] },
5584 Field { name: "value", kind: "string", required: false, values: &[] },
5585 ],
5586 },
5587 Operation {
5588 id: "set_actions_variable",
5589 method: "POST",
5590 path: "/repos/{owner}/{name}/actions/variables",
5591 tag: "Secrets and variables",
5592 summary: "Set a variable",
5593 scope: Some("secrets:admin"),
5594 params: &[
5595 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5596 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5597 ],
5598 body: &[
5599 Field { name: "available_to", kind: "array", required: false, values: &[] },
5600 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5601 Field { name: "environments", kind: "array", required: false, values: &[] },
5602 Field { name: "id", kind: "string", required: false, values: &[] },
5603 Field { name: "note", kind: "string", required: false, values: &[] },
5604 Field { name: "projects", kind: "array", required: false, values: &[] },
5605 Field { name: "setting", kind: "string", required: true, values: &[] },
5606 Field { name: "value", kind: "string", required: false, values: &[] },
5607 Field { name: "workspace", kind: "string", required: false, values: &[] },
5608 ],
5609 },
5610 Operation {
5611 id: "set_actions_variable_for_workspace",
5612 method: "POST",
5613 path: "/workspaces/{workspace}/actions/variables",
5614 tag: "Secrets and variables",
5615 summary: "Set a variable for a workspace",
5616 scope: Some("secrets:admin"),
5617 params: &[
5618 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5619 ],
5620 body: &[
5621 Field { name: "available_to", kind: "array", required: false, values: &[] },
5622 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5623 Field { name: "environments", kind: "array", required: false, values: &[] },
5624 Field { name: "id", kind: "string", required: false, values: &[] },
5625 Field { name: "note", kind: "string", required: false, values: &[] },
5626 Field { name: "projects", kind: "array", required: false, values: &[] },
5627 Field { name: "setting", kind: "string", required: true, values: &[] },
5628 Field { name: "value", kind: "string", required: false, values: &[] },
5629 ],
5630 },
5631 Operation {
5632 id: "update_actions_variable",
5633 method: "PATCH",
5634 path: "/repos/{owner}/{name}/actions/variables/{setting}",
5635 tag: "Secrets and variables",
5636 summary: "Update a variable",
5637 scope: Some("secrets:admin"),
5638 params: &[
5639 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5640 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5641 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5642 ],
5643 body: &[
5644 Field { name: "available_to", kind: "array", required: false, values: &[] },
5645 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5646 Field { name: "environments", kind: "array", required: false, values: &[] },
5647 Field { name: "id", kind: "string", required: false, values: &[] },
5648 Field { name: "note", kind: "string", required: false, values: &[] },
5649 Field { name: "projects", kind: "array", required: false, values: &[] },
5650 Field { name: "value", kind: "string", required: false, values: &[] },
5651 Field { name: "workspace", kind: "string", required: false, values: &[] },
5652 ],
5653 },
5654 Operation {
5655 id: "update_actions_variable_for_workspace",
5656 method: "PATCH",
5657 path: "/workspaces/{workspace}/actions/variables/{setting}",
5658 tag: "Secrets and variables",
5659 summary: "Update a variable for a workspace",
5660 scope: Some("secrets:admin"),
5661 params: &[
5662 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5663 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5664 ],
5665 body: &[
5666 Field { name: "available_to", kind: "array", required: false, values: &[] },
5667 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5668 Field { name: "environments", kind: "array", required: false, values: &[] },
5669 Field { name: "id", kind: "string", required: false, values: &[] },
5670 Field { name: "note", kind: "string", required: false, values: &[] },
5671 Field { name: "projects", kind: "array", required: false, values: &[] },
5672 Field { name: "value", kind: "string", required: false, values: &[] },
5673 ],
5674 },
5675 Operation {
5676 id: "dismiss_security_alert",
5677 method: "POST",
5678 path: "/repos/{owner}/{name}/security/alerts/{id}/dismiss",
5679 tag: "Security",
5680 summary: "Dismiss a security alert",
5681 scope: Some("repo:admin"),
5682 params: &[
5683 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5684 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5685 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5686 ],
5687 body: &[
5688 Field { name: "comment", kind: "string", required: false, values: &[] },
5689 Field { name: "reason", kind: "string", required: true, values: &["false_positive", "used_in_tests", "revoked", "wont_fix", "fix_started", "no_bandwidth", "tolerable_risk", "inaccurate", "not_used"] },
5690 ],
5691 },
5692 Operation {
5693 id: "list_security_alerts",
5694 method: "GET",
5695 path: "/repos/{owner}/{name}/security/alerts",
5696 tag: "Security",
5697 summary: "List security alerts",
5698 scope: Some("repo:read"),
5699 params: &[
5700 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5701 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5702 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
5703 Param { name: "kind", location: In::Query, kind: "string", required: false, values: &["secret", "dependency"] },
5704 ],
5705 body: &[],
5706 },
5707 Operation {
5708 id: "reopen_security_alert",
5709 method: "POST",
5710 path: "/repos/{owner}/{name}/security/alerts/{id}/reopen",
5711 tag: "Security",
5712 summary: "Reopen a security alert",
5713 scope: Some("repo:admin"),
5714 params: &[
5715 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5716 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5717 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5718 ],
5719 body: &[],
5720 },
5721 Operation {
5722 id: "create_security_advisory",
5723 method: "POST",
5724 path: "/repos/{owner}/{name}/security/advisories",
5725 tag: "Security advisories",
5726 summary: "Create a security advisory",
5727 scope: Some("security:write"),
5728 params: &[
5729 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5730 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5731 ],
5732 body: &[
5733 Field { name: "affected_versions", kind: "string", required: false, values: &[] },
5734 Field { name: "credits", kind: "array", required: false, values: &[] },
5735 Field { name: "cve_id", kind: "string", required: false, values: &[] },
5736 Field { name: "cvss_score", kind: "number", required: false, values: &[] },
5737 Field { name: "cvss_vector", kind: "string", required: false, values: &[] },
5738 Field { name: "description", kind: "string", required: false, values: &[] },
5739 Field { name: "ecosystem", kind: "string", required: false, values: &[] },
5740 Field { name: "package", kind: "string", required: false, values: &[] },
5741 Field { name: "patched_versions", kind: "string", required: false, values: &[] },
5742 Field { name: "severity", kind: "string", required: true, values: &["critical", "high", "medium", "low"] },
5743 Field { name: "title", kind: "string", required: true, values: &[] },
5744 ],
5745 },
5746 Operation {
5747 id: "get_security_advisory",
5748 method: "GET",
5749 path: "/repos/{owner}/{name}/security/advisories/{id}",
5750 tag: "Security advisories",
5751 summary: "Get a security advisory",
5752 scope: Some("security:read"),
5753 params: &[
5754 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5755 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5756 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5757 ],
5758 body: &[],
5759 },
5760 Operation {
5761 id: "list_security_advisories",
5762 method: "GET",
5763 path: "/repos/{owner}/{name}/security/advisories",
5764 tag: "Security advisories",
5765 summary: "List security advisories",
5766 scope: Some("security:read"),
5767 params: &[
5768 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5769 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5770 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["draft", "published", "withdrawn"] },
5771 ],
5772 body: &[],
5773 },
5774 Operation {
5775 id: "list_vulnerability_reports",
5776 method: "GET",
5777 path: "/repos/{owner}/{name}/security/reports",
5778 tag: "Security advisories",
5779 summary: "List vulnerability reports",
5780 scope: Some("security:read"),
5781 params: &[
5782 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5783 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5784 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["new", "accepted", "declined"] },
5785 ],
5786 body: &[],
5787 },
5788 Operation {
5789 id: "report_vulnerability",
5790 method: "POST",
5791 path: "/repos/{owner}/{name}/security/reports",
5792 tag: "Security advisories",
5793 summary: "Report a vulnerability privately",
5794 scope: Some("security:write"),
5795 params: &[
5796 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5797 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5798 ],
5799 body: &[
5800 Field { name: "description", kind: "string", required: true, values: &[] },
5801 Field { name: "email", kind: "string", required: false, values: &[] },
5802 Field { name: "severity", kind: "string", required: false, values: &["critical", "high", "medium", "low"] },
5803 Field { name: "title", kind: "string", required: true, values: &[] },
5804 ],
5805 },
5806 Operation {
5807 id: "review_vulnerability_report",
5808 method: "PATCH",
5809 path: "/repos/{owner}/{name}/security/reports/{id}",
5810 tag: "Security advisories",
5811 summary: "Accept or decline a vulnerability report",
5812 scope: Some("security:write"),
5813 params: &[
5814 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5815 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5816 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5817 ],
5818 body: &[
5819 Field { name: "decision", kind: "string", required: true, values: &["accept", "decline"] },
5820 Field { name: "note", kind: "string", required: false, values: &[] },
5821 ],
5822 },
5823 Operation {
5824 id: "set_security_advisory_state",
5825 method: "POST",
5826 path: "/repos/{owner}/{name}/security/advisories/{id}/state",
5827 tag: "Security advisories",
5828 summary: "Publish or withdraw a security advisory",
5829 scope: Some("security:write"),
5830 params: &[
5831 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5832 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5833 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5834 ],
5835 body: &[
5836 Field { name: "state", kind: "string", required: true, values: &["published", "withdrawn"] },
5837 ],
5838 },
5839 Operation {
5840 id: "update_security_advisory",
5841 method: "PATCH",
5842 path: "/repos/{owner}/{name}/security/advisories/{id}",
5843 tag: "Security advisories",
5844 summary: "Update a security advisory",
5845 scope: Some("security:write"),
5846 params: &[
5847 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5848 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5849 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5850 ],
5851 body: &[
5852 Field { name: "affected_versions", kind: "string", required: false, values: &[] },
5853 Field { name: "credits", kind: "array", required: false, values: &[] },
5854 Field { name: "cve_id", kind: "string", required: false, values: &[] },
5855 Field { name: "cvss_score", kind: "number", required: false, values: &[] },
5856 Field { name: "cvss_vector", kind: "string", required: false, values: &[] },
5857 Field { name: "description", kind: "string", required: false, values: &[] },
5858 Field { name: "ecosystem", kind: "string", required: false, values: &[] },
5859 Field { name: "package", kind: "string", required: false, values: &[] },
5860 Field { name: "patched_versions", kind: "string", required: false, values: &[] },
5861 Field { name: "severity", kind: "string", required: false, values: &["critical", "high", "medium", "low"] },
5862 Field { name: "title", kind: "string", required: false, values: &[] },
5863 ],
5864 },
5865 Operation {
5866 id: "get_security_overview",
5867 method: "GET",
5868 path: "/workspaces/{workspace}/security/overview",
5869 tag: "Security settings",
5870 summary: "Get the security overview",
5871 scope: Some("security:read"),
5872 params: &[
5873 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5874 Param { name: "days", location: In::Query, kind: "integer", required: false, values: &[] },
5875 ],
5876 body: &[],
5877 },
5878 Operation {
5879 id: "get_security_settings",
5880 method: "GET",
5881 path: "/repos/{owner}/{name}/security/settings",
5882 tag: "Security settings",
5883 summary: "Get a repository's security settings",
5884 scope: Some("security:read"),
5885 params: &[
5886 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5887 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5888 ],
5889 body: &[],
5890 },
5891 Operation {
5892 id: "get_workspace_security_settings",
5893 method: "GET",
5894 path: "/workspaces/{workspace}/security/settings",
5895 tag: "Security settings",
5896 summary: "Get a workspace's security settings",
5897 scope: Some("security:read"),
5898 params: &[
5899 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5900 ],
5901 body: &[],
5902 },
5903 Operation {
5904 id: "update_security_settings",
5905 method: "PATCH",
5906 path: "/repos/{owner}/{name}/security/settings",
5907 tag: "Security settings",
5908 summary: "Update a repository's security settings",
5909 scope: Some("security:write"),
5910 params: &[
5911 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5912 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5913 ],
5914 body: &[
5915 Field { name: "code_scanning_gate", kind: "string", required: false, values: &["none", "errors", "critical", "high", "medium", "any"] },
5916 Field { name: "dependency_review", kind: "boolean", required: false, values: &[] },
5917 Field { name: "history_alerts", kind: "boolean", required: false, values: &[] },
5918 Field { name: "private_vulnerability_reporting", kind: "boolean", required: false, values: &[] },
5919 Field { name: "review_comment", kind: "boolean", required: false, values: &[] },
5920 Field { name: "review_deny_licenses", kind: "array", required: false, values: &[] },
5921 Field { name: "review_fail_on", kind: "string", required: false, values: &["critical", "high", "medium", "low", "none"] },
5922 ],
5923 },
5924 Operation {
5925 id: "update_workspace_security_settings",
5926 method: "PATCH",
5927 path: "/workspaces/{workspace}/security/settings",
5928 tag: "Security settings",
5929 summary: "Update a workspace's security settings",
5930 scope: Some("security:write"),
5931 params: &[
5932 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5933 ],
5934 body: &[
5935 Field { name: "delegated_bypass", kind: "boolean", required: false, values: &[] },
5936 Field { name: "validity_checks", kind: "boolean", required: false, values: &[] },
5937 ],
5938 },
5939 Operation {
5940 id: "end_session",
5941 method: "POST",
5942 path: "/repos/{owner}/{name}/sessions/{id}/end",
5943 tag: "Sessions",
5944 summary: "End a session",
5945 scope: Some("pull_requests:write"),
5946 params: &[
5947 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5948 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5949 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5950 ],
5951 body: &[
5952 Field { name: "reason", kind: "string", required: false, values: &[] },
5953 Field { name: "result", kind: "string", required: false, values: &[] },
5954 ],
5955 },
5956 Operation {
5957 id: "get_session",
5958 method: "GET",
5959 path: "/repos/{owner}/{name}/sessions/{id}",
5960 tag: "Sessions",
5961 summary: "Get a session",
5962 scope: Some("pull_requests:read"),
5963 params: &[
5964 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5965 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5966 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5967 Param { name: "after", location: In::Query, kind: "integer", required: false, values: &[] },
5968 ],
5969 body: &[],
5970 },
5971 Operation {
5972 id: "list_sessions",
5973 method: "GET",
5974 path: "/repos/{owner}/{name}/sessions",
5975 tag: "Sessions",
5976 summary: "List sessions",
5977 scope: Some("pull_requests:read"),
5978 params: &[
5979 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5980 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5981 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "idle", "ended"] },
5982 Param { name: "item", location: In::Query, kind: "integer", required: false, values: &[] },
5983 Param { name: "pull", location: In::Query, kind: "integer", required: false, values: &[] },
5984 Param { name: "path", location: In::Query, kind: "string", required: false, values: &[] },
5985 Param { name: "subagents", location: In::Query, kind: "boolean", required: false, values: &[] },
5986 ],
5987 body: &[],
5988 },
5989 Operation {
5990 id: "read_session",
5991 method: "GET",
5992 path: "/repos/{owner}/{name}/pulls/{number}/session",
5993 tag: "Sessions",
5994 summary: "Read a session",
5995 scope: Some("pull_requests:read"),
5996 params: &[
5997 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5998 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5999 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6000 Param { name: "after", location: In::Query, kind: "integer", required: false, values: &[] },
6001 ],
6002 body: &[],
6003 },
6004 Operation {
6005 id: "record_session",
6006 method: "POST",
6007 path: "/repos/{owner}/{name}/pulls/{number}/session",
6008 tag: "Sessions",
6009 summary: "Record session entries",
6010 scope: Some("pull_requests:write"),
6011 params: &[
6012 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6013 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6014 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6015 ],
6016 body: &[
6017 Field { name: "entries", kind: "array", required: true, values: &[] },
6018 ],
6019 },
6020 Operation {
6021 id: "record_session_entries",
6022 method: "POST",
6023 path: "/repos/{owner}/{name}/sessions/{id}/entries",
6024 tag: "Sessions",
6025 summary: "Record entries in a session",
6026 scope: Some("pull_requests:write"),
6027 params: &[
6028 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6029 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6030 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6031 ],
6032 body: &[
6033 Field { name: "acknowledge", kind: "array", required: false, values: &[] },
6034 Field { name: "entries", kind: "array", required: false, values: &[] },
6035 Field { name: "touched", kind: "array", required: false, values: &[] },
6036 ],
6037 },
6038 Operation {
6039 id: "start_agent_session",
6040 method: "POST",
6041 path: "/repos/{owner}/{name}/agent-sessions",
6042 tag: "Sessions",
6043 summary: "Start an agent session on a work item",
6044 scope: Some("pull_requests:write"),
6045 params: &[
6046 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6047 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6048 ],
6049 body: &[
6050 Field { name: "body", kind: "string", required: false, values: &[] },
6051 Field { name: "handoff", kind: "boolean", required: false, values: &[] },
6052 Field { name: "instruction", kind: "string", required: false, values: &[] },
6053 Field { name: "item", kind: "integer", required: false, values: &[] },
6054 Field { name: "mode", kind: "string", required: false, values: &["plan", "implement", "review"] },
6055 Field { name: "title", kind: "string", required: false, values: &[] },
6056 ],
6057 },
6058 Operation {
6059 id: "start_session",
6060 method: "POST",
6061 path: "/repos/{owner}/{name}/sessions",
6062 tag: "Sessions",
6063 summary: "Start a session",
6064 scope: Some("pull_requests:write"),
6065 params: &[
6066 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6067 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6068 ],
6069 body: &[
6070 Field { name: "agent_type", kind: "string", required: false, values: &[] },
6071 Field { name: "branch", kind: "string", required: false, values: &[] },
6072 Field { name: "harness", kind: "string", required: true, values: &["claude_code", "claude_managed_agents", "codex", "cursor", "copilot", "other"] },
6073 Field { name: "harness_session_id", kind: "string", required: false, values: &[] },
6074 Field { name: "head_commit", kind: "string", required: false, values: &[] },
6075 Field { name: "item", kind: "integer", required: false, values: &[] },
6076 Field { name: "model", kind: "string", required: false, values: &[] },
6077 Field { name: "parent_id", kind: "string", required: false, values: &[] },
6078 Field { name: "prompt", kind: "string", required: false, values: &[] },
6079 Field { name: "pull", kind: "integer", required: false, values: &[] },
6080 Field { name: "task", kind: "string", required: false, values: &[] },
6081 Field { name: "title", kind: "string", required: false, values: &[] },
6082 ],
6083 },
6084 Operation {
6085 id: "update_session",
6086 method: "PATCH",
6087 path: "/repos/{owner}/{name}/sessions/{id}",
6088 tag: "Sessions",
6089 summary: "Update a session",
6090 scope: Some("pull_requests:write"),
6091 params: &[
6092 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6093 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6094 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6095 ],
6096 body: &[
6097 Field { name: "agent_type", kind: "string", required: false, values: &[] },
6098 Field { name: "branch", kind: "string", required: false, values: &[] },
6099 Field { name: "head_commit", kind: "string", required: false, values: &[] },
6100 Field { name: "item", kind: "integer", required: false, values: &[] },
6101 Field { name: "model", kind: "string", required: false, values: &[] },
6102 Field { name: "prompt", kind: "string", required: false, values: &[] },
6103 Field { name: "pull", kind: "integer", required: false, values: &[] },
6104 Field { name: "result", kind: "string", required: false, values: &[] },
6105 Field { name: "task", kind: "string", required: false, values: &[] },
6106 Field { name: "title", kind: "string", required: false, values: &[] },
6107 ],
6108 },
6109 Operation {
6110 id: "configure_sso",
6111 method: "PUT",
6112 path: "/workspaces/{workspace}/sso",
6113 tag: "Single sign-on",
6114 summary: "Set up or change a workspace's single sign-on",
6115 scope: Some("workspace:admin"),
6116 params: &[
6117 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6118 ],
6119 body: &[
6120 Field { name: "allow_join", kind: "boolean", required: false, values: &[] },
6121 Field { name: "authorization_url", kind: "string", required: false, values: &[] },
6122 Field { name: "certificate", kind: "string", required: false, values: &[] },
6123 Field { name: "client_id", kind: "string", required: false, values: &[] },
6124 Field { name: "client_secret", kind: "string", required: false, values: &[] },
6125 Field { name: "email_claim", kind: "string", required: false, values: &[] },
6126 Field { name: "idp_entity_id", kind: "string", required: false, values: &[] },
6127 Field { name: "idp_sso_url", kind: "string", required: false, values: &[] },
6128 Field { name: "issuer", kind: "string", required: false, values: &[] },
6129 Field { name: "join_domains", kind: "array", required: false, values: &[] },
6130 Field { name: "protocol", kind: "string", required: true, values: &["oidc", "oauth2", "saml"] },
6131 Field { name: "scopes", kind: "string", required: false, values: &[] },
6132 Field { name: "subject_claim", kind: "string", required: false, values: &[] },
6133 Field { name: "token_url", kind: "string", required: false, values: &[] },
6134 Field { name: "userinfo_url", kind: "string", required: false, values: &[] },
6135 ],
6136 },
6137 Operation {
6138 id: "delete_sso",
6139 method: "DELETE",
6140 path: "/workspaces/{workspace}/sso",
6141 tag: "Single sign-on",
6142 summary: "Remove a workspace's single sign-on",
6143 scope: Some("workspace:admin"),
6144 params: &[
6145 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6146 ],
6147 body: &[],
6148 },
6149 Operation {
6150 id: "disable_scim",
6151 method: "DELETE",
6152 path: "/workspaces/{workspace}/sso/scim",
6153 tag: "Single sign-on",
6154 summary: "Turn off SCIM",
6155 scope: Some("workspace:admin"),
6156 params: &[
6157 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6158 ],
6159 body: &[],
6160 },
6161 Operation {
6162 id: "enable_scim",
6163 method: "POST",
6164 path: "/workspaces/{workspace}/sso/scim",
6165 tag: "Single sign-on",
6166 summary: "Turn on SCIM, or make a new SCIM token",
6167 scope: Some("workspace:admin"),
6168 params: &[
6169 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6170 ],
6171 body: &[],
6172 },
6173 Operation {
6174 id: "get_sso",
6175 method: "GET",
6176 path: "/workspaces/{workspace}/sso",
6177 tag: "Single sign-on",
6178 summary: "Get a workspace's single sign-on",
6179 scope: Some("workspace:read"),
6180 params: &[
6181 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6182 ],
6183 body: &[],
6184 },
6185 Operation {
6186 id: "list_sso_identities",
6187 method: "GET",
6188 path: "/workspaces/{workspace}/sso/identities",
6189 tag: "Single sign-on",
6190 summary: "List the people linked through single sign-on",
6191 scope: Some("access:read"),
6192 params: &[
6193 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6194 ],
6195 body: &[],
6196 },
6197 Operation {
6198 id: "set_sso_required",
6199 method: "PUT",
6200 path: "/workspaces/{workspace}/sso/required",
6201 tag: "Single sign-on",
6202 summary: "Require single sign-on, or stop",
6203 scope: Some("workspace:admin"),
6204 params: &[
6205 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6206 ],
6207 body: &[
6208 Field { name: "required", kind: "boolean", required: true, values: &[] },
6209 ],
6210 },
6211 Operation {
6212 id: "unlink_sso_identity",
6213 method: "DELETE",
6214 path: "/workspaces/{workspace}/sso/identities/{username}",
6215 tag: "Single sign-on",
6216 summary: "Unlink someone from single sign-on",
6217 scope: Some("access:admin"),
6218 params: &[
6219 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6220 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6221 ],
6222 body: &[],
6223 },
6224 Operation {
6225 id: "check_starred",
6226 method: "GET",
6227 path: "/user/starred/{owner}/{name}",
6228 tag: "Stars",
6229 summary: "Check whether you starred a repository",
6230 scope: Some("account:read"),
6231 params: &[
6232 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6233 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6234 ],
6235 body: &[],
6236 },
6237 Operation {
6238 id: "list_stargazers",
6239 method: "GET",
6240 path: "/repos/{owner}/{name}/stargazers",
6241 tag: "Stars",
6242 summary: "List who starred a repository",
6243 scope: Some("repo:read"),
6244 params: &[
6245 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6246 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6247 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
6248 ],
6249 body: &[],
6250 },
6251 Operation {
6252 id: "list_starred",
6253 method: "GET",
6254 path: "/user/starred",
6255 tag: "Stars",
6256 summary: "List repositories you starred",
6257 scope: Some("account:read"),
6258 params: &[],
6259 body: &[],
6260 },
6261 Operation {
6262 id: "star_repo",
6263 method: "PUT",
6264 path: "/user/starred/{owner}/{name}",
6265 tag: "Stars",
6266 summary: "Star a repository",
6267 scope: Some("account:write"),
6268 params: &[
6269 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6270 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6271 ],
6272 body: &[],
6273 },
6274 Operation {
6275 id: "unstar_repo",
6276 method: "DELETE",
6277 path: "/user/starred/{owner}/{name}",
6278 tag: "Stars",
6279 summary: "Unstar a repository",
6280 scope: Some("account:write"),
6281 params: &[
6282 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6283 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6284 ],
6285 body: &[],
6286 },
6287 Operation {
6288 id: "compare_dependencies",
6289 method: "GET",
6290 path: "/repos/{owner}/{name}/dependency-graph/compare/{basehead}",
6291 tag: "Supply chain",
6292 summary: "Compare dependencies",
6293 scope: Some("security:read"),
6294 params: &[
6295 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6296 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6297 Param { name: "basehead", location: In::Path, kind: "string", required: true, values: &[] },
6298 ],
6299 body: &[],
6300 },
6301 Operation {
6302 id: "get_dependency_graph",
6303 method: "GET",
6304 path: "/repos/{owner}/{name}/dependency-graph",
6305 tag: "Supply chain",
6306 summary: "Get the dependency graph",
6307 scope: Some("security:read"),
6308 params: &[
6309 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6310 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6311 ],
6312 body: &[],
6313 },
6314 Operation {
6315 id: "get_sbom",
6316 method: "GET",
6317 path: "/repos/{owner}/{name}/dependency-graph/sbom",
6318 tag: "Supply chain",
6319 summary: "Export an SBOM",
6320 scope: Some("security:read"),
6321 params: &[
6322 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6323 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6324 ],
6325 body: &[],
6326 },
6327 Operation {
6328 id: "get_vulnerability_alert",
6329 method: "GET",
6330 path: "/repos/{owner}/{name}/vulnerability-alerts/{id}",
6331 tag: "Supply chain",
6332 summary: "Get a vulnerability alert",
6333 scope: Some("security:read"),
6334 params: &[
6335 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6336 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6337 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6338 ],
6339 body: &[],
6340 },
6341 Operation {
6342 id: "list_vulnerability_alerts",
6343 method: "GET",
6344 path: "/repos/{owner}/{name}/vulnerability-alerts",
6345 tag: "Supply chain",
6346 summary: "List vulnerability alerts",
6347 scope: Some("security:read"),
6348 params: &[
6349 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6350 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6351 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
6352 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
6353 Param { name: "ecosystem", location: In::Query, kind: "string", required: false, values: &[] },
6354 Param { name: "package", location: In::Query, kind: "string", required: false, values: &[] },
6355 ],
6356 body: &[],
6357 },
6358 Operation {
6359 id: "list_vulnerability_alerts_for_workspace",
6360 method: "GET",
6361 path: "/workspaces/{workspace}/vulnerability-alerts",
6362 tag: "Supply chain",
6363 summary: "List vulnerability alerts for a workspace",
6364 scope: Some("security:read"),
6365 params: &[
6366 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6367 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
6368 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
6369 Param { name: "ecosystem", location: In::Query, kind: "string", required: false, values: &[] },
6370 Param { name: "package", location: In::Query, kind: "string", required: false, values: &[] },
6371 ],
6372 body: &[],
6373 },
6374 Operation {
6375 id: "rerun_dependency_review",
6376 method: "POST",
6377 path: "/repos/{owner}/{name}/pulls/{number}/dependency-review/rerun",
6378 tag: "Supply chain",
6379 summary: "Re-run dependency review",
6380 scope: Some("security:write"),
6381 params: &[
6382 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6383 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6384 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6385 ],
6386 body: &[],
6387 },
6388 Operation {
6389 id: "update_vulnerability_alert",
6390 method: "PATCH",
6391 path: "/repos/{owner}/{name}/vulnerability-alerts/{id}",
6392 tag: "Supply chain",
6393 summary: "Dismiss or reopen a vulnerability alert",
6394 scope: Some("security:write"),
6395 params: &[
6396 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6397 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6398 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6399 ],
6400 body: &[
6401 Field { name: "comment", kind: "string", required: false, values: &[] },
6402 Field { name: "reason", kind: "string", required: false, values: &["fix_started", "no_bandwidth", "tolerable_risk", "inaccurate", "not_used"] },
6403 Field { name: "state", kind: "string", required: true, values: &["open", "dismissed"] },
6404 ],
6405 },
6406 Operation {
6407 id: "create_team",
6408 method: "POST",
6409 path: "/workspaces/{workspace}/teams",
6410 tag: "Teams",
6411 summary: "Create a team",
6412 scope: Some("workspace:admin"),
6413 params: &[
6414 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6415 ],
6416 body: &[
6417 Field { name: "description", kind: "string", required: false, values: &[] },
6418 Field { name: "members", kind: "array", required: false, values: &[] },
6419 Field { name: "name", kind: "string", required: true, values: &[] },
6420 Field { name: "notify", kind: "boolean", required: false, values: &[] },
6421 Field { name: "parent", kind: "string", required: false, values: &[] },
6422 Field { name: "slug", kind: "string", required: false, values: &[] },
6423 Field { name: "visibility", kind: "string", required: false, values: &["visible", "secret"] },
6424 ],
6425 },
6426 Operation {
6427 id: "delete_team",
6428 method: "DELETE",
6429 path: "/workspaces/{workspace}/teams/{team}",
6430 tag: "Teams",
6431 summary: "Delete a team",
6432 scope: Some("workspace:admin"),
6433 params: &[
6434 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6435 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6436 ],
6437 body: &[],
6438 },
6439 Operation {
6440 id: "get_team",
6441 method: "GET",
6442 path: "/workspaces/{workspace}/teams/{team}",
6443 tag: "Teams",
6444 summary: "Get a team",
6445 scope: Some("workspace:read"),
6446 params: &[
6447 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6448 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6449 ],
6450 body: &[],
6451 },
6452 Operation {
6453 id: "list_child_teams",
6454 method: "GET",
6455 path: "/workspaces/{workspace}/teams/{team}/teams",
6456 tag: "Teams",
6457 summary: "List child teams",
6458 scope: Some("workspace:read"),
6459 params: &[
6460 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6461 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6462 ],
6463 body: &[],
6464 },
6465 Operation {
6466 id: "list_team_members",
6467 method: "GET",
6468 path: "/workspaces/{workspace}/teams/{team}/members",
6469 tag: "Teams",
6470 summary: "List a team's members",
6471 scope: Some("workspace:read"),
6472 params: &[
6473 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6474 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6475 Param { name: "include_child_teams", location: In::Query, kind: "boolean", required: false, values: &[] },
6476 ],
6477 body: &[],
6478 },
6479 Operation {
6480 id: "list_team_repos",
6481 method: "GET",
6482 path: "/workspaces/{workspace}/teams/{team}/repos",
6483 tag: "Teams",
6484 summary: "List a team's repositories",
6485 scope: Some("workspace:read"),
6486 params: &[
6487 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6488 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6489 ],
6490 body: &[],
6491 },
6492 Operation {
6493 id: "list_teams",
6494 method: "GET",
6495 path: "/workspaces/{workspace}/teams",
6496 tag: "Teams",
6497 summary: "List teams",
6498 scope: Some("workspace:read"),
6499 params: &[
6500 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6501 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
6502 ],
6503 body: &[],
6504 },
6505 Operation {
6506 id: "list_user_teams",
6507 method: "GET",
6508 path: "/workspaces/{workspace}/members/{username}/teams",
6509 tag: "Teams",
6510 summary: "List someone's teams",
6511 scope: Some("workspace:read"),
6512 params: &[
6513 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6514 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6515 ],
6516 body: &[],
6517 },
6518 Operation {
6519 id: "remove_team_member",
6520 method: "DELETE",
6521 path: "/workspaces/{workspace}/teams/{team}/members/{username}",
6522 tag: "Teams",
6523 summary: "Remove a team member",
6524 scope: Some("workspace:admin"),
6525 params: &[
6526 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6527 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6528 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6529 ],
6530 body: &[],
6531 },
6532 Operation {
6533 id: "remove_team_repo",
6534 method: "DELETE",
6535 path: "/workspaces/{workspace}/teams/{team}/repos/{repo}",
6536 tag: "Teams",
6537 summary: "Remove a team from a repository",
6538 scope: Some("access:admin"),
6539 params: &[
6540 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6541 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6542 Param { name: "repo", location: In::Path, kind: "string", required: true, values: &[] },
6543 ],
6544 body: &[],
6545 },
6546 Operation {
6547 id: "set_team_member",
6548 method: "PUT",
6549 path: "/workspaces/{workspace}/teams/{team}/members/{username}",
6550 tag: "Teams",
6551 summary: "Add or change a team member",
6552 scope: Some("workspace:admin"),
6553 params: &[
6554 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6555 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6556 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6557 ],
6558 body: &[
6559 Field { name: "role", kind: "string", required: false, values: &["member", "maintainer"] },
6560 ],
6561 },
6562 Operation {
6563 id: "set_team_repo",
6564 method: "PUT",
6565 path: "/workspaces/{workspace}/teams/{team}/repos/{repo}",
6566 tag: "Teams",
6567 summary: "Give a team a role on a repository",
6568 scope: Some("access:admin"),
6569 params: &[
6570 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6571 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6572 Param { name: "repo", location: In::Path, kind: "string", required: true, values: &[] },
6573 ],
6574 body: &[
6575 Field { name: "role", kind: "string", required: true, values: &["read", "triage", "write", "maintain", "admin"] },
6576 ],
6577 },
6578 Operation {
6579 id: "set_team_review_assignment",
6580 method: "PUT",
6581 path: "/workspaces/{workspace}/teams/{team}/review_assignment",
6582 tag: "Teams",
6583 summary: "Set a team's review assignment",
6584 scope: Some("workspace:admin"),
6585 params: &[
6586 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6587 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6588 ],
6589 body: &[
6590 Field { name: "algorithm", kind: "string", required: false, values: &["round_robin", "load_balance"] },
6591 Field { name: "busy_at", kind: "integer", required: false, values: &[] },
6592 Field { name: "count", kind: "integer", required: false, values: &[] },
6593 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
6594 Field { name: "excluded", kind: "array", required: false, values: &[] },
6595 Field { name: "include_child_teams", kind: "boolean", required: false, values: &[] },
6596 Field { name: "notify_team", kind: "boolean", required: false, values: &[] },
6597 Field { name: "skip_busy", kind: "boolean", required: false, values: &[] },
6598 ],
6599 },
6600 Operation {
6601 id: "update_team",
6602 method: "PATCH",
6603 path: "/workspaces/{workspace}/teams/{team}",
6604 tag: "Teams",
6605 summary: "Update a team",
6606 scope: Some("workspace:admin"),
6607 params: &[
6608 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6609 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6610 ],
6611 body: &[
6612 Field { name: "description", kind: "string", required: false, values: &[] },
6613 Field { name: "name", kind: "string", required: false, values: &[] },
6614 Field { name: "notify", kind: "boolean", required: false, values: &[] },
6615 Field { name: "parent", kind: "string", required: false, values: &[] },
6616 Field { name: "review_assignment", kind: "object", required: false, values: &[] },
6617 Field { name: "slug", kind: "string", required: false, values: &[] },
6618 Field { name: "visibility", kind: "string", required: false, values: &["visible", "secret"] },
6619 ],
6620 },
6621 Operation {
6622 id: "create_webhook",
6623 method: "POST",
6624 path: "/repos/{owner}/{name}/hooks",
6625 tag: "Webhooks",
6626 summary: "Create a webhook",
6627 scope: Some("webhooks:admin"),
6628 params: &[
6629 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6630 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6631 ],
6632 body: &[
6633 Field { name: "events", kind: "array", required: false, values: &[] },
6634 Field { name: "secret", kind: "string", required: false, values: &[] },
6635 Field { name: "url", kind: "string", required: true, values: &[] },
6636 Field { name: "workspace", kind: "string", required: false, values: &[] },
6637 ],
6638 },
6639 Operation {
6640 id: "create_webhook_for_workspace",
6641 method: "POST",
6642 path: "/workspaces/{workspace}/hooks",
6643 tag: "Webhooks",
6644 summary: "Create a webhook for a workspace",
6645 scope: Some("webhooks:admin"),
6646 params: &[
6647 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6648 ],
6649 body: &[
6650 Field { name: "events", kind: "array", required: false, values: &[] },
6651 Field { name: "secret", kind: "string", required: false, values: &[] },
6652 Field { name: "url", kind: "string", required: true, values: &[] },
6653 ],
6654 },
6655 Operation {
6656 id: "delete_webhook",
6657 method: "DELETE",
6658 path: "/repos/{owner}/{name}/hooks/{id}",
6659 tag: "Webhooks",
6660 summary: "Delete a webhook",
6661 scope: Some("webhooks:admin"),
6662 params: &[
6663 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6664 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6665 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6666 ],
6667 body: &[
6668 Field { name: "workspace", kind: "string", required: false, values: &[] },
6669 ],
6670 },
6671 Operation {
6672 id: "delete_webhook_for_workspace",
6673 method: "DELETE",
6674 path: "/workspaces/{workspace}/hooks/{id}",
6675 tag: "Webhooks",
6676 summary: "Delete a webhook for a workspace",
6677 scope: Some("webhooks:admin"),
6678 params: &[
6679 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6680 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6681 ],
6682 body: &[],
6683 },
6684 Operation {
6685 id: "list_webhook_deliveries",
6686 method: "GET",
6687 path: "/repos/{owner}/{name}/hooks/{id}/deliveries",
6688 tag: "Webhooks",
6689 summary: "List webhook deliveries",
6690 scope: Some("webhooks:read"),
6691 params: &[
6692 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6693 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6694 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6695 ],
6696 body: &[],
6697 },
6698 Operation {
6699 id: "list_webhook_deliveries_for_workspace",
6700 method: "GET",
6701 path: "/workspaces/{workspace}/hooks/{id}/deliveries",
6702 tag: "Webhooks",
6703 summary: "List webhook deliveries for a workspace",
6704 scope: Some("webhooks:read"),
6705 params: &[
6706 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6707 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6708 ],
6709 body: &[],
6710 },
6711 Operation {
6712 id: "list_webhooks",
6713 method: "GET",
6714 path: "/repos/{owner}/{name}/hooks",
6715 tag: "Webhooks",
6716 summary: "List webhooks",
6717 scope: Some("webhooks:read"),
6718 params: &[
6719 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6720 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6721 ],
6722 body: &[],
6723 },
6724 Operation {
6725 id: "list_webhooks_for_workspace",
6726 method: "GET",
6727 path: "/workspaces/{workspace}/hooks",
6728 tag: "Webhooks",
6729 summary: "List webhooks for a workspace",
6730 scope: Some("webhooks:read"),
6731 params: &[
6732 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6733 ],
6734 body: &[],
6735 },
6736 Operation {
6737 id: "ping_webhook",
6738 method: "POST",
6739 path: "/repos/{owner}/{name}/hooks/{id}/pings",
6740 tag: "Webhooks",
6741 summary: "Ping a webhook",
6742 scope: Some("webhooks:admin"),
6743 params: &[
6744 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6745 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6746 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6747 ],
6748 body: &[
6749 Field { name: "workspace", kind: "string", required: false, values: &[] },
6750 ],
6751 },
6752 Operation {
6753 id: "ping_webhook_for_workspace",
6754 method: "POST",
6755 path: "/workspaces/{workspace}/hooks/{id}/pings",
6756 tag: "Webhooks",
6757 summary: "Ping a webhook for a workspace",
6758 scope: Some("webhooks:admin"),
6759 params: &[
6760 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6761 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6762 ],
6763 body: &[],
6764 },
6765 Operation {
6766 id: "redeliver_webhook",
6767 method: "POST",
6768 path: "/repos/{owner}/{name}/hooks/{id}/deliveries/{delivery}/redeliver",
6769 tag: "Webhooks",
6770 summary: "Redeliver a webhook delivery",
6771 scope: Some("webhooks:admin"),
6772 params: &[
6773 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6774 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6775 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6776 Param { name: "delivery", location: In::Path, kind: "string", required: true, values: &[] },
6777 ],
6778 body: &[
6779 Field { name: "workspace", kind: "string", required: false, values: &[] },
6780 ],
6781 },
6782 Operation {
6783 id: "redeliver_webhook_for_workspace",
6784 method: "POST",
6785 path: "/workspaces/{workspace}/hooks/{id}/deliveries/{delivery}/redeliver",
6786 tag: "Webhooks",
6787 summary: "Redeliver a webhook delivery for a workspace",
6788 scope: Some("webhooks:admin"),
6789 params: &[
6790 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6791 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6792 Param { name: "delivery", location: In::Path, kind: "string", required: true, values: &[] },
6793 ],
6794 body: &[],
6795 },
6796 Operation {
6797 id: "update_webhook",
6798 method: "PATCH",
6799 path: "/repos/{owner}/{name}/hooks/{id}",
6800 tag: "Webhooks",
6801 summary: "Update a webhook",
6802 scope: Some("webhooks:admin"),
6803 params: &[
6804 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6805 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6806 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6807 ],
6808 body: &[
6809 Field { name: "active", kind: "boolean", required: false, values: &[] },
6810 Field { name: "events", kind: "array", required: false, values: &[] },
6811 Field { name: "url", kind: "string", required: false, values: &[] },
6812 Field { name: "workspace", kind: "string", required: false, values: &[] },
6813 ],
6814 },
6815 Operation {
6816 id: "update_webhook_for_workspace",
6817 method: "PATCH",
6818 path: "/workspaces/{workspace}/hooks/{id}",
6819 tag: "Webhooks",
6820 summary: "Update a webhook for a workspace",
6821 scope: Some("webhooks:admin"),
6822 params: &[
6823 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6824 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6825 ],
6826 body: &[
6827 Field { name: "active", kind: "boolean", required: false, values: &[] },
6828 Field { name: "events", kind: "array", required: false, values: &[] },
6829 Field { name: "url", kind: "string", required: false, values: &[] },
6830 ],
6831 },
6832 Operation {
6833 id: "add_work_item_comment",
6834 method: "POST",
6835 path: "/workspaces/{workspace}/work/{number}/comments",
6836 tag: "Work items",
6837 summary: "Comment on a work item",
6838 scope: Some("work:write"),
6839 params: &[
6840 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6841 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6842 ],
6843 body: &[
6844 Field { name: "body", kind: "string", required: true, values: &[] },
6845 Field { name: "repo", kind: "string", required: false, values: &[] },
6846 ],
6847 },
6848 Operation {
6849 id: "add_work_item_labels",
6850 method: "POST",
6851 path: "/workspaces/{workspace}/work/{number}/labels",
6852 tag: "Work items",
6853 summary: "Add labels to a work item",
6854 scope: Some("work:write"),
6855 params: &[
6856 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6857 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6858 ],
6859 body: &[
6860 Field { name: "labels", kind: "array", required: true, values: &[] },
6861 Field { name: "repo", kind: "string", required: false, values: &[] },
6862 ],
6863 },
6864 Operation {
6865 id: "claim_new_work_item",
6866 method: "POST",
6867 path: "/workspaces/{workspace}/claims",
6868 tag: "Work items",
6869 summary: "Open a work item and claim it",
6870 scope: Some("work:write"),
6871 params: &[
6872 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6873 ],
6874 body: &[
6875 Field { name: "body", kind: "string", required: false, values: &[] },
6876 Field { name: "note", kind: "string", required: false, values: &[] },
6877 Field { name: "number", kind: "integer", required: false, values: &[] },
6878 Field { name: "repo", kind: "string", required: false, values: &[] },
6879 Field { name: "session_id", kind: "string", required: false, values: &[] },
6880 Field { name: "title", kind: "string", required: false, values: &[] },
6881 Field { name: "ttl_minutes", kind: "integer", required: false, values: &[] },
6882 ],
6883 },
6884 Operation {
6885 id: "claim_work_item",
6886 method: "POST",
6887 path: "/workspaces/{workspace}/work/{number}/claim",
6888 tag: "Work items",
6889 summary: "Claim a work item",
6890 scope: Some("work:write"),
6891 params: &[
6892 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6893 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6894 ],
6895 body: &[
6896 Field { name: "body", kind: "string", required: false, values: &[] },
6897 Field { name: "note", kind: "string", required: false, values: &[] },
6898 Field { name: "repo", kind: "string", required: false, values: &[] },
6899 Field { name: "session_id", kind: "string", required: false, values: &[] },
6900 Field { name: "title", kind: "string", required: false, values: &[] },
6901 Field { name: "ttl_minutes", kind: "integer", required: false, values: &[] },
6902 ],
6903 },
6904 Operation {
6905 id: "close_work_item",
6906 method: "POST",
6907 path: "/workspaces/{workspace}/work/{number}/close",
6908 tag: "Work items",
6909 summary: "Close a work item",
6910 scope: Some("work:write"),
6911 params: &[
6912 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6913 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6914 ],
6915 body: &[
6916 Field { name: "commit", kind: "string", required: false, values: &[] },
6917 Field { name: "reason", kind: "string", required: false, values: &["completed", "not_planned"] },
6918 Field { name: "repo", kind: "string", required: false, values: &[] },
6919 ],
6920 },
6921 Operation {
6922 id: "delete_work_item_comment",
6923 method: "DELETE",
6924 path: "/workspaces/{workspace}/work/comments/{comment_id}",
6925 tag: "Work items",
6926 summary: "Delete a work item comment",
6927 scope: Some("work:write"),
6928 params: &[
6929 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6930 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
6931 ],
6932 body: &[
6933 Field { name: "repo", kind: "string", required: false, values: &[] },
6934 ],
6935 },
6936 Operation {
6937 id: "edit_work_item_comment",
6938 method: "PATCH",
6939 path: "/workspaces/{workspace}/work/comments/{comment_id}",
6940 tag: "Work items",
6941 summary: "Edit a work item comment",
6942 scope: Some("work:write"),
6943 params: &[
6944 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6945 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
6946 ],
6947 body: &[
6948 Field { name: "body", kind: "string", required: true, values: &[] },
6949 Field { name: "repo", kind: "string", required: false, values: &[] },
6950 ],
6951 },
6952 Operation {
6953 id: "get_work",
6954 method: "GET",
6955 path: "/workspaces/{workspace}/work/{number}/work",
6956 tag: "Work items",
6957 summary: "Get a work item's work context",
6958 scope: Some("work:read"),
6959 params: &[
6960 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6961 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6962 ],
6963 body: &[],
6964 },
6965 Operation {
6966 id: "get_work_item",
6967 method: "GET",
6968 path: "/workspaces/{workspace}/work/{number}",
6969 tag: "Work items",
6970 summary: "Get a work item",
6971 scope: Some("work:read"),
6972 params: &[
6973 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6974 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6975 ],
6976 body: &[],
6977 },
6978 Operation {
6979 id: "hand_off_work_item",
6980 method: "POST",
6981 path: "/workspaces/{workspace}/work/{number}/handoff",
6982 tag: "Work items",
6983 summary: "Hand off a work item",
6984 scope: Some("work:write"),
6985 params: &[
6986 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6987 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
6988 ],
6989 body: &[
6990 Field { name: "note", kind: "string", required: true, values: &[] },
6991 Field { name: "repo", kind: "string", required: false, values: &[] },
6992 Field { name: "session_id", kind: "string", required: false, values: &[] },
6993 Field { name: "to", kind: "string", required: false, values: &[] },
6994 ],
6995 },
6996 Operation {
6997 id: "import_work_items",
6998 method: "POST",
6999 path: "/workspaces/{workspace}/work/import",
7000 tag: "Work items",
7001 summary: "Import a work item",
7002 scope: Some("work:write"),
7003 params: &[
7004 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7005 ],
7006 body: &[
7007 Field { name: "reference", kind: "string", required: true, values: &[] },
7008 Field { name: "repo", kind: "string", required: false, values: &[] },
7009 Field { name: "targets", kind: "array", required: false, values: &[] },
7010 ],
7011 },
7012 Operation {
7013 id: "link_work_item",
7014 method: "POST",
7015 path: "/workspaces/{workspace}/work/{number}/links",
7016 tag: "Work items",
7017 summary: "Link a repository to a work item",
7018 scope: Some("work:write"),
7019 params: &[
7020 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7021 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7022 ],
7023 body: &[
7024 Field { name: "repo", kind: "string", required: true, values: &[] },
7025 Field { name: "role", kind: "string", required: false, values: &["target", "touched"] },
7026 ],
7027 },
7028 Operation {
7029 id: "list_claims",
7030 method: "GET",
7031 path: "/workspaces/{workspace}/claims",
7032 tag: "Work items",
7033 summary: "List claims",
7034 scope: Some("work:read"),
7035 params: &[
7036 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7037 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "released", "expired", "handed_off"] },
7038 Param { name: "item", location: In::Query, kind: "integer", required: false, values: &[] },
7039 Param { name: "repo", location: In::Query, kind: "string", required: false, values: &[] },
7040 ],
7041 body: &[],
7042 },
7043 Operation {
7044 id: "list_repo_work_items",
7045 method: "GET",
7046 path: "/repos/{owner}/{name}/work",
7047 tag: "Work items",
7048 summary: "List a repository's work items",
7049 scope: Some("work:read"),
7050 params: &[
7051 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
7052 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
7053 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
7054 Param { name: "label", location: In::Query, kind: "string", required: false, values: &[] },
7055 Param { name: "milestone", location: In::Query, kind: "integer", required: false, values: &[] },
7056 Param { name: "assignee", location: In::Query, kind: "string", required: false, values: &[] },
7057 Param { name: "role", location: In::Query, kind: "string", required: false, values: &["origin", "target", "touched"] },
7058 ],
7059 body: &[],
7060 },
7061 Operation {
7062 id: "list_work_item_decisions",
7063 method: "GET",
7064 path: "/workspaces/{workspace}/work/{number}/decisions",
7065 tag: "Work items",
7066 summary: "List a work item's decisions",
7067 scope: Some("work:read"),
7068 params: &[
7069 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7070 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7071 ],
7072 body: &[],
7073 },
7074 Operation {
7075 id: "list_work_item_labels",
7076 method: "GET",
7077 path: "/workspaces/{workspace}/work/{number}/labels",
7078 tag: "Work items",
7079 summary: "List a work item's labels",
7080 scope: Some("work:read"),
7081 params: &[
7082 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7083 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7084 ],
7085 body: &[],
7086 },
7087 Operation {
7088 id: "list_work_item_links",
7089 method: "GET",
7090 path: "/workspaces/{workspace}/work/{number}/links",
7091 tag: "Work items",
7092 summary: "List a work item's repositories",
7093 scope: Some("work:read"),
7094 params: &[
7095 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7096 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7097 ],
7098 body: &[],
7099 },
7100 Operation {
7101 id: "list_work_items",
7102 method: "GET",
7103 path: "/workspaces/{workspace}/work",
7104 tag: "Work items",
7105 summary: "List a workspace's work items",
7106 scope: Some("work:read"),
7107 params: &[
7108 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7109 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
7110 Param { name: "label", location: In::Query, kind: "string", required: false, values: &[] },
7111 Param { name: "milestone", location: In::Query, kind: "integer", required: false, values: &[] },
7112 Param { name: "assignee", location: In::Query, kind: "string", required: false, values: &[] },
7113 Param { name: "repo", location: In::Query, kind: "string", required: false, values: &[] },
7114 Param { name: "role", location: In::Query, kind: "string", required: false, values: &["origin", "target", "touched"] },
7115 ],
7116 body: &[],
7117 },
7118 Operation {
7119 id: "open_work_item",
7120 method: "POST",
7121 path: "/workspaces/{workspace}/work",
7122 tag: "Work items",
7123 summary: "Open a work item",
7124 scope: Some("work:write"),
7125 params: &[
7126 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7127 ],
7128 body: &[
7129 Field { name: "body", kind: "string", required: false, values: &[] },
7130 Field { name: "labels", kind: "array", required: false, values: &[] },
7131 Field { name: "milestone", kind: "integer", required: false, values: &[] },
7132 Field { name: "repo", kind: "string", required: false, values: &[] },
7133 Field { name: "targets", kind: "array", required: false, values: &[] },
7134 Field { name: "title", kind: "string", required: true, values: &[] },
7135 ],
7136 },
7137 Operation {
7138 id: "react_to_work_item",
7139 method: "POST",
7140 path: "/workspaces/{workspace}/work/{number}/reactions",
7141 tag: "Work items",
7142 summary: "React to a work item",
7143 scope: Some("work:write"),
7144 params: &[
7145 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7146 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7147 ],
7148 body: &[
7149 Field { name: "comment_id", kind: "string", required: false, values: &[] },
7150 Field { name: "content", kind: "string", required: true, values: &["+1", "-1", "laugh", "hooray", "confused", "heart", "rocket", "eyes"] },
7151 Field { name: "remove", kind: "boolean", required: false, values: &[] },
7152 Field { name: "repo", kind: "string", required: false, values: &[] },
7153 ],
7154 },
7155 Operation {
7156 id: "release_claim",
7157 method: "POST",
7158 path: "/workspaces/{workspace}/work/{number}/release",
7159 tag: "Work items",
7160 summary: "Release a claim",
7161 scope: Some("work:write"),
7162 params: &[
7163 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7164 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7165 ],
7166 body: &[
7167 Field { name: "reason", kind: "string", required: false, values: &[] },
7168 Field { name: "repo", kind: "string", required: false, values: &[] },
7169 Field { name: "session_id", kind: "string", required: false, values: &[] },
7170 ],
7171 },
7172 Operation {
7173 id: "remove_work_item_label",
7174 method: "DELETE",
7175 path: "/workspaces/{workspace}/work/{number}/labels/{label}",
7176 tag: "Work items",
7177 summary: "Remove a label from a work item",
7178 scope: Some("work:write"),
7179 params: &[
7180 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7181 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7182 Param { name: "label", location: In::Path, kind: "string", required: true, values: &[] },
7183 ],
7184 body: &[
7185 Field { name: "labels", kind: "array", required: false, values: &[] },
7186 Field { name: "repo", kind: "string", required: false, values: &[] },
7187 ],
7188 },
7189 Operation {
7190 id: "remove_work_item_labels",
7191 method: "DELETE",
7192 path: "/workspaces/{workspace}/work/{number}/labels",
7193 tag: "Work items",
7194 summary: "Remove labels from a work item",
7195 scope: Some("work:write"),
7196 params: &[
7197 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7198 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7199 ],
7200 body: &[
7201 Field { name: "label", kind: "string", required: false, values: &[] },
7202 Field { name: "labels", kind: "array", required: false, values: &[] },
7203 Field { name: "repo", kind: "string", required: false, values: &[] },
7204 ],
7205 },
7206 Operation {
7207 id: "reopen_work_item",
7208 method: "POST",
7209 path: "/workspaces/{workspace}/work/{number}/reopen",
7210 tag: "Work items",
7211 summary: "Reopen a work item",
7212 scope: Some("work:write"),
7213 params: &[
7214 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7215 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7216 ],
7217 body: &[
7218 Field { name: "repo", kind: "string", required: false, values: &[] },
7219 ],
7220 },
7221 Operation {
7222 id: "resolve_ref",
7223 method: "GET",
7224 path: "/repos/{owner}/{name}/refs/{number}",
7225 tag: "Work items",
7226 summary: "Resolve a reference",
7227 scope: Some("work:read"),
7228 params: &[
7229 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
7230 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
7231 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7232 ],
7233 body: &[],
7234 },
7235 Operation {
7236 id: "resolve_ref_for_workspace",
7237 method: "GET",
7238 path: "/workspaces/{workspace}/refs/{number}",
7239 tag: "Work items",
7240 summary: "Resolve a reference for a workspace",
7241 scope: Some("work:read"),
7242 params: &[
7243 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7244 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7245 ],
7246 body: &[],
7247 },
7248 Operation {
7249 id: "set_work_item_labels",
7250 method: "PUT",
7251 path: "/workspaces/{workspace}/work/{number}/labels",
7252 tag: "Work items",
7253 summary: "Set a work item's labels",
7254 scope: Some("work:write"),
7255 params: &[
7256 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7257 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7258 ],
7259 body: &[
7260 Field { name: "labels", kind: "array", required: true, values: &[] },
7261 Field { name: "repo", kind: "string", required: false, values: &[] },
7262 ],
7263 },
7264 Operation {
7265 id: "unlink_work_item",
7266 method: "DELETE",
7267 path: "/workspaces/{workspace}/work/{number}/links",
7268 tag: "Work items",
7269 summary: "Unlink a repository from a work item",
7270 scope: Some("work:write"),
7271 params: &[
7272 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7273 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7274 ],
7275 body: &[
7276 Field { name: "repo", kind: "string", required: true, values: &[] },
7277 ],
7278 },
7279 Operation {
7280 id: "update_work_item",
7281 method: "PATCH",
7282 path: "/workspaces/{workspace}/work/{number}",
7283 tag: "Work items",
7284 summary: "Update a work item",
7285 scope: Some("work:write"),
7286 params: &[
7287 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7288 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7289 ],
7290 body: &[
7291 Field { name: "assignees", kind: "array", required: false, values: &[] },
7292 Field { name: "blocked_by", kind: "array", required: false, values: &[] },
7293 Field { name: "body", kind: "string", required: false, values: &[] },
7294 Field { name: "labels", kind: "array", required: false, values: &[] },
7295 Field { name: "milestone", kind: "integer", required: false, values: &[] },
7296 Field { name: "repo", kind: "string", required: false, values: &[] },
7297 Field { name: "title", kind: "string", required: false, values: &[] },
7298 ],
7299 },
7300 Operation {
7301 id: "upload_attachment",
7302 method: "POST",
7303 path: "/repos/{owner}/{name}/attachments",
7304 tag: "Work items",
7305 summary: "Upload an attachment",
7306 scope: Some("work:write"),
7307 params: &[
7308 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
7309 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
7310 ],
7311 body: &[
7312 Field { name: "content_type", kind: "string", required: false, values: &["image/png", "image/jpeg", "image/gif", "image/webp"] },
7313 Field { name: "data", kind: "string", required: true, values: &[] },
7314 Field { name: "name", kind: "string", required: true, values: &[] },
7315 ],
7316 },
7317 Operation {
7318 id: "upload_work_item_attachment",
7319 method: "POST",
7320 path: "/workspaces/{workspace}/work/{number}/attachments",
7321 tag: "Work items",
7322 summary: "Upload an attachment to a work item",
7323 scope: Some("work:write"),
7324 params: &[
7325 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7326 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
7327 ],
7328 body: &[
7329 Field { name: "content_type", kind: "string", required: false, values: &["image/png", "image/jpeg", "image/gif", "image/webp"] },
7330 Field { name: "data", kind: "string", required: true, values: &[] },
7331 Field { name: "name", kind: "string", required: true, values: &[] },
7332 Field { name: "repo", kind: "string", required: false, values: &[] },
7333 ],
7334 },
7335 Operation {
7336 id: "create_workspace",
7337 method: "POST",
7338 path: "/workspaces",
7339 tag: "Workspaces",
7340 summary: "Create a workspace",
7341 scope: Some("workspace:admin"),
7342 params: &[],
7343 body: &[
7344 Field { name: "name", kind: "string", required: false, values: &[] },
7345 Field { name: "slug", kind: "string", required: true, values: &[] },
7346 ],
7347 },
7348 Operation {
7349 id: "delete_workspace",
7350 method: "DELETE",
7351 path: "/workspaces/{workspace}",
7352 tag: "Workspaces",
7353 summary: "Delete a workspace",
7354 scope: Some("workspace:admin"),
7355 params: &[
7356 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7357 ],
7358 body: &[
7359 Field { name: "confirm", kind: "string", required: true, values: &[] },
7360 ],
7361 },
7362 Operation {
7363 id: "get_workspace",
7364 method: "GET",
7365 path: "/workspaces/{workspace}",
7366 tag: "Workspaces",
7367 summary: "Get a workspace",
7368 scope: Some("workspace:read"),
7369 params: &[
7370 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7371 ],
7372 body: &[],
7373 },
7374 Operation {
7375 id: "get_workspace_activity",
7376 method: "GET",
7377 path: "/workspaces/{workspace}/activity",
7378 tag: "Workspaces",
7379 summary: "Get a workspace's activity",
7380 scope: Some("repo:read"),
7381 params: &[
7382 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7383 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
7384 Param { name: "until", location: In::Query, kind: "string", required: false, values: &[] },
7385 Param { name: "kinds", location: In::Query, kind: "array", required: false, values: &[] },
7386 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
7387 ],
7388 body: &[],
7389 },
7390 Operation {
7391 id: "update_workspace",
7392 method: "PATCH",
7393 path: "/workspaces/{workspace}",
7394 tag: "Workspaces",
7395 summary: "Update a workspace",
7396 scope: Some("workspace:admin"),
7397 params: &[
7398 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
7399 ],
7400 body: &[
7401 Field { name: "base_permission", kind: "string", required: false, values: &["none", "read", "write", "admin"] },
7402 Field { name: "description", kind: "string", required: false, values: &[] },
7403 Field { name: "members_can_change_repo_visibility", kind: "boolean", required: false, values: &[] },
7404 Field { name: "members_can_create_private_repositories", kind: "boolean", required: false, values: &[] },
7405 Field { name: "members_can_create_public_repositories", kind: "boolean", required: false, values: &[] },
7406 Field { name: "members_can_delete_repositories", kind: "boolean", required: false, values: &[] },
7407 Field { name: "members_can_invite_outside_collaborators", kind: "boolean", required: false, values: &[] },
7408 Field { name: "name", kind: "string", required: false, values: &[] },
7409 Field { name: "team_creation", kind: "string", required: false, values: &["members", "owners"] },
7410 Field { name: "two_factor_requirement_enabled", kind: "boolean", required: false, values: &[] },
7411 ],
7412 },
7413];