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.

g1t.sh
6,600 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: "accept_repo_invitation",
10 method: "PATCH",
11 path: "/user/repository_invitations/{id}",
12 tag: "Access",
13 summary: "Accept a repository invitation",
14 scope: Some("account:write"),
15 params: &[
16 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
17 ],
18 body: &[],
19 },
20 Operation {
21 id: "add_collaborator",
22 method: "POST",
23 path: "/repos/{owner}/{name}/collaborators",
24 tag: "Access",
25 summary: "Add a collaborator",
26 scope: Some("access:admin"),
27 params: &[
28 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
29 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
30 ],
31 body: &[
32 Field { name: "invitee", kind: "string", required: true, values: &[] },
33 Field { name: "role", kind: "string", required: true, values: &["read", "triage", "write", "maintain", "admin"] },
34 ],
35 },
36 Operation {
37 id: "create_deploy_key",
38 method: "POST",
39 path: "/repos/{owner}/{name}/keys",
40 tag: "Access",
41 summary: "Create a deploy key",
42 scope: Some("access:admin"),
43 params: &[
44 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
45 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
46 ],
47 body: &[
48 Field { name: "key", kind: "string", required: true, values: &[] },
49 Field { name: "read_only", kind: "boolean", required: false, values: &[] },
50 Field { name: "title", kind: "string", required: false, values: &[] },
51 ],
52 },
53 Operation {
54 id: "decline_repo_invitation",
55 method: "DELETE",
56 path: "/user/repository_invitations/{id}",
57 tag: "Access",
58 summary: "Decline a repository invitation",
59 scope: Some("account:write"),
60 params: &[
61 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
62 ],
63 body: &[],
64 },
65 Operation {
66 id: "delete_deploy_key",
67 method: "DELETE",
68 path: "/repos/{owner}/{name}/keys/{id}",
69 tag: "Access",
70 summary: "Delete a deploy key",
71 scope: Some("access:admin"),
72 params: &[
73 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
74 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
75 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
76 ],
77 body: &[],
78 },
79 Operation {
80 id: "get_collaborator_permission",
81 method: "GET",
82 path: "/repos/{owner}/{name}/collaborators/{username}/permission",
83 tag: "Access",
84 summary: "Get someone's permission",
85 scope: Some("access:read"),
86 params: &[
87 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
88 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
89 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
90 ],
91 body: &[],
92 },
93 Operation {
94 id: "get_deploy_key",
95 method: "GET",
96 path: "/repos/{owner}/{name}/keys/{id}",
97 tag: "Access",
98 summary: "Get a deploy key",
99 scope: Some("access:read"),
100 params: &[
101 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
102 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
103 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
104 ],
105 body: &[],
106 },
107 Operation {
108 id: "list_collaborators",
109 method: "GET",
110 path: "/repos/{owner}/{name}/collaborators",
111 tag: "Access",
112 summary: "List who has access",
113 scope: Some("access:read"),
114 params: &[
115 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
116 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
117 ],
118 body: &[],
119 },
120 Operation {
121 id: "list_deploy_keys",
122 method: "GET",
123 path: "/repos/{owner}/{name}/keys",
124 tag: "Access",
125 summary: "List deploy keys",
126 scope: Some("access:read"),
127 params: &[
128 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
129 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
130 ],
131 body: &[],
132 },
133 Operation {
134 id: "list_my_repo_invitations",
135 method: "GET",
136 path: "/user/repository_invitations",
137 tag: "Access",
138 summary: "List your repository invitations",
139 scope: Some("account:read"),
140 params: &[],
141 body: &[],
142 },
143 Operation {
144 id: "list_outside_collaborators",
145 method: "GET",
146 path: "/workspaces/{workspace}/outside_collaborators",
147 tag: "Access",
148 summary: "List outside collaborators",
149 scope: Some("access:read"),
150 params: &[
151 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
152 ],
153 body: &[],
154 },
155 Operation {
156 id: "list_repo_invitations",
157 method: "GET",
158 path: "/repos/{owner}/{name}/invitations",
159 tag: "Access",
160 summary: "List a repository's invitations",
161 scope: Some("access:read"),
162 params: &[
163 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
164 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
165 ],
166 body: &[],
167 },
168 Operation {
169 id: "remove_collaborator",
170 method: "DELETE",
171 path: "/repos/{owner}/{name}/collaborators/{username}",
172 tag: "Access",
173 summary: "Remove a collaborator",
174 scope: Some("access:admin"),
175 params: &[
176 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
177 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
178 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
179 ],
180 body: &[],
181 },
182 Operation {
183 id: "revoke_repo_invitation",
184 method: "DELETE",
185 path: "/repos/{owner}/{name}/invitations/{id}",
186 tag: "Access",
187 summary: "Revoke a repository invitation",
188 scope: Some("access:admin"),
189 params: &[
190 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
191 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
192 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
193 ],
194 body: &[],
195 },
196 Operation {
197 id: "set_base_permission",
198 method: "PUT",
199 path: "/workspaces/{workspace}/base_permission",
200 tag: "Access",
201 summary: "Set the base permission",
202 scope: Some("access:admin"),
203 params: &[
204 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
205 ],
206 body: &[
207 Field { name: "base_permission", kind: "string", required: true, values: &["none", "read", "write", "admin"] },
208 ],
209 },
210 Operation {
211 id: "update_collaborator",
212 method: "PATCH",
213 path: "/repos/{owner}/{name}/collaborators/{username}",
214 tag: "Access",
215 summary: "Change a collaborator's role",
216 scope: Some("access:admin"),
217 params: &[
218 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
219 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
220 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
221 ],
222 body: &[
223 Field { name: "role", kind: "string", required: true, values: &["read", "triage", "write", "maintain", "admin"] },
224 ],
225 },
226 Operation {
227 id: "add_email",
228 method: "POST",
229 path: "/user/emails",
230 tag: "Accounts",
231 summary: "Add an email address",
232 scope: Some("account:write"),
233 params: &[],
234 body: &[
235 Field { name: "email", kind: "string", required: true, values: &[] },
236 Field { name: "password", kind: "string", required: true, values: &[] },
237 ],
238 },
239 Operation {
240 id: "confirm_email",
241 method: "POST",
242 path: "/user/emails/confirm",
243 tag: "Accounts",
244 summary: "Confirm an email address",
245 scope: Some("account:write"),
246 params: &[],
247 body: &[
248 Field { name: "code", kind: "string", required: true, values: &[] },
249 ],
250 },
251 Operation {
252 id: "device_code",
253 method: "POST",
254 path: "/device/code",
255 tag: "Accounts",
256 summary: "Start signing in",
257 scope: None,
258 params: &[],
259 body: &[
260 Field { name: "client_name", kind: "string", required: false, values: &[] },
261 ],
262 },
263 Operation {
264 id: "device_token",
265 method: "POST",
266 path: "/device/token",
267 tag: "Accounts",
268 summary: "Finish signing in",
269 scope: None,
270 params: &[],
271 body: &[
272 Field { name: "device_code", kind: "string", required: true, values: &[] },
273 ],
274 },
275 Operation {
276 id: "list_emails",
277 method: "GET",
278 path: "/user/emails",
279 tag: "Accounts",
280 summary: "List your email addresses",
281 scope: Some("account:read"),
282 params: &[],
283 body: &[],
284 },
285 Operation {
286 id: "remove_email",
287 method: "DELETE",
288 path: "/user/emails/{email}",
289 tag: "Accounts",
290 summary: "Remove an email address",
291 scope: Some("account:write"),
292 params: &[
293 Param { name: "email", location: In::Path, kind: "string", required: true, values: &[] },
294 ],
295 body: &[
296 Field { name: "password", kind: "string", required: true, values: &[] },
297 ],
298 },
299 Operation {
300 id: "update_email_settings",
301 method: "PATCH",
302 path: "/user/email-settings",
303 tag: "Accounts",
304 summary: "Change your email settings",
305 scope: Some("account:write"),
306 params: &[],
307 body: &[
308 Field { name: "backup", kind: "string", required: false, values: &[] },
309 Field { name: "block_private_pushes", kind: "boolean", required: false, values: &[] },
310 Field { name: "password", kind: "string", required: false, values: &[] },
311 Field { name: "primary", kind: "string", required: false, values: &[] },
312 Field { name: "private_email", kind: "boolean", required: false, values: &[] },
313 ],
314 },
315 Operation {
316 id: "whoami",
317 method: "GET",
318 path: "/user",
319 tag: "Accounts",
320 summary: "Get the current user",
321 scope: None,
322 params: &[],
323 body: &[],
324 },
325 Operation {
326 id: "cancel_workflow_run",
327 method: "POST",
328 path: "/repos/{owner}/{name}/actions/runs/{id}/cancel",
329 tag: "Actions",
330 summary: "Cancel a workflow run",
331 scope: Some("workflows:write"),
332 params: &[
333 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
334 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
335 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
336 ],
337 body: &[
338 Field { name: "force", kind: "boolean", required: false, values: &[] },
339 ],
340 },
341 Operation {
342 id: "delete_artifact",
343 method: "DELETE",
344 path: "/repos/{owner}/{name}/actions/artifacts/{id}",
345 tag: "Actions",
346 summary: "Delete an artifact",
347 scope: Some("workflows:write"),
348 params: &[
349 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
350 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
351 Param { name: "id", location: In::Path, kind: "integer", required: true, values: &[] },
352 ],
353 body: &[],
354 },
355 Operation {
356 id: "delete_cache",
357 method: "DELETE",
358 path: "/repos/{owner}/{name}/actions/caches/{id}",
359 tag: "Actions",
360 summary: "Delete a cache by id",
361 scope: Some("workflows:write"),
362 params: &[
363 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
364 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
365 Param { name: "id", location: In::Path, kind: "integer", required: true, values: &[] },
366 ],
367 body: &[],
368 },
369 Operation {
370 id: "delete_caches_by_key",
371 method: "DELETE",
372 path: "/repos/{owner}/{name}/actions/caches",
373 tag: "Actions",
374 summary: "Delete caches by key",
375 scope: Some("workflows:write"),
376 params: &[
377 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
378 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
379 ],
380 body: &[
381 Field { name: "key", kind: "string", required: true, values: &[] },
382 Field { name: "ref", kind: "string", required: false, values: &[] },
383 ],
384 },
385 Operation {
386 id: "disable_workflow",
387 method: "PUT",
388 path: "/repos/{owner}/{name}/actions/workflows/{workflow}/disable",
389 tag: "Actions",
390 summary: "Turn a workflow off",
391 scope: Some("workflows:write"),
392 params: &[
393 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
394 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
395 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
396 ],
397 body: &[
398 Field { name: "enabled", kind: "boolean", required: true, values: &[] },
399 ],
400 },
401 Operation {
402 id: "dispatch_workflow",
403 method: "POST",
404 path: "/repos/{owner}/{name}/actions/workflows/{workflow}/dispatches",
405 tag: "Actions",
406 summary: "Run a workflow",
407 scope: Some("workflows:write"),
408 params: &[
409 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
410 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
411 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
412 ],
413 body: &[
414 Field { name: "inputs", kind: "object", required: false, values: &[] },
415 Field { name: "ref", kind: "string", required: false, values: &[] },
416 ],
417 },
418 Operation {
419 id: "download_artifact",
420 method: "GET",
421 path: "/repos/{owner}/{name}/actions/artifacts/{id}/zip",
422 tag: "Actions",
423 summary: "Download an artifact",
424 scope: Some("workflows:read"),
425 params: &[
426 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
427 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
428 Param { name: "id", location: In::Path, kind: "integer", required: true, values: &[] },
429 ],
430 body: &[],
431 },
432 Operation {
433 id: "enable_workflow",
434 method: "PUT",
435 path: "/repos/{owner}/{name}/actions/workflows/{workflow}/enable",
436 tag: "Actions",
437 summary: "Turn a workflow on",
438 scope: Some("workflows:write"),
439 params: &[
440 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
441 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
442 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
443 ],
444 body: &[
445 Field { name: "enabled", kind: "boolean", required: true, values: &[] },
446 ],
447 },
448 Operation {
449 id: "force_cancel_workflow_run",
450 method: "POST",
451 path: "/repos/{owner}/{name}/actions/runs/{id}/force-cancel",
452 tag: "Actions",
453 summary: "Force-cancel a workflow run",
454 scope: Some("workflows:write"),
455 params: &[
456 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
457 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
458 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
459 ],
460 body: &[
461 Field { name: "force", kind: "boolean", required: false, values: &[] },
462 ],
463 },
464 Operation {
465 id: "get_artifact",
466 method: "GET",
467 path: "/repos/{owner}/{name}/actions/artifacts/{id}",
468 tag: "Actions",
469 summary: "Get an artifact",
470 scope: Some("workflows:read"),
471 params: &[
472 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
473 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
474 Param { name: "id", location: In::Path, kind: "integer", required: true, values: &[] },
475 ],
476 body: &[],
477 },
478 Operation {
479 id: "get_artifact_retention",
480 method: "GET",
481 path: "/repos/{owner}/{name}/actions/permissions/artifact-and-log-retention",
482 tag: "Actions",
483 summary: "Get artifact retention",
484 scope: Some("workflows:read"),
485 params: &[
486 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
487 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
488 ],
489 body: &[],
490 },
491 Operation {
492 id: "get_cache_usage",
493 method: "GET",
494 path: "/repos/{owner}/{name}/actions/cache/usage",
495 tag: "Actions",
496 summary: "Get a repository's cache usage",
497 scope: Some("workflows:read"),
498 params: &[
499 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
500 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
501 ],
502 body: &[],
503 },
504 Operation {
505 id: "get_job_logs",
506 method: "GET",
507 path: "/repos/{owner}/{name}/actions/jobs/{job}/logs",
508 tag: "Actions",
509 summary: "Get a job's log",
510 scope: Some("workflows:read"),
511 params: &[
512 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
513 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
514 Param { name: "job", location: In::Path, kind: "string", required: true, values: &[] },
515 Param { name: "after", location: In::Query, kind: "integer", required: false, values: &[] },
516 Param { name: "tail", location: In::Query, kind: "integer", required: false, values: &[] },
517 ],
518 body: &[],
519 },
520 Operation {
521 id: "get_workflow",
522 method: "GET",
523 path: "/repos/{owner}/{name}/actions/workflows/{workflow}",
524 tag: "Actions",
525 summary: "Get a workflow",
526 scope: Some("workflows:read"),
527 params: &[
528 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
529 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
530 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
531 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
532 ],
533 body: &[],
534 },
535 Operation {
536 id: "get_workflow_run",
537 method: "GET",
538 path: "/repos/{owner}/{name}/actions/runs/{id}",
539 tag: "Actions",
540 summary: "Get a workflow run",
541 scope: Some("workflows:read"),
542 params: &[
543 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
544 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
545 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
546 ],
547 body: &[],
548 },
549 Operation {
550 id: "get_workflow_run_attempt",
551 method: "GET",
552 path: "/repos/{owner}/{name}/actions/runs/{id}/attempts/{attempt}",
553 tag: "Actions",
554 summary: "Get a workflow run attempt",
555 scope: Some("workflows:read"),
556 params: &[
557 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
558 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
559 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
560 Param { name: "attempt", location: In::Path, kind: "integer", required: true, values: &[] },
561 ],
562 body: &[],
563 },
564 Operation {
565 id: "list_artifacts",
566 method: "GET",
567 path: "/repos/{owner}/{name}/actions/artifacts",
568 tag: "Actions",
569 summary: "List a repository's artifacts",
570 scope: Some("workflows:read"),
571 params: &[
572 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
573 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
574 Param { name: "name", location: In::Query, kind: "string", required: false, values: &[] },
575 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
576 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
577 ],
578 body: &[],
579 },
580 Operation {
581 id: "list_caches",
582 method: "GET",
583 path: "/repos/{owner}/{name}/actions/caches",
584 tag: "Actions",
585 summary: "List a repository's caches",
586 scope: Some("workflows:read"),
587 params: &[
588 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
589 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
590 Param { name: "key", location: In::Query, kind: "string", required: false, values: &[] },
591 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
592 Param { name: "sort", location: In::Query, kind: "string", required: false, values: &["last_accessed_at", "created_at", "size_in_bytes"] },
593 Param { name: "direction", location: In::Query, kind: "string", required: false, values: &["asc", "desc"] },
594 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
595 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
596 ],
597 body: &[],
598 },
599 Operation {
600 id: "list_runs_of_workflow",
601 method: "GET",
602 path: "/repos/{owner}/{name}/actions/workflows/{workflow}/runs",
603 tag: "Actions",
604 summary: "List a workflow's runs",
605 scope: Some("workflows:read"),
606 params: &[
607 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
608 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
609 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
610 Param { name: "branch", location: In::Query, kind: "string", required: false, values: &[] },
611 Param { name: "event", location: In::Query, kind: "string", required: false, values: &[] },
612 Param { name: "status", location: In::Query, kind: "string", required: false, values: &[] },
613 Param { name: "head_sha", location: In::Query, kind: "string", required: false, values: &[] },
614 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
615 ],
616 body: &[],
617 },
618 Operation {
619 id: "list_workflow_run_artifacts",
620 method: "GET",
621 path: "/repos/{owner}/{name}/actions/runs/{id}/artifacts",
622 tag: "Actions",
623 summary: "List a workflow run's artifacts",
624 scope: Some("workflows:read"),
625 params: &[
626 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
627 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
628 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
629 Param { name: "name", location: In::Query, kind: "string", required: false, values: &[] },
630 ],
631 body: &[],
632 },
633 Operation {
634 id: "list_workflow_runs",
635 method: "GET",
636 path: "/repos/{owner}/{name}/actions/runs",
637 tag: "Actions",
638 summary: "List workflow runs",
639 scope: Some("workflows:read"),
640 params: &[
641 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
642 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
643 Param { name: "workflow", location: In::Query, kind: "string", required: false, values: &[] },
644 Param { name: "branch", location: In::Query, kind: "string", required: false, values: &[] },
645 Param { name: "event", location: In::Query, kind: "string", required: false, values: &[] },
646 Param { name: "pull", location: In::Query, kind: "integer", required: false, values: &[] },
647 Param { name: "head_sha", location: In::Query, kind: "string", required: false, values: &[] },
648 Param { name: "status", location: In::Query, kind: "string", required: false, values: &[] },
649 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
650 ],
651 body: &[],
652 },
653 Operation {
654 id: "list_workflows",
655 method: "GET",
656 path: "/repos/{owner}/{name}/actions/workflows",
657 tag: "Actions",
658 summary: "List workflows",
659 scope: Some("workflows:read"),
660 params: &[
661 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
662 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
663 ],
664 body: &[],
665 },
666 Operation {
667 id: "rerun_failed_jobs",
668 method: "POST",
669 path: "/repos/{owner}/{name}/actions/runs/{id}/rerun-failed-jobs",
670 tag: "Actions",
671 summary: "Re-run failed jobs",
672 scope: Some("workflows:write"),
673 params: &[
674 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
675 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
676 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
677 ],
678 body: &[
679 Field { name: "debug", kind: "boolean", required: false, values: &[] },
680 Field { name: "enable_debug_logging", kind: "boolean", required: false, values: &[] },
681 Field { name: "failed_only", kind: "boolean", required: false, values: &[] },
682 Field { name: "job", kind: "string", required: false, values: &[] },
683 ],
684 },
685 Operation {
686 id: "rerun_job",
687 method: "POST",
688 path: "/repos/{owner}/{name}/actions/jobs/{job}/rerun",
689 tag: "Actions",
690 summary: "Re-run a job",
691 scope: Some("workflows:write"),
692 params: &[
693 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
694 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
695 Param { name: "job", location: In::Path, kind: "string", required: true, values: &[] },
696 ],
697 body: &[
698 Field { name: "debug", kind: "boolean", required: false, values: &[] },
699 Field { name: "enable_debug_logging", kind: "boolean", required: false, values: &[] },
700 Field { name: "failed_only", kind: "boolean", required: false, values: &[] },
701 Field { name: "id", kind: "string", required: false, values: &[] },
702 ],
703 },
704 Operation {
705 id: "rerun_workflow_run",
706 method: "POST",
707 path: "/repos/{owner}/{name}/actions/runs/{id}/rerun",
708 tag: "Actions",
709 summary: "Re-run a workflow run",
710 scope: Some("workflows:write"),
711 params: &[
712 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
713 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
714 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
715 ],
716 body: &[
717 Field { name: "debug", kind: "boolean", required: false, values: &[] },
718 Field { name: "enable_debug_logging", kind: "boolean", required: false, values: &[] },
719 Field { name: "failed_only", kind: "boolean", required: false, values: &[] },
720 Field { name: "job", kind: "string", required: false, values: &[] },
721 ],
722 },
723 Operation {
724 id: "set_artifact_retention",
725 method: "PUT",
726 path: "/repos/{owner}/{name}/actions/permissions/artifact-and-log-retention",
727 tag: "Actions",
728 summary: "Set artifact retention",
729 scope: Some("workflows:write"),
730 params: &[
731 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
732 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
733 ],
734 body: &[
735 Field { name: "days", kind: "integer", required: true, values: &[] },
736 ],
737 },
738 Operation {
739 id: "update_workflow",
740 method: "PATCH",
741 path: "/repos/{owner}/{name}/actions/workflows/{workflow}",
742 tag: "Actions",
743 summary: "Turn a workflow on or off",
744 scope: Some("workflows:write"),
745 params: &[
746 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
747 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
748 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
749 ],
750 body: &[
751 Field { name: "enabled", kind: "boolean", required: true, values: &[] },
752 ],
753 },
754 Operation {
755 id: "create_workspace_artifact",
756 method: "POST",
757 path: "/workspaces/{workspace}/artifacts",
758 tag: "Artifacts",
759 summary: "Create an artifact",
760 scope: Some("artifacts:write"),
761 params: &[
762 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
763 ],
764 body: &[
765 Field { name: "icon", kind: "string", required: false, values: &[] },
766 Field { name: "kind", kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
767 Field { name: "markdown", kind: "string", required: false, values: &[] },
768 Field { name: "parent_id", kind: "string", required: false, values: &[] },
769 Field { name: "space", kind: "string", required: false, values: &[] },
770 Field { name: "template_id", kind: "string", required: false, values: &[] },
771 Field { name: "title", kind: "string", required: false, values: &[] },
772 ],
773 },
774 Operation {
775 id: "edit_workspace_artifact",
776 method: "PUT",
777 path: "/workspaces/{workspace}/artifacts/{artifact_id}/content",
778 tag: "Artifacts",
779 summary: "Edit an artifact's content",
780 scope: Some("artifacts:write"),
781 params: &[
782 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
783 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
784 ],
785 body: &[
786 Field { name: "kind", kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
787 Field { name: "markdown", kind: "string", required: false, values: &[] },
788 Field { name: "marks_current", kind: "boolean", required: false, values: &[] },
789 Field { name: "note", kind: "string", required: false, values: &[] },
790 Field { name: "ops", kind: "array", required: false, values: &[] },
791 Field { name: "suggest_only", kind: "boolean", required: false, values: &[] },
792 Field { name: "target", kind: "object", required: false, values: &[] },
793 ],
794 },
795 Operation {
796 id: "get_workspace_artifact",
797 method: "GET",
798 path: "/workspaces/{workspace}/artifacts/{artifact_id}",
799 tag: "Artifacts",
800 summary: "Get an artifact",
801 scope: Some("artifacts:read"),
802 params: &[
803 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
804 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
805 ],
806 body: &[],
807 },
808 Operation {
809 id: "get_workspace_artifact_access",
810 method: "GET",
811 path: "/workspaces/{workspace}/artifacts/{artifact_id}/access",
812 tag: "Artifacts",
813 summary: "Get who can open an artifact",
814 scope: Some("artifacts:read"),
815 params: &[
816 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
817 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
818 ],
819 body: &[],
820 },
821 Operation {
822 id: "get_workspace_artifact_content",
823 method: "GET",
824 path: "/workspaces/{workspace}/artifacts/{artifact_id}/content",
825 tag: "Artifacts",
826 summary: "Get an artifact's content",
827 scope: Some("artifacts:read"),
828 params: &[
829 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
830 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
831 ],
832 body: &[],
833 },
834 Operation {
835 id: "list_workspace_artifact_spaces",
836 method: "GET",
837 path: "/workspaces/{workspace}/artifact-spaces",
838 tag: "Artifacts",
839 summary: "List artifact spaces",
840 scope: Some("artifacts:read"),
841 params: &[
842 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
843 ],
844 body: &[],
845 },
846 Operation {
847 id: "list_workspace_artifact_templates",
848 method: "GET",
849 path: "/workspaces/{workspace}/artifact-templates",
850 tag: "Artifacts",
851 summary: "List artifact templates",
852 scope: Some("artifacts:read"),
853 params: &[
854 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
855 Param { name: "kind", location: In::Query, kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
856 ],
857 body: &[],
858 },
859 Operation {
860 id: "list_workspace_artifact_versions",
861 method: "GET",
862 path: "/workspaces/{workspace}/artifacts/{artifact_id}/versions",
863 tag: "Artifacts",
864 summary: "List an artifact's versions",
865 scope: Some("artifacts:read"),
866 params: &[
867 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
868 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
869 ],
870 body: &[],
871 },
872 Operation {
873 id: "list_workspace_artifacts",
874 method: "GET",
875 path: "/workspaces/{workspace}/artifacts",
876 tag: "Artifacts",
877 summary: "List a workspace's artifacts",
878 scope: Some("artifacts:read"),
879 params: &[
880 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
881 Param { name: "tab", location: In::Query, kind: "string", required: false, values: &["all", "yours", "shared"] },
882 Param { name: "kind", location: In::Query, kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
883 Param { name: "space", location: In::Query, kind: "string", required: false, values: &[] },
884 Param { name: "project", location: In::Query, kind: "string", required: false, values: &[] },
885 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
886 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "trashed"] },
887 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
888 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
889 ],
890 body: &[],
891 },
892 Operation {
893 id: "purge_workspace_artifact",
894 method: "POST",
895 path: "/workspaces/{workspace}/artifacts/{artifact_id}/purge",
896 tag: "Artifacts",
897 summary: "Delete an artifact for good",
898 scope: Some("artifacts:admin"),
899 params: &[
900 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
901 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
902 ],
903 body: &[],
904 },
905 Operation {
906 id: "query_workspace_dataset",
907 method: "POST",
908 path: "/workspaces/{workspace}/datasets/query",
909 tag: "Artifacts",
910 summary: "Query a dataset",
911 scope: Some("artifacts:read"),
912 params: &[
913 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
914 ],
915 body: &[
916 Field { name: "query", kind: "object", required: true, values: &[] },
917 ],
918 },
919 Operation {
920 id: "restore_workspace_artifact",
921 method: "POST",
922 path: "/workspaces/{workspace}/artifacts/{artifact_id}/restore",
923 tag: "Artifacts",
924 summary: "Restore an artifact from the trash",
925 scope: Some("artifacts:write"),
926 params: &[
927 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
928 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
929 ],
930 body: &[],
931 },
932 Operation {
933 id: "restore_workspace_artifact_version",
934 method: "POST",
935 path: "/workspaces/{workspace}/artifacts/{artifact_id}/versions/{version_id}/restore",
936 tag: "Artifacts",
937 summary: "Restore an artifact version",
938 scope: Some("artifacts:write"),
939 params: &[
940 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
941 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
942 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
943 ],
944 body: &[],
945 },
946 Operation {
947 id: "search_workspace_artifacts",
948 method: "GET",
949 path: "/workspaces/{workspace}/artifacts/search",
950 tag: "Artifacts",
951 summary: "Search a workspace's artifacts",
952 scope: Some("artifacts:read"),
953 params: &[
954 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
955 Param { name: "q", location: In::Query, kind: "string", required: true, values: &[] },
956 Param { name: "kind", location: In::Query, kind: "string", required: false, values: &["doc", "slides", "design", "dashboard"] },
957 Param { name: "space", location: In::Query, kind: "string", required: false, values: &[] },
958 Param { name: "project", location: In::Query, kind: "string", required: false, values: &[] },
959 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
960 ],
961 body: &[],
962 },
963 Operation {
964 id: "set_workspace_artifact_access",
965 method: "PUT",
966 path: "/workspaces/{workspace}/artifacts/{artifact_id}/access",
967 tag: "Artifacts",
968 summary: "Share an artifact",
969 scope: Some("artifacts:admin"),
970 params: &[
971 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
972 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
973 ],
974 body: &[
975 Field { name: "agent", kind: "string", required: false, values: &[] },
976 Field { name: "agent_mode", kind: "string", required: false, values: &["suggest", "edit"] },
977 Field { name: "general_access", kind: "string", required: false, values: &["none", "workspace", "link"] },
978 Field { name: "general_role", kind: "string", required: false, values: &["view", "comment", "edit"] },
979 Field { name: "inherit", kind: "boolean", required: false, values: &[] },
980 Field { name: "notify", kind: "string", required: false, values: &[] },
981 Field { name: "principal", kind: "string", required: false, values: &[] },
982 Field { name: "role", kind: "string", required: false, values: &["view", "comment", "edit", "manage", "none"] },
983 Field { name: "team", kind: "string", required: false, values: &[] },
984 Field { name: "username", kind: "string", required: false, values: &[] },
985 ],
986 },
987 Operation {
988 id: "trash_workspace_artifact",
989 method: "DELETE",
990 path: "/workspaces/{workspace}/artifacts/{artifact_id}",
991 tag: "Artifacts",
992 summary: "Move an artifact to the trash",
993 scope: Some("artifacts:write"),
994 params: &[
995 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
996 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
997 ],
998 body: &[],
999 },
1000 Operation {
1001 id: "update_workspace_artifact",
1002 method: "PATCH",
1003 path: "/workspaces/{workspace}/artifacts/{artifact_id}",
1004 tag: "Artifacts",
1005 summary: "Update an artifact",
1006 scope: Some("artifacts:write"),
1007 params: &[
1008 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1009 Param { name: "artifact_id", location: In::Path, kind: "string", required: true, values: &[] },
1010 ],
1011 body: &[
1012 Field { name: "before_id", kind: "string", required: false, values: &[] },
1013 Field { name: "icon", kind: "string", required: false, values: &[] },
1014 Field { name: "parent_id", kind: "string", required: false, values: &[] },
1015 Field { name: "space", kind: "string", required: false, values: &[] },
1016 Field { name: "title", kind: "string", required: false, values: &[] },
1017 ],
1018 },
1019 Operation {
1020 id: "get_billing_details",
1021 method: "GET",
1022 path: "/workspaces/{workspace}/billing_details",
1023 tag: "Billing",
1024 summary: "Get a workspace's billing details",
1025 scope: Some("billing:read"),
1026 params: &[
1027 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1028 ],
1029 body: &[],
1030 },
1031 Operation {
1032 id: "get_budget",
1033 method: "GET",
1034 path: "/workspaces/{workspace}/budget",
1035 tag: "Billing",
1036 summary: "Get a workspace's budget",
1037 scope: Some("billing:read"),
1038 params: &[
1039 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1040 ],
1041 body: &[],
1042 },
1043 Operation {
1044 id: "get_usage",
1045 method: "GET",
1046 path: "/workspaces/{workspace}/usage",
1047 tag: "Billing",
1048 summary: "Get a workspace's usage",
1049 scope: Some("billing:read"),
1050 params: &[
1051 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1052 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
1053 Param { name: "until", location: In::Query, kind: "string", required: false, values: &[] },
1054 Param { name: "products", location: In::Query, kind: "array", required: false, values: &[] },
1055 Param { name: "projects", location: In::Query, kind: "array", required: false, values: &[] },
1056 Param { name: "group_by", location: In::Query, kind: "string", required: false, values: &["product", "project", "day"] },
1057 ],
1058 body: &[],
1059 },
1060 Operation {
1061 id: "list_invoices",
1062 method: "GET",
1063 path: "/workspaces/{workspace}/invoices",
1064 tag: "Billing",
1065 summary: "List a workspace's invoices",
1066 scope: Some("billing:read"),
1067 params: &[
1068 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1069 ],
1070 body: &[],
1071 },
1072 Operation {
1073 id: "set_budget",
1074 method: "PUT",
1075 path: "/workspaces/{workspace}/budget",
1076 tag: "Billing",
1077 summary: "Change a workspace's budget",
1078 scope: Some("billing:write"),
1079 params: &[
1080 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1081 ],
1082 body: &[
1083 Field { name: "alerts", kind: "array", required: false, values: &[] },
1084 Field { name: "amount_micros", kind: "integer", required: false, values: &[] },
1085 Field { name: "pause_at_limit", kind: "boolean", required: false, values: &[] },
1086 Field { name: "webhook", kind: "string", required: false, values: &[] },
1087 ],
1088 },
1089 Operation {
1090 id: "create_check_run",
1091 method: "POST",
1092 path: "/repos/{owner}/{name}/check-runs",
1093 tag: "Checks",
1094 summary: "Create a check run",
1095 scope: Some("checks:write"),
1096 params: &[
1097 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1098 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1099 ],
1100 body: &[
1101 Field { name: "actions", kind: "array", required: false, values: &[] },
1102 Field { name: "app", kind: "string", required: false, values: &[] },
1103 Field { name: "completed_at", kind: "string", required: false, values: &[] },
1104 Field { name: "conclusion", kind: "string", required: false, values: &["success", "failure", "neutral", "cancelled", "skipped", "timed_out", "action_required"] },
1105 Field { name: "details_url", kind: "string", required: false, values: &[] },
1106 Field { name: "external_id", kind: "string", required: false, values: &[] },
1107 Field { name: "head_sha", kind: "string", required: true, values: &[] },
1108 Field { name: "name", kind: "string", required: true, values: &[] },
1109 Field { name: "output", kind: "object", required: false, values: &[] },
1110 Field { name: "started_at", kind: "string", required: false, values: &[] },
1111 Field { name: "status", kind: "string", required: false, values: &["queued", "in_progress", "completed"] },
1112 ],
1113 },
1114 Operation {
1115 id: "create_commit_status",
1116 method: "POST",
1117 path: "/repos/{owner}/{name}/statuses/{sha}",
1118 tag: "Checks",
1119 summary: "Create a commit status",
1120 scope: Some("checks:write"),
1121 params: &[
1122 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1123 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1124 Param { name: "sha", location: In::Path, kind: "string", required: true, values: &[] },
1125 ],
1126 body: &[
1127 Field { name: "context", kind: "string", required: false, values: &[] },
1128 Field { name: "description", kind: "string", required: false, values: &[] },
1129 Field { name: "state", kind: "string", required: true, values: &["pending", "success", "failure", "error"] },
1130 Field { name: "target_url", kind: "string", required: false, values: &[] },
1131 ],
1132 },
1133 Operation {
1134 id: "get_check_run",
1135 method: "GET",
1136 path: "/repos/{owner}/{name}/check-runs/{id}",
1137 tag: "Checks",
1138 summary: "Get a check run",
1139 scope: Some("checks:read"),
1140 params: &[
1141 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1142 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1143 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1144 ],
1145 body: &[],
1146 },
1147 Operation {
1148 id: "get_check_suite",
1149 method: "GET",
1150 path: "/repos/{owner}/{name}/check-suites/{id}",
1151 tag: "Checks",
1152 summary: "Get a check suite",
1153 scope: Some("checks:read"),
1154 params: &[
1155 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1156 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1157 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1158 ],
1159 body: &[],
1160 },
1161 Operation {
1162 id: "get_combined_status",
1163 method: "GET",
1164 path: "/repos/{owner}/{name}/commits/{ref}/status",
1165 tag: "Checks",
1166 summary: "Get a commit's combined status",
1167 scope: Some("checks:read"),
1168 params: &[
1169 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1170 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1171 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
1172 ],
1173 body: &[],
1174 },
1175 Operation {
1176 id: "list_check_run_annotations",
1177 method: "GET",
1178 path: "/repos/{owner}/{name}/check-runs/{id}/annotations",
1179 tag: "Checks",
1180 summary: "List a check run's annotations",
1181 scope: Some("checks:read"),
1182 params: &[
1183 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1184 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1185 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1186 ],
1187 body: &[],
1188 },
1189 Operation {
1190 id: "list_check_runs_for_ref",
1191 method: "GET",
1192 path: "/repos/{owner}/{name}/commits/{ref}/check-runs",
1193 tag: "Checks",
1194 summary: "List a commit's check runs",
1195 scope: Some("checks:read"),
1196 params: &[
1197 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1198 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1199 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
1200 Param { name: "check_name", location: In::Query, kind: "string", required: false, values: &[] },
1201 Param { name: "status", location: In::Query, kind: "string", required: false, values: &["queued", "in_progress", "completed"] },
1202 Param { name: "app", location: In::Query, kind: "string", required: false, values: &[] },
1203 Param { name: "filter", location: In::Query, kind: "string", required: false, values: &["latest", "all"] },
1204 ],
1205 body: &[],
1206 },
1207 Operation {
1208 id: "list_check_suites_for_ref",
1209 method: "GET",
1210 path: "/repos/{owner}/{name}/commits/{ref}/check-suites",
1211 tag: "Checks",
1212 summary: "List a commit's check suites",
1213 scope: Some("checks:read"),
1214 params: &[
1215 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1216 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1217 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
1218 Param { name: "app", location: In::Query, kind: "string", required: false, values: &[] },
1219 Param { name: "check_name", location: In::Query, kind: "string", required: false, values: &[] },
1220 ],
1221 body: &[],
1222 },
1223 Operation {
1224 id: "list_commit_statuses",
1225 method: "GET",
1226 path: "/repos/{owner}/{name}/commits/{ref}/statuses",
1227 tag: "Checks",
1228 summary: "List a commit's statuses",
1229 scope: Some("checks:read"),
1230 params: &[
1231 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1232 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1233 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
1234 ],
1235 body: &[],
1236 },
1237 Operation {
1238 id: "rerequest_check_run",
1239 method: "POST",
1240 path: "/repos/{owner}/{name}/check-runs/{id}/rerequest",
1241 tag: "Checks",
1242 summary: "Rerequest a check run",
1243 scope: Some("checks:write"),
1244 params: &[
1245 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1246 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1247 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1248 ],
1249 body: &[],
1250 },
1251 Operation {
1252 id: "rerequest_check_suite",
1253 method: "POST",
1254 path: "/repos/{owner}/{name}/check-suites/{id}/rerequest",
1255 tag: "Checks",
1256 summary: "Rerequest a check suite",
1257 scope: Some("checks:write"),
1258 params: &[
1259 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1260 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1261 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1262 ],
1263 body: &[],
1264 },
1265 Operation {
1266 id: "update_check_run",
1267 method: "PATCH",
1268 path: "/repos/{owner}/{name}/check-runs/{id}",
1269 tag: "Checks",
1270 summary: "Update a check run",
1271 scope: Some("checks:write"),
1272 params: &[
1273 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1274 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1275 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1276 ],
1277 body: &[
1278 Field { name: "actions", kind: "array", required: false, values: &[] },
1279 Field { name: "completed_at", kind: "string", required: false, values: &[] },
1280 Field { name: "conclusion", kind: "string", required: false, values: &["success", "failure", "neutral", "cancelled", "skipped", "timed_out", "action_required"] },
1281 Field { name: "details_url", kind: "string", required: false, values: &[] },
1282 Field { name: "external_id", kind: "string", required: false, values: &[] },
1283 Field { name: "name", kind: "string", required: false, values: &[] },
1284 Field { name: "output", kind: "object", required: false, values: &[] },
1285 Field { name: "started_at", kind: "string", required: false, values: &[] },
1286 Field { name: "status", kind: "string", required: false, values: &["queued", "in_progress", "completed"] },
1287 ],
1288 },
1289 Operation {
1290 id: "claim_issue",
1291 method: "POST",
1292 path: "/repos/{owner}/{name}/issues/{number}/claim",
1293 tag: "Claims and work",
1294 summary: "Claim an issue",
1295 scope: Some("issues:write"),
1296 params: &[
1297 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1298 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1299 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1300 ],
1301 body: &[
1302 Field { name: "note", kind: "string", required: false, values: &[] },
1303 Field { name: "session_id", kind: "string", required: false, values: &[] },
1304 Field { name: "ttl_minutes", kind: "integer", required: false, values: &[] },
1305 ],
1306 },
1307 Operation {
1308 id: "get_work",
1309 method: "GET",
1310 path: "/repos/{owner}/{name}/issues/{number}/work",
1311 tag: "Claims and work",
1312 summary: "Get an issue's work context",
1313 scope: Some("issues:read"),
1314 params: &[
1315 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1316 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1317 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1318 ],
1319 body: &[],
1320 },
1321 Operation {
1322 id: "hand_off_issue",
1323 method: "POST",
1324 path: "/repos/{owner}/{name}/issues/{number}/handoff",
1325 tag: "Claims and work",
1326 summary: "Hand off an issue",
1327 scope: Some("issues:write"),
1328 params: &[
1329 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1330 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1331 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1332 ],
1333 body: &[
1334 Field { name: "note", kind: "string", required: true, values: &[] },
1335 Field { name: "session_id", kind: "string", required: false, values: &[] },
1336 Field { name: "to", kind: "string", required: false, values: &[] },
1337 ],
1338 },
1339 Operation {
1340 id: "list_claims",
1341 method: "GET",
1342 path: "/repos/{owner}/{name}/claims",
1343 tag: "Claims and work",
1344 summary: "List claims",
1345 scope: Some("issues:read"),
1346 params: &[
1347 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1348 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1349 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "released", "expired", "handed_off"] },
1350 Param { name: "issue", location: In::Query, kind: "integer", required: false, values: &[] },
1351 ],
1352 body: &[],
1353 },
1354 Operation {
1355 id: "release_claim",
1356 method: "POST",
1357 path: "/repos/{owner}/{name}/issues/{number}/release",
1358 tag: "Claims and work",
1359 summary: "Release a claim",
1360 scope: Some("issues: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: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1365 ],
1366 body: &[
1367 Field { name: "reason", kind: "string", required: false, values: &[] },
1368 Field { name: "session_id", kind: "string", required: false, values: &[] },
1369 ],
1370 },
1371 Operation {
1372 id: "get_code_scanning_alert",
1373 method: "GET",
1374 path: "/repos/{owner}/{name}/code-scanning/alerts/{number}",
1375 tag: "Code scanning",
1376 summary: "Get a code scanning alert",
1377 scope: Some("security:read"),
1378 params: &[
1379 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1380 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1381 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1382 ],
1383 body: &[],
1384 },
1385 Operation {
1386 id: "get_sarif_upload",
1387 method: "GET",
1388 path: "/repos/{owner}/{name}/code-scanning/sarifs/{id}",
1389 tag: "Code scanning",
1390 summary: "Get a SARIF upload",
1391 scope: Some("security:read"),
1392 params: &[
1393 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1394 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1395 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1396 ],
1397 body: &[],
1398 },
1399 Operation {
1400 id: "list_code_scanning_alerts",
1401 method: "GET",
1402 path: "/repos/{owner}/{name}/code-scanning/alerts",
1403 tag: "Code scanning",
1404 summary: "List code scanning alerts",
1405 scope: Some("security:read"),
1406 params: &[
1407 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1408 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1409 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
1410 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
1411 Param { name: "tool", location: In::Query, kind: "string", required: false, values: &[] },
1412 Param { name: "rule_id", location: In::Query, kind: "string", required: false, values: &[] },
1413 ],
1414 body: &[],
1415 },
1416 Operation {
1417 id: "list_code_scanning_alerts_for_workspace",
1418 method: "GET",
1419 path: "/workspaces/{workspace}/code-scanning/alerts",
1420 tag: "Code scanning",
1421 summary: "List code scanning alerts for a workspace",
1422 scope: Some("security:read"),
1423 params: &[
1424 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1425 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
1426 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
1427 Param { name: "tool", location: In::Query, kind: "string", required: false, values: &[] },
1428 Param { name: "rule_id", location: In::Query, kind: "string", required: false, values: &[] },
1429 ],
1430 body: &[],
1431 },
1432 Operation {
1433 id: "list_code_scanning_analyses",
1434 method: "GET",
1435 path: "/repos/{owner}/{name}/code-scanning/analyses",
1436 tag: "Code scanning",
1437 summary: "List code scanning analyses",
1438 scope: Some("security:read"),
1439 params: &[
1440 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1441 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1442 ],
1443 body: &[],
1444 },
1445 Operation {
1446 id: "update_code_scanning_alert",
1447 method: "PATCH",
1448 path: "/repos/{owner}/{name}/code-scanning/alerts/{number}",
1449 tag: "Code scanning",
1450 summary: "Dismiss or reopen a code scanning alert",
1451 scope: Some("security:write"),
1452 params: &[
1453 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1454 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1455 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1456 ],
1457 body: &[
1458 Field { name: "dismissed_comment", kind: "string", required: false, values: &[] },
1459 Field { name: "dismissed_reason", kind: "string", required: false, values: &["false_positive", "wont_fix", "used_in_tests"] },
1460 Field { name: "state", kind: "string", required: true, values: &["open", "dismissed"] },
1461 ],
1462 },
1463 Operation {
1464 id: "upload_sarif",
1465 method: "POST",
1466 path: "/repos/{owner}/{name}/code-scanning/sarifs",
1467 tag: "Code scanning",
1468 summary: "Upload a SARIF file",
1469 scope: Some("security:write"),
1470 params: &[
1471 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1472 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1473 ],
1474 body: &[
1475 Field { name: "category", kind: "string", required: false, values: &[] },
1476 Field { name: "checkout_uri", kind: "string", required: false, values: &[] },
1477 Field { name: "commit_sha", kind: "string", required: true, values: &[] },
1478 Field { name: "ref", kind: "string", required: true, values: &[] },
1479 Field { name: "sarif", kind: "string", required: true, values: &[] },
1480 Field { name: "tool_name", kind: "string", required: false, values: &[] },
1481 ],
1482 },
1483 Operation {
1484 id: "list_decisions",
1485 method: "GET",
1486 path: "/repos/{owner}/{name}/pulls/{number}/decisions",
1487 tag: "Decisions and why",
1488 summary: "List a pull request's decisions",
1489 scope: Some("pull_requests:read"),
1490 params: &[
1491 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1492 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1493 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1494 ],
1495 body: &[],
1496 },
1497 Operation {
1498 id: "list_issue_decisions",
1499 method: "GET",
1500 path: "/repos/{owner}/{name}/issues/{number}/decisions",
1501 tag: "Decisions and why",
1502 summary: "List an issue's decisions",
1503 scope: Some("pull_requests:read"),
1504 params: &[
1505 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1506 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1507 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1508 ],
1509 body: &[],
1510 },
1511 Operation {
1512 id: "record_decision",
1513 method: "POST",
1514 path: "/repos/{owner}/{name}/pulls/{number}/decisions",
1515 tag: "Decisions and why",
1516 summary: "Record a decision",
1517 scope: Some("pull_requests:write"),
1518 params: &[
1519 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1520 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1521 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1522 ],
1523 body: &[
1524 Field { name: "evidence", kind: "object", required: false, values: &[] },
1525 Field { name: "kind", kind: "string", required: true, values: &["proposal", "claim", "fix", "note"] },
1526 Field { name: "session_id", kind: "string", required: false, values: &[] },
1527 Field { name: "summary", kind: "string", required: true, values: &[] },
1528 ],
1529 },
1530 Operation {
1531 id: "why",
1532 method: "GET",
1533 path: "/repos/{owner}/{name}/why",
1534 tag: "Decisions and why",
1535 summary: "Explain a line",
1536 scope: Some("code:read"),
1537 params: &[
1538 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1539 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1540 Param { name: "path", location: In::Query, kind: "string", required: true, values: &[] },
1541 Param { name: "line", location: In::Query, kind: "integer", required: true, values: &[] },
1542 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
1543 ],
1544 body: &[],
1545 },
1546 Operation {
1547 id: "create_deployment",
1548 method: "POST",
1549 path: "/repos/{owner}/{name}/deployments",
1550 tag: "Deployments",
1551 summary: "Create a deployment",
1552 scope: Some("deployments:write"),
1553 params: &[
1554 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1555 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1556 ],
1557 body: &[
1558 Field { name: "description", kind: "string", required: false, values: &[] },
1559 Field { name: "environment", kind: "string", required: false, values: &[] },
1560 Field { name: "environment_url", kind: "string", required: false, values: &[] },
1561 Field { name: "log_url", kind: "string", required: false, values: &[] },
1562 Field { name: "payload", kind: "object", required: false, values: &[] },
1563 Field { name: "production_environment", kind: "boolean", required: false, values: &[] },
1564 Field { name: "ref", kind: "string", required: true, values: &[] },
1565 Field { name: "sha", kind: "string", required: false, values: &[] },
1566 Field { name: "state", kind: "string", required: false, values: &["queued", "in_progress", "success", "failure", "error", "inactive"] },
1567 Field { name: "task", kind: "string", required: false, values: &[] },
1568 Field { name: "transient_environment", kind: "boolean", required: false, values: &[] },
1569 ],
1570 },
1571 Operation {
1572 id: "create_deployment_status",
1573 method: "POST",
1574 path: "/repos/{owner}/{name}/deployments/{id}/statuses",
1575 tag: "Deployments",
1576 summary: "Create a deployment status",
1577 scope: Some("deployments:write"),
1578 params: &[
1579 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1580 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1581 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1582 ],
1583 body: &[
1584 Field { name: "auto_inactive", kind: "boolean", required: false, values: &[] },
1585 Field { name: "description", kind: "string", required: false, values: &[] },
1586 Field { name: "environment_url", kind: "string", required: false, values: &[] },
1587 Field { name: "log_url", kind: "string", required: false, values: &[] },
1588 Field { name: "state", kind: "string", required: true, values: &["queued", "in_progress", "success", "failure", "error", "inactive"] },
1589 ],
1590 },
1591 Operation {
1592 id: "get_deployment",
1593 method: "GET",
1594 path: "/repos/{owner}/{name}/deployments/{id}",
1595 tag: "Deployments",
1596 summary: "Get a deployment",
1597 scope: Some("deployments:read"),
1598 params: &[
1599 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1600 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1601 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1602 ],
1603 body: &[],
1604 },
1605 Operation {
1606 id: "get_environment",
1607 method: "GET",
1608 path: "/repos/{owner}/{name}/environments/{environment}",
1609 tag: "Deployments",
1610 summary: "Get an environment",
1611 scope: Some("deployments:read"),
1612 params: &[
1613 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1614 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1615 Param { name: "environment", location: In::Path, kind: "string", required: true, values: &[] },
1616 ],
1617 body: &[],
1618 },
1619 Operation {
1620 id: "list_deployment_statuses",
1621 method: "GET",
1622 path: "/repos/{owner}/{name}/deployments/{id}/statuses",
1623 tag: "Deployments",
1624 summary: "List deployment statuses",
1625 scope: Some("deployments:read"),
1626 params: &[
1627 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1628 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1629 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1630 ],
1631 body: &[],
1632 },
1633 Operation {
1634 id: "list_deployments",
1635 method: "GET",
1636 path: "/repos/{owner}/{name}/deployments",
1637 tag: "Deployments",
1638 summary: "List deployments",
1639 scope: Some("deployments:read"),
1640 params: &[
1641 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1642 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1643 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
1644 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
1645 Param { name: "sha", location: In::Query, kind: "string", required: false, values: &[] },
1646 Param { name: "task", location: In::Query, kind: "string", required: false, values: &[] },
1647 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["queued", "in_progress", "success", "failure", "error", "inactive"] },
1648 Param { name: "source", location: In::Query, kind: "string", required: false, values: &["api", "actions", "g1t_page"] },
1649 Param { name: "creator", location: In::Query, kind: "string", required: false, values: &[] },
1650 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
1651 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
1652 ],
1653 body: &[],
1654 },
1655 Operation {
1656 id: "list_environments",
1657 method: "GET",
1658 path: "/repos/{owner}/{name}/environments",
1659 tag: "Deployments",
1660 summary: "List environments",
1661 scope: Some("deployments:read"),
1662 params: &[
1663 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1664 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1665 ],
1666 body: &[],
1667 },
1668 Operation {
1669 id: "start_deployment_build",
1670 method: "POST",
1671 path: "/repos/{owner}/{name}/deployments/builds",
1672 tag: "Deployments",
1673 summary: "Start a g1t.page build from a workflow",
1674 scope: Some("deployments:write"),
1675 params: &[
1676 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1677 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1678 ],
1679 body: &[
1680 Field { name: "project", kind: "string", required: false, values: &[] },
1681 Field { name: "sha", kind: "string", required: false, values: &[] },
1682 ],
1683 },
1684 Operation {
1685 id: "connect_integration",
1686 method: "POST",
1687 path: "/workspaces/{workspace}/integrations",
1688 tag: "Integrations",
1689 summary: "Connect an integration",
1690 scope: Some("workspace:admin"),
1691 params: &[
1692 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1693 ],
1694 body: &[
1695 Field { name: "config", kind: "object", required: false, values: &[] },
1696 Field { name: "name", kind: "string", required: false, values: &[] },
1697 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", "sentry", "datadog", "webhook", "jira", "linear"] },
1698 Field { name: "secret", kind: "string", required: false, values: &[] },
1699 Field { name: "signing_secret", kind: "string", required: false, values: &[] },
1700 ],
1701 },
1702 Operation {
1703 id: "disconnect_integration",
1704 method: "DELETE",
1705 path: "/workspaces/{workspace}/integrations/{id}",
1706 tag: "Integrations",
1707 summary: "Disconnect an integration",
1708 scope: Some("workspace:admin"),
1709 params: &[
1710 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1711 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1712 ],
1713 body: &[],
1714 },
1715 Operation {
1716 id: "get_context",
1717 method: "GET",
1718 path: "/repos/{owner}/{name}/context",
1719 tag: "Integrations",
1720 summary: "Look up a ticket",
1721 scope: Some("memory: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: "reference", location: In::Query, kind: "string", required: true, values: &[] },
1726 ],
1727 body: &[],
1728 },
1729 Operation {
1730 id: "import_issue",
1731 method: "POST",
1732 path: "/repos/{owner}/{name}/issues/import",
1733 tag: "Integrations",
1734 summary: "Import an issue",
1735 scope: Some("issues:write"),
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 ],
1740 body: &[
1741 Field { name: "reference", kind: "string", required: true, values: &[] },
1742 ],
1743 },
1744 Operation {
1745 id: "list_integrations",
1746 method: "GET",
1747 path: "/workspaces/{workspace}/integrations",
1748 tag: "Integrations",
1749 summary: "List integrations",
1750 scope: Some("workspace:read"),
1751 params: &[
1752 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1753 ],
1754 body: &[],
1755 },
1756 Operation {
1757 id: "test_integration",
1758 method: "POST",
1759 path: "/workspaces/{workspace}/integrations/{id}/test",
1760 tag: "Integrations",
1761 summary: "Test an integration",
1762 scope: Some("workspace:admin"),
1763 params: &[
1764 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1765 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1766 ],
1767 body: &[],
1768 },
1769 Operation {
1770 id: "update_integration",
1771 method: "PATCH",
1772 path: "/workspaces/{workspace}/integrations/{id}",
1773 tag: "Integrations",
1774 summary: "Update an integration",
1775 scope: Some("workspace:admin"),
1776 params: &[
1777 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1778 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1779 ],
1780 body: &[
1781 Field { name: "config", kind: "object", required: false, values: &[] },
1782 Field { name: "name", kind: "string", required: false, values: &[] },
1783 Field { name: "secret", kind: "string", required: false, values: &[] },
1784 Field { name: "signing_secret", kind: "string", required: false, values: &[] },
1785 ],
1786 },
1787 Operation {
1788 id: "accept_invitation",
1789 method: "POST",
1790 path: "/user/invitations/{id}/accept",
1791 tag: "Invites",
1792 summary: "Accept a workspace invitation",
1793 scope: Some("account:write"),
1794 params: &[
1795 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1796 ],
1797 body: &[],
1798 },
1799 Operation {
1800 id: "create_invite",
1801 method: "POST",
1802 path: "/user/invites",
1803 tag: "Invites",
1804 summary: "Invite a friend to g1t",
1805 scope: Some("account:write"),
1806 params: &[],
1807 body: &[
1808 Field { name: "email", kind: "string", required: true, values: &[] },
1809 Field { name: "message", kind: "string", required: false, values: &[] },
1810 Field { name: "role", kind: "string", required: false, values: &["member", "owner"] },
1811 Field { name: "workspace", kind: "string", required: false, values: &[] },
1812 ],
1813 },
1814 Operation {
1815 id: "decline_invitation",
1816 method: "POST",
1817 path: "/user/invitations/{id}/decline",
1818 tag: "Invites",
1819 summary: "Decline a workspace invitation",
1820 scope: Some("account:write"),
1821 params: &[
1822 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1823 ],
1824 body: &[],
1825 },
1826 Operation {
1827 id: "invite_member",
1828 method: "POST",
1829 path: "/workspaces/{workspace}/invitations",
1830 tag: "Invites",
1831 summary: "Invite someone to a workspace",
1832 scope: Some("workspace:admin"),
1833 params: &[
1834 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1835 ],
1836 body: &[
1837 Field { name: "email", kind: "string", required: false, values: &[] },
1838 Field { name: "role", kind: "string", required: false, values: &["member", "owner"] },
1839 Field { name: "username", kind: "string", required: false, values: &[] },
1840 ],
1841 },
1842 Operation {
1843 id: "list_invitations",
1844 method: "GET",
1845 path: "/user/invitations",
1846 tag: "Invites",
1847 summary: "List your workspace invitations",
1848 scope: Some("account:read"),
1849 params: &[],
1850 body: &[],
1851 },
1852 Operation {
1853 id: "list_invites",
1854 method: "GET",
1855 path: "/user/invites",
1856 tag: "Invites",
1857 summary: "List your invites to g1t",
1858 scope: Some("account:read"),
1859 params: &[],
1860 body: &[],
1861 },
1862 Operation {
1863 id: "list_workspace_invites",
1864 method: "GET",
1865 path: "/workspaces/{workspace}/invitations",
1866 tag: "Invites",
1867 summary: "List a workspace's invites",
1868 scope: Some("workspace:read"),
1869 params: &[
1870 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1871 ],
1872 body: &[],
1873 },
1874 Operation {
1875 id: "resend_invite",
1876 method: "POST",
1877 path: "/user/invites/{id}/resend",
1878 tag: "Invites",
1879 summary: "Send an invite to g1t again",
1880 scope: Some("account:write"),
1881 params: &[
1882 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1883 ],
1884 body: &[],
1885 },
1886 Operation {
1887 id: "revoke_invite",
1888 method: "DELETE",
1889 path: "/user/invites/{id}",
1890 tag: "Invites",
1891 summary: "Revoke an invite to g1t",
1892 scope: Some("account:write"),
1893 params: &[
1894 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1895 ],
1896 body: &[],
1897 },
1898 Operation {
1899 id: "revoke_workspace_invite",
1900 method: "DELETE",
1901 path: "/workspaces/{workspace}/invitations/{id}",
1902 tag: "Invites",
1903 summary: "Revoke a workspace's invite",
1904 scope: Some("workspace:admin"),
1905 params: &[
1906 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1907 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1908 ],
1909 body: &[],
1910 },
1911 Operation {
1912 id: "add_comment",
1913 method: "POST",
1914 path: "/repos/{owner}/{name}/issues/{number}/comments",
1915 tag: "Issues",
1916 summary: "Add a comment",
1917 scope: Some("issues:write"),
1918 params: &[
1919 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1920 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1921 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1922 ],
1923 body: &[
1924 Field { name: "body", kind: "string", required: true, values: &[] },
1925 Field { name: "line", kind: "integer", required: false, values: &[] },
1926 Field { name: "path", kind: "string", required: false, values: &[] },
1927 ],
1928 },
1929 Operation {
1930 id: "add_issue_labels",
1931 method: "POST",
1932 path: "/repos/{owner}/{name}/issues/{number}/labels",
1933 tag: "Issues",
1934 summary: "Add labels to an issue",
1935 scope: Some("issues:write"),
1936 params: &[
1937 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1938 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1939 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1940 ],
1941 body: &[
1942 Field { name: "labels", kind: "array", required: true, values: &[] },
1943 ],
1944 },
1945 Operation {
1946 id: "close_issue",
1947 method: "POST",
1948 path: "/repos/{owner}/{name}/issues/{number}/close",
1949 tag: "Issues",
1950 summary: "Close an issue",
1951 scope: Some("issues:write"),
1952 params: &[
1953 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1954 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1955 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1956 ],
1957 body: &[
1958 Field { name: "reason", kind: "string", required: false, values: &["completed", "not_planned"] },
1959 ],
1960 },
1961 Operation {
1962 id: "create_issue",
1963 method: "POST",
1964 path: "/repos/{owner}/{name}/issues",
1965 tag: "Issues",
1966 summary: "Create an issue",
1967 scope: Some("issues:write"),
1968 params: &[
1969 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1970 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1971 ],
1972 body: &[
1973 Field { name: "body", kind: "string", required: false, values: &[] },
1974 Field { name: "checks", kind: "array", required: false, values: &[] },
1975 Field { name: "labels", kind: "array", required: false, values: &[] },
1976 Field { name: "milestone", kind: "integer", required: false, values: &[] },
1977 Field { name: "title", kind: "string", required: true, values: &[] },
1978 ],
1979 },
1980 Operation {
1981 id: "delete_comment",
1982 method: "DELETE",
1983 path: "/repos/{owner}/{name}/issues/comments/{comment_id}",
1984 tag: "Issues",
1985 summary: "Delete a comment",
1986 scope: Some("issues:write"),
1987 params: &[
1988 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1989 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1990 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
1991 ],
1992 body: &[],
1993 },
1994 Operation {
1995 id: "edit_comment",
1996 method: "PATCH",
1997 path: "/repos/{owner}/{name}/issues/comments/{comment_id}",
1998 tag: "Issues",
1999 summary: "Edit a comment",
2000 scope: Some("issues:write"),
2001 params: &[
2002 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2003 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2004 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
2005 ],
2006 body: &[
2007 Field { name: "body", kind: "string", required: true, values: &[] },
2008 ],
2009 },
2010 Operation {
2011 id: "get_issue",
2012 method: "GET",
2013 path: "/repos/{owner}/{name}/issues/{number}",
2014 tag: "Issues",
2015 summary: "Get an issue",
2016 scope: Some("issues:read"),
2017 params: &[
2018 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2019 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2020 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2021 ],
2022 body: &[],
2023 },
2024 Operation {
2025 id: "list_issue_labels",
2026 method: "GET",
2027 path: "/repos/{owner}/{name}/issues/{number}/labels",
2028 tag: "Issues",
2029 summary: "List an issue's labels",
2030 scope: Some("issues:read"),
2031 params: &[
2032 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2033 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2034 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2035 ],
2036 body: &[],
2037 },
2038 Operation {
2039 id: "list_issues",
2040 method: "GET",
2041 path: "/repos/{owner}/{name}/issues",
2042 tag: "Issues",
2043 summary: "List issues",
2044 scope: Some("issues:read"),
2045 params: &[
2046 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2047 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2048 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
2049 Param { name: "label", location: In::Query, kind: "string", required: false, values: &[] },
2050 Param { name: "milestone", location: In::Query, kind: "integer", required: false, values: &[] },
2051 ],
2052 body: &[],
2053 },
2054 Operation {
2055 id: "remove_issue_label",
2056 method: "DELETE",
2057 path: "/repos/{owner}/{name}/issues/{number}/labels/{label}",
2058 tag: "Issues",
2059 summary: "Remove labels from an issue",
2060 scope: Some("issues:write"),
2061 params: &[
2062 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2063 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2064 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2065 Param { name: "label", location: In::Path, kind: "string", required: true, values: &[] },
2066 ],
2067 body: &[
2068 Field { name: "labels", kind: "array", required: false, values: &[] },
2069 ],
2070 },
2071 Operation {
2072 id: "remove_issue_labels",
2073 method: "DELETE",
2074 path: "/repos/{owner}/{name}/issues/{number}/labels",
2075 tag: "Issues",
2076 summary: "Remove labels from an issue",
2077 scope: Some("issues:write"),
2078 params: &[
2079 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2080 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2081 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2082 ],
2083 body: &[
2084 Field { name: "label", kind: "string", required: false, values: &[] },
2085 Field { name: "labels", kind: "array", required: false, values: &[] },
2086 ],
2087 },
2088 Operation {
2089 id: "reopen_issue",
2090 method: "POST",
2091 path: "/repos/{owner}/{name}/issues/{number}/reopen",
2092 tag: "Issues",
2093 summary: "Reopen an issue",
2094 scope: Some("issues:write"),
2095 params: &[
2096 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2097 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2098 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2099 ],
2100 body: &[],
2101 },
2102 Operation {
2103 id: "set_issue_labels",
2104 method: "PUT",
2105 path: "/repos/{owner}/{name}/issues/{number}/labels",
2106 tag: "Issues",
2107 summary: "Set an issue's labels",
2108 scope: Some("issues:write"),
2109 params: &[
2110 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2111 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2112 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2113 ],
2114 body: &[
2115 Field { name: "labels", kind: "array", required: true, values: &[] },
2116 ],
2117 },
2118 Operation {
2119 id: "update_issue",
2120 method: "PATCH",
2121 path: "/repos/{owner}/{name}/issues/{number}",
2122 tag: "Issues",
2123 summary: "Update an issue",
2124 scope: Some("issues:write"),
2125 params: &[
2126 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2127 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2128 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2129 ],
2130 body: &[
2131 Field { name: "assignees", kind: "array", required: false, values: &[] },
2132 Field { name: "blocked_by", kind: "array", required: false, values: &[] },
2133 Field { name: "body", kind: "string", required: false, values: &[] },
2134 Field { name: "labels", kind: "array", required: false, values: &[] },
2135 Field { name: "milestone", kind: "integer", required: false, values: &[] },
2136 Field { name: "title", kind: "string", required: false, values: &[] },
2137 ],
2138 },
2139 Operation {
2140 id: "add_default_labels",
2141 method: "POST",
2142 path: "/repos/{owner}/{name}/labels/defaults",
2143 tag: "Labels and milestones",
2144 summary: "Add the default labels",
2145 scope: Some("issues:write"),
2146 params: &[
2147 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2148 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2149 ],
2150 body: &[],
2151 },
2152 Operation {
2153 id: "create_label",
2154 method: "POST",
2155 path: "/repos/{owner}/{name}/labels",
2156 tag: "Labels and milestones",
2157 summary: "Create a label",
2158 scope: Some("issues:write"),
2159 params: &[
2160 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2161 Param { name: "name", 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: "label", kind: "string", required: true, values: &[] },
2167 ],
2168 },
2169 Operation {
2170 id: "create_milestone",
2171 method: "POST",
2172 path: "/repos/{owner}/{name}/milestones",
2173 tag: "Labels and milestones",
2174 summary: "Create a milestone",
2175 scope: Some("issues:write"),
2176 params: &[
2177 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2178 Param { name: "name", location: In::Path, kind: "string", 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: true, values: &[] },
2185 ],
2186 },
2187 Operation {
2188 id: "delete_label",
2189 method: "DELETE",
2190 path: "/repos/{owner}/{name}/labels/{label}",
2191 tag: "Labels and milestones",
2192 summary: "Delete a label",
2193 scope: Some("issues:write"),
2194 params: &[
2195 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2196 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2197 Param { name: "label", location: In::Path, kind: "string", required: true, values: &[] },
2198 ],
2199 body: &[],
2200 },
2201 Operation {
2202 id: "delete_milestone",
2203 method: "DELETE",
2204 path: "/repos/{owner}/{name}/milestones/{milestone}",
2205 tag: "Labels and milestones",
2206 summary: "Delete a milestone",
2207 scope: Some("issues:write"),
2208 params: &[
2209 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2210 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2211 Param { name: "milestone", location: In::Path, kind: "integer", required: true, values: &[] },
2212 ],
2213 body: &[],
2214 },
2215 Operation {
2216 id: "get_milestone",
2217 method: "GET",
2218 path: "/repos/{owner}/{name}/milestones/{milestone}",
2219 tag: "Labels and milestones",
2220 summary: "Get a milestone",
2221 scope: Some("repo:read"),
2222 params: &[
2223 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2224 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2225 Param { name: "milestone", location: In::Path, kind: "integer", required: true, values: &[] },
2226 ],
2227 body: &[],
2228 },
2229 Operation {
2230 id: "list_labels",
2231 method: "GET",
2232 path: "/repos/{owner}/{name}/labels",
2233 tag: "Labels and milestones",
2234 summary: "List labels",
2235 scope: Some("repo:read"),
2236 params: &[
2237 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2238 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2239 ],
2240 body: &[],
2241 },
2242 Operation {
2243 id: "list_milestones",
2244 method: "GET",
2245 path: "/repos/{owner}/{name}/milestones",
2246 tag: "Labels and milestones",
2247 summary: "List milestones",
2248 scope: Some("repo:read"),
2249 params: &[
2250 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2251 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2252 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
2253 ],
2254 body: &[],
2255 },
2256 Operation {
2257 id: "update_label",
2258 method: "PATCH",
2259 path: "/repos/{owner}/{name}/labels/{label}",
2260 tag: "Labels and milestones",
2261 summary: "Update a label",
2262 scope: Some("issues:write"),
2263 params: &[
2264 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2265 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2266 Param { name: "label", location: In::Path, kind: "string", required: true, values: &[] },
2267 ],
2268 body: &[
2269 Field { name: "color", kind: "string", required: false, values: &[] },
2270 Field { name: "description", kind: "string", required: false, values: &[] },
2271 Field { name: "new_name", kind: "string", required: false, values: &[] },
2272 ],
2273 },
2274 Operation {
2275 id: "update_milestone",
2276 method: "PATCH",
2277 path: "/repos/{owner}/{name}/milestones/{milestone}",
2278 tag: "Labels and milestones",
2279 summary: "Update a milestone",
2280 scope: Some("issues:write"),
2281 params: &[
2282 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2283 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2284 Param { name: "milestone", location: In::Path, kind: "integer", required: true, values: &[] },
2285 ],
2286 body: &[
2287 Field { name: "description", kind: "string", required: false, values: &[] },
2288 Field { name: "due_on", kind: "string", required: false, values: &[] },
2289 Field { name: "state", kind: "string", required: false, values: &["open", "closed"] },
2290 Field { name: "title", kind: "string", required: false, values: &[] },
2291 ],
2292 },
2293 Operation {
2294 id: "leave_workspace",
2295 method: "DELETE",
2296 path: "/user/memberships/{workspace}",
2297 tag: "Members",
2298 summary: "Leave a workspace",
2299 scope: Some("account:write"),
2300 params: &[
2301 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2302 ],
2303 body: &[],
2304 },
2305 Operation {
2306 id: "list_members",
2307 method: "GET",
2308 path: "/workspaces/{workspace}/members",
2309 tag: "Members",
2310 summary: "List a workspace's members",
2311 scope: Some("workspace:read"),
2312 params: &[
2313 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2314 ],
2315 body: &[],
2316 },
2317 Operation {
2318 id: "remove_member",
2319 method: "DELETE",
2320 path: "/workspaces/{workspace}/members/{username}",
2321 tag: "Members",
2322 summary: "Remove a member",
2323 scope: Some("workspace:admin"),
2324 params: &[
2325 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2326 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
2327 ],
2328 body: &[],
2329 },
2330 Operation {
2331 id: "transfer_ownership",
2332 method: "POST",
2333 path: "/workspaces/{workspace}/transfer_ownership",
2334 tag: "Members",
2335 summary: "Transfer a workspace's ownership",
2336 scope: Some("workspace:admin"),
2337 params: &[
2338 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2339 ],
2340 body: &[
2341 Field { name: "username", kind: "string", required: true, values: &[] },
2342 ],
2343 },
2344 Operation {
2345 id: "update_member",
2346 method: "PATCH",
2347 path: "/workspaces/{workspace}/members/{username}",
2348 tag: "Members",
2349 summary: "Change a member's role",
2350 scope: Some("workspace:admin"),
2351 params: &[
2352 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2353 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
2354 ],
2355 body: &[
2356 Field { name: "org_roles", kind: "array", required: false, values: &[] },
2357 Field { name: "role", kind: "string", required: false, values: &["owner", "member"] },
2358 ],
2359 },
2360 Operation {
2361 id: "recall",
2362 method: "GET",
2363 path: "/repos/{owner}/{name}/memory",
2364 tag: "Memory",
2365 summary: "Recall memory",
2366 scope: Some("memory:read"),
2367 params: &[
2368 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2369 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2370 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2371 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2372 ],
2373 body: &[],
2374 },
2375 Operation {
2376 id: "remember",
2377 method: "POST",
2378 path: "/repos/{owner}/{name}/memory",
2379 tag: "Memory",
2380 summary: "Remember something",
2381 scope: Some("memory:write"),
2382 params: &[
2383 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2384 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2385 ],
2386 body: &[
2387 Field { name: "from_number", kind: "integer", required: false, values: &[] },
2388 Field { name: "kind", kind: "string", required: false, values: &["fact", "convention", "decision", "gotcha"] },
2389 Field { name: "scope", kind: "string", required: false, values: &["project", "workspace"] },
2390 Field { name: "text", kind: "string", required: true, values: &[] },
2391 ],
2392 },
2393 Operation {
2394 id: "delete_issue_subscription",
2395 method: "DELETE",
2396 path: "/repos/{owner}/{name}/issues/{number}/subscription",
2397 tag: "Notifications",
2398 summary: "Unsubscribe from an issue",
2399 scope: Some("notifications:write"),
2400 params: &[
2401 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2402 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2403 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2404 ],
2405 body: &[
2406 Field { name: "id", kind: "string", required: false, values: &[] },
2407 ],
2408 },
2409 Operation {
2410 id: "delete_repo_subscription",
2411 method: "DELETE",
2412 path: "/repos/{owner}/{name}/subscription",
2413 tag: "Notifications",
2414 summary: "Stop watching a repository",
2415 scope: Some("notifications:write"),
2416 params: &[
2417 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2418 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2419 ],
2420 body: &[],
2421 },
2422 Operation {
2423 id: "delete_thread_subscription",
2424 method: "DELETE",
2425 path: "/notifications/threads/{id}/subscription",
2426 tag: "Notifications",
2427 summary: "Unsubscribe from a thread",
2428 scope: Some("notifications:write"),
2429 params: &[
2430 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2431 ],
2432 body: &[
2433 Field { name: "number", kind: "integer", required: false, values: &[] },
2434 ],
2435 },
2436 Operation {
2437 id: "get_issue_subscription",
2438 method: "GET",
2439 path: "/repos/{owner}/{name}/issues/{number}/subscription",
2440 tag: "Notifications",
2441 summary: "Get your subscription to an issue",
2442 scope: Some("notifications:read"),
2443 params: &[
2444 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2445 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2446 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2447 ],
2448 body: &[],
2449 },
2450 Operation {
2451 id: "get_notification_thread",
2452 method: "GET",
2453 path: "/notifications/threads/{id}",
2454 tag: "Notifications",
2455 summary: "Get a thread",
2456 scope: Some("notifications:read"),
2457 params: &[
2458 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2459 ],
2460 body: &[],
2461 },
2462 Operation {
2463 id: "get_repo_subscription",
2464 method: "GET",
2465 path: "/repos/{owner}/{name}/subscription",
2466 tag: "Notifications",
2467 summary: "Get how you watch a repository",
2468 scope: Some("notifications:read"),
2469 params: &[
2470 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2471 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2472 ],
2473 body: &[],
2474 },
2475 Operation {
2476 id: "get_thread_subscription",
2477 method: "GET",
2478 path: "/notifications/threads/{id}/subscription",
2479 tag: "Notifications",
2480 summary: "Get a thread subscription",
2481 scope: Some("notifications:read"),
2482 params: &[
2483 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2484 ],
2485 body: &[],
2486 },
2487 Operation {
2488 id: "list_notifications",
2489 method: "GET",
2490 path: "/notifications",
2491 tag: "Notifications",
2492 summary: "List notifications",
2493 scope: Some("notifications:read"),
2494 params: &[
2495 Param { name: "all", location: In::Query, kind: "boolean", required: false, values: &[] },
2496 Param { name: "participating", location: In::Query, kind: "boolean", required: false, values: &[] },
2497 Param { name: "view", location: In::Query, kind: "string", required: false, values: &["inbox", "saved", "done"] },
2498 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"] },
2499 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["error", "warning", "success", "info"] },
2500 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
2501 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
2502 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2503 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
2504 ],
2505 body: &[],
2506 },
2507 Operation {
2508 id: "list_repo_notifications",
2509 method: "GET",
2510 path: "/repos/{owner}/{name}/notifications",
2511 tag: "Notifications",
2512 summary: "List a repository's notifications",
2513 scope: Some("notifications:read"),
2514 params: &[
2515 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2516 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2517 Param { name: "all", location: In::Query, kind: "boolean", required: false, values: &[] },
2518 Param { name: "participating", location: In::Query, kind: "boolean", required: false, values: &[] },
2519 Param { name: "view", location: In::Query, kind: "string", required: false, values: &["inbox", "saved", "done"] },
2520 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"] },
2521 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["error", "warning", "success", "info"] },
2522 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
2523 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
2524 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2525 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
2526 ],
2527 body: &[],
2528 },
2529 Operation {
2530 id: "list_watched_repos",
2531 method: "GET",
2532 path: "/user/subscriptions",
2533 tag: "Notifications",
2534 summary: "List repositories you watch",
2535 scope: Some("notifications:read"),
2536 params: &[],
2537 body: &[],
2538 },
2539 Operation {
2540 id: "mark_notifications_read",
2541 method: "PUT",
2542 path: "/notifications",
2543 tag: "Notifications",
2544 summary: "Mark notifications read",
2545 scope: Some("notifications:write"),
2546 params: &[],
2547 body: &[
2548 Field { name: "last_read_at", kind: "string", required: false, values: &[] },
2549 Field { name: "read", kind: "boolean", required: false, values: &[] },
2550 ],
2551 },
2552 Operation {
2553 id: "mark_repo_notifications_read",
2554 method: "PUT",
2555 path: "/repos/{owner}/{name}/notifications",
2556 tag: "Notifications",
2557 summary: "Mark a repository's notifications read",
2558 scope: Some("notifications:write"),
2559 params: &[
2560 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2561 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2562 ],
2563 body: &[
2564 Field { name: "last_read_at", kind: "string", required: false, values: &[] },
2565 Field { name: "read", kind: "boolean", required: false, values: &[] },
2566 ],
2567 },
2568 Operation {
2569 id: "mark_thread_done",
2570 method: "DELETE",
2571 path: "/notifications/threads/{id}",
2572 tag: "Notifications",
2573 summary: "Mark a thread done",
2574 scope: Some("notifications:write"),
2575 params: &[
2576 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2577 ],
2578 body: &[
2579 Field { name: "done", kind: "boolean", required: false, values: &[] },
2580 ],
2581 },
2582 Operation {
2583 id: "mark_thread_read",
2584 method: "PATCH",
2585 path: "/notifications/threads/{id}",
2586 tag: "Notifications",
2587 summary: "Mark a thread read",
2588 scope: Some("notifications:write"),
2589 params: &[
2590 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2591 ],
2592 body: &[
2593 Field { name: "read", kind: "boolean", required: false, values: &[] },
2594 ],
2595 },
2596 Operation {
2597 id: "save_thread",
2598 method: "PUT",
2599 path: "/notifications/threads/{id}/saved",
2600 tag: "Notifications",
2601 summary: "Save a thread",
2602 scope: Some("notifications:write"),
2603 params: &[
2604 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2605 ],
2606 body: &[
2607 Field { name: "saved", kind: "boolean", required: false, values: &[] },
2608 ],
2609 },
2610 Operation {
2611 id: "set_issue_subscription",
2612 method: "PUT",
2613 path: "/repos/{owner}/{name}/issues/{number}/subscription",
2614 tag: "Notifications",
2615 summary: "Subscribe to an issue",
2616 scope: Some("notifications:write"),
2617 params: &[
2618 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2619 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2620 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2621 ],
2622 body: &[
2623 Field { name: "id", kind: "string", required: false, values: &[] },
2624 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2625 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2626 ],
2627 },
2628 Operation {
2629 id: "set_repo_subscription",
2630 method: "PUT",
2631 path: "/repos/{owner}/{name}/subscription",
2632 tag: "Notifications",
2633 summary: "Watch a repository",
2634 scope: Some("notifications:write"),
2635 params: &[
2636 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2637 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2638 ],
2639 body: &[
2640 Field { name: "events", kind: "array", required: false, values: &[] },
2641 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2642 Field { name: "level", kind: "string", required: false, values: &["participating", "all", "ignore", "custom"] },
2643 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2644 ],
2645 },
2646 Operation {
2647 id: "set_thread_subscription",
2648 method: "PUT",
2649 path: "/notifications/threads/{id}/subscription",
2650 tag: "Notifications",
2651 summary: "Set a thread subscription",
2652 scope: Some("notifications:write"),
2653 params: &[
2654 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2655 ],
2656 body: &[
2657 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2658 Field { name: "number", kind: "integer", required: false, values: &[] },
2659 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2660 ],
2661 },
2662 Operation {
2663 id: "snooze_thread",
2664 method: "PUT",
2665 path: "/notifications/threads/{id}/snooze",
2666 tag: "Notifications",
2667 summary: "Snooze a thread",
2668 scope: Some("notifications:write"),
2669 params: &[
2670 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2671 ],
2672 body: &[
2673 Field { name: "until", kind: "string", required: false, values: &[] },
2674 ],
2675 },
2676 Operation {
2677 id: "unsave_thread",
2678 method: "DELETE",
2679 path: "/notifications/threads/{id}/saved",
2680 tag: "Notifications",
2681 summary: "Unsave a thread",
2682 scope: Some("notifications:write"),
2683 params: &[
2684 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2685 ],
2686 body: &[
2687 Field { name: "saved", kind: "boolean", required: false, values: &[] },
2688 ],
2689 },
2690 Operation {
2691 id: "unsnooze_thread",
2692 method: "DELETE",
2693 path: "/notifications/threads/{id}/snooze",
2694 tag: "Notifications",
2695 summary: "Bring a snoozed thread back",
2696 scope: Some("notifications:write"),
2697 params: &[
2698 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2699 ],
2700 body: &[
2701 Field { name: "until", kind: "string", required: false, values: &[] },
2702 ],
2703 },
2704 Operation {
2705 id: "create_ingest_token",
2706 method: "POST",
2707 path: "/workspaces/{workspace}/projects/{project}/observability/tokens",
2708 tag: "Observability",
2709 summary: "Create an ingest token",
2710 scope: Some("observability:write"),
2711 params: &[
2712 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2713 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2714 ],
2715 body: &[
2716 Field { name: "name", kind: "string", required: true, values: &[] },
2717 ],
2718 },
2719 Operation {
2720 id: "create_telemetry_export",
2721 method: "POST",
2722 path: "/workspaces/{workspace}/projects/{project}/observability/exports",
2723 tag: "Observability",
2724 summary: "Create a telemetry export",
2725 scope: Some("observability:write"),
2726 params: &[
2727 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2728 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2729 ],
2730 body: &[
2731 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
2732 Field { name: "endpoint", kind: "string", required: true, values: &[] },
2733 Field { name: "headers", kind: "object", required: false, values: &[] },
2734 Field { name: "name", kind: "string", required: true, values: &[] },
2735 Field { name: "signals", kind: "array", required: false, values: &[] },
2736 ],
2737 },
2738 Operation {
2739 id: "delete_ingest_token",
2740 method: "DELETE",
2741 path: "/workspaces/{workspace}/projects/{project}/observability/tokens/{id}",
2742 tag: "Observability",
2743 summary: "Delete an ingest token",
2744 scope: Some("observability:write"),
2745 params: &[
2746 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2747 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2748 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2749 ],
2750 body: &[],
2751 },
2752 Operation {
2753 id: "delete_telemetry_export",
2754 method: "DELETE",
2755 path: "/workspaces/{workspace}/projects/{project}/observability/exports/{id}",
2756 tag: "Observability",
2757 summary: "Delete a telemetry export",
2758 scope: Some("observability:write"),
2759 params: &[
2760 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2761 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2762 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2763 ],
2764 body: &[],
2765 },
2766 Operation {
2767 id: "get_metric",
2768 method: "GET",
2769 path: "/workspaces/{workspace}/projects/{project}/observability/metrics/{metric}",
2770 tag: "Observability",
2771 summary: "Get a metric",
2772 scope: Some("observability:read"),
2773 params: &[
2774 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2775 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2776 Param { name: "metric", location: In::Path, kind: "string", required: true, values: &[] },
2777 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2778 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2779 Param { name: "aggregate", location: In::Query, kind: "string", required: false, values: &["avg", "sum", "min", "max", "p50", "p95", "p99"] },
2780 Param { name: "group_by", location: In::Query, kind: "string", required: false, values: &[] },
2781 Param { name: "step", location: In::Query, kind: "integer", required: false, values: &[] },
2782 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2783 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2784 ],
2785 body: &[],
2786 },
2787 Operation {
2788 id: "get_observability_overview",
2789 method: "GET",
2790 path: "/workspaces/{workspace}/projects/{project}/observability/overview",
2791 tag: "Observability",
2792 summary: "Get a project's observability overview",
2793 scope: Some("observability:read"),
2794 params: &[
2795 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2796 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2797 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2798 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2799 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2800 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2801 Param { name: "deployment_id", location: In::Query, kind: "string", required: false, values: &[] },
2802 Param { name: "step", location: In::Query, kind: "integer", required: false, values: &[] },
2803 ],
2804 body: &[],
2805 },
2806 Operation {
2807 id: "get_observability_settings",
2808 method: "GET",
2809 path: "/workspaces/{workspace}/projects/{project}/observability/settings",
2810 tag: "Observability",
2811 summary: "Get observability settings",
2812 scope: Some("observability:read"),
2813 params: &[
2814 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2815 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2816 ],
2817 body: &[],
2818 },
2819 Operation {
2820 id: "get_observability_usage",
2821 method: "GET",
2822 path: "/workspaces/{workspace}/projects/{project}/observability/usage",
2823 tag: "Observability",
2824 summary: "Get observability usage",
2825 scope: Some("observability:read"),
2826 params: &[
2827 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2828 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2829 ],
2830 body: &[],
2831 },
2832 Operation {
2833 id: "get_request",
2834 method: "GET",
2835 path: "/workspaces/{workspace}/projects/{project}/observability/requests/{id}",
2836 tag: "Observability",
2837 summary: "Get a request",
2838 scope: Some("observability:read"),
2839 params: &[
2840 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2841 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2842 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2843 ],
2844 body: &[],
2845 },
2846 Operation {
2847 id: "get_trace",
2848 method: "GET",
2849 path: "/workspaces/{workspace}/projects/{project}/observability/traces/{trace_id}",
2850 tag: "Observability",
2851 summary: "Get a trace",
2852 scope: Some("observability:read"),
2853 params: &[
2854 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2855 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2856 Param { name: "trace_id", location: In::Path, kind: "string", required: true, values: &[] },
2857 ],
2858 body: &[],
2859 },
2860 Operation {
2861 id: "list_errors",
2862 method: "GET",
2863 path: "/workspaces/{workspace}/projects/{project}/observability/errors",
2864 tag: "Observability",
2865 summary: "List errors",
2866 scope: Some("observability:read"),
2867 params: &[
2868 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2869 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2870 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "resolved", "ignored"] },
2871 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2872 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2873 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2874 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2875 ],
2876 body: &[],
2877 },
2878 Operation {
2879 id: "list_ingest_tokens",
2880 method: "GET",
2881 path: "/workspaces/{workspace}/projects/{project}/observability/tokens",
2882 tag: "Observability",
2883 summary: "List ingest tokens",
2884 scope: Some("observability:read"),
2885 params: &[
2886 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2887 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2888 ],
2889 body: &[],
2890 },
2891 Operation {
2892 id: "list_logs",
2893 method: "GET",
2894 path: "/workspaces/{workspace}/projects/{project}/observability/logs",
2895 tag: "Observability",
2896 summary: "List logs",
2897 scope: Some("observability:read"),
2898 params: &[
2899 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2900 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2901 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2902 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2903 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2904 Param { name: "level", location: In::Query, kind: "string", required: false, values: &[] },
2905 Param { name: "trace_id", location: In::Query, kind: "string", required: false, values: &[] },
2906 Param { name: "request_id", location: In::Query, kind: "string", required: false, values: &[] },
2907 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2908 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2909 Param { name: "deployment_id", location: In::Query, kind: "string", required: false, values: &[] },
2910 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2911 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2912 ],
2913 body: &[],
2914 },
2915 Operation {
2916 id: "list_metrics",
2917 method: "GET",
2918 path: "/workspaces/{workspace}/projects/{project}/observability/metrics",
2919 tag: "Observability",
2920 summary: "List metrics",
2921 scope: Some("observability:read"),
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 },
2928 Operation {
2929 id: "list_requests",
2930 method: "GET",
2931 path: "/workspaces/{workspace}/projects/{project}/observability/requests",
2932 tag: "Observability",
2933 summary: "List requests",
2934 scope: Some("observability:read"),
2935 params: &[
2936 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2937 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2938 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2939 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2940 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2941 Param { name: "status", location: In::Query, kind: "string", required: false, values: &[] },
2942 Param { name: "errors_only", location: In::Query, kind: "boolean", required: false, values: &[] },
2943 Param { name: "route", location: In::Query, kind: "string", required: false, values: &[] },
2944 Param { name: "min_duration_ms", location: In::Query, kind: "integer", required: false, values: &[] },
2945 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2946 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2947 Param { name: "deployment_id", location: In::Query, kind: "string", required: false, values: &[] },
2948 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2949 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2950 ],
2951 body: &[],
2952 },
2953 Operation {
2954 id: "list_telemetry_exports",
2955 method: "GET",
2956 path: "/workspaces/{workspace}/projects/{project}/observability/exports",
2957 tag: "Observability",
2958 summary: "List telemetry exports",
2959 scope: Some("observability:read"),
2960 params: &[
2961 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2962 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2963 ],
2964 body: &[],
2965 },
2966 Operation {
2967 id: "list_traces",
2968 method: "GET",
2969 path: "/workspaces/{workspace}/projects/{project}/observability/traces",
2970 tag: "Observability",
2971 summary: "List traces",
2972 scope: Some("observability:read"),
2973 params: &[
2974 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2975 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2976 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2977 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2978 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2979 Param { name: "errors_only", location: In::Query, kind: "boolean", required: false, values: &[] },
2980 Param { name: "min_duration_ms", location: In::Query, kind: "integer", required: false, values: &[] },
2981 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2982 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2983 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2984 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2985 ],
2986 body: &[],
2987 },
2988 Operation {
2989 id: "update_error",
2990 method: "PATCH",
2991 path: "/workspaces/{workspace}/projects/{project}/observability/errors/{fingerprint}",
2992 tag: "Observability",
2993 summary: "Update an error",
2994 scope: Some("observability:write"),
2995 params: &[
2996 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2997 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2998 Param { name: "fingerprint", location: In::Path, kind: "string", required: true, values: &[] },
2999 ],
3000 body: &[
3001 Field { name: "issue_number", kind: "integer", required: false, values: &[] },
3002 Field { name: "state", kind: "string", required: false, values: &["open", "resolved", "ignored"] },
3003 ],
3004 },
3005 Operation {
3006 id: "update_observability_settings",
3007 method: "PATCH",
3008 path: "/workspaces/{workspace}/projects/{project}/observability/settings",
3009 tag: "Observability",
3010 summary: "Update observability settings",
3011 scope: Some("observability:write"),
3012 params: &[
3013 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3014 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3015 ],
3016 body: &[
3017 Field { name: "deployments", kind: "boolean", required: false, values: &[] },
3018 Field { name: "retention_days", kind: "integer", required: false, values: &[] },
3019 ],
3020 },
3021 Operation {
3022 id: "update_telemetry_export",
3023 method: "PATCH",
3024 path: "/workspaces/{workspace}/projects/{project}/observability/exports/{id}",
3025 tag: "Observability",
3026 summary: "Update a telemetry export",
3027 scope: Some("observability:write"),
3028 params: &[
3029 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3030 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3031 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3032 ],
3033 body: &[
3034 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
3035 Field { name: "endpoint", kind: "string", required: false, values: &[] },
3036 Field { name: "headers", kind: "object", required: false, values: &[] },
3037 Field { name: "name", kind: "string", required: false, values: &[] },
3038 Field { name: "signals", kind: "array", required: false, values: &[] },
3039 ],
3040 },
3041 Operation {
3042 id: "delete_package",
3043 method: "DELETE",
3044 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}",
3045 tag: "Packages",
3046 summary: "Delete a package",
3047 scope: Some("packages:delete"),
3048 params: &[
3049 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3050 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3051 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3052 ],
3053 body: &[],
3054 },
3055 Operation {
3056 id: "delete_package_version",
3057 method: "DELETE",
3058 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions/{version_id}",
3059 tag: "Packages",
3060 summary: "Delete a package version",
3061 scope: Some("packages:delete"),
3062 params: &[
3063 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3064 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3065 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3066 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
3067 ],
3068 body: &[],
3069 },
3070 Operation {
3071 id: "get_package",
3072 method: "GET",
3073 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}",
3074 tag: "Packages",
3075 summary: "Get a package",
3076 scope: Some("packages:read"),
3077 params: &[
3078 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3079 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3080 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3081 ],
3082 body: &[],
3083 },
3084 Operation {
3085 id: "get_package_version",
3086 method: "GET",
3087 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions/{version_id}",
3088 tag: "Packages",
3089 summary: "Get a package version",
3090 scope: Some("packages:read"),
3091 params: &[
3092 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3093 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3094 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3095 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
3096 ],
3097 body: &[],
3098 },
3099 Operation {
3100 id: "link_package",
3101 method: "PUT",
3102 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/repository",
3103 tag: "Packages",
3104 summary: "Link a package to a repository",
3105 scope: Some("packages:write"),
3106 params: &[
3107 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3108 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3109 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3110 ],
3111 body: &[
3112 Field { name: "repository", kind: "string", required: true, values: &[] },
3113 ],
3114 },
3115 Operation {
3116 id: "list_package_access",
3117 method: "GET",
3118 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/access",
3119 tag: "Packages",
3120 summary: "List who has access to a package",
3121 scope: Some("packages:read"),
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: "list_package_actions_access",
3131 method: "GET",
3132 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/actions-access",
3133 tag: "Packages",
3134 summary: "List a package's Actions access",
3135 scope: Some("packages:read"),
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 ],
3141 body: &[],
3142 },
3143 Operation {
3144 id: "list_package_versions",
3145 method: "GET",
3146 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions",
3147 tag: "Packages",
3148 summary: "List a package's versions",
3149 scope: Some("packages:read"),
3150 params: &[
3151 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3152 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3153 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3154 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "deleted"] },
3155 ],
3156 body: &[],
3157 },
3158 Operation {
3159 id: "list_packages",
3160 method: "GET",
3161 path: "/workspaces/{workspace}/packages",
3162 tag: "Packages",
3163 summary: "List a workspace's packages",
3164 scope: Some("packages:read"),
3165 params: &[
3166 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3167 Param { name: "package_type", location: In::Query, kind: "string", required: false, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3168 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
3169 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "deleted"] },
3170 ],
3171 body: &[],
3172 },
3173 Operation {
3174 id: "remove_package_access",
3175 method: "DELETE",
3176 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/access",
3177 tag: "Packages",
3178 summary: "Remove a person's or team's role on a package",
3179 scope: Some("packages:write"),
3180 params: &[
3181 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3182 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3183 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3184 ],
3185 body: &[
3186 Field { name: "team", kind: "string", required: false, values: &[] },
3187 Field { name: "username", kind: "string", required: false, values: &[] },
3188 ],
3189 },
3190 Operation {
3191 id: "remove_package_actions_access",
3192 method: "DELETE",
3193 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/actions-access/{repository}",
3194 tag: "Packages",
3195 summary: "Remove a repository's Actions access to a package",
3196 scope: Some("packages:write"),
3197 params: &[
3198 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3199 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3200 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3201 Param { name: "repository", location: In::Path, kind: "string", required: true, values: &[] },
3202 ],
3203 body: &[],
3204 },
3205 Operation {
3206 id: "restore_package",
3207 method: "POST",
3208 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/restore",
3209 tag: "Packages",
3210 summary: "Restore a package",
3211 scope: Some("packages:delete"),
3212 params: &[
3213 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3214 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3215 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3216 ],
3217 body: &[],
3218 },
3219 Operation {
3220 id: "restore_package_version",
3221 method: "POST",
3222 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions/{version_id}/restore",
3223 tag: "Packages",
3224 summary: "Restore a package version",
3225 scope: Some("packages:delete"),
3226 params: &[
3227 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3228 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3229 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3230 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
3231 ],
3232 body: &[],
3233 },
3234 Operation {
3235 id: "set_package_access",
3236 method: "PUT",
3237 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/access",
3238 tag: "Packages",
3239 summary: "Give a person or team a role on a package",
3240 scope: Some("packages:write"),
3241 params: &[
3242 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3243 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3244 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3245 ],
3246 body: &[
3247 Field { name: "role", kind: "string", required: true, values: &["read", "write", "admin"] },
3248 Field { name: "team", kind: "string", required: false, values: &[] },
3249 Field { name: "username", kind: "string", required: false, values: &[] },
3250 ],
3251 },
3252 Operation {
3253 id: "set_package_actions_access",
3254 method: "PUT",
3255 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/actions-access",
3256 tag: "Packages",
3257 summary: "Give a repository's workflows access to a package",
3258 scope: Some("packages:write"),
3259 params: &[
3260 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3261 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3262 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3263 ],
3264 body: &[
3265 Field { name: "repository", kind: "string", required: true, values: &[] },
3266 Field { name: "role", kind: "string", required: true, values: &["read", "write"] },
3267 ],
3268 },
3269 Operation {
3270 id: "unlink_package",
3271 method: "DELETE",
3272 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/repository",
3273 tag: "Packages",
3274 summary: "Unlink a package from its repository",
3275 scope: Some("packages:write"),
3276 params: &[
3277 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3278 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3279 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3280 ],
3281 body: &[],
3282 },
3283 Operation {
3284 id: "update_package",
3285 method: "PATCH",
3286 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}",
3287 tag: "Packages",
3288 summary: "Update a package",
3289 scope: Some("packages:write"),
3290 params: &[
3291 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3292 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3293 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3294 ],
3295 body: &[
3296 Field { name: "inherit_access", kind: "boolean", required: false, values: &[] },
3297 Field { name: "visibility", kind: "string", required: false, values: &["public", "private"] },
3298 ],
3299 },
3300 Operation {
3301 id: "get_token_policy",
3302 method: "GET",
3303 path: "/workspaces/{workspace}/personal-access-token-policy",
3304 tag: "Personal access tokens",
3305 summary: "Get a workspace's personal access token policy",
3306 scope: Some("workspace:read"),
3307 params: &[
3308 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3309 ],
3310 body: &[],
3311 },
3312 Operation {
3313 id: "list_member_tokens",
3314 method: "GET",
3315 path: "/workspaces/{workspace}/personal-access-tokens",
3316 tag: "Personal access tokens",
3317 summary: "List the personal access tokens that reach a workspace",
3318 scope: Some("access:read"),
3319 params: &[
3320 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3321 ],
3322 body: &[],
3323 },
3324 Operation {
3325 id: "list_token_requests",
3326 method: "GET",
3327 path: "/workspaces/{workspace}/personal-access-token-requests",
3328 tag: "Personal access tokens",
3329 summary: "List personal access tokens waiting for approval",
3330 scope: Some("access:read"),
3331 params: &[
3332 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3333 ],
3334 body: &[],
3335 },
3336 Operation {
3337 id: "review_token_request",
3338 method: "POST",
3339 path: "/workspaces/{workspace}/personal-access-token-requests/{id}",
3340 tag: "Personal access tokens",
3341 summary: "Approve or deny a personal access token",
3342 scope: Some("access:admin"),
3343 params: &[
3344 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3345 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3346 ],
3347 body: &[
3348 Field { name: "decision", kind: "string", required: true, values: &["approve", "deny"] },
3349 Field { name: "reason", kind: "string", required: false, values: &[] },
3350 ],
3351 },
3352 Operation {
3353 id: "revoke_member_token",
3354 method: "POST",
3355 path: "/workspaces/{workspace}/personal-access-tokens/{id}",
3356 tag: "Personal access tokens",
3357 summary: "Revoke a member's token in a workspace",
3358 scope: Some("access:admin"),
3359 params: &[
3360 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3361 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3362 ],
3363 body: &[
3364 Field { name: "reason", kind: "string", required: false, values: &[] },
3365 ],
3366 },
3367 Operation {
3368 id: "set_token_policy",
3369 method: "PATCH",
3370 path: "/workspaces/{workspace}/personal-access-token-policy",
3371 tag: "Personal access tokens",
3372 summary: "Set a workspace's personal access token policy",
3373 scope: Some("workspace:admin"),
3374 params: &[
3375 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3376 ],
3377 body: &[
3378 Field { name: "allow_tokens_for_all_workspaces", kind: "boolean", required: false, values: &[] },
3379 Field { name: "allow_tokens_for_this_workspace", kind: "boolean", required: false, values: &[] },
3380 Field { name: "forbid_no_expiry", kind: "boolean", required: false, values: &[] },
3381 Field { name: "max_lifetime_days", kind: "integer", required: false, values: &[] },
3382 Field { name: "require_approval", kind: "boolean", required: false, values: &[] },
3383 ],
3384 },
3385 Operation {
3386 id: "list_pinned_projects",
3387 method: "GET",
3388 path: "/user/pinned_projects/{workspace}",
3389 tag: "Pinned projects",
3390 summary: "List your pinned projects",
3391 scope: Some("account:read"),
3392 params: &[
3393 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3394 ],
3395 body: &[],
3396 },
3397 Operation {
3398 id: "pin_project",
3399 method: "PUT",
3400 path: "/user/pinned_projects/{workspace}/{project}",
3401 tag: "Pinned projects",
3402 summary: "Pin a project",
3403 scope: Some("account:write"),
3404 params: &[
3405 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3406 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3407 ],
3408 body: &[
3409 Field { name: "position", kind: "integer", required: false, values: &[] },
3410 ],
3411 },
3412 Operation {
3413 id: "reorder_pinned_projects",
3414 method: "PUT",
3415 path: "/user/pinned_projects/{workspace}",
3416 tag: "Pinned projects",
3417 summary: "Reorder your pinned projects",
3418 scope: Some("account:write"),
3419 params: &[
3420 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3421 ],
3422 body: &[
3423 Field { name: "projects", kind: "array", required: true, values: &[] },
3424 ],
3425 },
3426 Operation {
3427 id: "unpin_project",
3428 method: "DELETE",
3429 path: "/user/pinned_projects/{workspace}/{project}",
3430 tag: "Pinned projects",
3431 summary: "Unpin a project",
3432 scope: Some("account:write"),
3433 params: &[
3434 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3435 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3436 ],
3437 body: &[],
3438 },
3439 Operation {
3440 id: "get_project",
3441 method: "GET",
3442 path: "/workspaces/{workspace}/projects/{project}",
3443 tag: "Projects",
3444 summary: "Get a project",
3445 scope: Some("repo:read"),
3446 params: &[
3447 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3448 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3449 ],
3450 body: &[],
3451 },
3452 Operation {
3453 id: "list_projects",
3454 method: "GET",
3455 path: "/workspaces/{workspace}/projects",
3456 tag: "Projects",
3457 summary: "List a workspace's projects",
3458 scope: Some("repo:read"),
3459 params: &[
3460 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3461 ],
3462 body: &[],
3463 },
3464 Operation {
3465 id: "update_project",
3466 method: "PATCH",
3467 path: "/workspaces/{workspace}/projects/{project}",
3468 tag: "Projects",
3469 summary: "Update a project",
3470 scope: Some("repo:write"),
3471 params: &[
3472 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3473 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3474 ],
3475 body: &[
3476 Field { name: "description", kind: "string", required: false, values: &[] },
3477 Field { name: "docs_url", kind: "string", required: false, values: &[] },
3478 Field { name: "homepage", kind: "string", required: false, values: &[] },
3479 Field { name: "kind", kind: "string", required: false, values: &["auto", "app", "library", "tool", "docs", "other"] },
3480 Field { name: "links", kind: "array", required: false, values: &[] },
3481 Field { name: "name", kind: "string", required: false, values: &[] },
3482 Field { name: "production_url", kind: "string", required: false, values: &[] },
3483 Field { name: "root_dir", kind: "string", required: false, values: &[] },
3484 Field { name: "runs", kind: "string", required: false, values: &["auto", "g1t", "elsewhere"] },
3485 ],
3486 },
3487 Operation {
3488 id: "close_pull_request",
3489 method: "POST",
3490 path: "/repos/{owner}/{name}/pulls/{number}/close",
3491 tag: "Pull requests",
3492 summary: "Close a pull request",
3493 scope: Some("pull_requests:write"),
3494 params: &[
3495 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3496 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3497 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3498 ],
3499 body: &[],
3500 },
3501 Operation {
3502 id: "convert_pull_request_to_draft",
3503 method: "POST",
3504 path: "/repos/{owner}/{name}/pulls/{number}/draft",
3505 tag: "Pull requests",
3506 summary: "Convert a pull request to a draft",
3507 scope: Some("pull_requests:write"),
3508 params: &[
3509 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3510 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3511 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3512 ],
3513 body: &[],
3514 },
3515 Operation {
3516 id: "create_pull_request",
3517 method: "POST",
3518 path: "/repos/{owner}/{name}/pulls",
3519 tag: "Pull requests",
3520 summary: "Create a pull request",
3521 scope: Some("pull_requests:write"),
3522 params: &[
3523 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3524 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3525 ],
3526 body: &[
3527 Field { name: "agent", kind: "string", required: false, values: &[] },
3528 Field { name: "base", kind: "string", required: false, values: &[] },
3529 Field { name: "body", kind: "string", required: false, values: &[] },
3530 Field { name: "branch", kind: "string", required: false, values: &[] },
3531 Field { name: "issue", kind: "integer", required: false, values: &[] },
3532 Field { name: "title", kind: "string", required: false, values: &[] },
3533 ],
3534 },
3535 Operation {
3536 id: "get_merge_queue",
3537 method: "GET",
3538 path: "/repos/{owner}/{name}/queue",
3539 tag: "Pull requests",
3540 summary: "Get the merge queue",
3541 scope: Some("pull_requests:read"),
3542 params: &[
3543 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3544 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3545 ],
3546 body: &[],
3547 },
3548 Operation {
3549 id: "get_pull_request",
3550 method: "GET",
3551 path: "/repos/{owner}/{name}/pulls/{number}",
3552 tag: "Pull requests",
3553 summary: "Get a pull request",
3554 scope: Some("pull_requests:read"),
3555 params: &[
3556 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3557 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3558 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3559 ],
3560 body: &[],
3561 },
3562 Operation {
3563 id: "get_pull_request_changes",
3564 method: "GET",
3565 path: "/repos/{owner}/{name}/pulls/{number}/changes",
3566 tag: "Pull requests",
3567 summary: "Get a pull request's changes",
3568 scope: Some("pull_requests:read"),
3569 params: &[
3570 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3571 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3572 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3573 ],
3574 body: &[],
3575 },
3576 Operation {
3577 id: "list_pull_requests",
3578 method: "GET",
3579 path: "/repos/{owner}/{name}/pulls",
3580 tag: "Pull requests",
3581 summary: "List pull requests",
3582 scope: Some("pull_requests:read"),
3583 params: &[
3584 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3585 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3586 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
3587 Param { name: "label", location: In::Query, kind: "string", required: false, values: &[] },
3588 Param { name: "milestone", location: In::Query, kind: "integer", required: false, values: &[] },
3589 Param { name: "base", location: In::Query, kind: "string", required: false, values: &[] },
3590 ],
3591 body: &[],
3592 },
3593 Operation {
3594 id: "mark_pull_request_ready",
3595 method: "POST",
3596 path: "/repos/{owner}/{name}/pulls/{number}/ready",
3597 tag: "Pull requests",
3598 summary: "Mark a pull request ready",
3599 scope: Some("pull_requests:write"),
3600 params: &[
3601 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3602 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3603 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3604 ],
3605 body: &[
3606 Field { name: "summary", kind: "string", required: true, values: &[] },
3607 ],
3608 },
3609 Operation {
3610 id: "merge_pull_request",
3611 method: "POST",
3612 path: "/repos/{owner}/{name}/pulls/{number}/merge",
3613 tag: "Pull requests",
3614 summary: "Merge a pull request",
3615 scope: Some("pull_requests:write"),
3616 params: &[
3617 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3618 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3619 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3620 ],
3621 body: &[
3622 Field { name: "bypass_rules", kind: "boolean", required: false, values: &[] },
3623 Field { name: "ignore_checks", kind: "boolean", required: false, values: &[] },
3624 Field { name: "keep_issue_open", kind: "boolean", required: false, values: &[] },
3625 ],
3626 },
3627 Operation {
3628 id: "remove_requested_reviewers",
3629 method: "DELETE",
3630 path: "/repos/{owner}/{name}/pulls/{number}/requested_reviewers",
3631 tag: "Pull requests",
3632 summary: "Remove requested reviewers",
3633 scope: Some("pull_requests:write"),
3634 params: &[
3635 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3636 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3637 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3638 ],
3639 body: &[
3640 Field { name: "reviewers", kind: "array", required: false, values: &[] },
3641 Field { name: "team_reviewers", kind: "array", required: false, values: &[] },
3642 ],
3643 },
3644 Operation {
3645 id: "reopen_pull_request",
3646 method: "POST",
3647 path: "/repos/{owner}/{name}/pulls/{number}/reopen",
3648 tag: "Pull requests",
3649 summary: "Reopen a pull request",
3650 scope: Some("pull_requests:write"),
3651 params: &[
3652 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3653 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3654 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3655 ],
3656 body: &[],
3657 },
3658 Operation {
3659 id: "request_reviewers",
3660 method: "POST",
3661 path: "/repos/{owner}/{name}/pulls/{number}/requested_reviewers",
3662 tag: "Pull requests",
3663 summary: "Request reviewers",
3664 scope: Some("pull_requests:write"),
3665 params: &[
3666 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3667 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3668 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3669 ],
3670 body: &[
3671 Field { name: "reviewers", kind: "array", required: false, values: &[] },
3672 Field { name: "team_reviewers", kind: "array", required: false, values: &[] },
3673 ],
3674 },
3675 Operation {
3676 id: "review_pull_request",
3677 method: "POST",
3678 path: "/repos/{owner}/{name}/pulls/{number}/reviews",
3679 tag: "Pull requests",
3680 summary: "Review a pull request",
3681 scope: Some("pull_requests:write"),
3682 params: &[
3683 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3684 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3685 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3686 ],
3687 body: &[
3688 Field { name: "body", kind: "string", required: false, values: &[] },
3689 Field { name: "verdict", kind: "string", required: true, values: &["approve", "request_changes"] },
3690 ],
3691 },
3692 Operation {
3693 id: "update_pull_request",
3694 method: "PATCH",
3695 path: "/repos/{owner}/{name}/pulls/{number}",
3696 tag: "Pull requests",
3697 summary: "Update a pull request",
3698 scope: Some("pull_requests:write"),
3699 params: &[
3700 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3701 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3702 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3703 ],
3704 body: &[
3705 Field { name: "assignees", kind: "array", required: false, values: &[] },
3706 Field { name: "base", kind: "string", required: false, values: &[] },
3707 Field { name: "labels", kind: "array", required: false, values: &[] },
3708 Field { name: "milestone", kind: "integer", required: false, values: &[] },
3709 Field { name: "reviewers", kind: "array", required: false, values: &[] },
3710 Field { name: "state", kind: "string", required: false, values: &["open", "closed"] },
3711 ],
3712 },
3713 Operation {
3714 id: "create_release",
3715 method: "POST",
3716 path: "/repos/{owner}/{name}/releases",
3717 tag: "Releases",
3718 summary: "Create a release",
3719 scope: Some("repo:write"),
3720 params: &[
3721 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3722 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3723 ],
3724 body: &[
3725 Field { name: "body", kind: "string", required: false, values: &[] },
3726 Field { name: "draft", kind: "boolean", required: false, values: &[] },
3727 Field { name: "prerelease", kind: "boolean", required: false, values: &[] },
3728 Field { name: "release_name", kind: "string", required: false, values: &[] },
3729 Field { name: "tag_name", kind: "string", required: true, values: &[] },
3730 Field { name: "target", kind: "string", required: false, values: &[] },
3731 ],
3732 },
3733 Operation {
3734 id: "delete_release",
3735 method: "DELETE",
3736 path: "/repos/{owner}/{name}/releases/{id}",
3737 tag: "Releases",
3738 summary: "Delete a release",
3739 scope: Some("repo:write"),
3740 params: &[
3741 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3742 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3743 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3744 ],
3745 body: &[],
3746 },
3747 Operation {
3748 id: "get_latest_release",
3749 method: "GET",
3750 path: "/repos/{owner}/{name}/releases/latest",
3751 tag: "Releases",
3752 summary: "Get the latest release",
3753 scope: Some("repo:read"),
3754 params: &[
3755 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3756 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3757 ],
3758 body: &[],
3759 },
3760 Operation {
3761 id: "get_release",
3762 method: "GET",
3763 path: "/repos/{owner}/{name}/releases/{id}",
3764 tag: "Releases",
3765 summary: "Get a release",
3766 scope: Some("repo:read"),
3767 params: &[
3768 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3769 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3770 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3771 ],
3772 body: &[],
3773 },
3774 Operation {
3775 id: "get_release_by_tag",
3776 method: "GET",
3777 path: "/repos/{owner}/{name}/releases/tags/{tag}",
3778 tag: "Releases",
3779 summary: "Get a release by its tag",
3780 scope: Some("repo:read"),
3781 params: &[
3782 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3783 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3784 Param { name: "tag", location: In::Path, kind: "string", required: true, values: &[] },
3785 ],
3786 body: &[],
3787 },
3788 Operation {
3789 id: "list_releases",
3790 method: "GET",
3791 path: "/repos/{owner}/{name}/releases",
3792 tag: "Releases",
3793 summary: "List releases",
3794 scope: Some("repo:read"),
3795 params: &[
3796 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3797 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3798 ],
3799 body: &[],
3800 },
3801 Operation {
3802 id: "update_release",
3803 method: "PATCH",
3804 path: "/repos/{owner}/{name}/releases/{id}",
3805 tag: "Releases",
3806 summary: "Update a release",
3807 scope: Some("repo:write"),
3808 params: &[
3809 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3810 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3811 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3812 ],
3813 body: &[
3814 Field { name: "body", kind: "string", required: false, values: &[] },
3815 Field { name: "draft", kind: "boolean", required: false, values: &[] },
3816 Field { name: "prerelease", kind: "boolean", required: false, values: &[] },
3817 Field { name: "release_name", kind: "string", required: false, values: &[] },
3818 ],
3819 },
3820 Operation {
3821 id: "archive_repo",
3822 method: "POST",
3823 path: "/repos/{owner}/{name}/archive",
3824 tag: "Repositories",
3825 summary: "Archive a repository",
3826 scope: Some("repo:admin"),
3827 params: &[
3828 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3829 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3830 ],
3831 body: &[],
3832 },
3833 Operation {
3834 id: "create_branch",
3835 method: "POST",
3836 path: "/repos/{owner}/{name}/branches",
3837 tag: "Repositories",
3838 summary: "Create a branch",
3839 scope: Some("repo:write"),
3840 params: &[
3841 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3842 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3843 ],
3844 body: &[
3845 Field { name: "from", kind: "string", required: false, values: &[] },
3846 Field { name: "name", kind: "string", required: true, values: &[] },
3847 ],
3848 },
3849 Operation {
3850 id: "create_repo",
3851 method: "POST",
3852 path: "/repos",
3853 tag: "Repositories",
3854 summary: "Create a repository",
3855 scope: Some("repo:write"),
3856 params: &[],
3857 body: &[
3858 Field { name: "description", kind: "string", required: false, values: &[] },
3859 Field { name: "import_url", kind: "string", required: false, values: &[] },
3860 Field { name: "name", kind: "string", required: true, values: &[] },
3861 Field { name: "private", kind: "boolean", required: false, values: &[] },
3862 Field { name: "workspace", kind: "string", required: false, values: &[] },
3863 ],
3864 },
3865 Operation {
3866 id: "delete_branch",
3867 method: "DELETE",
3868 path: "/repos/{owner}/{name}/branches/{branch}",
3869 tag: "Repositories",
3870 summary: "Delete a branch",
3871 scope: Some("repo:write"),
3872 params: &[
3873 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3874 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3875 Param { name: "branch", location: In::Path, kind: "string", required: true, values: &[] },
3876 ],
3877 body: &[
3878 Field { name: "head", kind: "string", required: false, values: &[] },
3879 ],
3880 },
3881 Operation {
3882 id: "delete_repo",
3883 method: "DELETE",
3884 path: "/repos/{owner}/{name}",
3885 tag: "Repositories",
3886 summary: "Delete a repository",
3887 scope: Some("repo:admin"),
3888 params: &[
3889 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3890 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3891 ],
3892 body: &[
3893 Field { name: "confirm", kind: "string", required: true, values: &[] },
3894 ],
3895 },
3896 Operation {
3897 id: "download_tarball_archive",
3898 method: "GET",
3899 path: "/repos/{owner}/{name}/tarball/{ref}",
3900 tag: "Repositories",
3901 summary: "Download a repository archive (tar)",
3902 scope: Some("code:read"),
3903 params: &[
3904 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3905 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3906 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
3907 ],
3908 body: &[],
3909 },
3910 Operation {
3911 id: "download_zipball_archive",
3912 method: "GET",
3913 path: "/repos/{owner}/{name}/zipball/{ref}",
3914 tag: "Repositories",
3915 summary: "Download a repository archive (zip)",
3916 scope: Some("code:read"),
3917 params: &[
3918 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3919 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3920 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
3921 ],
3922 body: &[],
3923 },
3924 Operation {
3925 id: "get_codeowners_errors",
3926 method: "GET",
3927 path: "/repos/{owner}/{name}/codeowners/errors",
3928 tag: "Repositories",
3929 summary: "List CODEOWNERS errors",
3930 scope: Some("repo:read"),
3931 params: &[
3932 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3933 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3934 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
3935 ],
3936 body: &[],
3937 },
3938 Operation {
3939 id: "get_contents",
3940 method: "GET",
3941 path: "/repos/{owner}/{name}/contents",
3942 tag: "Repositories",
3943 summary: "Get repository contents",
3944 scope: Some("code:read"),
3945 params: &[
3946 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3947 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3948 Param { name: "path", location: In::Query, kind: "string", required: false, values: &[] },
3949 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
3950 ],
3951 body: &[],
3952 },
3953 Operation {
3954 id: "get_repo",
3955 method: "GET",
3956 path: "/repos/{owner}/{name}",
3957 tag: "Repositories",
3958 summary: "Get a repository",
3959 scope: Some("repo:read"),
3960 params: &[
3961 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3962 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3963 ],
3964 body: &[],
3965 },
3966 Operation {
3967 id: "get_repo_settings",
3968 method: "GET",
3969 path: "/repos/{owner}/{name}/settings",
3970 tag: "Repositories",
3971 summary: "Get repository settings",
3972 scope: Some("repo:read"),
3973 params: &[
3974 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3975 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3976 ],
3977 body: &[],
3978 },
3979 Operation {
3980 id: "list_check_names",
3981 method: "GET",
3982 path: "/repos/{owner}/{name}/check-names",
3983 tag: "Repositories",
3984 summary: "List check names",
3985 scope: Some("repo:read"),
3986 params: &[
3987 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3988 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3989 ],
3990 body: &[],
3991 },
3992 Operation {
3993 id: "list_commits",
3994 method: "GET",
3995 path: "/repos/{owner}/{name}/commits",
3996 tag: "Repositories",
3997 summary: "List commits",
3998 scope: Some("code:read"),
3999 params: &[
4000 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4001 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4002 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
4003 Param { name: "path", location: In::Query, kind: "string", required: false, values: &[] },
4004 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4005 ],
4006 body: &[],
4007 },
4008 Operation {
4009 id: "list_deleted_repos",
4010 method: "GET",
4011 path: "/workspaces/{workspace}/repos/deleted",
4012 tag: "Repositories",
4013 summary: "List recently deleted repositories",
4014 scope: Some("repo:read"),
4015 params: &[
4016 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4017 ],
4018 body: &[],
4019 },
4020 Operation {
4021 id: "list_events",
4022 method: "GET",
4023 path: "/repos/{owner}/{name}/events",
4024 tag: "Repositories",
4025 summary: "List repository events",
4026 scope: Some("repo:read"),
4027 params: &[
4028 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4029 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4030 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
4031 Param { name: "after", location: In::Query, kind: "string", required: false, values: &[] },
4032 Param { name: "types", location: In::Query, kind: "array", required: false, values: &[] },
4033 Param { name: "numbers", location: In::Query, kind: "array", required: false, values: &[] },
4034 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
4035 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4036 Param { name: "wait", location: In::Query, kind: "integer", required: false, values: &[] },
4037 ],
4038 body: &[],
4039 },
4040 Operation {
4041 id: "list_repos",
4042 method: "GET",
4043 path: "/repos",
4044 tag: "Repositories",
4045 summary: "List repositories",
4046 scope: Some("repo:read"),
4047 params: &[
4048 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
4049 ],
4050 body: &[],
4051 },
4052 Operation {
4053 id: "purge_repo",
4054 method: "POST",
4055 path: "/repos/{owner}/{name}/purge",
4056 tag: "Repositories",
4057 summary: "Purge a deleted repository",
4058 scope: Some("repo:admin"),
4059 params: &[
4060 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4061 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4062 ],
4063 body: &[
4064 Field { name: "confirm", kind: "string", required: true, values: &[] },
4065 ],
4066 },
4067 Operation {
4068 id: "rename_branch",
4069 method: "POST",
4070 path: "/repos/{owner}/{name}/branches/{branch}/rename",
4071 tag: "Repositories",
4072 summary: "Rename a branch",
4073 scope: Some("repo:write"),
4074 params: &[
4075 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4076 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4077 Param { name: "branch", location: In::Path, kind: "string", required: true, values: &[] },
4078 ],
4079 body: &[
4080 Field { name: "new_name", kind: "string", required: true, values: &[] },
4081 ],
4082 },
4083 Operation {
4084 id: "rename_repo",
4085 method: "POST",
4086 path: "/repos/{owner}/{name}/rename",
4087 tag: "Repositories",
4088 summary: "Rename a repository",
4089 scope: Some("repo:admin"),
4090 params: &[
4091 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4092 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4093 ],
4094 body: &[
4095 Field { name: "name", kind: "string", required: true, values: &[] },
4096 ],
4097 },
4098 Operation {
4099 id: "restore_repo",
4100 method: "POST",
4101 path: "/repos/{owner}/{name}/restore",
4102 tag: "Repositories",
4103 summary: "Restore a deleted repository",
4104 scope: Some("repo:admin"),
4105 params: &[
4106 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4107 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4108 ],
4109 body: &[],
4110 },
4111 Operation {
4112 id: "set_repo_visibility",
4113 method: "POST",
4114 path: "/repos/{owner}/{name}/visibility",
4115 tag: "Repositories",
4116 summary: "Change a repository's visibility",
4117 scope: Some("repo:admin"),
4118 params: &[
4119 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4120 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4121 ],
4122 body: &[
4123 Field { name: "confirm", kind: "string", required: true, values: &[] },
4124 Field { name: "private", kind: "boolean", required: true, values: &[] },
4125 ],
4126 },
4127 Operation {
4128 id: "transfer_repo",
4129 method: "POST",
4130 path: "/repos/{owner}/{name}/transfer",
4131 tag: "Repositories",
4132 summary: "Transfer a repository",
4133 scope: Some("repo:admin"),
4134 params: &[
4135 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4136 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4137 ],
4138 body: &[
4139 Field { name: "to", kind: "string", required: true, values: &[] },
4140 ],
4141 },
4142 Operation {
4143 id: "unarchive_repo",
4144 method: "POST",
4145 path: "/repos/{owner}/{name}/unarchive",
4146 tag: "Repositories",
4147 summary: "Unarchive a repository",
4148 scope: Some("repo:admin"),
4149 params: &[
4150 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4151 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4152 ],
4153 body: &[],
4154 },
4155 Operation {
4156 id: "update_repo",
4157 method: "PATCH",
4158 path: "/repos/{owner}/{name}",
4159 tag: "Repositories",
4160 summary: "Update a repository",
4161 scope: Some("repo:write"),
4162 params: &[
4163 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4164 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4165 ],
4166 body: &[
4167 Field { name: "default_branch", kind: "string", required: false, values: &[] },
4168 Field { name: "description", kind: "string", required: false, values: &[] },
4169 Field { name: "private", kind: "boolean", required: false, values: &[] },
4170 Field { name: "protected", kind: "boolean", required: false, values: &[] },
4171 Field { name: "topics", kind: "array", required: false, values: &[] },
4172 Field { name: "website", kind: "string", required: false, values: &[] },
4173 ],
4174 },
4175 Operation {
4176 id: "update_repo_settings",
4177 method: "PATCH",
4178 path: "/repos/{owner}/{name}/settings",
4179 tag: "Repositories",
4180 summary: "Update repository settings",
4181 scope: Some("repo:write"),
4182 params: &[
4183 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4184 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4185 ],
4186 body: &[
4187 Field { name: "allow_ignoring_checks", kind: "boolean", required: false, values: &[] },
4188 Field { name: "auto_merge", kind: "boolean", required: false, values: &[] },
4189 Field { name: "count_agent_approvals", kind: "boolean", required: false, values: &[] },
4190 Field { name: "merge_queue", kind: "boolean", required: false, values: &[] },
4191 Field { name: "require_code_owner_review", kind: "boolean", required: false, values: &[] },
4192 Field { name: "require_up_to_date", kind: "boolean", required: false, values: &[] },
4193 Field { name: "required_approvals", kind: "integer", required: false, values: &[] },
4194 Field { name: "required_checks", kind: "array", required: false, values: &[] },
4195 ],
4196 },
4197 Operation {
4198 id: "get_languages",
4199 method: "GET",
4200 path: "/repos/{owner}/{name}/languages",
4201 tag: "Repository insights",
4202 summary: "Get a repository's languages",
4203 scope: Some("repo:read"),
4204 params: &[
4205 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4206 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4207 ],
4208 body: &[],
4209 },
4210 Operation {
4211 id: "get_license",
4212 method: "GET",
4213 path: "/repos/{owner}/{name}/license",
4214 tag: "Repository insights",
4215 summary: "Get a repository's license",
4216 scope: Some("repo:read"),
4217 params: &[
4218 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4219 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4220 ],
4221 body: &[],
4222 },
4223 Operation {
4224 id: "list_contributors",
4225 method: "GET",
4226 path: "/repos/{owner}/{name}/contributors",
4227 tag: "Repository insights",
4228 summary: "List a repository's contributors",
4229 scope: Some("repo:read"),
4230 params: &[
4231 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4232 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4233 ],
4234 body: &[],
4235 },
4236 Operation {
4237 id: "create_repo_ruleset",
4238 method: "POST",
4239 path: "/repos/{owner}/{name}/rulesets",
4240 tag: "Rules",
4241 summary: "Create a repository ruleset",
4242 scope: Some("repo:admin"),
4243 params: &[
4244 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4245 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4246 ],
4247 body: &[
4248 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4249 Field { name: "conditions", kind: "object", required: false, values: &[] },
4250 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4251 Field { name: "rules", kind: "array", required: false, values: &[] },
4252 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4253 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4254 ],
4255 },
4256 Operation {
4257 id: "create_workspace_ruleset",
4258 method: "POST",
4259 path: "/workspaces/{workspace}/rulesets",
4260 tag: "Rules",
4261 summary: "Create a workspace ruleset",
4262 scope: Some("workspace:admin"),
4263 params: &[
4264 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4265 ],
4266 body: &[
4267 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4268 Field { name: "conditions", kind: "object", required: false, values: &[] },
4269 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4270 Field { name: "rules", kind: "array", required: false, values: &[] },
4271 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4272 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4273 ],
4274 },
4275 Operation {
4276 id: "delete_repo_ruleset",
4277 method: "DELETE",
4278 path: "/repos/{owner}/{name}/rulesets/{id}",
4279 tag: "Rules",
4280 summary: "Delete a repository ruleset",
4281 scope: Some("repo:admin"),
4282 params: &[
4283 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4284 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4285 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4286 ],
4287 body: &[],
4288 },
4289 Operation {
4290 id: "delete_workspace_ruleset",
4291 method: "DELETE",
4292 path: "/workspaces/{workspace}/rulesets/{id}",
4293 tag: "Rules",
4294 summary: "Delete a workspace ruleset",
4295 scope: Some("workspace:admin"),
4296 params: &[
4297 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4298 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4299 ],
4300 body: &[],
4301 },
4302 Operation {
4303 id: "get_branch_rules",
4304 method: "GET",
4305 path: "/repos/{owner}/{name}/rules/branches/{branch}",
4306 tag: "Rules",
4307 summary: "Get the rules for a branch",
4308 scope: Some("repo:read"),
4309 params: &[
4310 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4311 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4312 Param { name: "branch", location: In::Path, kind: "string", required: true, values: &[] },
4313 Param { name: "target", location: In::Query, kind: "string", required: false, values: &["branch", "tag"] },
4314 ],
4315 body: &[],
4316 },
4317 Operation {
4318 id: "get_repo_ruleset",
4319 method: "GET",
4320 path: "/repos/{owner}/{name}/rulesets/{id}",
4321 tag: "Rules",
4322 summary: "Get a repository ruleset",
4323 scope: Some("repo:read"),
4324 params: &[
4325 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4326 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4327 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4328 ],
4329 body: &[],
4330 },
4331 Operation {
4332 id: "get_workspace_ruleset",
4333 method: "GET",
4334 path: "/workspaces/{workspace}/rulesets/{id}",
4335 tag: "Rules",
4336 summary: "Get a workspace ruleset",
4337 scope: Some("workspace:read"),
4338 params: &[
4339 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4340 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4341 ],
4342 body: &[],
4343 },
4344 Operation {
4345 id: "list_repo_rulesets",
4346 method: "GET",
4347 path: "/repos/{owner}/{name}/rulesets",
4348 tag: "Rules",
4349 summary: "List a repository's rulesets",
4350 scope: Some("repo:read"),
4351 params: &[
4352 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4353 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4354 Param { name: "include_parents", location: In::Query, kind: "boolean", required: false, values: &[] },
4355 ],
4356 body: &[],
4357 },
4358 Operation {
4359 id: "list_rule_evaluations",
4360 method: "GET",
4361 path: "/repos/{owner}/{name}/rules/evaluations",
4362 tag: "Rules",
4363 summary: "List a repository's rule evaluations",
4364 scope: Some("repo:read"),
4365 params: &[
4366 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4367 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4368 Param { name: "ruleset_id", location: In::Query, kind: "string", required: false, values: &[] },
4369 Param { name: "verdict", location: In::Query, kind: "string", required: false, values: &["pass", "fail", "bypass"] },
4370 Param { name: "problems_only", location: In::Query, kind: "boolean", required: false, values: &[] },
4371 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
4372 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4373 ],
4374 body: &[],
4375 },
4376 Operation {
4377 id: "list_workspace_rule_evaluations",
4378 method: "GET",
4379 path: "/workspaces/{workspace}/rules/evaluations",
4380 tag: "Rules",
4381 summary: "List a workspace's rule evaluations",
4382 scope: Some("workspace:read"),
4383 params: &[
4384 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4385 Param { name: "ruleset_id", location: In::Query, kind: "string", required: false, values: &[] },
4386 Param { name: "verdict", location: In::Query, kind: "string", required: false, values: &["pass", "fail", "bypass"] },
4387 Param { name: "problems_only", location: In::Query, kind: "boolean", required: false, values: &[] },
4388 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
4389 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4390 ],
4391 body: &[],
4392 },
4393 Operation {
4394 id: "list_workspace_rulesets",
4395 method: "GET",
4396 path: "/workspaces/{workspace}/rulesets",
4397 tag: "Rules",
4398 summary: "List a workspace's rulesets",
4399 scope: Some("workspace:read"),
4400 params: &[
4401 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4402 ],
4403 body: &[],
4404 },
4405 Operation {
4406 id: "update_repo_ruleset",
4407 method: "PUT",
4408 path: "/repos/{owner}/{name}/rulesets/{id}",
4409 tag: "Rules",
4410 summary: "Update a repository ruleset",
4411 scope: Some("repo:admin"),
4412 params: &[
4413 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4414 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4415 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4416 ],
4417 body: &[
4418 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4419 Field { name: "conditions", kind: "object", required: false, values: &[] },
4420 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4421 Field { name: "rules", kind: "array", required: false, values: &[] },
4422 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4423 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4424 ],
4425 },
4426 Operation {
4427 id: "update_workspace_ruleset",
4428 method: "PUT",
4429 path: "/workspaces/{workspace}/rulesets/{id}",
4430 tag: "Rules",
4431 summary: "Update a workspace ruleset",
4432 scope: Some("workspace:admin"),
4433 params: &[
4434 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4435 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4436 ],
4437 body: &[
4438 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4439 Field { name: "conditions", kind: "object", required: false, values: &[] },
4440 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4441 Field { name: "rules", kind: "array", required: false, values: &[] },
4442 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4443 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4444 ],
4445 },
4446 Operation {
4447 id: "approve_workflow_run",
4448 method: "POST",
4449 path: "/repos/{owner}/{name}/actions/runs/{id}/approve",
4450 tag: "Run protection",
4451 summary: "Approve a workflow run",
4452 scope: Some("workflows:write"),
4453 params: &[
4454 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4455 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4456 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4457 ],
4458 body: &[],
4459 },
4460 Operation {
4461 id: "create_repository_dispatch",
4462 method: "POST",
4463 path: "/repos/{owner}/{name}/dispatches",
4464 tag: "Run protection",
4465 summary: "Create a repository dispatch event",
4466 scope: Some("code:write"),
4467 params: &[
4468 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4469 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4470 ],
4471 body: &[
4472 Field { name: "client_payload", kind: "object", required: false, values: &[] },
4473 Field { name: "event_type", kind: "string", required: true, values: &[] },
4474 ],
4475 },
4476 Operation {
4477 id: "create_workspace_managed_workflow",
4478 method: "POST",
4479 path: "/workspaces/{workspace}/actions/managed-workflows",
4480 tag: "Run protection",
4481 summary: "Add a workflow a workspace manages",
4482 scope: Some("workspace:admin"),
4483 params: &[
4484 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4485 ],
4486 body: &[
4487 Field { name: "mode", kind: "string", required: true, values: &["required", "default"] },
4488 Field { name: "name", kind: "string", required: true, values: &[] },
4489 Field { name: "repositories", kind: "array", required: false, values: &[] },
4490 Field { name: "source", kind: "string", required: true, values: &[] },
4491 Field { name: "visibility", kind: "string", required: false, values: &["all", "public", "private"] },
4492 ],
4493 },
4494 Operation {
4495 id: "delete_environment",
4496 method: "DELETE",
4497 path: "/repos/{owner}/{name}/environments/{environment}",
4498 tag: "Run protection",
4499 summary: "Delete an environment's protection rules",
4500 scope: Some("repo:admin"),
4501 params: &[
4502 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4503 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4504 Param { name: "environment", location: In::Path, kind: "string", required: true, values: &[] },
4505 ],
4506 body: &[],
4507 },
4508 Operation {
4509 id: "delete_workspace_managed_workflow",
4510 method: "DELETE",
4511 path: "/workspaces/{workspace}/actions/managed-workflows/{workflow}",
4512 tag: "Run protection",
4513 summary: "Remove a workflow a workspace manages",
4514 scope: Some("workspace:admin"),
4515 params: &[
4516 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4517 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
4518 ],
4519 body: &[],
4520 },
4521 Operation {
4522 id: "get_actions_access",
4523 method: "GET",
4524 path: "/repos/{owner}/{name}/actions/permissions/access",
4525 tag: "Run protection",
4526 summary: "Get who may use a repository's actions and workflows",
4527 scope: Some("repo:read"),
4528 params: &[
4529 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4530 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4531 ],
4532 body: &[],
4533 },
4534 Operation {
4535 id: "get_fork_pr_approval",
4536 method: "GET",
4537 path: "/repos/{owner}/{name}/actions/permissions/fork-pr-contributor-approval",
4538 tag: "Run protection",
4539 summary: "Get the approval policy for outside pull requests",
4540 scope: Some("repo:read"),
4541 params: &[
4542 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4543 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4544 ],
4545 body: &[],
4546 },
4547 Operation {
4548 id: "get_pending_deployments",
4549 method: "GET",
4550 path: "/repos/{owner}/{name}/actions/runs/{id}/pending_deployments",
4551 tag: "Run protection",
4552 summary: "Get a run's pending deployments",
4553 scope: Some("workflows:read"),
4554 params: &[
4555 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4556 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4557 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4558 ],
4559 body: &[],
4560 },
4561 Operation {
4562 id: "get_workflow_permissions",
4563 method: "GET",
4564 path: "/repos/{owner}/{name}/actions/permissions/workflow",
4565 tag: "Run protection",
4566 summary: "Get the default workflow permissions",
4567 scope: Some("repo:read"),
4568 params: &[
4569 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4570 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4571 ],
4572 body: &[],
4573 },
4574 Operation {
4575 id: "get_workspace_workflow_permissions",
4576 method: "GET",
4577 path: "/workspaces/{workspace}/actions/permissions/workflow",
4578 tag: "Run protection",
4579 summary: "Get a workspace's default workflow permissions",
4580 scope: Some("workspace:read"),
4581 params: &[
4582 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4583 ],
4584 body: &[],
4585 },
4586 Operation {
4587 id: "list_workspace_managed_workflows",
4588 method: "GET",
4589 path: "/workspaces/{workspace}/actions/managed-workflows",
4590 tag: "Run protection",
4591 summary: "List the workflows a workspace manages",
4592 scope: Some("workspace:read"),
4593 params: &[
4594 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4595 ],
4596 body: &[],
4597 },
4598 Operation {
4599 id: "review_pending_deployments",
4600 method: "POST",
4601 path: "/repos/{owner}/{name}/actions/runs/{id}/pending_deployments",
4602 tag: "Run protection",
4603 summary: "Review a run's pending deployments",
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 Field { name: "comment", kind: "string", required: false, values: &[] },
4612 Field { name: "environment_names", kind: "array", required: false, values: &[] },
4613 Field { name: "state", kind: "string", required: true, values: &["approved", "rejected"] },
4614 ],
4615 },
4616 Operation {
4617 id: "set_actions_access",
4618 method: "PUT",
4619 path: "/repos/{owner}/{name}/actions/permissions/access",
4620 tag: "Run protection",
4621 summary: "Set who may use a repository's actions and workflows",
4622 scope: Some("repo:admin"),
4623 params: &[
4624 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4625 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4626 ],
4627 body: &[
4628 Field { name: "access_level", kind: "string", required: true, values: &["none", "organization", "user"] },
4629 ],
4630 },
4631 Operation {
4632 id: "set_fork_pr_approval",
4633 method: "PUT",
4634 path: "/repos/{owner}/{name}/actions/permissions/fork-pr-contributor-approval",
4635 tag: "Run protection",
4636 summary: "Set the approval policy for outside pull requests",
4637 scope: Some("repo:admin"),
4638 params: &[
4639 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4640 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4641 ],
4642 body: &[
4643 Field { name: "approval_policy", kind: "string", required: true, values: &["first_time_contributors", "outside_contributors", "all_external_contributors"] },
4644 ],
4645 },
4646 Operation {
4647 id: "set_workflow_permissions",
4648 method: "PUT",
4649 path: "/repos/{owner}/{name}/actions/permissions/workflow",
4650 tag: "Run protection",
4651 summary: "Set the default workflow permissions",
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 ],
4657 body: &[
4658 Field { name: "can_approve_pull_request_reviews", kind: "boolean", required: false, values: &[] },
4659 Field { name: "default_workflow_permissions", kind: "string", required: false, values: &["read", "write", "inherit"] },
4660 ],
4661 },
4662 Operation {
4663 id: "set_workspace_workflow_permissions",
4664 method: "PUT",
4665 path: "/workspaces/{workspace}/actions/permissions/workflow",
4666 tag: "Run protection",
4667 summary: "Set a workspace's default workflow permissions",
4668 scope: Some("workspace:admin"),
4669 params: &[
4670 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4671 ],
4672 body: &[
4673 Field { name: "can_approve_pull_request_reviews", kind: "boolean", required: false, values: &[] },
4674 Field { name: "default_workflow_permissions", kind: "string", required: false, values: &["read", "write"] },
4675 Field { name: "max_workflow_permissions", kind: "string", required: false, values: &["read", "write"] },
4676 ],
4677 },
4678 Operation {
4679 id: "update_environment",
4680 method: "PUT",
4681 path: "/repos/{owner}/{name}/environments/{environment}",
4682 tag: "Run protection",
4683 summary: "Create or update an environment's protection rules",
4684 scope: Some("repo:admin"),
4685 params: &[
4686 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4687 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4688 Param { name: "environment", location: In::Path, kind: "string", required: true, values: &[] },
4689 ],
4690 body: &[
4691 Field { name: "branch_policies", kind: "array", required: false, values: &[] },
4692 Field { name: "can_admins_bypass", kind: "boolean", required: false, values: &[] },
4693 Field { name: "deployment_branch_policy", kind: "object", required: false, values: &[] },
4694 Field { name: "prevent_self_review", kind: "boolean", required: false, values: &[] },
4695 Field { name: "reviewers", kind: "array", required: false, values: &[] },
4696 Field { name: "wait_timer", kind: "integer", required: false, values: &[] },
4697 ],
4698 },
4699 Operation {
4700 id: "update_workspace_managed_workflow",
4701 method: "PATCH",
4702 path: "/workspaces/{workspace}/actions/managed-workflows/{workflow}",
4703 tag: "Run protection",
4704 summary: "Update a workflow a workspace manages",
4705 scope: Some("workspace:admin"),
4706 params: &[
4707 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4708 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
4709 ],
4710 body: &[
4711 Field { name: "mode", kind: "string", required: false, values: &["required", "default"] },
4712 Field { name: "refresh", kind: "boolean", required: false, values: &[] },
4713 Field { name: "repositories", kind: "array", required: false, values: &[] },
4714 Field { name: "source", kind: "string", required: false, values: &[] },
4715 Field { name: "visibility", kind: "string", required: false, values: &["all", "public", "private"] },
4716 ],
4717 },
4718 Operation {
4719 id: "create_runner_group",
4720 method: "POST",
4721 path: "/workspaces/{workspace}/actions/runner-groups",
4722 tag: "Runners",
4723 summary: "Create a runner group",
4724 scope: Some("runners:admin"),
4725 params: &[
4726 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4727 ],
4728 body: &[
4729 Field { name: "id", kind: "string", required: false, values: &[] },
4730 Field { name: "name", kind: "string", required: true, values: &[] },
4731 Field { name: "repositories", kind: "array", required: false, values: &[] },
4732 ],
4733 },
4734 Operation {
4735 id: "create_runner_registration_token",
4736 method: "POST",
4737 path: "/repos/{owner}/{name}/actions/runners/registration-token",
4738 tag: "Runners",
4739 summary: "Create a runner registration token",
4740 scope: Some("runners:admin"),
4741 params: &[
4742 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4743 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4744 ],
4745 body: &[
4746 Field { name: "group", kind: "string", required: false, values: &[] },
4747 Field { name: "workspace", kind: "string", required: false, values: &[] },
4748 ],
4749 },
4750 Operation {
4751 id: "create_runner_registration_token_for_workspace",
4752 method: "POST",
4753 path: "/workspaces/{workspace}/actions/runners/registration-token",
4754 tag: "Runners",
4755 summary: "Create a runner registration token for a workspace",
4756 scope: Some("runners:admin"),
4757 params: &[
4758 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4759 ],
4760 body: &[
4761 Field { name: "group", kind: "string", required: false, values: &[] },
4762 ],
4763 },
4764 Operation {
4765 id: "delete_runner_group",
4766 method: "DELETE",
4767 path: "/workspaces/{workspace}/actions/runner-groups/{id}",
4768 tag: "Runners",
4769 summary: "Delete a runner group",
4770 scope: Some("runners:admin"),
4771 params: &[
4772 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4773 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4774 ],
4775 body: &[],
4776 },
4777 Operation {
4778 id: "get_runner_settings",
4779 method: "GET",
4780 path: "/repos/{owner}/{name}/actions/runner-settings",
4781 tag: "Runners",
4782 summary: "Get runner settings",
4783 scope: Some("runners:read"),
4784 params: &[
4785 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4786 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4787 ],
4788 body: &[],
4789 },
4790 Operation {
4791 id: "get_runner_settings_for_workspace",
4792 method: "GET",
4793 path: "/workspaces/{workspace}/actions/runner-settings",
4794 tag: "Runners",
4795 summary: "Get runner settings for a workspace",
4796 scope: Some("runners:read"),
4797 params: &[
4798 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4799 ],
4800 body: &[],
4801 },
4802 Operation {
4803 id: "list_runner_groups",
4804 method: "GET",
4805 path: "/workspaces/{workspace}/actions/runner-groups",
4806 tag: "Runners",
4807 summary: "List runner groups",
4808 scope: Some("runners:read"),
4809 params: &[
4810 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4811 ],
4812 body: &[],
4813 },
4814 Operation {
4815 id: "list_runners",
4816 method: "GET",
4817 path: "/repos/{owner}/{name}/actions/runners",
4818 tag: "Runners",
4819 summary: "List self-hosted runners",
4820 scope: Some("runners:read"),
4821 params: &[
4822 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4823 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4824 ],
4825 body: &[],
4826 },
4827 Operation {
4828 id: "list_runners_for_workspace",
4829 method: "GET",
4830 path: "/workspaces/{workspace}/actions/runners",
4831 tag: "Runners",
4832 summary: "List self-hosted runners for a workspace",
4833 scope: Some("runners:read"),
4834 params: &[
4835 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4836 ],
4837 body: &[],
4838 },
4839 Operation {
4840 id: "remove_runner",
4841 method: "DELETE",
4842 path: "/repos/{owner}/{name}/actions/runners/{id}",
4843 tag: "Runners",
4844 summary: "Remove a self-hosted runner",
4845 scope: Some("runners:admin"),
4846 params: &[
4847 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4848 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4849 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4850 ],
4851 body: &[
4852 Field { name: "workspace", kind: "string", required: false, values: &[] },
4853 ],
4854 },
4855 Operation {
4856 id: "remove_runner_for_workspace",
4857 method: "DELETE",
4858 path: "/workspaces/{workspace}/actions/runners/{id}",
4859 tag: "Runners",
4860 summary: "Remove a self-hosted runner for a workspace",
4861 scope: Some("runners:admin"),
4862 params: &[
4863 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4864 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4865 ],
4866 body: &[],
4867 },
4868 Operation {
4869 id: "update_runner_group",
4870 method: "PATCH",
4871 path: "/workspaces/{workspace}/actions/runner-groups/{id}",
4872 tag: "Runners",
4873 summary: "Change a runner group",
4874 scope: Some("runners:admin"),
4875 params: &[
4876 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4877 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4878 ],
4879 body: &[
4880 Field { name: "name", kind: "string", required: false, values: &[] },
4881 Field { name: "repositories", kind: "array", required: false, values: &[] },
4882 ],
4883 },
4884 Operation {
4885 id: "update_runner_settings",
4886 method: "PATCH",
4887 path: "/repos/{owner}/{name}/actions/runner-settings",
4888 tag: "Runners",
4889 summary: "Change runner settings",
4890 scope: Some("runners:admin"),
4891 params: &[
4892 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4893 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4894 ],
4895 body: &[
4896 Field { name: "agent_labels", kind: "array", required: false, values: &[] },
4897 Field { name: "agents_on_self_hosted", kind: "boolean", required: false, values: &[] },
4898 Field { name: "fork_pull_requests", kind: "boolean", required: false, values: &[] },
4899 Field { name: "inherit", kind: "boolean", required: false, values: &[] },
4900 Field { name: "workspace", kind: "string", required: false, values: &[] },
4901 ],
4902 },
4903 Operation {
4904 id: "update_runner_settings_for_workspace",
4905 method: "PATCH",
4906 path: "/workspaces/{workspace}/actions/runner-settings",
4907 tag: "Runners",
4908 summary: "Change runner settings for a workspace",
4909 scope: Some("runners:admin"),
4910 params: &[
4911 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4912 ],
4913 body: &[
4914 Field { name: "agent_labels", kind: "array", required: false, values: &[] },
4915 Field { name: "agents_on_self_hosted", kind: "boolean", required: false, values: &[] },
4916 Field { name: "fork_pull_requests", kind: "boolean", required: false, values: &[] },
4917 Field { name: "inherit", kind: "boolean", required: false, values: &[] },
4918 ],
4919 },
4920 Operation {
4921 id: "search",
4922 method: "GET",
4923 path: "/search",
4924 tag: "Search",
4925 summary: "Search g1t",
4926 scope: Some("repo:read"),
4927 params: &[
4928 Param { name: "q", location: In::Query, kind: "string", required: true, values: &[] },
4929 Param { name: "type", location: In::Query, kind: "string", required: false, values: &["repositories", "code", "issues", "pulls", "people"] },
4930 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
4931 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
4932 ],
4933 body: &[],
4934 },
4935 Operation {
4936 id: "bypass_push_protection",
4937 method: "POST",
4938 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}/bypass",
4939 tag: "Secret scanning",
4940 summary: "Bypass push protection",
4941 scope: Some("security:write"),
4942 params: &[
4943 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4944 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4945 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4946 ],
4947 body: &[
4948 Field { name: "comment", kind: "string", required: false, values: &[] },
4949 Field { name: "reason", kind: "string", required: true, values: &["false_positive", "used_in_tests", "will_fix_later"] },
4950 ],
4951 },
4952 Operation {
4953 id: "check_secret_validity",
4954 method: "POST",
4955 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}/validity",
4956 tag: "Secret scanning",
4957 summary: "Check whether a secret still works",
4958 scope: Some("security:write"),
4959 params: &[
4960 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4961 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4962 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4963 ],
4964 body: &[],
4965 },
4966 Operation {
4967 id: "create_custom_pattern",
4968 method: "POST",
4969 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns",
4970 tag: "Secret scanning",
4971 summary: "Create a custom pattern",
4972 scope: Some("security:write"),
4973 params: &[
4974 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4975 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4976 ],
4977 body: &[
4978 Field { name: "after", kind: "string", required: false, values: &[] },
4979 Field { name: "before", kind: "string", required: false, values: &[] },
4980 Field { name: "pattern", kind: "string", required: true, values: &[] },
4981 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
4982 Field { name: "publish", kind: "boolean", required: false, values: &[] },
4983 Field { name: "test_strings", kind: "array", required: false, values: &[] },
4984 Field { name: "workspace", kind: "string", required: false, values: &[] },
4985 ],
4986 },
4987 Operation {
4988 id: "create_custom_pattern_for_workspace",
4989 method: "POST",
4990 path: "/workspaces/{workspace}/secret-scanning/custom-patterns",
4991 tag: "Secret scanning",
4992 summary: "Create a custom pattern for a workspace",
4993 scope: Some("security:write"),
4994 params: &[
4995 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4996 ],
4997 body: &[
4998 Field { name: "after", kind: "string", required: false, values: &[] },
4999 Field { name: "before", kind: "string", required: false, values: &[] },
5000 Field { name: "pattern", kind: "string", required: true, values: &[] },
5001 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
5002 Field { name: "publish", kind: "boolean", required: false, values: &[] },
5003 Field { name: "test_strings", kind: "array", required: false, values: &[] },
5004 ],
5005 },
5006 Operation {
5007 id: "delete_custom_pattern",
5008 method: "DELETE",
5009 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns/{id}",
5010 tag: "Secret scanning",
5011 summary: "Delete a custom pattern",
5012 scope: Some("security:write"),
5013 params: &[
5014 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5015 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5016 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5017 ],
5018 body: &[
5019 Field { name: "workspace", kind: "string", required: false, values: &[] },
5020 ],
5021 },
5022 Operation {
5023 id: "delete_custom_pattern_for_workspace",
5024 method: "DELETE",
5025 path: "/workspaces/{workspace}/secret-scanning/custom-patterns/{id}",
5026 tag: "Secret scanning",
5027 summary: "Delete a custom pattern for a workspace",
5028 scope: Some("security:write"),
5029 params: &[
5030 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5031 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5032 ],
5033 body: &[],
5034 },
5035 Operation {
5036 id: "dry_run_custom_pattern",
5037 method: "POST",
5038 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns/dry-run",
5039 tag: "Secret scanning",
5040 summary: "Dry-run a custom pattern",
5041 scope: Some("security:write"),
5042 params: &[
5043 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5044 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5045 ],
5046 body: &[
5047 Field { name: "after", kind: "string", required: false, values: &[] },
5048 Field { name: "before", kind: "string", required: false, values: &[] },
5049 Field { name: "pattern", kind: "string", required: true, values: &[] },
5050 Field { name: "pattern_name", kind: "string", required: false, values: &[] },
5051 Field { name: "repos", kind: "array", required: false, values: &[] },
5052 Field { name: "workspace", kind: "string", required: false, values: &[] },
5053 ],
5054 },
5055 Operation {
5056 id: "dry_run_custom_pattern_for_workspace",
5057 method: "POST",
5058 path: "/workspaces/{workspace}/secret-scanning/custom-patterns/dry-run",
5059 tag: "Secret scanning",
5060 summary: "Dry-run a custom pattern for a workspace",
5061 scope: Some("security:write"),
5062 params: &[
5063 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5064 ],
5065 body: &[
5066 Field { name: "after", kind: "string", required: false, values: &[] },
5067 Field { name: "before", kind: "string", required: false, values: &[] },
5068 Field { name: "pattern", kind: "string", required: true, values: &[] },
5069 Field { name: "pattern_name", kind: "string", required: false, values: &[] },
5070 Field { name: "repos", kind: "array", required: false, values: &[] },
5071 ],
5072 },
5073 Operation {
5074 id: "get_secret_scanning_alert",
5075 method: "GET",
5076 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}",
5077 tag: "Secret scanning",
5078 summary: "Get a secret scanning alert",
5079 scope: Some("security:read"),
5080 params: &[
5081 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5082 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5083 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5084 ],
5085 body: &[],
5086 },
5087 Operation {
5088 id: "list_bypass_requests",
5089 method: "GET",
5090 path: "/workspaces/{workspace}/secret-scanning/bypass-requests",
5091 tag: "Secret scanning",
5092 summary: "List push protection bypass requests",
5093 scope: Some("security:read"),
5094 params: &[
5095 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5096 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["pending", "approved", "denied", "cancelled"] },
5097 Param { name: "repo", location: In::Query, kind: "string", required: false, values: &[] },
5098 ],
5099 body: &[],
5100 },
5101 Operation {
5102 id: "list_custom_patterns",
5103 method: "GET",
5104 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns",
5105 tag: "Secret scanning",
5106 summary: "List custom patterns",
5107 scope: Some("security:read"),
5108 params: &[
5109 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5110 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5111 ],
5112 body: &[],
5113 },
5114 Operation {
5115 id: "list_custom_patterns_for_workspace",
5116 method: "GET",
5117 path: "/workspaces/{workspace}/secret-scanning/custom-patterns",
5118 tag: "Secret scanning",
5119 summary: "List custom patterns for a workspace",
5120 scope: Some("security:read"),
5121 params: &[
5122 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5123 ],
5124 body: &[],
5125 },
5126 Operation {
5127 id: "list_secret_scanning_alerts",
5128 method: "GET",
5129 path: "/repos/{owner}/{name}/secret-scanning/alerts",
5130 tag: "Secret scanning",
5131 summary: "List secret scanning alerts",
5132 scope: Some("security:read"),
5133 params: &[
5134 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5135 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5136 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
5137 Param { name: "secret_type", location: In::Query, kind: "string", required: false, values: &[] },
5138 Param { name: "validity", location: In::Query, kind: "string", required: false, values: &["active", "inactive", "unknown", "unsupported"] },
5139 Param { name: "bypassed", location: In::Query, kind: "boolean", required: false, values: &[] },
5140 ],
5141 body: &[],
5142 },
5143 Operation {
5144 id: "list_secret_scanning_alerts_for_workspace",
5145 method: "GET",
5146 path: "/workspaces/{workspace}/secret-scanning/alerts",
5147 tag: "Secret scanning",
5148 summary: "List secret scanning alerts for a workspace",
5149 scope: Some("security:read"),
5150 params: &[
5151 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5152 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
5153 Param { name: "secret_type", location: In::Query, kind: "string", required: false, values: &[] },
5154 Param { name: "validity", location: In::Query, kind: "string", required: false, values: &["active", "inactive", "unknown", "unsupported"] },
5155 Param { name: "bypassed", location: In::Query, kind: "boolean", required: false, values: &[] },
5156 ],
5157 body: &[],
5158 },
5159 Operation {
5160 id: "list_secret_scanning_locations",
5161 method: "GET",
5162 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}/locations",
5163 tag: "Secret scanning",
5164 summary: "List where a secret was found",
5165 scope: Some("security:read"),
5166 params: &[
5167 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5168 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5169 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5170 ],
5171 body: &[],
5172 },
5173 Operation {
5174 id: "review_bypass_request",
5175 method: "PATCH",
5176 path: "/workspaces/{workspace}/secret-scanning/bypass-requests/{id}",
5177 tag: "Secret scanning",
5178 summary: "Review a bypass request",
5179 scope: Some("security:write"),
5180 params: &[
5181 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5182 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5183 ],
5184 body: &[
5185 Field { name: "comment", kind: "string", required: false, values: &[] },
5186 Field { name: "decision", kind: "string", required: true, values: &["approve", "deny", "cancel"] },
5187 ],
5188 },
5189 Operation {
5190 id: "update_custom_pattern",
5191 method: "PATCH",
5192 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns/{id}",
5193 tag: "Secret scanning",
5194 summary: "Update a custom pattern",
5195 scope: Some("security:write"),
5196 params: &[
5197 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5198 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5199 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5200 ],
5201 body: &[
5202 Field { name: "after", kind: "string", required: false, values: &[] },
5203 Field { name: "before", kind: "string", required: false, values: &[] },
5204 Field { name: "pattern", kind: "string", required: true, values: &[] },
5205 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
5206 Field { name: "publish", kind: "boolean", required: false, values: &[] },
5207 Field { name: "test_strings", kind: "array", required: false, values: &[] },
5208 Field { name: "workspace", kind: "string", required: false, values: &[] },
5209 ],
5210 },
5211 Operation {
5212 id: "update_custom_pattern_for_workspace",
5213 method: "PATCH",
5214 path: "/workspaces/{workspace}/secret-scanning/custom-patterns/{id}",
5215 tag: "Secret scanning",
5216 summary: "Update a custom pattern for a workspace",
5217 scope: Some("security:write"),
5218 params: &[
5219 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5220 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5221 ],
5222 body: &[
5223 Field { name: "after", kind: "string", required: false, values: &[] },
5224 Field { name: "before", kind: "string", required: false, values: &[] },
5225 Field { name: "pattern", kind: "string", required: true, values: &[] },
5226 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
5227 Field { name: "publish", kind: "boolean", required: false, values: &[] },
5228 Field { name: "test_strings", kind: "array", required: false, values: &[] },
5229 ],
5230 },
5231 Operation {
5232 id: "update_secret_scanning_alert",
5233 method: "PATCH",
5234 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}",
5235 tag: "Secret scanning",
5236 summary: "Dismiss or reopen a secret scanning alert",
5237 scope: Some("security:write"),
5238 params: &[
5239 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5240 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5241 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5242 ],
5243 body: &[
5244 Field { name: "comment", kind: "string", required: false, values: &[] },
5245 Field { name: "reason", kind: "string", required: false, values: &["false_positive", "used_in_tests", "revoked", "wont_fix"] },
5246 Field { name: "state", kind: "string", required: true, values: &["open", "dismissed"] },
5247 ],
5248 },
5249 Operation {
5250 id: "delete_actions_secret",
5251 method: "DELETE",
5252 path: "/repos/{owner}/{name}/actions/secrets/{setting}",
5253 tag: "Secrets and variables",
5254 summary: "Delete a secret",
5255 scope: Some("secrets:admin"),
5256 params: &[
5257 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5258 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5259 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5260 ],
5261 body: &[
5262 Field { name: "id", kind: "string", required: false, values: &[] },
5263 Field { name: "workspace", kind: "string", required: false, values: &[] },
5264 ],
5265 },
5266 Operation {
5267 id: "delete_actions_secret_for_workspace",
5268 method: "DELETE",
5269 path: "/workspaces/{workspace}/actions/secrets/{setting}",
5270 tag: "Secrets and variables",
5271 summary: "Delete a secret for a workspace",
5272 scope: Some("secrets:admin"),
5273 params: &[
5274 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5275 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5276 ],
5277 body: &[
5278 Field { name: "id", kind: "string", required: false, values: &[] },
5279 ],
5280 },
5281 Operation {
5282 id: "delete_actions_variable",
5283 method: "DELETE",
5284 path: "/repos/{owner}/{name}/actions/variables/{setting}",
5285 tag: "Secrets and variables",
5286 summary: "Delete a variable",
5287 scope: Some("secrets:admin"),
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 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5292 ],
5293 body: &[
5294 Field { name: "id", kind: "string", required: false, values: &[] },
5295 Field { name: "workspace", kind: "string", required: false, values: &[] },
5296 ],
5297 },
5298 Operation {
5299 id: "delete_actions_variable_for_workspace",
5300 method: "DELETE",
5301 path: "/workspaces/{workspace}/actions/variables/{setting}",
5302 tag: "Secrets and variables",
5303 summary: "Delete a variable for a workspace",
5304 scope: Some("secrets:admin"),
5305 params: &[
5306 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5307 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5308 ],
5309 body: &[
5310 Field { name: "id", kind: "string", required: false, values: &[] },
5311 ],
5312 },
5313 Operation {
5314 id: "list_actions_secrets",
5315 method: "GET",
5316 path: "/repos/{owner}/{name}/actions/secrets",
5317 tag: "Secrets and variables",
5318 summary: "List secrets",
5319 scope: Some("secrets:read"),
5320 params: &[
5321 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5322 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5323 ],
5324 body: &[],
5325 },
5326 Operation {
5327 id: "list_actions_secrets_for_workspace",
5328 method: "GET",
5329 path: "/workspaces/{workspace}/actions/secrets",
5330 tag: "Secrets and variables",
5331 summary: "List secrets for a workspace",
5332 scope: Some("secrets:read"),
5333 params: &[
5334 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5335 ],
5336 body: &[],
5337 },
5338 Operation {
5339 id: "list_actions_variables",
5340 method: "GET",
5341 path: "/repos/{owner}/{name}/actions/variables",
5342 tag: "Secrets and variables",
5343 summary: "List variables",
5344 scope: Some("secrets:read"),
5345 params: &[
5346 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5347 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5348 ],
5349 body: &[],
5350 },
5351 Operation {
5352 id: "list_actions_variables_for_workspace",
5353 method: "GET",
5354 path: "/workspaces/{workspace}/actions/variables",
5355 tag: "Secrets and variables",
5356 summary: "List variables for a workspace",
5357 scope: Some("secrets:read"),
5358 params: &[
5359 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5360 ],
5361 body: &[],
5362 },
5363 Operation {
5364 id: "set_actions_secret",
5365 method: "PUT",
5366 path: "/repos/{owner}/{name}/actions/secrets/{setting}",
5367 tag: "Secrets and variables",
5368 summary: "Set a secret",
5369 scope: Some("secrets:admin"),
5370 params: &[
5371 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5372 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5373 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5374 ],
5375 body: &[
5376 Field { name: "available_to", kind: "array", required: false, values: &[] },
5377 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5378 Field { name: "environments", kind: "array", required: false, values: &[] },
5379 Field { name: "id", kind: "string", required: false, values: &[] },
5380 Field { name: "note", kind: "string", required: false, values: &[] },
5381 Field { name: "projects", kind: "array", required: false, values: &[] },
5382 Field { name: "value", kind: "string", required: false, values: &[] },
5383 Field { name: "workspace", kind: "string", required: false, values: &[] },
5384 ],
5385 },
5386 Operation {
5387 id: "set_actions_secret_for_workspace",
5388 method: "PUT",
5389 path: "/workspaces/{workspace}/actions/secrets/{setting}",
5390 tag: "Secrets and variables",
5391 summary: "Set a secret for a workspace",
5392 scope: Some("secrets:admin"),
5393 params: &[
5394 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5395 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5396 ],
5397 body: &[
5398 Field { name: "available_to", kind: "array", required: false, values: &[] },
5399 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5400 Field { name: "environments", kind: "array", required: false, values: &[] },
5401 Field { name: "id", kind: "string", required: false, values: &[] },
5402 Field { name: "note", kind: "string", required: false, values: &[] },
5403 Field { name: "projects", kind: "array", required: false, values: &[] },
5404 Field { name: "value", kind: "string", required: false, values: &[] },
5405 ],
5406 },
5407 Operation {
5408 id: "set_actions_variable",
5409 method: "POST",
5410 path: "/repos/{owner}/{name}/actions/variables",
5411 tag: "Secrets and variables",
5412 summary: "Set a variable",
5413 scope: Some("secrets:admin"),
5414 params: &[
5415 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5416 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5417 ],
5418 body: &[
5419 Field { name: "available_to", kind: "array", required: false, values: &[] },
5420 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5421 Field { name: "environments", kind: "array", required: false, values: &[] },
5422 Field { name: "id", kind: "string", required: false, values: &[] },
5423 Field { name: "note", kind: "string", required: false, values: &[] },
5424 Field { name: "projects", kind: "array", required: false, values: &[] },
5425 Field { name: "setting", kind: "string", required: true, values: &[] },
5426 Field { name: "value", kind: "string", required: false, values: &[] },
5427 Field { name: "workspace", kind: "string", required: false, values: &[] },
5428 ],
5429 },
5430 Operation {
5431 id: "set_actions_variable_for_workspace",
5432 method: "POST",
5433 path: "/workspaces/{workspace}/actions/variables",
5434 tag: "Secrets and variables",
5435 summary: "Set a variable for a workspace",
5436 scope: Some("secrets:admin"),
5437 params: &[
5438 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5439 ],
5440 body: &[
5441 Field { name: "available_to", kind: "array", required: false, values: &[] },
5442 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5443 Field { name: "environments", kind: "array", required: false, values: &[] },
5444 Field { name: "id", kind: "string", required: false, values: &[] },
5445 Field { name: "note", kind: "string", required: false, values: &[] },
5446 Field { name: "projects", kind: "array", required: false, values: &[] },
5447 Field { name: "setting", kind: "string", required: true, values: &[] },
5448 Field { name: "value", kind: "string", required: false, values: &[] },
5449 ],
5450 },
5451 Operation {
5452 id: "update_actions_variable",
5453 method: "PATCH",
5454 path: "/repos/{owner}/{name}/actions/variables/{setting}",
5455 tag: "Secrets and variables",
5456 summary: "Update a variable",
5457 scope: Some("secrets:admin"),
5458 params: &[
5459 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5460 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5461 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5462 ],
5463 body: &[
5464 Field { name: "available_to", kind: "array", required: false, values: &[] },
5465 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5466 Field { name: "environments", kind: "array", required: false, values: &[] },
5467 Field { name: "id", kind: "string", required: false, values: &[] },
5468 Field { name: "note", kind: "string", required: false, values: &[] },
5469 Field { name: "projects", kind: "array", required: false, values: &[] },
5470 Field { name: "value", kind: "string", required: false, values: &[] },
5471 Field { name: "workspace", kind: "string", required: false, values: &[] },
5472 ],
5473 },
5474 Operation {
5475 id: "update_actions_variable_for_workspace",
5476 method: "PATCH",
5477 path: "/workspaces/{workspace}/actions/variables/{setting}",
5478 tag: "Secrets and variables",
5479 summary: "Update a variable for a workspace",
5480 scope: Some("secrets:admin"),
5481 params: &[
5482 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5483 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5484 ],
5485 body: &[
5486 Field { name: "available_to", kind: "array", required: false, values: &[] },
5487 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5488 Field { name: "environments", kind: "array", required: false, values: &[] },
5489 Field { name: "id", kind: "string", required: false, values: &[] },
5490 Field { name: "note", kind: "string", required: false, values: &[] },
5491 Field { name: "projects", kind: "array", required: false, values: &[] },
5492 Field { name: "value", kind: "string", required: false, values: &[] },
5493 ],
5494 },
5495 Operation {
5496 id: "dismiss_security_alert",
5497 method: "POST",
5498 path: "/repos/{owner}/{name}/security/alerts/{id}/dismiss",
5499 tag: "Security",
5500 summary: "Dismiss a security alert",
5501 scope: Some("repo:admin"),
5502 params: &[
5503 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5504 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5505 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5506 ],
5507 body: &[
5508 Field { name: "comment", kind: "string", required: false, values: &[] },
5509 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"] },
5510 ],
5511 },
5512 Operation {
5513 id: "list_security_alerts",
5514 method: "GET",
5515 path: "/repos/{owner}/{name}/security/alerts",
5516 tag: "Security",
5517 summary: "List security alerts",
5518 scope: Some("repo:read"),
5519 params: &[
5520 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5521 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5522 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
5523 Param { name: "kind", location: In::Query, kind: "string", required: false, values: &["secret", "dependency"] },
5524 ],
5525 body: &[],
5526 },
5527 Operation {
5528 id: "reopen_security_alert",
5529 method: "POST",
5530 path: "/repos/{owner}/{name}/security/alerts/{id}/reopen",
5531 tag: "Security",
5532 summary: "Reopen a security alert",
5533 scope: Some("repo:admin"),
5534 params: &[
5535 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5536 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5537 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5538 ],
5539 body: &[],
5540 },
5541 Operation {
5542 id: "create_security_advisory",
5543 method: "POST",
5544 path: "/repos/{owner}/{name}/security/advisories",
5545 tag: "Security advisories",
5546 summary: "Create a security advisory",
5547 scope: Some("security:write"),
5548 params: &[
5549 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5550 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5551 ],
5552 body: &[
5553 Field { name: "affected_versions", kind: "string", required: false, values: &[] },
5554 Field { name: "credits", kind: "array", required: false, values: &[] },
5555 Field { name: "cve_id", kind: "string", required: false, values: &[] },
5556 Field { name: "cvss_score", kind: "number", required: false, values: &[] },
5557 Field { name: "cvss_vector", kind: "string", required: false, values: &[] },
5558 Field { name: "description", kind: "string", required: false, values: &[] },
5559 Field { name: "ecosystem", kind: "string", required: false, values: &[] },
5560 Field { name: "package", kind: "string", required: false, values: &[] },
5561 Field { name: "patched_versions", kind: "string", required: false, values: &[] },
5562 Field { name: "severity", kind: "string", required: true, values: &["critical", "high", "medium", "low"] },
5563 Field { name: "title", kind: "string", required: true, values: &[] },
5564 ],
5565 },
5566 Operation {
5567 id: "get_security_advisory",
5568 method: "GET",
5569 path: "/repos/{owner}/{name}/security/advisories/{id}",
5570 tag: "Security advisories",
5571 summary: "Get a security advisory",
5572 scope: Some("security:read"),
5573 params: &[
5574 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5575 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5576 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5577 ],
5578 body: &[],
5579 },
5580 Operation {
5581 id: "list_security_advisories",
5582 method: "GET",
5583 path: "/repos/{owner}/{name}/security/advisories",
5584 tag: "Security advisories",
5585 summary: "List security advisories",
5586 scope: Some("security:read"),
5587 params: &[
5588 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5589 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5590 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["draft", "published", "withdrawn"] },
5591 ],
5592 body: &[],
5593 },
5594 Operation {
5595 id: "list_vulnerability_reports",
5596 method: "GET",
5597 path: "/repos/{owner}/{name}/security/reports",
5598 tag: "Security advisories",
5599 summary: "List vulnerability reports",
5600 scope: Some("security:read"),
5601 params: &[
5602 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5603 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5604 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["new", "accepted", "declined"] },
5605 ],
5606 body: &[],
5607 },
5608 Operation {
5609 id: "report_vulnerability",
5610 method: "POST",
5611 path: "/repos/{owner}/{name}/security/reports",
5612 tag: "Security advisories",
5613 summary: "Report a vulnerability privately",
5614 scope: Some("security:write"),
5615 params: &[
5616 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5617 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5618 ],
5619 body: &[
5620 Field { name: "description", kind: "string", required: true, values: &[] },
5621 Field { name: "email", kind: "string", required: false, values: &[] },
5622 Field { name: "severity", kind: "string", required: false, values: &["critical", "high", "medium", "low"] },
5623 Field { name: "title", kind: "string", required: true, values: &[] },
5624 ],
5625 },
5626 Operation {
5627 id: "review_vulnerability_report",
5628 method: "PATCH",
5629 path: "/repos/{owner}/{name}/security/reports/{id}",
5630 tag: "Security advisories",
5631 summary: "Accept or decline a vulnerability report",
5632 scope: Some("security:write"),
5633 params: &[
5634 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5635 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5636 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5637 ],
5638 body: &[
5639 Field { name: "decision", kind: "string", required: true, values: &["accept", "decline"] },
5640 Field { name: "note", kind: "string", required: false, values: &[] },
5641 ],
5642 },
5643 Operation {
5644 id: "set_security_advisory_state",
5645 method: "POST",
5646 path: "/repos/{owner}/{name}/security/advisories/{id}/state",
5647 tag: "Security advisories",
5648 summary: "Publish or withdraw a security advisory",
5649 scope: Some("security:write"),
5650 params: &[
5651 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5652 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5653 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5654 ],
5655 body: &[
5656 Field { name: "state", kind: "string", required: true, values: &["published", "withdrawn"] },
5657 ],
5658 },
5659 Operation {
5660 id: "update_security_advisory",
5661 method: "PATCH",
5662 path: "/repos/{owner}/{name}/security/advisories/{id}",
5663 tag: "Security advisories",
5664 summary: "Update a security advisory",
5665 scope: Some("security:write"),
5666 params: &[
5667 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5668 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5669 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5670 ],
5671 body: &[
5672 Field { name: "affected_versions", kind: "string", required: false, values: &[] },
5673 Field { name: "credits", kind: "array", required: false, values: &[] },
5674 Field { name: "cve_id", kind: "string", required: false, values: &[] },
5675 Field { name: "cvss_score", kind: "number", required: false, values: &[] },
5676 Field { name: "cvss_vector", kind: "string", required: false, values: &[] },
5677 Field { name: "description", kind: "string", required: false, values: &[] },
5678 Field { name: "ecosystem", kind: "string", required: false, values: &[] },
5679 Field { name: "package", kind: "string", required: false, values: &[] },
5680 Field { name: "patched_versions", kind: "string", required: false, values: &[] },
5681 Field { name: "severity", kind: "string", required: false, values: &["critical", "high", "medium", "low"] },
5682 Field { name: "title", kind: "string", required: false, values: &[] },
5683 ],
5684 },
5685 Operation {
5686 id: "get_security_overview",
5687 method: "GET",
5688 path: "/workspaces/{workspace}/security/overview",
5689 tag: "Security settings",
5690 summary: "Get the security overview",
5691 scope: Some("security:read"),
5692 params: &[
5693 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5694 Param { name: "days", location: In::Query, kind: "integer", required: false, values: &[] },
5695 ],
5696 body: &[],
5697 },
5698 Operation {
5699 id: "get_security_settings",
5700 method: "GET",
5701 path: "/repos/{owner}/{name}/security/settings",
5702 tag: "Security settings",
5703 summary: "Get a repository's security settings",
5704 scope: Some("security:read"),
5705 params: &[
5706 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5707 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5708 ],
5709 body: &[],
5710 },
5711 Operation {
5712 id: "get_workspace_security_settings",
5713 method: "GET",
5714 path: "/workspaces/{workspace}/security/settings",
5715 tag: "Security settings",
5716 summary: "Get a workspace's security settings",
5717 scope: Some("security:read"),
5718 params: &[
5719 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5720 ],
5721 body: &[],
5722 },
5723 Operation {
5724 id: "update_security_settings",
5725 method: "PATCH",
5726 path: "/repos/{owner}/{name}/security/settings",
5727 tag: "Security settings",
5728 summary: "Update a repository's security settings",
5729 scope: Some("security:write"),
5730 params: &[
5731 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5732 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5733 ],
5734 body: &[
5735 Field { name: "code_scanning_gate", kind: "string", required: false, values: &["none", "errors", "critical", "high", "medium", "any"] },
5736 Field { name: "dependency_review", kind: "boolean", required: false, values: &[] },
5737 Field { name: "history_alerts", kind: "boolean", required: false, values: &[] },
5738 Field { name: "private_vulnerability_reporting", kind: "boolean", required: false, values: &[] },
5739 Field { name: "review_comment", kind: "boolean", required: false, values: &[] },
5740 Field { name: "review_deny_licenses", kind: "array", required: false, values: &[] },
5741 Field { name: "review_fail_on", kind: "string", required: false, values: &["critical", "high", "medium", "low", "none"] },
5742 ],
5743 },
5744 Operation {
5745 id: "update_workspace_security_settings",
5746 method: "PATCH",
5747 path: "/workspaces/{workspace}/security/settings",
5748 tag: "Security settings",
5749 summary: "Update a workspace's security settings",
5750 scope: Some("security:write"),
5751 params: &[
5752 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5753 ],
5754 body: &[
5755 Field { name: "delegated_bypass", kind: "boolean", required: false, values: &[] },
5756 Field { name: "validity_checks", kind: "boolean", required: false, values: &[] },
5757 ],
5758 },
5759 Operation {
5760 id: "end_session",
5761 method: "POST",
5762 path: "/repos/{owner}/{name}/sessions/{id}/end",
5763 tag: "Sessions",
5764 summary: "End a session",
5765 scope: Some("pull_requests:write"),
5766 params: &[
5767 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5768 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5769 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5770 ],
5771 body: &[
5772 Field { name: "reason", kind: "string", required: false, values: &[] },
5773 Field { name: "result", kind: "string", required: false, values: &[] },
5774 ],
5775 },
5776 Operation {
5777 id: "get_session",
5778 method: "GET",
5779 path: "/repos/{owner}/{name}/sessions/{id}",
5780 tag: "Sessions",
5781 summary: "Get a session",
5782 scope: Some("pull_requests:read"),
5783 params: &[
5784 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5785 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5786 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5787 Param { name: "after", location: In::Query, kind: "integer", required: false, values: &[] },
5788 ],
5789 body: &[],
5790 },
5791 Operation {
5792 id: "list_sessions",
5793 method: "GET",
5794 path: "/repos/{owner}/{name}/sessions",
5795 tag: "Sessions",
5796 summary: "List sessions",
5797 scope: Some("pull_requests:read"),
5798 params: &[
5799 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5800 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5801 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "idle", "ended"] },
5802 Param { name: "issue", location: In::Query, kind: "integer", required: false, values: &[] },
5803 Param { name: "pull", location: In::Query, kind: "integer", required: false, values: &[] },
5804 Param { name: "path", location: In::Query, kind: "string", required: false, values: &[] },
5805 Param { name: "subagents", location: In::Query, kind: "boolean", required: false, values: &[] },
5806 ],
5807 body: &[],
5808 },
5809 Operation {
5810 id: "read_session",
5811 method: "GET",
5812 path: "/repos/{owner}/{name}/pulls/{number}/session",
5813 tag: "Sessions",
5814 summary: "Read a session",
5815 scope: Some("pull_requests:read"),
5816 params: &[
5817 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5818 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5819 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
5820 Param { name: "after", location: In::Query, kind: "integer", required: false, values: &[] },
5821 ],
5822 body: &[],
5823 },
5824 Operation {
5825 id: "record_session",
5826 method: "POST",
5827 path: "/repos/{owner}/{name}/pulls/{number}/session",
5828 tag: "Sessions",
5829 summary: "Record session entries",
5830 scope: Some("pull_requests:write"),
5831 params: &[
5832 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5833 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5834 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
5835 ],
5836 body: &[
5837 Field { name: "entries", kind: "array", required: true, values: &[] },
5838 ],
5839 },
5840 Operation {
5841 id: "record_session_entries",
5842 method: "POST",
5843 path: "/repos/{owner}/{name}/sessions/{id}/entries",
5844 tag: "Sessions",
5845 summary: "Record entries in a session",
5846 scope: Some("pull_requests:write"),
5847 params: &[
5848 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5849 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5850 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5851 ],
5852 body: &[
5853 Field { name: "entries", kind: "array", required: false, values: &[] },
5854 Field { name: "touched", kind: "array", required: false, values: &[] },
5855 ],
5856 },
5857 Operation {
5858 id: "start_agent_session",
5859 method: "POST",
5860 path: "/repos/{owner}/{name}/agent-sessions",
5861 tag: "Sessions",
5862 summary: "Start an agent session on an issue",
5863 scope: Some("pull_requests:write"),
5864 params: &[
5865 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5866 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5867 ],
5868 body: &[
5869 Field { name: "body", kind: "string", required: false, values: &[] },
5870 Field { name: "handoff", kind: "boolean", required: false, values: &[] },
5871 Field { name: "instruction", kind: "string", required: false, values: &[] },
5872 Field { name: "issue", kind: "integer", required: false, values: &[] },
5873 Field { name: "mode", kind: "string", required: false, values: &["plan", "implement", "review"] },
5874 Field { name: "title", kind: "string", required: false, values: &[] },
5875 ],
5876 },
5877 Operation {
5878 id: "start_session",
5879 method: "POST",
5880 path: "/repos/{owner}/{name}/sessions",
5881 tag: "Sessions",
5882 summary: "Start a session",
5883 scope: Some("pull_requests:write"),
5884 params: &[
5885 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5886 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5887 ],
5888 body: &[
5889 Field { name: "agent_type", kind: "string", required: false, values: &[] },
5890 Field { name: "branch", kind: "string", required: false, values: &[] },
5891 Field { name: "harness", kind: "string", required: true, values: &["claude_code", "claude_managed_agents", "codex", "cursor", "copilot", "other"] },
5892 Field { name: "harness_session_id", kind: "string", required: false, values: &[] },
5893 Field { name: "head_commit", kind: "string", required: false, values: &[] },
5894 Field { name: "issue", kind: "integer", required: false, values: &[] },
5895 Field { name: "model", kind: "string", required: false, values: &[] },
5896 Field { name: "parent_id", kind: "string", required: false, values: &[] },
5897 Field { name: "prompt", kind: "string", required: false, values: &[] },
5898 Field { name: "pull", kind: "integer", required: false, values: &[] },
5899 Field { name: "task", kind: "string", required: false, values: &[] },
5900 Field { name: "title", kind: "string", required: false, values: &[] },
5901 ],
5902 },
5903 Operation {
5904 id: "update_session",
5905 method: "PATCH",
5906 path: "/repos/{owner}/{name}/sessions/{id}",
5907 tag: "Sessions",
5908 summary: "Update a session",
5909 scope: Some("pull_requests: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 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5914 ],
5915 body: &[
5916 Field { name: "agent_type", kind: "string", required: false, values: &[] },
5917 Field { name: "branch", kind: "string", required: false, values: &[] },
5918 Field { name: "head_commit", kind: "string", required: false, values: &[] },
5919 Field { name: "issue", kind: "integer", required: false, values: &[] },
5920 Field { name: "model", kind: "string", required: false, values: &[] },
5921 Field { name: "prompt", kind: "string", required: false, values: &[] },
5922 Field { name: "pull", kind: "integer", required: false, values: &[] },
5923 Field { name: "result", kind: "string", required: false, values: &[] },
5924 Field { name: "task", kind: "string", required: false, values: &[] },
5925 Field { name: "title", kind: "string", required: false, values: &[] },
5926 ],
5927 },
5928 Operation {
5929 id: "check_starred",
5930 method: "GET",
5931 path: "/user/starred/{owner}/{name}",
5932 tag: "Stars",
5933 summary: "Check whether you starred a repository",
5934 scope: Some("account:read"),
5935 params: &[
5936 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5937 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5938 ],
5939 body: &[],
5940 },
5941 Operation {
5942 id: "list_stargazers",
5943 method: "GET",
5944 path: "/repos/{owner}/{name}/stargazers",
5945 tag: "Stars",
5946 summary: "List who starred a repository",
5947 scope: Some("repo:read"),
5948 params: &[
5949 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5950 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5951 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
5952 ],
5953 body: &[],
5954 },
5955 Operation {
5956 id: "list_starred",
5957 method: "GET",
5958 path: "/user/starred",
5959 tag: "Stars",
5960 summary: "List repositories you starred",
5961 scope: Some("account:read"),
5962 params: &[],
5963 body: &[],
5964 },
5965 Operation {
5966 id: "star_repo",
5967 method: "PUT",
5968 path: "/user/starred/{owner}/{name}",
5969 tag: "Stars",
5970 summary: "Star a repository",
5971 scope: Some("account:write"),
5972 params: &[
5973 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5974 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5975 ],
5976 body: &[],
5977 },
5978 Operation {
5979 id: "unstar_repo",
5980 method: "DELETE",
5981 path: "/user/starred/{owner}/{name}",
5982 tag: "Stars",
5983 summary: "Unstar a repository",
5984 scope: Some("account:write"),
5985 params: &[
5986 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5987 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5988 ],
5989 body: &[],
5990 },
5991 Operation {
5992 id: "compare_dependencies",
5993 method: "GET",
5994 path: "/repos/{owner}/{name}/dependency-graph/compare/{basehead}",
5995 tag: "Supply chain",
5996 summary: "Compare dependencies",
5997 scope: Some("security:read"),
5998 params: &[
5999 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6000 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6001 Param { name: "basehead", location: In::Path, kind: "string", required: true, values: &[] },
6002 ],
6003 body: &[],
6004 },
6005 Operation {
6006 id: "get_dependency_graph",
6007 method: "GET",
6008 path: "/repos/{owner}/{name}/dependency-graph",
6009 tag: "Supply chain",
6010 summary: "Get the dependency graph",
6011 scope: Some("security:read"),
6012 params: &[
6013 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6014 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6015 ],
6016 body: &[],
6017 },
6018 Operation {
6019 id: "get_sbom",
6020 method: "GET",
6021 path: "/repos/{owner}/{name}/dependency-graph/sbom",
6022 tag: "Supply chain",
6023 summary: "Export an SBOM",
6024 scope: Some("security:read"),
6025 params: &[
6026 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6027 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6028 ],
6029 body: &[],
6030 },
6031 Operation {
6032 id: "get_vulnerability_alert",
6033 method: "GET",
6034 path: "/repos/{owner}/{name}/vulnerability-alerts/{id}",
6035 tag: "Supply chain",
6036 summary: "Get a vulnerability alert",
6037 scope: Some("security:read"),
6038 params: &[
6039 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6040 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6041 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6042 ],
6043 body: &[],
6044 },
6045 Operation {
6046 id: "list_vulnerability_alerts",
6047 method: "GET",
6048 path: "/repos/{owner}/{name}/vulnerability-alerts",
6049 tag: "Supply chain",
6050 summary: "List vulnerability alerts",
6051 scope: Some("security:read"),
6052 params: &[
6053 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6054 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6055 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
6056 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
6057 Param { name: "ecosystem", location: In::Query, kind: "string", required: false, values: &[] },
6058 Param { name: "package", location: In::Query, kind: "string", required: false, values: &[] },
6059 ],
6060 body: &[],
6061 },
6062 Operation {
6063 id: "list_vulnerability_alerts_for_workspace",
6064 method: "GET",
6065 path: "/workspaces/{workspace}/vulnerability-alerts",
6066 tag: "Supply chain",
6067 summary: "List vulnerability alerts for a workspace",
6068 scope: Some("security:read"),
6069 params: &[
6070 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6071 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
6072 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
6073 Param { name: "ecosystem", location: In::Query, kind: "string", required: false, values: &[] },
6074 Param { name: "package", location: In::Query, kind: "string", required: false, values: &[] },
6075 ],
6076 body: &[],
6077 },
6078 Operation {
6079 id: "update_vulnerability_alert",
6080 method: "PATCH",
6081 path: "/repos/{owner}/{name}/vulnerability-alerts/{id}",
6082 tag: "Supply chain",
6083 summary: "Dismiss or reopen a vulnerability alert",
6084 scope: Some("security:write"),
6085 params: &[
6086 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6087 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6088 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6089 ],
6090 body: &[
6091 Field { name: "comment", kind: "string", required: false, values: &[] },
6092 Field { name: "reason", kind: "string", required: false, values: &["fix_started", "no_bandwidth", "tolerable_risk", "inaccurate", "not_used"] },
6093 Field { name: "state", kind: "string", required: true, values: &["open", "dismissed"] },
6094 ],
6095 },
6096 Operation {
6097 id: "create_team",
6098 method: "POST",
6099 path: "/workspaces/{workspace}/teams",
6100 tag: "Teams",
6101 summary: "Create a team",
6102 scope: Some("workspace:admin"),
6103 params: &[
6104 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6105 ],
6106 body: &[
6107 Field { name: "description", kind: "string", required: false, values: &[] },
6108 Field { name: "members", kind: "array", required: false, values: &[] },
6109 Field { name: "name", kind: "string", required: true, values: &[] },
6110 Field { name: "notify", kind: "boolean", required: false, values: &[] },
6111 Field { name: "parent", kind: "string", required: false, values: &[] },
6112 Field { name: "slug", kind: "string", required: false, values: &[] },
6113 Field { name: "visibility", kind: "string", required: false, values: &["visible", "secret"] },
6114 ],
6115 },
6116 Operation {
6117 id: "delete_team",
6118 method: "DELETE",
6119 path: "/workspaces/{workspace}/teams/{team}",
6120 tag: "Teams",
6121 summary: "Delete a team",
6122 scope: Some("workspace:admin"),
6123 params: &[
6124 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6125 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6126 ],
6127 body: &[],
6128 },
6129 Operation {
6130 id: "get_team",
6131 method: "GET",
6132 path: "/workspaces/{workspace}/teams/{team}",
6133 tag: "Teams",
6134 summary: "Get a team",
6135 scope: Some("workspace:read"),
6136 params: &[
6137 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6138 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6139 ],
6140 body: &[],
6141 },
6142 Operation {
6143 id: "list_child_teams",
6144 method: "GET",
6145 path: "/workspaces/{workspace}/teams/{team}/teams",
6146 tag: "Teams",
6147 summary: "List child teams",
6148 scope: Some("workspace:read"),
6149 params: &[
6150 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6151 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6152 ],
6153 body: &[],
6154 },
6155 Operation {
6156 id: "list_team_members",
6157 method: "GET",
6158 path: "/workspaces/{workspace}/teams/{team}/members",
6159 tag: "Teams",
6160 summary: "List a team's members",
6161 scope: Some("workspace:read"),
6162 params: &[
6163 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6164 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6165 Param { name: "include_child_teams", location: In::Query, kind: "boolean", required: false, values: &[] },
6166 ],
6167 body: &[],
6168 },
6169 Operation {
6170 id: "list_team_repos",
6171 method: "GET",
6172 path: "/workspaces/{workspace}/teams/{team}/repos",
6173 tag: "Teams",
6174 summary: "List a team's repositories",
6175 scope: Some("workspace:read"),
6176 params: &[
6177 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6178 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6179 ],
6180 body: &[],
6181 },
6182 Operation {
6183 id: "list_teams",
6184 method: "GET",
6185 path: "/workspaces/{workspace}/teams",
6186 tag: "Teams",
6187 summary: "List teams",
6188 scope: Some("workspace:read"),
6189 params: &[
6190 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6191 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
6192 ],
6193 body: &[],
6194 },
6195 Operation {
6196 id: "list_user_teams",
6197 method: "GET",
6198 path: "/workspaces/{workspace}/members/{username}/teams",
6199 tag: "Teams",
6200 summary: "List someone's teams",
6201 scope: Some("workspace:read"),
6202 params: &[
6203 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6204 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6205 ],
6206 body: &[],
6207 },
6208 Operation {
6209 id: "remove_team_member",
6210 method: "DELETE",
6211 path: "/workspaces/{workspace}/teams/{team}/members/{username}",
6212 tag: "Teams",
6213 summary: "Remove a team member",
6214 scope: Some("workspace:admin"),
6215 params: &[
6216 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6217 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6218 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6219 ],
6220 body: &[],
6221 },
6222 Operation {
6223 id: "remove_team_repo",
6224 method: "DELETE",
6225 path: "/workspaces/{workspace}/teams/{team}/repos/{repo}",
6226 tag: "Teams",
6227 summary: "Remove a team from a repository",
6228 scope: Some("access:admin"),
6229 params: &[
6230 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6231 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6232 Param { name: "repo", location: In::Path, kind: "string", required: true, values: &[] },
6233 ],
6234 body: &[],
6235 },
6236 Operation {
6237 id: "set_team_member",
6238 method: "PUT",
6239 path: "/workspaces/{workspace}/teams/{team}/members/{username}",
6240 tag: "Teams",
6241 summary: "Add or change a team member",
6242 scope: Some("workspace:admin"),
6243 params: &[
6244 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6245 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6246 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6247 ],
6248 body: &[
6249 Field { name: "role", kind: "string", required: false, values: &["member", "maintainer"] },
6250 ],
6251 },
6252 Operation {
6253 id: "set_team_repo",
6254 method: "PUT",
6255 path: "/workspaces/{workspace}/teams/{team}/repos/{repo}",
6256 tag: "Teams",
6257 summary: "Give a team a role on a repository",
6258 scope: Some("access:admin"),
6259 params: &[
6260 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6261 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6262 Param { name: "repo", location: In::Path, kind: "string", required: true, values: &[] },
6263 ],
6264 body: &[
6265 Field { name: "role", kind: "string", required: true, values: &["read", "triage", "write", "maintain", "admin"] },
6266 ],
6267 },
6268 Operation {
6269 id: "set_team_review_assignment",
6270 method: "PUT",
6271 path: "/workspaces/{workspace}/teams/{team}/review_assignment",
6272 tag: "Teams",
6273 summary: "Set a team's review assignment",
6274 scope: Some("workspace:admin"),
6275 params: &[
6276 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6277 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6278 ],
6279 body: &[
6280 Field { name: "algorithm", kind: "string", required: false, values: &["round_robin", "load_balance"] },
6281 Field { name: "busy_at", kind: "integer", required: false, values: &[] },
6282 Field { name: "count", kind: "integer", required: false, values: &[] },
6283 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
6284 Field { name: "excluded", kind: "array", required: false, values: &[] },
6285 Field { name: "include_child_teams", kind: "boolean", required: false, values: &[] },
6286 Field { name: "notify_team", kind: "boolean", required: false, values: &[] },
6287 Field { name: "skip_busy", kind: "boolean", required: false, values: &[] },
6288 ],
6289 },
6290 Operation {
6291 id: "update_team",
6292 method: "PATCH",
6293 path: "/workspaces/{workspace}/teams/{team}",
6294 tag: "Teams",
6295 summary: "Update a team",
6296 scope: Some("workspace:admin"),
6297 params: &[
6298 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6299 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6300 ],
6301 body: &[
6302 Field { name: "description", kind: "string", required: false, values: &[] },
6303 Field { name: "name", kind: "string", required: false, values: &[] },
6304 Field { name: "notify", kind: "boolean", required: false, values: &[] },
6305 Field { name: "parent", kind: "string", required: false, values: &[] },
6306 Field { name: "review_assignment", kind: "object", required: false, values: &[] },
6307 Field { name: "slug", kind: "string", required: false, values: &[] },
6308 Field { name: "visibility", kind: "string", required: false, values: &["visible", "secret"] },
6309 ],
6310 },
6311 Operation {
6312 id: "create_webhook",
6313 method: "POST",
6314 path: "/repos/{owner}/{name}/hooks",
6315 tag: "Webhooks",
6316 summary: "Create a webhook",
6317 scope: Some("webhooks:admin"),
6318 params: &[
6319 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6320 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6321 ],
6322 body: &[
6323 Field { name: "events", kind: "array", required: false, values: &[] },
6324 Field { name: "secret", kind: "string", required: false, values: &[] },
6325 Field { name: "url", kind: "string", required: true, values: &[] },
6326 Field { name: "workspace", kind: "string", required: false, values: &[] },
6327 ],
6328 },
6329 Operation {
6330 id: "create_webhook_for_workspace",
6331 method: "POST",
6332 path: "/workspaces/{workspace}/hooks",
6333 tag: "Webhooks",
6334 summary: "Create a webhook for a workspace",
6335 scope: Some("webhooks:admin"),
6336 params: &[
6337 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6338 ],
6339 body: &[
6340 Field { name: "events", kind: "array", required: false, values: &[] },
6341 Field { name: "secret", kind: "string", required: false, values: &[] },
6342 Field { name: "url", kind: "string", required: true, values: &[] },
6343 ],
6344 },
6345 Operation {
6346 id: "delete_webhook",
6347 method: "DELETE",
6348 path: "/repos/{owner}/{name}/hooks/{id}",
6349 tag: "Webhooks",
6350 summary: "Delete a webhook",
6351 scope: Some("webhooks:admin"),
6352 params: &[
6353 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6354 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6355 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6356 ],
6357 body: &[
6358 Field { name: "workspace", kind: "string", required: false, values: &[] },
6359 ],
6360 },
6361 Operation {
6362 id: "delete_webhook_for_workspace",
6363 method: "DELETE",
6364 path: "/workspaces/{workspace}/hooks/{id}",
6365 tag: "Webhooks",
6366 summary: "Delete a webhook for a workspace",
6367 scope: Some("webhooks:admin"),
6368 params: &[
6369 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6370 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6371 ],
6372 body: &[],
6373 },
6374 Operation {
6375 id: "list_webhook_deliveries",
6376 method: "GET",
6377 path: "/repos/{owner}/{name}/hooks/{id}/deliveries",
6378 tag: "Webhooks",
6379 summary: "List webhook deliveries",
6380 scope: Some("webhooks:read"),
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: "id", location: In::Path, kind: "string", required: true, values: &[] },
6385 ],
6386 body: &[],
6387 },
6388 Operation {
6389 id: "list_webhook_deliveries_for_workspace",
6390 method: "GET",
6391 path: "/workspaces/{workspace}/hooks/{id}/deliveries",
6392 tag: "Webhooks",
6393 summary: "List webhook deliveries for a workspace",
6394 scope: Some("webhooks:read"),
6395 params: &[
6396 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6397 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6398 ],
6399 body: &[],
6400 },
6401 Operation {
6402 id: "list_webhooks",
6403 method: "GET",
6404 path: "/repos/{owner}/{name}/hooks",
6405 tag: "Webhooks",
6406 summary: "List webhooks",
6407 scope: Some("webhooks:read"),
6408 params: &[
6409 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6410 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6411 ],
6412 body: &[],
6413 },
6414 Operation {
6415 id: "list_webhooks_for_workspace",
6416 method: "GET",
6417 path: "/workspaces/{workspace}/hooks",
6418 tag: "Webhooks",
6419 summary: "List webhooks for a workspace",
6420 scope: Some("webhooks:read"),
6421 params: &[
6422 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6423 ],
6424 body: &[],
6425 },
6426 Operation {
6427 id: "ping_webhook",
6428 method: "POST",
6429 path: "/repos/{owner}/{name}/hooks/{id}/pings",
6430 tag: "Webhooks",
6431 summary: "Ping a webhook",
6432 scope: Some("webhooks:admin"),
6433 params: &[
6434 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6435 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6436 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6437 ],
6438 body: &[
6439 Field { name: "workspace", kind: "string", required: false, values: &[] },
6440 ],
6441 },
6442 Operation {
6443 id: "ping_webhook_for_workspace",
6444 method: "POST",
6445 path: "/workspaces/{workspace}/hooks/{id}/pings",
6446 tag: "Webhooks",
6447 summary: "Ping a webhook for a workspace",
6448 scope: Some("webhooks:admin"),
6449 params: &[
6450 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6451 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6452 ],
6453 body: &[],
6454 },
6455 Operation {
6456 id: "redeliver_webhook",
6457 method: "POST",
6458 path: "/repos/{owner}/{name}/hooks/{id}/deliveries/{delivery}/redeliver",
6459 tag: "Webhooks",
6460 summary: "Redeliver a webhook delivery",
6461 scope: Some("webhooks:admin"),
6462 params: &[
6463 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6464 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6465 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6466 Param { name: "delivery", location: In::Path, kind: "string", required: true, values: &[] },
6467 ],
6468 body: &[
6469 Field { name: "workspace", kind: "string", required: false, values: &[] },
6470 ],
6471 },
6472 Operation {
6473 id: "redeliver_webhook_for_workspace",
6474 method: "POST",
6475 path: "/workspaces/{workspace}/hooks/{id}/deliveries/{delivery}/redeliver",
6476 tag: "Webhooks",
6477 summary: "Redeliver a webhook delivery for a workspace",
6478 scope: Some("webhooks:admin"),
6479 params: &[
6480 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6481 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6482 Param { name: "delivery", location: In::Path, kind: "string", required: true, values: &[] },
6483 ],
6484 body: &[],
6485 },
6486 Operation {
6487 id: "update_webhook",
6488 method: "PATCH",
6489 path: "/repos/{owner}/{name}/hooks/{id}",
6490 tag: "Webhooks",
6491 summary: "Update a webhook",
6492 scope: Some("webhooks:admin"),
6493 params: &[
6494 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6495 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6496 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6497 ],
6498 body: &[
6499 Field { name: "active", kind: "boolean", required: false, values: &[] },
6500 Field { name: "events", kind: "array", required: false, values: &[] },
6501 Field { name: "url", kind: "string", required: false, values: &[] },
6502 Field { name: "workspace", kind: "string", required: false, values: &[] },
6503 ],
6504 },
6505 Operation {
6506 id: "update_webhook_for_workspace",
6507 method: "PATCH",
6508 path: "/workspaces/{workspace}/hooks/{id}",
6509 tag: "Webhooks",
6510 summary: "Update a webhook for a workspace",
6511 scope: Some("webhooks:admin"),
6512 params: &[
6513 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6514 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6515 ],
6516 body: &[
6517 Field { name: "active", kind: "boolean", required: false, values: &[] },
6518 Field { name: "events", kind: "array", required: false, values: &[] },
6519 Field { name: "url", kind: "string", required: false, values: &[] },
6520 ],
6521 },
6522 Operation {
6523 id: "create_workspace",
6524 method: "POST",
6525 path: "/workspaces",
6526 tag: "Workspaces",
6527 summary: "Create a workspace",
6528 scope: Some("workspace:admin"),
6529 params: &[],
6530 body: &[
6531 Field { name: "name", kind: "string", required: false, values: &[] },
6532 Field { name: "slug", kind: "string", required: true, values: &[] },
6533 ],
6534 },
6535 Operation {
6536 id: "delete_workspace",
6537 method: "DELETE",
6538 path: "/workspaces/{workspace}",
6539 tag: "Workspaces",
6540 summary: "Delete a workspace",
6541 scope: Some("workspace:admin"),
6542 params: &[
6543 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6544 ],
6545 body: &[
6546 Field { name: "confirm", kind: "string", required: true, values: &[] },
6547 ],
6548 },
6549 Operation {
6550 id: "get_workspace",
6551 method: "GET",
6552 path: "/workspaces/{workspace}",
6553 tag: "Workspaces",
6554 summary: "Get a workspace",
6555 scope: Some("workspace:read"),
6556 params: &[
6557 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6558 ],
6559 body: &[],
6560 },
6561 Operation {
6562 id: "get_workspace_activity",
6563 method: "GET",
6564 path: "/workspaces/{workspace}/activity",
6565 tag: "Workspaces",
6566 summary: "Get a workspace's activity",
6567 scope: Some("repo:read"),
6568 params: &[
6569 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6570 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
6571 Param { name: "until", location: In::Query, kind: "string", required: false, values: &[] },
6572 Param { name: "kinds", location: In::Query, kind: "array", required: false, values: &[] },
6573 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
6574 ],
6575 body: &[],
6576 },
6577 Operation {
6578 id: "update_workspace",
6579 method: "PATCH",
6580 path: "/workspaces/{workspace}",
6581 tag: "Workspaces",
6582 summary: "Update a workspace",
6583 scope: Some("workspace:admin"),
6584 params: &[
6585 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6586 ],
6587 body: &[
6588 Field { name: "base_permission", kind: "string", required: false, values: &["none", "read", "write", "admin"] },
6589 Field { name: "description", kind: "string", required: false, values: &[] },
6590 Field { name: "members_can_change_repo_visibility", kind: "boolean", required: false, values: &[] },
6591 Field { name: "members_can_create_private_repositories", kind: "boolean", required: false, values: &[] },
6592 Field { name: "members_can_create_public_repositories", kind: "boolean", required: false, values: &[] },
6593 Field { name: "members_can_delete_repositories", kind: "boolean", required: false, values: &[] },
6594 Field { name: "members_can_invite_outside_collaborators", kind: "boolean", required: false, values: &[] },
6595 Field { name: "name", kind: "string", required: false, values: &[] },
6596 Field { name: "team_creation", kind: "string", required: false, values: &["members", "owners"] },
6597 Field { name: "two_factor_requirement_enabled", kind: "boolean", required: false, values: &[] },
6598 ],
6599 },
6600];