Skip to content
6,573 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: "body", kind: "string", required: false, values: &[] },
1303 Field { name: "note", kind: "string", required: false, values: &[] },
1304 Field { name: "session_id", kind: "string", required: false, values: &[] },
1305 Field { name: "title", kind: "string", required: false, values: &[] },
1306 Field { name: "ttl_minutes", kind: "integer", required: false, values: &[] },
1307 ],
1308 },
1309 Operation {
1310 id: "claim_new_issue",
1311 method: "POST",
1312 path: "/repos/{owner}/{name}/claims",
1313 tag: "Claims and work",
1314 summary: "Open an issue and claim it",
1315 scope: Some("issues:write"),
1316 params: &[
1317 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1318 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1319 ],
1320 body: &[
1321 Field { name: "body", kind: "string", required: false, values: &[] },
1322 Field { name: "note", kind: "string", required: false, values: &[] },
1323 Field { name: "number", kind: "integer", required: false, values: &[] },
1324 Field { name: "session_id", kind: "string", required: false, values: &[] },
1325 Field { name: "title", kind: "string", required: false, values: &[] },
1326 Field { name: "ttl_minutes", kind: "integer", required: false, values: &[] },
1327 ],
1328 },
1329 Operation {
1330 id: "get_work",
1331 method: "GET",
1332 path: "/repos/{owner}/{name}/issues/{number}/work",
1333 tag: "Claims and work",
1334 summary: "Get an issue's work context",
1335 scope: Some("issues:read"),
1336 params: &[
1337 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1338 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1339 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1340 ],
1341 body: &[],
1342 },
1343 Operation {
1344 id: "hand_off_issue",
1345 method: "POST",
1346 path: "/repos/{owner}/{name}/issues/{number}/handoff",
1347 tag: "Claims and work",
1348 summary: "Hand off an issue",
1349 scope: Some("issues:write"),
1350 params: &[
1351 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1352 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1353 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1354 ],
1355 body: &[
1356 Field { name: "note", kind: "string", required: true, values: &[] },
1357 Field { name: "session_id", kind: "string", required: false, values: &[] },
1358 Field { name: "to", kind: "string", required: false, values: &[] },
1359 ],
1360 },
1361 Operation {
1362 id: "list_claims",
1363 method: "GET",
1364 path: "/repos/{owner}/{name}/claims",
1365 tag: "Claims and work",
1366 summary: "List claims",
1367 scope: Some("issues:read"),
1368 params: &[
1369 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1370 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1371 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "released", "expired", "handed_off"] },
1372 Param { name: "issue", location: In::Query, kind: "integer", required: false, values: &[] },
1373 ],
1374 body: &[],
1375 },
1376 Operation {
1377 id: "release_claim",
1378 method: "POST",
1379 path: "/repos/{owner}/{name}/issues/{number}/release",
1380 tag: "Claims and work",
1381 summary: "Release a claim",
1382 scope: Some("issues:write"),
1383 params: &[
1384 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1385 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1386 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1387 ],
1388 body: &[
1389 Field { name: "reason", kind: "string", required: false, values: &[] },
1390 Field { name: "session_id", kind: "string", required: false, values: &[] },
1391 ],
1392 },
1393 Operation {
1394 id: "get_code_scanning_alert",
1395 method: "GET",
1396 path: "/repos/{owner}/{name}/code-scanning/alerts/{number}",
1397 tag: "Code scanning",
1398 summary: "Get a code scanning alert",
1399 scope: Some("security:read"),
1400 params: &[
1401 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1402 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1403 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1404 ],
1405 body: &[],
1406 },
1407 Operation {
1408 id: "get_sarif_upload",
1409 method: "GET",
1410 path: "/repos/{owner}/{name}/code-scanning/sarifs/{id}",
1411 tag: "Code scanning",
1412 summary: "Get a SARIF upload",
1413 scope: Some("security:read"),
1414 params: &[
1415 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1416 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1417 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1418 ],
1419 body: &[],
1420 },
1421 Operation {
1422 id: "list_code_scanning_alerts",
1423 method: "GET",
1424 path: "/repos/{owner}/{name}/code-scanning/alerts",
1425 tag: "Code scanning",
1426 summary: "List code scanning alerts",
1427 scope: Some("security:read"),
1428 params: &[
1429 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1430 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1431 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
1432 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
1433 Param { name: "tool", location: In::Query, kind: "string", required: false, values: &[] },
1434 Param { name: "rule_id", location: In::Query, kind: "string", required: false, values: &[] },
1435 ],
1436 body: &[],
1437 },
1438 Operation {
1439 id: "list_code_scanning_alerts_for_workspace",
1440 method: "GET",
1441 path: "/workspaces/{workspace}/code-scanning/alerts",
1442 tag: "Code scanning",
1443 summary: "List code scanning alerts for a workspace",
1444 scope: Some("security:read"),
1445 params: &[
1446 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1447 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
1448 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
1449 Param { name: "tool", location: In::Query, kind: "string", required: false, values: &[] },
1450 Param { name: "rule_id", location: In::Query, kind: "string", required: false, values: &[] },
1451 ],
1452 body: &[],
1453 },
1454 Operation {
1455 id: "list_code_scanning_analyses",
1456 method: "GET",
1457 path: "/repos/{owner}/{name}/code-scanning/analyses",
1458 tag: "Code scanning",
1459 summary: "List code scanning analyses",
1460 scope: Some("security:read"),
1461 params: &[
1462 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1463 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1464 ],
1465 body: &[],
1466 },
1467 Operation {
1468 id: "update_code_scanning_alert",
1469 method: "PATCH",
1470 path: "/repos/{owner}/{name}/code-scanning/alerts/{number}",
1471 tag: "Code scanning",
1472 summary: "Dismiss or reopen a code scanning alert",
1473 scope: Some("security:write"),
1474 params: &[
1475 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1476 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1477 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1478 ],
1479 body: &[
1480 Field { name: "dismissed_comment", kind: "string", required: false, values: &[] },
1481 Field { name: "dismissed_reason", kind: "string", required: false, values: &["false_positive", "wont_fix", "used_in_tests"] },
1482 Field { name: "state", kind: "string", required: true, values: &["open", "dismissed"] },
1483 ],
1484 },
1485 Operation {
1486 id: "upload_sarif",
1487 method: "POST",
1488 path: "/repos/{owner}/{name}/code-scanning/sarifs",
1489 tag: "Code scanning",
1490 summary: "Upload a SARIF file",
1491 scope: Some("security:write"),
1492 params: &[
1493 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1494 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1495 ],
1496 body: &[
1497 Field { name: "category", kind: "string", required: false, values: &[] },
1498 Field { name: "checkout_uri", kind: "string", required: false, values: &[] },
1499 Field { name: "commit_sha", kind: "string", required: true, values: &[] },
1500 Field { name: "ref", kind: "string", required: true, values: &[] },
1501 Field { name: "sarif", kind: "string", required: true, values: &[] },
1502 Field { name: "tool_name", kind: "string", required: false, values: &[] },
1503 ],
1504 },
1505 Operation {
1506 id: "list_decisions",
1507 method: "GET",
1508 path: "/repos/{owner}/{name}/pulls/{number}/decisions",
1509 tag: "Decisions and why",
1510 summary: "List a pull request's decisions",
1511 scope: Some("pull_requests:read"),
1512 params: &[
1513 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1514 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1515 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1516 ],
1517 body: &[],
1518 },
1519 Operation {
1520 id: "list_issue_decisions",
1521 method: "GET",
1522 path: "/repos/{owner}/{name}/issues/{number}/decisions",
1523 tag: "Decisions and why",
1524 summary: "List an issue's decisions",
1525 scope: Some("pull_requests:read"),
1526 params: &[
1527 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1528 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1529 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1530 ],
1531 body: &[],
1532 },
1533 Operation {
1534 id: "record_decision",
1535 method: "POST",
1536 path: "/repos/{owner}/{name}/pulls/{number}/decisions",
1537 tag: "Decisions and why",
1538 summary: "Record a decision",
1539 scope: Some("pull_requests:write"),
1540 params: &[
1541 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1542 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1543 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1544 ],
1545 body: &[
1546 Field { name: "evidence", kind: "object", required: false, values: &[] },
1547 Field { name: "kind", kind: "string", required: true, values: &["proposal", "claim", "fix", "note"] },
1548 Field { name: "session_id", kind: "string", required: false, values: &[] },
1549 Field { name: "summary", kind: "string", required: true, values: &[] },
1550 ],
1551 },
1552 Operation {
1553 id: "why",
1554 method: "GET",
1555 path: "/repos/{owner}/{name}/why",
1556 tag: "Decisions and why",
1557 summary: "Explain a line",
1558 scope: Some("code:read"),
1559 params: &[
1560 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1561 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1562 Param { name: "path", location: In::Query, kind: "string", required: true, values: &[] },
1563 Param { name: "line", location: In::Query, kind: "integer", required: true, values: &[] },
1564 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
1565 ],
1566 body: &[],
1567 },
1568 Operation {
1569 id: "create_deployment",
1570 method: "POST",
1571 path: "/repos/{owner}/{name}/deployments",
1572 tag: "Deployments",
1573 summary: "Create a deployment",
1574 scope: Some("deployments:write"),
1575 params: &[
1576 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1577 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1578 ],
1579 body: &[
1580 Field { name: "description", kind: "string", required: false, values: &[] },
1581 Field { name: "environment", kind: "string", required: false, values: &[] },
1582 Field { name: "environment_url", kind: "string", required: false, values: &[] },
1583 Field { name: "log_url", kind: "string", required: false, values: &[] },
1584 Field { name: "payload", kind: "object", required: false, values: &[] },
1585 Field { name: "production_environment", kind: "boolean", required: false, values: &[] },
1586 Field { name: "ref", kind: "string", required: true, values: &[] },
1587 Field { name: "sha", kind: "string", required: false, values: &[] },
1588 Field { name: "state", kind: "string", required: false, values: &["queued", "in_progress", "success", "failure", "error", "inactive"] },
1589 Field { name: "task", kind: "string", required: false, values: &[] },
1590 Field { name: "transient_environment", kind: "boolean", required: false, values: &[] },
1591 ],
1592 },
1593 Operation {
1594 id: "create_deployment_status",
1595 method: "POST",
1596 path: "/repos/{owner}/{name}/deployments/{id}/statuses",
1597 tag: "Deployments",
1598 summary: "Create a deployment status",
1599 scope: Some("deployments:write"),
1600 params: &[
1601 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1602 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1603 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1604 ],
1605 body: &[
1606 Field { name: "auto_inactive", kind: "boolean", required: false, values: &[] },
1607 Field { name: "description", kind: "string", required: false, values: &[] },
1608 Field { name: "environment_url", kind: "string", required: false, values: &[] },
1609 Field { name: "log_url", kind: "string", required: false, values: &[] },
1610 Field { name: "state", kind: "string", required: true, values: &["queued", "in_progress", "success", "failure", "error", "inactive"] },
1611 ],
1612 },
1613 Operation {
1614 id: "get_deployment",
1615 method: "GET",
1616 path: "/repos/{owner}/{name}/deployments/{id}",
1617 tag: "Deployments",
1618 summary: "Get a deployment",
1619 scope: Some("deployments:read"),
1620 params: &[
1621 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1622 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1623 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1624 ],
1625 body: &[],
1626 },
1627 Operation {
1628 id: "get_environment",
1629 method: "GET",
1630 path: "/repos/{owner}/{name}/environments/{environment}",
1631 tag: "Deployments",
1632 summary: "Get an environment",
1633 scope: Some("deployments:read"),
1634 params: &[
1635 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1636 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1637 Param { name: "environment", location: In::Path, kind: "string", required: true, values: &[] },
1638 ],
1639 body: &[],
1640 },
1641 Operation {
1642 id: "list_deployment_statuses",
1643 method: "GET",
1644 path: "/repos/{owner}/{name}/deployments/{id}/statuses",
1645 tag: "Deployments",
1646 summary: "List deployment statuses",
1647 scope: Some("deployments:read"),
1648 params: &[
1649 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1650 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1651 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1652 ],
1653 body: &[],
1654 },
1655 Operation {
1656 id: "list_deployments",
1657 method: "GET",
1658 path: "/repos/{owner}/{name}/deployments",
1659 tag: "Deployments",
1660 summary: "List deployments",
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 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
1666 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
1667 Param { name: "sha", location: In::Query, kind: "string", required: false, values: &[] },
1668 Param { name: "task", location: In::Query, kind: "string", required: false, values: &[] },
1669 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["queued", "in_progress", "success", "failure", "error", "inactive"] },
1670 Param { name: "source", location: In::Query, kind: "string", required: false, values: &["api", "actions", "g1t_page"] },
1671 Param { name: "creator", location: In::Query, kind: "string", required: false, values: &[] },
1672 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
1673 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
1674 ],
1675 body: &[],
1676 },
1677 Operation {
1678 id: "list_environments",
1679 method: "GET",
1680 path: "/repos/{owner}/{name}/environments",
1681 tag: "Deployments",
1682 summary: "List environments",
1683 scope: Some("deployments:read"),
1684 params: &[
1685 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1686 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1687 ],
1688 body: &[],
1689 },
1690 Operation {
1691 id: "start_deployment_build",
1692 method: "POST",
1693 path: "/repos/{owner}/{name}/deployments/builds",
1694 tag: "Deployments",
1695 summary: "Start a g1t.page build from a workflow",
1696 scope: Some("deployments:write"),
1697 params: &[
1698 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1699 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1700 ],
1701 body: &[
1702 Field { name: "project", kind: "string", required: false, values: &[] },
1703 Field { name: "sha", kind: "string", required: false, values: &[] },
1704 ],
1705 },
1706 Operation {
1707 id: "connect_integration",
1708 method: "POST",
1709 path: "/workspaces/{workspace}/integrations",
1710 tag: "Integrations",
1711 summary: "Connect an integration",
1712 scope: Some("workspace:admin"),
1713 params: &[
1714 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1715 ],
1716 body: &[
1717 Field { name: "config", kind: "object", required: false, values: &[] },
1718 Field { name: "name", kind: "string", required: false, values: &[] },
1719 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"] },
1720 Field { name: "secret", kind: "string", required: false, values: &[] },
1721 Field { name: "signing_secret", kind: "string", required: false, values: &[] },
1722 ],
1723 },
1724 Operation {
1725 id: "disconnect_integration",
1726 method: "DELETE",
1727 path: "/workspaces/{workspace}/integrations/{id}",
1728 tag: "Integrations",
1729 summary: "Disconnect an integration",
1730 scope: Some("workspace:admin"),
1731 params: &[
1732 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1733 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1734 ],
1735 body: &[],
1736 },
1737 Operation {
1738 id: "get_context",
1739 method: "GET",
1740 path: "/repos/{owner}/{name}/context",
1741 tag: "Integrations",
1742 summary: "Look up a ticket",
1743 scope: Some("memory:read"),
1744 params: &[
1745 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1746 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1747 Param { name: "reference", location: In::Query, kind: "string", required: true, values: &[] },
1748 ],
1749 body: &[],
1750 },
1751 Operation {
1752 id: "import_issue",
1753 method: "POST",
1754 path: "/repos/{owner}/{name}/issues/import",
1755 tag: "Integrations",
1756 summary: "Import an issue",
1757 scope: Some("issues:write"),
1758 params: &[
1759 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1760 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1761 ],
1762 body: &[
1763 Field { name: "reference", kind: "string", required: true, values: &[] },
1764 ],
1765 },
1766 Operation {
1767 id: "list_integrations",
1768 method: "GET",
1769 path: "/workspaces/{workspace}/integrations",
1770 tag: "Integrations",
1771 summary: "List integrations",
1772 scope: Some("workspace:read"),
1773 params: &[
1774 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1775 ],
1776 body: &[],
1777 },
1778 Operation {
1779 id: "test_integration",
1780 method: "POST",
1781 path: "/workspaces/{workspace}/integrations/{id}/test",
1782 tag: "Integrations",
1783 summary: "Test an integration",
1784 scope: Some("workspace:admin"),
1785 params: &[
1786 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1787 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1788 ],
1789 body: &[],
1790 },
1791 Operation {
1792 id: "update_integration",
1793 method: "PATCH",
1794 path: "/workspaces/{workspace}/integrations/{id}",
1795 tag: "Integrations",
1796 summary: "Update an integration",
1797 scope: Some("workspace:admin"),
1798 params: &[
1799 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1800 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1801 ],
1802 body: &[
1803 Field { name: "config", kind: "object", required: false, values: &[] },
1804 Field { name: "name", kind: "string", required: false, values: &[] },
1805 Field { name: "secret", kind: "string", required: false, values: &[] },
1806 Field { name: "signing_secret", kind: "string", required: false, values: &[] },
1807 ],
1808 },
1809 Operation {
1810 id: "accept_invitation",
1811 method: "POST",
1812 path: "/user/invitations/{id}/accept",
1813 tag: "Invites",
1814 summary: "Accept a workspace invitation",
1815 scope: Some("account:write"),
1816 params: &[
1817 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1818 ],
1819 body: &[],
1820 },
1821 Operation {
1822 id: "decline_invitation",
1823 method: "POST",
1824 path: "/user/invitations/{id}/decline",
1825 tag: "Invites",
1826 summary: "Decline a workspace invitation",
1827 scope: Some("account:write"),
1828 params: &[
1829 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1830 ],
1831 body: &[],
1832 },
1833 Operation {
1834 id: "invite_member",
1835 method: "POST",
1836 path: "/workspaces/{workspace}/invitations",
1837 tag: "Invites",
1838 summary: "Invite someone to a workspace",
1839 scope: Some("workspace:admin"),
1840 params: &[
1841 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1842 ],
1843 body: &[
1844 Field { name: "email", kind: "string", required: false, values: &[] },
1845 Field { name: "role", kind: "string", required: false, values: &["member", "owner"] },
1846 Field { name: "username", kind: "string", required: false, values: &[] },
1847 ],
1848 },
1849 Operation {
1850 id: "list_invitations",
1851 method: "GET",
1852 path: "/user/invitations",
1853 tag: "Invites",
1854 summary: "List your workspace invitations",
1855 scope: Some("account:read"),
1856 params: &[],
1857 body: &[],
1858 },
1859 Operation {
1860 id: "list_workspace_invites",
1861 method: "GET",
1862 path: "/workspaces/{workspace}/invitations",
1863 tag: "Invites",
1864 summary: "List a workspace's invites",
1865 scope: Some("workspace:read"),
1866 params: &[
1867 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1868 ],
1869 body: &[],
1870 },
1871 Operation {
1872 id: "revoke_workspace_invite",
1873 method: "DELETE",
1874 path: "/workspaces/{workspace}/invitations/{id}",
1875 tag: "Invites",
1876 summary: "Revoke a workspace's invite",
1877 scope: Some("workspace:admin"),
1878 params: &[
1879 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
1880 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
1881 ],
1882 body: &[],
1883 },
1884 Operation {
1885 id: "add_comment",
1886 method: "POST",
1887 path: "/repos/{owner}/{name}/issues/{number}/comments",
1888 tag: "Issues",
1889 summary: "Add a comment",
1890 scope: Some("issues:write"),
1891 params: &[
1892 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1893 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1894 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1895 ],
1896 body: &[
1897 Field { name: "body", kind: "string", required: true, values: &[] },
1898 Field { name: "line", kind: "integer", required: false, values: &[] },
1899 Field { name: "path", kind: "string", required: false, values: &[] },
1900 ],
1901 },
1902 Operation {
1903 id: "add_issue_labels",
1904 method: "POST",
1905 path: "/repos/{owner}/{name}/issues/{number}/labels",
1906 tag: "Issues",
1907 summary: "Add labels to an issue",
1908 scope: Some("issues:write"),
1909 params: &[
1910 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1911 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1912 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1913 ],
1914 body: &[
1915 Field { name: "labels", kind: "array", required: true, values: &[] },
1916 ],
1917 },
1918 Operation {
1919 id: "close_issue",
1920 method: "POST",
1921 path: "/repos/{owner}/{name}/issues/{number}/close",
1922 tag: "Issues",
1923 summary: "Close an issue",
1924 scope: Some("issues:write"),
1925 params: &[
1926 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1927 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1928 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1929 ],
1930 body: &[
1931 Field { name: "reason", kind: "string", required: false, values: &["completed", "not_planned"] },
1932 ],
1933 },
1934 Operation {
1935 id: "create_issue",
1936 method: "POST",
1937 path: "/repos/{owner}/{name}/issues",
1938 tag: "Issues",
1939 summary: "Create an issue",
1940 scope: Some("issues:write"),
1941 params: &[
1942 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1943 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1944 ],
1945 body: &[
1946 Field { name: "body", kind: "string", required: false, values: &[] },
1947 Field { name: "checks", kind: "array", required: false, values: &[] },
1948 Field { name: "labels", kind: "array", required: false, values: &[] },
1949 Field { name: "milestone", kind: "integer", required: false, values: &[] },
1950 Field { name: "title", kind: "string", required: true, values: &[] },
1951 ],
1952 },
1953 Operation {
1954 id: "delete_comment",
1955 method: "DELETE",
1956 path: "/repos/{owner}/{name}/issues/comments/{comment_id}",
1957 tag: "Issues",
1958 summary: "Delete a comment",
1959 scope: Some("issues:write"),
1960 params: &[
1961 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1962 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1963 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
1964 ],
1965 body: &[],
1966 },
1967 Operation {
1968 id: "edit_comment",
1969 method: "PATCH",
1970 path: "/repos/{owner}/{name}/issues/comments/{comment_id}",
1971 tag: "Issues",
1972 summary: "Edit a comment",
1973 scope: Some("issues:write"),
1974 params: &[
1975 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1976 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1977 Param { name: "comment_id", location: In::Path, kind: "string", required: true, values: &[] },
1978 ],
1979 body: &[
1980 Field { name: "body", kind: "string", required: true, values: &[] },
1981 ],
1982 },
1983 Operation {
1984 id: "get_issue",
1985 method: "GET",
1986 path: "/repos/{owner}/{name}/issues/{number}",
1987 tag: "Issues",
1988 summary: "Get an issue",
1989 scope: Some("issues:read"),
1990 params: &[
1991 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
1992 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
1993 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
1994 ],
1995 body: &[],
1996 },
1997 Operation {
1998 id: "list_issue_labels",
1999 method: "GET",
2000 path: "/repos/{owner}/{name}/issues/{number}/labels",
2001 tag: "Issues",
2002 summary: "List an issue's labels",
2003 scope: Some("issues:read"),
2004 params: &[
2005 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2006 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2007 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2008 ],
2009 body: &[],
2010 },
2011 Operation {
2012 id: "list_issues",
2013 method: "GET",
2014 path: "/repos/{owner}/{name}/issues",
2015 tag: "Issues",
2016 summary: "List issues",
2017 scope: Some("issues:read"),
2018 params: &[
2019 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2020 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2021 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
2022 Param { name: "label", location: In::Query, kind: "string", required: false, values: &[] },
2023 Param { name: "milestone", location: In::Query, kind: "integer", required: false, values: &[] },
2024 ],
2025 body: &[],
2026 },
2027 Operation {
2028 id: "remove_issue_label",
2029 method: "DELETE",
2030 path: "/repos/{owner}/{name}/issues/{number}/labels/{label}",
2031 tag: "Issues",
2032 summary: "Remove labels from an issue",
2033 scope: Some("issues:write"),
2034 params: &[
2035 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2036 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2037 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2038 Param { name: "label", location: In::Path, kind: "string", required: true, values: &[] },
2039 ],
2040 body: &[
2041 Field { name: "labels", kind: "array", required: false, values: &[] },
2042 ],
2043 },
2044 Operation {
2045 id: "remove_issue_labels",
2046 method: "DELETE",
2047 path: "/repos/{owner}/{name}/issues/{number}/labels",
2048 tag: "Issues",
2049 summary: "Remove labels from an issue",
2050 scope: Some("issues:write"),
2051 params: &[
2052 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2053 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2054 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2055 ],
2056 body: &[
2057 Field { name: "label", kind: "string", required: false, values: &[] },
2058 Field { name: "labels", kind: "array", required: false, values: &[] },
2059 ],
2060 },
2061 Operation {
2062 id: "reopen_issue",
2063 method: "POST",
2064 path: "/repos/{owner}/{name}/issues/{number}/reopen",
2065 tag: "Issues",
2066 summary: "Reopen an issue",
2067 scope: Some("issues:write"),
2068 params: &[
2069 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2070 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2071 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2072 ],
2073 body: &[],
2074 },
2075 Operation {
2076 id: "set_issue_labels",
2077 method: "PUT",
2078 path: "/repos/{owner}/{name}/issues/{number}/labels",
2079 tag: "Issues",
2080 summary: "Set an issue's labels",
2081 scope: Some("issues:write"),
2082 params: &[
2083 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2084 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2085 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2086 ],
2087 body: &[
2088 Field { name: "labels", kind: "array", required: true, values: &[] },
2089 ],
2090 },
2091 Operation {
2092 id: "update_issue",
2093 method: "PATCH",
2094 path: "/repos/{owner}/{name}/issues/{number}",
2095 tag: "Issues",
2096 summary: "Update an issue",
2097 scope: Some("issues:write"),
2098 params: &[
2099 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2100 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2101 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2102 ],
2103 body: &[
2104 Field { name: "assignees", kind: "array", required: false, values: &[] },
2105 Field { name: "blocked_by", kind: "array", required: false, values: &[] },
2106 Field { name: "body", kind: "string", required: false, values: &[] },
2107 Field { name: "labels", kind: "array", required: false, values: &[] },
2108 Field { name: "milestone", kind: "integer", required: false, values: &[] },
2109 Field { name: "title", kind: "string", required: false, values: &[] },
2110 ],
2111 },
2112 Operation {
2113 id: "add_default_labels",
2114 method: "POST",
2115 path: "/repos/{owner}/{name}/labels/defaults",
2116 tag: "Labels and milestones",
2117 summary: "Add the default labels",
2118 scope: Some("issues:write"),
2119 params: &[
2120 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2121 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2122 ],
2123 body: &[],
2124 },
2125 Operation {
2126 id: "create_label",
2127 method: "POST",
2128 path: "/repos/{owner}/{name}/labels",
2129 tag: "Labels and milestones",
2130 summary: "Create a label",
2131 scope: Some("issues:write"),
2132 params: &[
2133 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2134 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2135 ],
2136 body: &[
2137 Field { name: "color", kind: "string", required: false, values: &[] },
2138 Field { name: "description", kind: "string", required: false, values: &[] },
2139 Field { name: "label", kind: "string", required: true, values: &[] },
2140 ],
2141 },
2142 Operation {
2143 id: "create_milestone",
2144 method: "POST",
2145 path: "/repos/{owner}/{name}/milestones",
2146 tag: "Labels and milestones",
2147 summary: "Create a milestone",
2148 scope: Some("issues:write"),
2149 params: &[
2150 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2151 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2152 ],
2153 body: &[
2154 Field { name: "description", kind: "string", required: false, values: &[] },
2155 Field { name: "due_on", kind: "string", required: false, values: &[] },
2156 Field { name: "state", kind: "string", required: false, values: &["open", "closed"] },
2157 Field { name: "title", kind: "string", required: true, values: &[] },
2158 ],
2159 },
2160 Operation {
2161 id: "delete_label",
2162 method: "DELETE",
2163 path: "/repos/{owner}/{name}/labels/{label}",
2164 tag: "Labels and milestones",
2165 summary: "Delete a label",
2166 scope: Some("issues:write"),
2167 params: &[
2168 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2169 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2170 Param { name: "label", location: In::Path, kind: "string", required: true, values: &[] },
2171 ],
2172 body: &[],
2173 },
2174 Operation {
2175 id: "delete_milestone",
2176 method: "DELETE",
2177 path: "/repos/{owner}/{name}/milestones/{milestone}",
2178 tag: "Labels and milestones",
2179 summary: "Delete a milestone",
2180 scope: Some("issues:write"),
2181 params: &[
2182 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2183 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2184 Param { name: "milestone", location: In::Path, kind: "integer", required: true, values: &[] },
2185 ],
2186 body: &[],
2187 },
2188 Operation {
2189 id: "get_milestone",
2190 method: "GET",
2191 path: "/repos/{owner}/{name}/milestones/{milestone}",
2192 tag: "Labels and milestones",
2193 summary: "Get a milestone",
2194 scope: Some("repo:read"),
2195 params: &[
2196 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2197 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2198 Param { name: "milestone", location: In::Path, kind: "integer", required: true, values: &[] },
2199 ],
2200 body: &[],
2201 },
2202 Operation {
2203 id: "list_labels",
2204 method: "GET",
2205 path: "/repos/{owner}/{name}/labels",
2206 tag: "Labels and milestones",
2207 summary: "List labels",
2208 scope: Some("repo:read"),
2209 params: &[
2210 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2211 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2212 ],
2213 body: &[],
2214 },
2215 Operation {
2216 id: "list_milestones",
2217 method: "GET",
2218 path: "/repos/{owner}/{name}/milestones",
2219 tag: "Labels and milestones",
2220 summary: "List milestones",
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: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
2226 ],
2227 body: &[],
2228 },
2229 Operation {
2230 id: "update_label",
2231 method: "PATCH",
2232 path: "/repos/{owner}/{name}/labels/{label}",
2233 tag: "Labels and milestones",
2234 summary: "Update a label",
2235 scope: Some("issues:write"),
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 Param { name: "label", location: In::Path, kind: "string", required: true, values: &[] },
2240 ],
2241 body: &[
2242 Field { name: "color", kind: "string", required: false, values: &[] },
2243 Field { name: "description", kind: "string", required: false, values: &[] },
2244 Field { name: "new_name", kind: "string", required: false, values: &[] },
2245 ],
2246 },
2247 Operation {
2248 id: "update_milestone",
2249 method: "PATCH",
2250 path: "/repos/{owner}/{name}/milestones/{milestone}",
2251 tag: "Labels and milestones",
2252 summary: "Update a milestone",
2253 scope: Some("issues:write"),
2254 params: &[
2255 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2256 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2257 Param { name: "milestone", location: In::Path, kind: "integer", required: true, values: &[] },
2258 ],
2259 body: &[
2260 Field { name: "description", kind: "string", required: false, values: &[] },
2261 Field { name: "due_on", kind: "string", required: false, values: &[] },
2262 Field { name: "state", kind: "string", required: false, values: &["open", "closed"] },
2263 Field { name: "title", kind: "string", required: false, values: &[] },
2264 ],
2265 },
2266 Operation {
2267 id: "leave_workspace",
2268 method: "DELETE",
2269 path: "/user/memberships/{workspace}",
2270 tag: "Members",
2271 summary: "Leave a workspace",
2272 scope: Some("account:write"),
2273 params: &[
2274 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2275 ],
2276 body: &[],
2277 },
2278 Operation {
2279 id: "list_members",
2280 method: "GET",
2281 path: "/workspaces/{workspace}/members",
2282 tag: "Members",
2283 summary: "List a workspace's members",
2284 scope: Some("workspace:read"),
2285 params: &[
2286 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2287 ],
2288 body: &[],
2289 },
2290 Operation {
2291 id: "remove_member",
2292 method: "DELETE",
2293 path: "/workspaces/{workspace}/members/{username}",
2294 tag: "Members",
2295 summary: "Remove a member",
2296 scope: Some("workspace:admin"),
2297 params: &[
2298 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2299 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
2300 ],
2301 body: &[],
2302 },
2303 Operation {
2304 id: "transfer_ownership",
2305 method: "POST",
2306 path: "/workspaces/{workspace}/transfer_ownership",
2307 tag: "Members",
2308 summary: "Transfer a workspace's ownership",
2309 scope: Some("workspace:admin"),
2310 params: &[
2311 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2312 ],
2313 body: &[
2314 Field { name: "username", kind: "string", required: true, values: &[] },
2315 ],
2316 },
2317 Operation {
2318 id: "update_member",
2319 method: "PATCH",
2320 path: "/workspaces/{workspace}/members/{username}",
2321 tag: "Members",
2322 summary: "Change a member's role",
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 Field { name: "org_roles", kind: "array", required: false, values: &[] },
2330 Field { name: "role", kind: "string", required: false, values: &["owner", "member"] },
2331 ],
2332 },
2333 Operation {
2334 id: "recall",
2335 method: "GET",
2336 path: "/repos/{owner}/{name}/memory",
2337 tag: "Memory",
2338 summary: "Recall memory",
2339 scope: Some("memory:read"),
2340 params: &[
2341 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2342 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2343 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2344 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2345 ],
2346 body: &[],
2347 },
2348 Operation {
2349 id: "remember",
2350 method: "POST",
2351 path: "/repos/{owner}/{name}/memory",
2352 tag: "Memory",
2353 summary: "Remember something",
2354 scope: Some("memory:write"),
2355 params: &[
2356 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2357 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2358 ],
2359 body: &[
2360 Field { name: "from_number", kind: "integer", required: false, values: &[] },
2361 Field { name: "kind", kind: "string", required: false, values: &["fact", "convention", "decision", "gotcha"] },
2362 Field { name: "scope", kind: "string", required: false, values: &["project", "workspace"] },
2363 Field { name: "text", kind: "string", required: true, values: &[] },
2364 ],
2365 },
2366 Operation {
2367 id: "delete_issue_subscription",
2368 method: "DELETE",
2369 path: "/repos/{owner}/{name}/issues/{number}/subscription",
2370 tag: "Notifications",
2371 summary: "Unsubscribe from an issue",
2372 scope: Some("notifications:write"),
2373 params: &[
2374 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2375 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2376 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2377 ],
2378 body: &[
2379 Field { name: "id", kind: "string", required: false, values: &[] },
2380 ],
2381 },
2382 Operation {
2383 id: "delete_repo_subscription",
2384 method: "DELETE",
2385 path: "/repos/{owner}/{name}/subscription",
2386 tag: "Notifications",
2387 summary: "Stop watching a repository",
2388 scope: Some("notifications:write"),
2389 params: &[
2390 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2391 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2392 ],
2393 body: &[],
2394 },
2395 Operation {
2396 id: "delete_thread_subscription",
2397 method: "DELETE",
2398 path: "/notifications/threads/{id}/subscription",
2399 tag: "Notifications",
2400 summary: "Unsubscribe from a thread",
2401 scope: Some("notifications:write"),
2402 params: &[
2403 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2404 ],
2405 body: &[
2406 Field { name: "number", kind: "integer", required: false, values: &[] },
2407 ],
2408 },
2409 Operation {
2410 id: "get_issue_subscription",
2411 method: "GET",
2412 path: "/repos/{owner}/{name}/issues/{number}/subscription",
2413 tag: "Notifications",
2414 summary: "Get your subscription to an issue",
2415 scope: Some("notifications:read"),
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 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2420 ],
2421 body: &[],
2422 },
2423 Operation {
2424 id: "get_notification_thread",
2425 method: "GET",
2426 path: "/notifications/threads/{id}",
2427 tag: "Notifications",
2428 summary: "Get a thread",
2429 scope: Some("notifications:read"),
2430 params: &[
2431 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2432 ],
2433 body: &[],
2434 },
2435 Operation {
2436 id: "get_repo_subscription",
2437 method: "GET",
2438 path: "/repos/{owner}/{name}/subscription",
2439 tag: "Notifications",
2440 summary: "Get how you watch a repository",
2441 scope: Some("notifications:read"),
2442 params: &[
2443 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2444 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2445 ],
2446 body: &[],
2447 },
2448 Operation {
2449 id: "get_thread_subscription",
2450 method: "GET",
2451 path: "/notifications/threads/{id}/subscription",
2452 tag: "Notifications",
2453 summary: "Get a thread subscription",
2454 scope: Some("notifications:read"),
2455 params: &[
2456 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2457 ],
2458 body: &[],
2459 },
2460 Operation {
2461 id: "list_notifications",
2462 method: "GET",
2463 path: "/notifications",
2464 tag: "Notifications",
2465 summary: "List notifications",
2466 scope: Some("notifications:read"),
2467 params: &[
2468 Param { name: "all", location: In::Query, kind: "boolean", required: false, values: &[] },
2469 Param { name: "participating", location: In::Query, kind: "boolean", required: false, values: &[] },
2470 Param { name: "view", location: In::Query, kind: "string", required: false, values: &["inbox", "saved", "done"] },
2471 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"] },
2472 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["error", "warning", "success", "info"] },
2473 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
2474 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
2475 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2476 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
2477 ],
2478 body: &[],
2479 },
2480 Operation {
2481 id: "list_repo_notifications",
2482 method: "GET",
2483 path: "/repos/{owner}/{name}/notifications",
2484 tag: "Notifications",
2485 summary: "List a repository's notifications",
2486 scope: Some("notifications:read"),
2487 params: &[
2488 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2489 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2490 Param { name: "all", location: In::Query, kind: "boolean", required: false, values: &[] },
2491 Param { name: "participating", location: In::Query, kind: "boolean", required: false, values: &[] },
2492 Param { name: "view", location: In::Query, kind: "string", required: false, values: &["inbox", "saved", "done"] },
2493 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"] },
2494 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["error", "warning", "success", "info"] },
2495 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
2496 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
2497 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2498 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
2499 ],
2500 body: &[],
2501 },
2502 Operation {
2503 id: "list_watched_repos",
2504 method: "GET",
2505 path: "/user/subscriptions",
2506 tag: "Notifications",
2507 summary: "List repositories you watch",
2508 scope: Some("notifications:read"),
2509 params: &[],
2510 body: &[],
2511 },
2512 Operation {
2513 id: "mark_notifications_read",
2514 method: "PUT",
2515 path: "/notifications",
2516 tag: "Notifications",
2517 summary: "Mark notifications read",
2518 scope: Some("notifications:write"),
2519 params: &[],
2520 body: &[
2521 Field { name: "last_read_at", kind: "string", required: false, values: &[] },
2522 Field { name: "read", kind: "boolean", required: false, values: &[] },
2523 ],
2524 },
2525 Operation {
2526 id: "mark_repo_notifications_read",
2527 method: "PUT",
2528 path: "/repos/{owner}/{name}/notifications",
2529 tag: "Notifications",
2530 summary: "Mark a repository's notifications read",
2531 scope: Some("notifications:write"),
2532 params: &[
2533 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2534 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2535 ],
2536 body: &[
2537 Field { name: "last_read_at", kind: "string", required: false, values: &[] },
2538 Field { name: "read", kind: "boolean", required: false, values: &[] },
2539 ],
2540 },
2541 Operation {
2542 id: "mark_thread_done",
2543 method: "DELETE",
2544 path: "/notifications/threads/{id}",
2545 tag: "Notifications",
2546 summary: "Mark a thread done",
2547 scope: Some("notifications:write"),
2548 params: &[
2549 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2550 ],
2551 body: &[
2552 Field { name: "done", kind: "boolean", required: false, values: &[] },
2553 ],
2554 },
2555 Operation {
2556 id: "mark_thread_read",
2557 method: "PATCH",
2558 path: "/notifications/threads/{id}",
2559 tag: "Notifications",
2560 summary: "Mark a thread read",
2561 scope: Some("notifications:write"),
2562 params: &[
2563 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2564 ],
2565 body: &[
2566 Field { name: "read", kind: "boolean", required: false, values: &[] },
2567 ],
2568 },
2569 Operation {
2570 id: "save_thread",
2571 method: "PUT",
2572 path: "/notifications/threads/{id}/saved",
2573 tag: "Notifications",
2574 summary: "Save a thread",
2575 scope: Some("notifications:write"),
2576 params: &[
2577 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2578 ],
2579 body: &[
2580 Field { name: "saved", kind: "boolean", required: false, values: &[] },
2581 ],
2582 },
2583 Operation {
2584 id: "set_issue_subscription",
2585 method: "PUT",
2586 path: "/repos/{owner}/{name}/issues/{number}/subscription",
2587 tag: "Notifications",
2588 summary: "Subscribe to an issue",
2589 scope: Some("notifications:write"),
2590 params: &[
2591 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2592 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2593 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
2594 ],
2595 body: &[
2596 Field { name: "id", kind: "string", required: false, values: &[] },
2597 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2598 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2599 ],
2600 },
2601 Operation {
2602 id: "set_repo_subscription",
2603 method: "PUT",
2604 path: "/repos/{owner}/{name}/subscription",
2605 tag: "Notifications",
2606 summary: "Watch a repository",
2607 scope: Some("notifications:write"),
2608 params: &[
2609 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
2610 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
2611 ],
2612 body: &[
2613 Field { name: "events", kind: "array", required: false, values: &[] },
2614 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2615 Field { name: "level", kind: "string", required: false, values: &["participating", "all", "ignore", "custom"] },
2616 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2617 ],
2618 },
2619 Operation {
2620 id: "set_thread_subscription",
2621 method: "PUT",
2622 path: "/notifications/threads/{id}/subscription",
2623 tag: "Notifications",
2624 summary: "Set a thread subscription",
2625 scope: Some("notifications:write"),
2626 params: &[
2627 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2628 ],
2629 body: &[
2630 Field { name: "ignored", kind: "boolean", required: false, values: &[] },
2631 Field { name: "number", kind: "integer", required: false, values: &[] },
2632 Field { name: "subscribed", kind: "boolean", required: false, values: &[] },
2633 ],
2634 },
2635 Operation {
2636 id: "snooze_thread",
2637 method: "PUT",
2638 path: "/notifications/threads/{id}/snooze",
2639 tag: "Notifications",
2640 summary: "Snooze a thread",
2641 scope: Some("notifications:write"),
2642 params: &[
2643 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2644 ],
2645 body: &[
2646 Field { name: "until", kind: "string", required: false, values: &[] },
2647 ],
2648 },
2649 Operation {
2650 id: "unsave_thread",
2651 method: "DELETE",
2652 path: "/notifications/threads/{id}/saved",
2653 tag: "Notifications",
2654 summary: "Unsave a thread",
2655 scope: Some("notifications:write"),
2656 params: &[
2657 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2658 ],
2659 body: &[
2660 Field { name: "saved", kind: "boolean", required: false, values: &[] },
2661 ],
2662 },
2663 Operation {
2664 id: "unsnooze_thread",
2665 method: "DELETE",
2666 path: "/notifications/threads/{id}/snooze",
2667 tag: "Notifications",
2668 summary: "Bring a snoozed thread back",
2669 scope: Some("notifications:write"),
2670 params: &[
2671 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2672 ],
2673 body: &[
2674 Field { name: "until", kind: "string", required: false, values: &[] },
2675 ],
2676 },
2677 Operation {
2678 id: "create_ingest_token",
2679 method: "POST",
2680 path: "/workspaces/{workspace}/projects/{project}/observability/tokens",
2681 tag: "Observability",
2682 summary: "Create an ingest token",
2683 scope: Some("observability:write"),
2684 params: &[
2685 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2686 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2687 ],
2688 body: &[
2689 Field { name: "name", kind: "string", required: true, values: &[] },
2690 ],
2691 },
2692 Operation {
2693 id: "create_telemetry_export",
2694 method: "POST",
2695 path: "/workspaces/{workspace}/projects/{project}/observability/exports",
2696 tag: "Observability",
2697 summary: "Create a telemetry export",
2698 scope: Some("observability:write"),
2699 params: &[
2700 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2701 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2702 ],
2703 body: &[
2704 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
2705 Field { name: "endpoint", kind: "string", required: true, values: &[] },
2706 Field { name: "headers", kind: "object", required: false, values: &[] },
2707 Field { name: "name", kind: "string", required: true, values: &[] },
2708 Field { name: "signals", kind: "array", required: false, values: &[] },
2709 ],
2710 },
2711 Operation {
2712 id: "delete_ingest_token",
2713 method: "DELETE",
2714 path: "/workspaces/{workspace}/projects/{project}/observability/tokens/{id}",
2715 tag: "Observability",
2716 summary: "Delete an ingest token",
2717 scope: Some("observability:write"),
2718 params: &[
2719 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2720 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2721 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2722 ],
2723 body: &[],
2724 },
2725 Operation {
2726 id: "delete_telemetry_export",
2727 method: "DELETE",
2728 path: "/workspaces/{workspace}/projects/{project}/observability/exports/{id}",
2729 tag: "Observability",
2730 summary: "Delete a telemetry export",
2731 scope: Some("observability:write"),
2732 params: &[
2733 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2734 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2735 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2736 ],
2737 body: &[],
2738 },
2739 Operation {
2740 id: "get_metric",
2741 method: "GET",
2742 path: "/workspaces/{workspace}/projects/{project}/observability/metrics/{metric}",
2743 tag: "Observability",
2744 summary: "Get a metric",
2745 scope: Some("observability:read"),
2746 params: &[
2747 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2748 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2749 Param { name: "metric", location: In::Path, kind: "string", required: true, values: &[] },
2750 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2751 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2752 Param { name: "aggregate", location: In::Query, kind: "string", required: false, values: &["avg", "sum", "min", "max", "p50", "p95", "p99"] },
2753 Param { name: "group_by", location: In::Query, kind: "string", required: false, values: &[] },
2754 Param { name: "step", location: In::Query, kind: "integer", required: false, values: &[] },
2755 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2756 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2757 ],
2758 body: &[],
2759 },
2760 Operation {
2761 id: "get_observability_overview",
2762 method: "GET",
2763 path: "/workspaces/{workspace}/projects/{project}/observability/overview",
2764 tag: "Observability",
2765 summary: "Get a project's observability overview",
2766 scope: Some("observability:read"),
2767 params: &[
2768 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2769 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2770 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2771 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2772 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2773 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2774 Param { name: "deployment_id", location: In::Query, kind: "string", required: false, values: &[] },
2775 Param { name: "step", location: In::Query, kind: "integer", required: false, values: &[] },
2776 ],
2777 body: &[],
2778 },
2779 Operation {
2780 id: "get_observability_settings",
2781 method: "GET",
2782 path: "/workspaces/{workspace}/projects/{project}/observability/settings",
2783 tag: "Observability",
2784 summary: "Get observability settings",
2785 scope: Some("observability:read"),
2786 params: &[
2787 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2788 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2789 ],
2790 body: &[],
2791 },
2792 Operation {
2793 id: "get_observability_usage",
2794 method: "GET",
2795 path: "/workspaces/{workspace}/projects/{project}/observability/usage",
2796 tag: "Observability",
2797 summary: "Get observability usage",
2798 scope: Some("observability:read"),
2799 params: &[
2800 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2801 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2802 ],
2803 body: &[],
2804 },
2805 Operation {
2806 id: "get_request",
2807 method: "GET",
2808 path: "/workspaces/{workspace}/projects/{project}/observability/requests/{id}",
2809 tag: "Observability",
2810 summary: "Get a request",
2811 scope: Some("observability:read"),
2812 params: &[
2813 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2814 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2815 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
2816 ],
2817 body: &[],
2818 },
2819 Operation {
2820 id: "get_trace",
2821 method: "GET",
2822 path: "/workspaces/{workspace}/projects/{project}/observability/traces/{trace_id}",
2823 tag: "Observability",
2824 summary: "Get a trace",
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 Param { name: "trace_id", location: In::Path, kind: "string", required: true, values: &[] },
2830 ],
2831 body: &[],
2832 },
2833 Operation {
2834 id: "list_errors",
2835 method: "GET",
2836 path: "/workspaces/{workspace}/projects/{project}/observability/errors",
2837 tag: "Observability",
2838 summary: "List errors",
2839 scope: Some("observability:read"),
2840 params: &[
2841 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2842 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2843 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "resolved", "ignored"] },
2844 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2845 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2846 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2847 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2848 ],
2849 body: &[],
2850 },
2851 Operation {
2852 id: "list_ingest_tokens",
2853 method: "GET",
2854 path: "/workspaces/{workspace}/projects/{project}/observability/tokens",
2855 tag: "Observability",
2856 summary: "List ingest tokens",
2857 scope: Some("observability:read"),
2858 params: &[
2859 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2860 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2861 ],
2862 body: &[],
2863 },
2864 Operation {
2865 id: "list_logs",
2866 method: "GET",
2867 path: "/workspaces/{workspace}/projects/{project}/observability/logs",
2868 tag: "Observability",
2869 summary: "List logs",
2870 scope: Some("observability:read"),
2871 params: &[
2872 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2873 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2874 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2875 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2876 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2877 Param { name: "level", location: In::Query, kind: "string", required: false, values: &[] },
2878 Param { name: "trace_id", location: In::Query, kind: "string", required: false, values: &[] },
2879 Param { name: "request_id", location: In::Query, kind: "string", required: false, values: &[] },
2880 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2881 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2882 Param { name: "deployment_id", location: In::Query, kind: "string", required: false, values: &[] },
2883 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2884 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2885 ],
2886 body: &[],
2887 },
2888 Operation {
2889 id: "list_metrics",
2890 method: "GET",
2891 path: "/workspaces/{workspace}/projects/{project}/observability/metrics",
2892 tag: "Observability",
2893 summary: "List metrics",
2894 scope: Some("observability:read"),
2895 params: &[
2896 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2897 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2898 ],
2899 body: &[],
2900 },
2901 Operation {
2902 id: "list_requests",
2903 method: "GET",
2904 path: "/workspaces/{workspace}/projects/{project}/observability/requests",
2905 tag: "Observability",
2906 summary: "List requests",
2907 scope: Some("observability:read"),
2908 params: &[
2909 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2910 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2911 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2912 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2913 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2914 Param { name: "status", location: In::Query, kind: "string", required: false, values: &[] },
2915 Param { name: "errors_only", location: In::Query, kind: "boolean", required: false, values: &[] },
2916 Param { name: "route", location: In::Query, kind: "string", required: false, values: &[] },
2917 Param { name: "min_duration_ms", location: In::Query, kind: "integer", required: false, values: &[] },
2918 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2919 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2920 Param { name: "deployment_id", location: In::Query, kind: "string", required: false, values: &[] },
2921 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2922 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2923 ],
2924 body: &[],
2925 },
2926 Operation {
2927 id: "list_telemetry_exports",
2928 method: "GET",
2929 path: "/workspaces/{workspace}/projects/{project}/observability/exports",
2930 tag: "Observability",
2931 summary: "List telemetry exports",
2932 scope: Some("observability:read"),
2933 params: &[
2934 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2935 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2936 ],
2937 body: &[],
2938 },
2939 Operation {
2940 id: "list_traces",
2941 method: "GET",
2942 path: "/workspaces/{workspace}/projects/{project}/observability/traces",
2943 tag: "Observability",
2944 summary: "List traces",
2945 scope: Some("observability:read"),
2946 params: &[
2947 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2948 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2949 Param { name: "from", location: In::Query, kind: "string", required: false, values: &[] },
2950 Param { name: "to", location: In::Query, kind: "string", required: false, values: &[] },
2951 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
2952 Param { name: "errors_only", location: In::Query, kind: "boolean", required: false, values: &[] },
2953 Param { name: "min_duration_ms", location: In::Query, kind: "integer", required: false, values: &[] },
2954 Param { name: "environment", location: In::Query, kind: "string", required: false, values: &[] },
2955 Param { name: "service", location: In::Query, kind: "string", required: false, values: &[] },
2956 Param { name: "cursor", location: In::Query, kind: "string", required: false, values: &[] },
2957 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
2958 ],
2959 body: &[],
2960 },
2961 Operation {
2962 id: "update_error",
2963 method: "PATCH",
2964 path: "/workspaces/{workspace}/projects/{project}/observability/errors/{fingerprint}",
2965 tag: "Observability",
2966 summary: "Update an error",
2967 scope: Some("observability:write"),
2968 params: &[
2969 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2970 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2971 Param { name: "fingerprint", location: In::Path, kind: "string", required: true, values: &[] },
2972 ],
2973 body: &[
2974 Field { name: "issue_number", kind: "integer", required: false, values: &[] },
2975 Field { name: "state", kind: "string", required: false, values: &["open", "resolved", "ignored"] },
2976 ],
2977 },
2978 Operation {
2979 id: "update_observability_settings",
2980 method: "PATCH",
2981 path: "/workspaces/{workspace}/projects/{project}/observability/settings",
2982 tag: "Observability",
2983 summary: "Update observability settings",
2984 scope: Some("observability:write"),
2985 params: &[
2986 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
2987 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
2988 ],
2989 body: &[
2990 Field { name: "deployments", kind: "boolean", required: false, values: &[] },
2991 Field { name: "retention_days", kind: "integer", required: false, values: &[] },
2992 ],
2993 },
2994 Operation {
2995 id: "update_telemetry_export",
2996 method: "PATCH",
2997 path: "/workspaces/{workspace}/projects/{project}/observability/exports/{id}",
2998 tag: "Observability",
2999 summary: "Update a telemetry export",
3000 scope: Some("observability:write"),
3001 params: &[
3002 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3003 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3004 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3005 ],
3006 body: &[
3007 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
3008 Field { name: "endpoint", kind: "string", required: false, values: &[] },
3009 Field { name: "headers", kind: "object", required: false, values: &[] },
3010 Field { name: "name", kind: "string", required: false, values: &[] },
3011 Field { name: "signals", kind: "array", required: false, values: &[] },
3012 ],
3013 },
3014 Operation {
3015 id: "delete_package",
3016 method: "DELETE",
3017 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}",
3018 tag: "Packages",
3019 summary: "Delete a package",
3020 scope: Some("packages:delete"),
3021 params: &[
3022 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3023 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3024 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3025 ],
3026 body: &[],
3027 },
3028 Operation {
3029 id: "delete_package_version",
3030 method: "DELETE",
3031 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions/{version_id}",
3032 tag: "Packages",
3033 summary: "Delete a package version",
3034 scope: Some("packages:delete"),
3035 params: &[
3036 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3037 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3038 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3039 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
3040 ],
3041 body: &[],
3042 },
3043 Operation {
3044 id: "get_package",
3045 method: "GET",
3046 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}",
3047 tag: "Packages",
3048 summary: "Get a package",
3049 scope: Some("packages:read"),
3050 params: &[
3051 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3052 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3053 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3054 ],
3055 body: &[],
3056 },
3057 Operation {
3058 id: "get_package_version",
3059 method: "GET",
3060 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions/{version_id}",
3061 tag: "Packages",
3062 summary: "Get a package version",
3063 scope: Some("packages:read"),
3064 params: &[
3065 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3066 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3067 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3068 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
3069 ],
3070 body: &[],
3071 },
3072 Operation {
3073 id: "link_package",
3074 method: "PUT",
3075 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/repository",
3076 tag: "Packages",
3077 summary: "Link a package to a repository",
3078 scope: Some("packages:write"),
3079 params: &[
3080 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3081 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3082 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3083 ],
3084 body: &[
3085 Field { name: "repository", kind: "string", required: true, values: &[] },
3086 ],
3087 },
3088 Operation {
3089 id: "list_package_access",
3090 method: "GET",
3091 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/access",
3092 tag: "Packages",
3093 summary: "List who has access to a package",
3094 scope: Some("packages:read"),
3095 params: &[
3096 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3097 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3098 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3099 ],
3100 body: &[],
3101 },
3102 Operation {
3103 id: "list_package_actions_access",
3104 method: "GET",
3105 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/actions-access",
3106 tag: "Packages",
3107 summary: "List a package's Actions access",
3108 scope: Some("packages:read"),
3109 params: &[
3110 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3111 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3112 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3113 ],
3114 body: &[],
3115 },
3116 Operation {
3117 id: "list_package_versions",
3118 method: "GET",
3119 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions",
3120 tag: "Packages",
3121 summary: "List a package's versions",
3122 scope: Some("packages:read"),
3123 params: &[
3124 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3125 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3126 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3127 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "deleted"] },
3128 ],
3129 body: &[],
3130 },
3131 Operation {
3132 id: "list_packages",
3133 method: "GET",
3134 path: "/workspaces/{workspace}/packages",
3135 tag: "Packages",
3136 summary: "List a workspace's packages",
3137 scope: Some("packages:read"),
3138 params: &[
3139 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3140 Param { name: "package_type", location: In::Query, kind: "string", required: false, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3141 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
3142 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "deleted"] },
3143 ],
3144 body: &[],
3145 },
3146 Operation {
3147 id: "remove_package_access",
3148 method: "DELETE",
3149 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/access",
3150 tag: "Packages",
3151 summary: "Remove a person's or team's role on a package",
3152 scope: Some("packages:write"),
3153 params: &[
3154 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3155 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3156 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3157 ],
3158 body: &[
3159 Field { name: "team", kind: "string", required: false, values: &[] },
3160 Field { name: "username", kind: "string", required: false, values: &[] },
3161 ],
3162 },
3163 Operation {
3164 id: "remove_package_actions_access",
3165 method: "DELETE",
3166 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/actions-access/{repository}",
3167 tag: "Packages",
3168 summary: "Remove a repository's Actions access to a package",
3169 scope: Some("packages:write"),
3170 params: &[
3171 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3172 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3173 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3174 Param { name: "repository", location: In::Path, kind: "string", required: true, values: &[] },
3175 ],
3176 body: &[],
3177 },
3178 Operation {
3179 id: "restore_package",
3180 method: "POST",
3181 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/restore",
3182 tag: "Packages",
3183 summary: "Restore a package",
3184 scope: Some("packages:delete"),
3185 params: &[
3186 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3187 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3188 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3189 ],
3190 body: &[],
3191 },
3192 Operation {
3193 id: "restore_package_version",
3194 method: "POST",
3195 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/versions/{version_id}/restore",
3196 tag: "Packages",
3197 summary: "Restore a package version",
3198 scope: Some("packages:delete"),
3199 params: &[
3200 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3201 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3202 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3203 Param { name: "version_id", location: In::Path, kind: "string", required: true, values: &[] },
3204 ],
3205 body: &[],
3206 },
3207 Operation {
3208 id: "set_package_access",
3209 method: "PUT",
3210 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/access",
3211 tag: "Packages",
3212 summary: "Give a person or team a role on a package",
3213 scope: Some("packages:write"),
3214 params: &[
3215 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3216 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3217 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3218 ],
3219 body: &[
3220 Field { name: "role", kind: "string", required: true, values: &["read", "write", "admin"] },
3221 Field { name: "team", kind: "string", required: false, values: &[] },
3222 Field { name: "username", kind: "string", required: false, values: &[] },
3223 ],
3224 },
3225 Operation {
3226 id: "set_package_actions_access",
3227 method: "PUT",
3228 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/actions-access",
3229 tag: "Packages",
3230 summary: "Give a repository's workflows access to a package",
3231 scope: Some("packages:write"),
3232 params: &[
3233 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3234 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3235 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3236 ],
3237 body: &[
3238 Field { name: "repository", kind: "string", required: true, values: &[] },
3239 Field { name: "role", kind: "string", required: true, values: &["read", "write"] },
3240 ],
3241 },
3242 Operation {
3243 id: "unlink_package",
3244 method: "DELETE",
3245 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}/repository",
3246 tag: "Packages",
3247 summary: "Unlink a package from its repository",
3248 scope: Some("packages:write"),
3249 params: &[
3250 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3251 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3252 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3253 ],
3254 body: &[],
3255 },
3256 Operation {
3257 id: "update_package",
3258 method: "PATCH",
3259 path: "/workspaces/{workspace}/packages/{package_type}/{package_name}",
3260 tag: "Packages",
3261 summary: "Update a package",
3262 scope: Some("packages:write"),
3263 params: &[
3264 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3265 Param { name: "package_type", location: In::Path, kind: "string", required: true, values: &["container", "npm", "cargo", "maven", "nuget", "rubygems", "composer"] },
3266 Param { name: "package_name", location: In::Path, kind: "string", required: true, values: &[] },
3267 ],
3268 body: &[
3269 Field { name: "inherit_access", kind: "boolean", required: false, values: &[] },
3270 Field { name: "visibility", kind: "string", required: false, values: &["public", "private"] },
3271 ],
3272 },
3273 Operation {
3274 id: "get_token_policy",
3275 method: "GET",
3276 path: "/workspaces/{workspace}/personal-access-token-policy",
3277 tag: "Personal access tokens",
3278 summary: "Get a workspace's personal access token policy",
3279 scope: Some("workspace:read"),
3280 params: &[
3281 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3282 ],
3283 body: &[],
3284 },
3285 Operation {
3286 id: "list_member_tokens",
3287 method: "GET",
3288 path: "/workspaces/{workspace}/personal-access-tokens",
3289 tag: "Personal access tokens",
3290 summary: "List the personal access tokens that reach a workspace",
3291 scope: Some("access:read"),
3292 params: &[
3293 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3294 ],
3295 body: &[],
3296 },
3297 Operation {
3298 id: "list_token_requests",
3299 method: "GET",
3300 path: "/workspaces/{workspace}/personal-access-token-requests",
3301 tag: "Personal access tokens",
3302 summary: "List personal access tokens waiting for approval",
3303 scope: Some("access:read"),
3304 params: &[
3305 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3306 ],
3307 body: &[],
3308 },
3309 Operation {
3310 id: "review_token_request",
3311 method: "POST",
3312 path: "/workspaces/{workspace}/personal-access-token-requests/{id}",
3313 tag: "Personal access tokens",
3314 summary: "Approve or deny a personal access token",
3315 scope: Some("access:admin"),
3316 params: &[
3317 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3318 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3319 ],
3320 body: &[
3321 Field { name: "decision", kind: "string", required: true, values: &["approve", "deny"] },
3322 Field { name: "reason", kind: "string", required: false, values: &[] },
3323 ],
3324 },
3325 Operation {
3326 id: "revoke_member_token",
3327 method: "POST",
3328 path: "/workspaces/{workspace}/personal-access-tokens/{id}",
3329 tag: "Personal access tokens",
3330 summary: "Revoke a member's token in a workspace",
3331 scope: Some("access:admin"),
3332 params: &[
3333 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3334 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3335 ],
3336 body: &[
3337 Field { name: "reason", kind: "string", required: false, values: &[] },
3338 ],
3339 },
3340 Operation {
3341 id: "set_token_policy",
3342 method: "PATCH",
3343 path: "/workspaces/{workspace}/personal-access-token-policy",
3344 tag: "Personal access tokens",
3345 summary: "Set a workspace's personal access token policy",
3346 scope: Some("workspace:admin"),
3347 params: &[
3348 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3349 ],
3350 body: &[
3351 Field { name: "allow_tokens_for_all_workspaces", kind: "boolean", required: false, values: &[] },
3352 Field { name: "allow_tokens_for_this_workspace", kind: "boolean", required: false, values: &[] },
3353 Field { name: "forbid_no_expiry", kind: "boolean", required: false, values: &[] },
3354 Field { name: "max_lifetime_days", kind: "integer", required: false, values: &[] },
3355 Field { name: "require_approval", kind: "boolean", required: false, values: &[] },
3356 ],
3357 },
3358 Operation {
3359 id: "list_pinned_projects",
3360 method: "GET",
3361 path: "/user/pinned_projects/{workspace}",
3362 tag: "Pinned projects",
3363 summary: "List your pinned projects",
3364 scope: Some("account:read"),
3365 params: &[
3366 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3367 ],
3368 body: &[],
3369 },
3370 Operation {
3371 id: "pin_project",
3372 method: "PUT",
3373 path: "/user/pinned_projects/{workspace}/{project}",
3374 tag: "Pinned projects",
3375 summary: "Pin a project",
3376 scope: Some("account:write"),
3377 params: &[
3378 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3379 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3380 ],
3381 body: &[
3382 Field { name: "position", kind: "integer", required: false, values: &[] },
3383 ],
3384 },
3385 Operation {
3386 id: "reorder_pinned_projects",
3387 method: "PUT",
3388 path: "/user/pinned_projects/{workspace}",
3389 tag: "Pinned projects",
3390 summary: "Reorder your pinned projects",
3391 scope: Some("account:write"),
3392 params: &[
3393 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3394 ],
3395 body: &[
3396 Field { name: "projects", kind: "array", required: true, values: &[] },
3397 ],
3398 },
3399 Operation {
3400 id: "unpin_project",
3401 method: "DELETE",
3402 path: "/user/pinned_projects/{workspace}/{project}",
3403 tag: "Pinned projects",
3404 summary: "Unpin a project",
3405 scope: Some("account:write"),
3406 params: &[
3407 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3408 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3409 ],
3410 body: &[],
3411 },
3412 Operation {
3413 id: "get_project",
3414 method: "GET",
3415 path: "/workspaces/{workspace}/projects/{project}",
3416 tag: "Projects",
3417 summary: "Get a project",
3418 scope: Some("repo:read"),
3419 params: &[
3420 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3421 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3422 ],
3423 body: &[],
3424 },
3425 Operation {
3426 id: "list_projects",
3427 method: "GET",
3428 path: "/workspaces/{workspace}/projects",
3429 tag: "Projects",
3430 summary: "List a workspace's projects",
3431 scope: Some("repo:read"),
3432 params: &[
3433 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3434 ],
3435 body: &[],
3436 },
3437 Operation {
3438 id: "update_project",
3439 method: "PATCH",
3440 path: "/workspaces/{workspace}/projects/{project}",
3441 tag: "Projects",
3442 summary: "Update a project",
3443 scope: Some("repo:write"),
3444 params: &[
3445 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3446 Param { name: "project", location: In::Path, kind: "string", required: true, values: &[] },
3447 ],
3448 body: &[
3449 Field { name: "description", kind: "string", required: false, values: &[] },
3450 Field { name: "docs_url", kind: "string", required: false, values: &[] },
3451 Field { name: "homepage", kind: "string", required: false, values: &[] },
3452 Field { name: "kind", kind: "string", required: false, values: &["auto", "app", "library", "tool", "docs", "other"] },
3453 Field { name: "links", kind: "array", required: false, values: &[] },
3454 Field { name: "name", kind: "string", required: false, values: &[] },
3455 Field { name: "production_url", kind: "string", required: false, values: &[] },
3456 Field { name: "root_dir", kind: "string", required: false, values: &[] },
3457 Field { name: "runs", kind: "string", required: false, values: &["auto", "g1t", "elsewhere"] },
3458 ],
3459 },
3460 Operation {
3461 id: "close_pull_request",
3462 method: "POST",
3463 path: "/repos/{owner}/{name}/pulls/{number}/close",
3464 tag: "Pull requests",
3465 summary: "Close a pull request",
3466 scope: Some("pull_requests:write"),
3467 params: &[
3468 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3469 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3470 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3471 ],
3472 body: &[],
3473 },
3474 Operation {
3475 id: "convert_pull_request_to_draft",
3476 method: "POST",
3477 path: "/repos/{owner}/{name}/pulls/{number}/draft",
3478 tag: "Pull requests",
3479 summary: "Convert a pull request to a draft",
3480 scope: Some("pull_requests:write"),
3481 params: &[
3482 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3483 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3484 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3485 ],
3486 body: &[],
3487 },
3488 Operation {
3489 id: "create_pull_request",
3490 method: "POST",
3491 path: "/repos/{owner}/{name}/pulls",
3492 tag: "Pull requests",
3493 summary: "Create a pull request",
3494 scope: Some("pull_requests:write"),
3495 params: &[
3496 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3497 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3498 ],
3499 body: &[
3500 Field { name: "agent", kind: "string", required: false, values: &[] },
3501 Field { name: "base", kind: "string", required: false, values: &[] },
3502 Field { name: "body", kind: "string", required: false, values: &[] },
3503 Field { name: "branch", kind: "string", required: false, values: &[] },
3504 Field { name: "issue", kind: "integer", required: false, values: &[] },
3505 Field { name: "title", kind: "string", required: false, values: &[] },
3506 ],
3507 },
3508 Operation {
3509 id: "get_merge_queue",
3510 method: "GET",
3511 path: "/repos/{owner}/{name}/queue",
3512 tag: "Pull requests",
3513 summary: "Get the merge queue",
3514 scope: Some("pull_requests:read"),
3515 params: &[
3516 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3517 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3518 ],
3519 body: &[],
3520 },
3521 Operation {
3522 id: "get_pull_request",
3523 method: "GET",
3524 path: "/repos/{owner}/{name}/pulls/{number}",
3525 tag: "Pull requests",
3526 summary: "Get a pull request",
3527 scope: Some("pull_requests:read"),
3528 params: &[
3529 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3530 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3531 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3532 ],
3533 body: &[],
3534 },
3535 Operation {
3536 id: "get_pull_request_changes",
3537 method: "GET",
3538 path: "/repos/{owner}/{name}/pulls/{number}/changes",
3539 tag: "Pull requests",
3540 summary: "Get a pull request's changes",
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 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3546 ],
3547 body: &[],
3548 },
3549 Operation {
3550 id: "list_pull_requests",
3551 method: "GET",
3552 path: "/repos/{owner}/{name}/pulls",
3553 tag: "Pull requests",
3554 summary: "List pull requests",
3555 scope: Some("pull_requests:read"),
3556 params: &[
3557 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3558 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3559 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "closed"] },
3560 Param { name: "label", location: In::Query, kind: "string", required: false, values: &[] },
3561 Param { name: "milestone", location: In::Query, kind: "integer", required: false, values: &[] },
3562 Param { name: "base", location: In::Query, kind: "string", required: false, values: &[] },
3563 ],
3564 body: &[],
3565 },
3566 Operation {
3567 id: "mark_pull_request_ready",
3568 method: "POST",
3569 path: "/repos/{owner}/{name}/pulls/{number}/ready",
3570 tag: "Pull requests",
3571 summary: "Mark a pull request ready",
3572 scope: Some("pull_requests:write"),
3573 params: &[
3574 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3575 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3576 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3577 ],
3578 body: &[
3579 Field { name: "summary", kind: "string", required: true, values: &[] },
3580 ],
3581 },
3582 Operation {
3583 id: "merge_pull_request",
3584 method: "POST",
3585 path: "/repos/{owner}/{name}/pulls/{number}/merge",
3586 tag: "Pull requests",
3587 summary: "Merge a pull request",
3588 scope: Some("pull_requests:write"),
3589 params: &[
3590 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3591 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3592 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3593 ],
3594 body: &[
3595 Field { name: "bypass_rules", kind: "boolean", required: false, values: &[] },
3596 Field { name: "ignore_checks", kind: "boolean", required: false, values: &[] },
3597 Field { name: "keep_issue_open", kind: "boolean", required: false, values: &[] },
3598 ],
3599 },
3600 Operation {
3601 id: "remove_requested_reviewers",
3602 method: "DELETE",
3603 path: "/repos/{owner}/{name}/pulls/{number}/requested_reviewers",
3604 tag: "Pull requests",
3605 summary: "Remove requested reviewers",
3606 scope: Some("pull_requests:write"),
3607 params: &[
3608 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3609 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3610 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3611 ],
3612 body: &[
3613 Field { name: "reviewers", kind: "array", required: false, values: &[] },
3614 Field { name: "team_reviewers", kind: "array", required: false, values: &[] },
3615 ],
3616 },
3617 Operation {
3618 id: "reopen_pull_request",
3619 method: "POST",
3620 path: "/repos/{owner}/{name}/pulls/{number}/reopen",
3621 tag: "Pull requests",
3622 summary: "Reopen a pull request",
3623 scope: Some("pull_requests:write"),
3624 params: &[
3625 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3626 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3627 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3628 ],
3629 body: &[],
3630 },
3631 Operation {
3632 id: "request_reviewers",
3633 method: "POST",
3634 path: "/repos/{owner}/{name}/pulls/{number}/requested_reviewers",
3635 tag: "Pull requests",
3636 summary: "Request reviewers",
3637 scope: Some("pull_requests:write"),
3638 params: &[
3639 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3640 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3641 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3642 ],
3643 body: &[
3644 Field { name: "reviewers", kind: "array", required: false, values: &[] },
3645 Field { name: "team_reviewers", kind: "array", required: false, values: &[] },
3646 ],
3647 },
3648 Operation {
3649 id: "review_pull_request",
3650 method: "POST",
3651 path: "/repos/{owner}/{name}/pulls/{number}/reviews",
3652 tag: "Pull requests",
3653 summary: "Review a pull request",
3654 scope: Some("pull_requests:write"),
3655 params: &[
3656 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3657 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3658 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3659 ],
3660 body: &[
3661 Field { name: "body", kind: "string", required: false, values: &[] },
3662 Field { name: "verdict", kind: "string", required: true, values: &["approve", "request_changes"] },
3663 ],
3664 },
3665 Operation {
3666 id: "update_pull_request",
3667 method: "PATCH",
3668 path: "/repos/{owner}/{name}/pulls/{number}",
3669 tag: "Pull requests",
3670 summary: "Update a pull request",
3671 scope: Some("pull_requests:write"),
3672 params: &[
3673 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3674 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3675 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
3676 ],
3677 body: &[
3678 Field { name: "assignees", kind: "array", required: false, values: &[] },
3679 Field { name: "base", kind: "string", required: false, values: &[] },
3680 Field { name: "labels", kind: "array", required: false, values: &[] },
3681 Field { name: "milestone", kind: "integer", required: false, values: &[] },
3682 Field { name: "reviewers", kind: "array", required: false, values: &[] },
3683 Field { name: "state", kind: "string", required: false, values: &["open", "closed"] },
3684 ],
3685 },
3686 Operation {
3687 id: "create_release",
3688 method: "POST",
3689 path: "/repos/{owner}/{name}/releases",
3690 tag: "Releases",
3691 summary: "Create a release",
3692 scope: Some("repo:write"),
3693 params: &[
3694 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3695 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3696 ],
3697 body: &[
3698 Field { name: "body", kind: "string", required: false, values: &[] },
3699 Field { name: "draft", kind: "boolean", required: false, values: &[] },
3700 Field { name: "prerelease", kind: "boolean", required: false, values: &[] },
3701 Field { name: "release_name", kind: "string", required: false, values: &[] },
3702 Field { name: "tag_name", kind: "string", required: true, values: &[] },
3703 Field { name: "target", kind: "string", required: false, values: &[] },
3704 ],
3705 },
3706 Operation {
3707 id: "delete_release",
3708 method: "DELETE",
3709 path: "/repos/{owner}/{name}/releases/{id}",
3710 tag: "Releases",
3711 summary: "Delete a release",
3712 scope: Some("repo:write"),
3713 params: &[
3714 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3715 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3716 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
3717 ],
3718 body: &[],
3719 },
3720 Operation {
3721 id: "get_latest_release",
3722 method: "GET",
3723 path: "/repos/{owner}/{name}/releases/latest",
3724 tag: "Releases",
3725 summary: "Get the latest release",
3726 scope: Some("repo:read"),
3727 params: &[
3728 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3729 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3730 ],
3731 body: &[],
3732 },
3733 Operation {
3734 id: "get_release",
3735 method: "GET",
3736 path: "/repos/{owner}/{name}/releases/{id}",
3737 tag: "Releases",
3738 summary: "Get a release",
3739 scope: Some("repo:read"),
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_release_by_tag",
3749 method: "GET",
3750 path: "/repos/{owner}/{name}/releases/tags/{tag}",
3751 tag: "Releases",
3752 summary: "Get a release by its tag",
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 Param { name: "tag", location: In::Path, kind: "string", required: true, values: &[] },
3758 ],
3759 body: &[],
3760 },
3761 Operation {
3762 id: "list_releases",
3763 method: "GET",
3764 path: "/repos/{owner}/{name}/releases",
3765 tag: "Releases",
3766 summary: "List releases",
3767 scope: Some("repo:read"),
3768 params: &[
3769 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3770 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3771 ],
3772 body: &[],
3773 },
3774 Operation {
3775 id: "update_release",
3776 method: "PATCH",
3777 path: "/repos/{owner}/{name}/releases/{id}",
3778 tag: "Releases",
3779 summary: "Update a release",
3780 scope: Some("repo:write"),
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: "id", location: In::Path, kind: "string", required: true, values: &[] },
3785 ],
3786 body: &[
3787 Field { name: "body", kind: "string", required: false, values: &[] },
3788 Field { name: "draft", kind: "boolean", required: false, values: &[] },
3789 Field { name: "prerelease", kind: "boolean", required: false, values: &[] },
3790 Field { name: "release_name", kind: "string", required: false, values: &[] },
3791 ],
3792 },
3793 Operation {
3794 id: "archive_repo",
3795 method: "POST",
3796 path: "/repos/{owner}/{name}/archive",
3797 tag: "Repositories",
3798 summary: "Archive a repository",
3799 scope: Some("repo:admin"),
3800 params: &[
3801 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3802 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3803 ],
3804 body: &[],
3805 },
3806 Operation {
3807 id: "create_branch",
3808 method: "POST",
3809 path: "/repos/{owner}/{name}/branches",
3810 tag: "Repositories",
3811 summary: "Create a branch",
3812 scope: Some("repo:write"),
3813 params: &[
3814 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3815 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3816 ],
3817 body: &[
3818 Field { name: "from", kind: "string", required: false, values: &[] },
3819 Field { name: "name", kind: "string", required: true, values: &[] },
3820 ],
3821 },
3822 Operation {
3823 id: "create_repo",
3824 method: "POST",
3825 path: "/repos",
3826 tag: "Repositories",
3827 summary: "Create a repository",
3828 scope: Some("repo:write"),
3829 params: &[],
3830 body: &[
3831 Field { name: "description", kind: "string", required: false, values: &[] },
3832 Field { name: "import_url", kind: "string", required: false, values: &[] },
3833 Field { name: "name", kind: "string", required: true, values: &[] },
3834 Field { name: "private", kind: "boolean", required: false, values: &[] },
3835 Field { name: "workspace", kind: "string", required: false, values: &[] },
3836 ],
3837 },
3838 Operation {
3839 id: "delete_branch",
3840 method: "DELETE",
3841 path: "/repos/{owner}/{name}/branches/{branch}",
3842 tag: "Repositories",
3843 summary: "Delete a branch",
3844 scope: Some("repo:write"),
3845 params: &[
3846 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3847 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3848 Param { name: "branch", location: In::Path, kind: "string", required: true, values: &[] },
3849 ],
3850 body: &[
3851 Field { name: "head", kind: "string", required: false, values: &[] },
3852 ],
3853 },
3854 Operation {
3855 id: "delete_repo",
3856 method: "DELETE",
3857 path: "/repos/{owner}/{name}",
3858 tag: "Repositories",
3859 summary: "Delete a repository",
3860 scope: Some("repo:admin"),
3861 params: &[
3862 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3863 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3864 ],
3865 body: &[
3866 Field { name: "confirm", kind: "string", required: true, values: &[] },
3867 ],
3868 },
3869 Operation {
3870 id: "download_tarball_archive",
3871 method: "GET",
3872 path: "/repos/{owner}/{name}/tarball/{ref}",
3873 tag: "Repositories",
3874 summary: "Download a repository archive (tar)",
3875 scope: Some("code:read"),
3876 params: &[
3877 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3878 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3879 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
3880 ],
3881 body: &[],
3882 },
3883 Operation {
3884 id: "download_zipball_archive",
3885 method: "GET",
3886 path: "/repos/{owner}/{name}/zipball/{ref}",
3887 tag: "Repositories",
3888 summary: "Download a repository archive (zip)",
3889 scope: Some("code:read"),
3890 params: &[
3891 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3892 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3893 Param { name: "ref", location: In::Path, kind: "string", required: true, values: &[] },
3894 ],
3895 body: &[],
3896 },
3897 Operation {
3898 id: "get_codeowners_errors",
3899 method: "GET",
3900 path: "/repos/{owner}/{name}/codeowners/errors",
3901 tag: "Repositories",
3902 summary: "List CODEOWNERS errors",
3903 scope: Some("repo:read"),
3904 params: &[
3905 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3906 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3907 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
3908 ],
3909 body: &[],
3910 },
3911 Operation {
3912 id: "get_contents",
3913 method: "GET",
3914 path: "/repos/{owner}/{name}/contents",
3915 tag: "Repositories",
3916 summary: "Get repository contents",
3917 scope: Some("code:read"),
3918 params: &[
3919 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3920 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3921 Param { name: "path", location: In::Query, kind: "string", required: false, values: &[] },
3922 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
3923 ],
3924 body: &[],
3925 },
3926 Operation {
3927 id: "get_repo",
3928 method: "GET",
3929 path: "/repos/{owner}/{name}",
3930 tag: "Repositories",
3931 summary: "Get a repository",
3932 scope: Some("repo:read"),
3933 params: &[
3934 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3935 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3936 ],
3937 body: &[],
3938 },
3939 Operation {
3940 id: "get_repo_settings",
3941 method: "GET",
3942 path: "/repos/{owner}/{name}/settings",
3943 tag: "Repositories",
3944 summary: "Get repository settings",
3945 scope: Some("repo:read"),
3946 params: &[
3947 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3948 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3949 ],
3950 body: &[],
3951 },
3952 Operation {
3953 id: "list_check_names",
3954 method: "GET",
3955 path: "/repos/{owner}/{name}/check-names",
3956 tag: "Repositories",
3957 summary: "List check names",
3958 scope: Some("repo:read"),
3959 params: &[
3960 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3961 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3962 ],
3963 body: &[],
3964 },
3965 Operation {
3966 id: "list_commits",
3967 method: "GET",
3968 path: "/repos/{owner}/{name}/commits",
3969 tag: "Repositories",
3970 summary: "List commits",
3971 scope: Some("code:read"),
3972 params: &[
3973 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
3974 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
3975 Param { name: "ref", location: In::Query, kind: "string", required: false, values: &[] },
3976 Param { name: "path", location: In::Query, kind: "string", required: false, values: &[] },
3977 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
3978 ],
3979 body: &[],
3980 },
3981 Operation {
3982 id: "list_deleted_repos",
3983 method: "GET",
3984 path: "/workspaces/{workspace}/repos/deleted",
3985 tag: "Repositories",
3986 summary: "List recently deleted repositories",
3987 scope: Some("repo:read"),
3988 params: &[
3989 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
3990 ],
3991 body: &[],
3992 },
3993 Operation {
3994 id: "list_events",
3995 method: "GET",
3996 path: "/repos/{owner}/{name}/events",
3997 tag: "Repositories",
3998 summary: "List repository events",
3999 scope: Some("repo:read"),
4000 params: &[
4001 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4002 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4003 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
4004 Param { name: "after", location: In::Query, kind: "string", required: false, values: &[] },
4005 Param { name: "types", location: In::Query, kind: "array", required: false, values: &[] },
4006 Param { name: "numbers", location: In::Query, kind: "array", required: false, values: &[] },
4007 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
4008 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4009 Param { name: "wait", location: In::Query, kind: "integer", required: false, values: &[] },
4010 ],
4011 body: &[],
4012 },
4013 Operation {
4014 id: "list_repos",
4015 method: "GET",
4016 path: "/repos",
4017 tag: "Repositories",
4018 summary: "List repositories",
4019 scope: Some("repo:read"),
4020 params: &[
4021 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
4022 ],
4023 body: &[],
4024 },
4025 Operation {
4026 id: "purge_repo",
4027 method: "POST",
4028 path: "/repos/{owner}/{name}/purge",
4029 tag: "Repositories",
4030 summary: "Purge a deleted repository",
4031 scope: Some("repo:admin"),
4032 params: &[
4033 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4034 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4035 ],
4036 body: &[
4037 Field { name: "confirm", kind: "string", required: true, values: &[] },
4038 ],
4039 },
4040 Operation {
4041 id: "rename_branch",
4042 method: "POST",
4043 path: "/repos/{owner}/{name}/branches/{branch}/rename",
4044 tag: "Repositories",
4045 summary: "Rename a branch",
4046 scope: Some("repo:write"),
4047 params: &[
4048 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4049 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4050 Param { name: "branch", location: In::Path, kind: "string", required: true, values: &[] },
4051 ],
4052 body: &[
4053 Field { name: "new_name", kind: "string", required: true, values: &[] },
4054 ],
4055 },
4056 Operation {
4057 id: "rename_repo",
4058 method: "POST",
4059 path: "/repos/{owner}/{name}/rename",
4060 tag: "Repositories",
4061 summary: "Rename a repository",
4062 scope: Some("repo:admin"),
4063 params: &[
4064 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4065 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4066 ],
4067 body: &[
4068 Field { name: "name", kind: "string", required: true, values: &[] },
4069 ],
4070 },
4071 Operation {
4072 id: "restore_repo",
4073 method: "POST",
4074 path: "/repos/{owner}/{name}/restore",
4075 tag: "Repositories",
4076 summary: "Restore a deleted repository",
4077 scope: Some("repo:admin"),
4078 params: &[
4079 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4080 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4081 ],
4082 body: &[],
4083 },
4084 Operation {
4085 id: "set_repo_visibility",
4086 method: "POST",
4087 path: "/repos/{owner}/{name}/visibility",
4088 tag: "Repositories",
4089 summary: "Change a repository's visibility",
4090 scope: Some("repo:admin"),
4091 params: &[
4092 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4093 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4094 ],
4095 body: &[
4096 Field { name: "confirm", kind: "string", required: true, values: &[] },
4097 Field { name: "private", kind: "boolean", required: true, values: &[] },
4098 ],
4099 },
4100 Operation {
4101 id: "transfer_repo",
4102 method: "POST",
4103 path: "/repos/{owner}/{name}/transfer",
4104 tag: "Repositories",
4105 summary: "Transfer a repository",
4106 scope: Some("repo:admin"),
4107 params: &[
4108 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4109 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4110 ],
4111 body: &[
4112 Field { name: "to", kind: "string", required: true, values: &[] },
4113 ],
4114 },
4115 Operation {
4116 id: "unarchive_repo",
4117 method: "POST",
4118 path: "/repos/{owner}/{name}/unarchive",
4119 tag: "Repositories",
4120 summary: "Unarchive a repository",
4121 scope: Some("repo:admin"),
4122 params: &[
4123 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4124 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4125 ],
4126 body: &[],
4127 },
4128 Operation {
4129 id: "update_repo",
4130 method: "PATCH",
4131 path: "/repos/{owner}/{name}",
4132 tag: "Repositories",
4133 summary: "Update a repository",
4134 scope: Some("repo:write"),
4135 params: &[
4136 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4137 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4138 ],
4139 body: &[
4140 Field { name: "default_branch", kind: "string", required: false, values: &[] },
4141 Field { name: "description", kind: "string", required: false, values: &[] },
4142 Field { name: "private", kind: "boolean", required: false, values: &[] },
4143 Field { name: "protected", kind: "boolean", required: false, values: &[] },
4144 Field { name: "topics", kind: "array", required: false, values: &[] },
4145 Field { name: "website", kind: "string", required: false, values: &[] },
4146 ],
4147 },
4148 Operation {
4149 id: "update_repo_settings",
4150 method: "PATCH",
4151 path: "/repos/{owner}/{name}/settings",
4152 tag: "Repositories",
4153 summary: "Update repository settings",
4154 scope: Some("repo:write"),
4155 params: &[
4156 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4157 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4158 ],
4159 body: &[
4160 Field { name: "allow_ignoring_checks", kind: "boolean", required: false, values: &[] },
4161 Field { name: "auto_merge", kind: "boolean", required: false, values: &[] },
4162 Field { name: "count_agent_approvals", kind: "boolean", required: false, values: &[] },
4163 Field { name: "merge_queue", kind: "boolean", required: false, values: &[] },
4164 Field { name: "require_code_owner_review", kind: "boolean", required: false, values: &[] },
4165 Field { name: "require_up_to_date", kind: "boolean", required: false, values: &[] },
4166 Field { name: "required_approvals", kind: "integer", required: false, values: &[] },
4167 Field { name: "required_checks", kind: "array", required: false, values: &[] },
4168 ],
4169 },
4170 Operation {
4171 id: "get_languages",
4172 method: "GET",
4173 path: "/repos/{owner}/{name}/languages",
4174 tag: "Repository insights",
4175 summary: "Get a repository's languages",
4176 scope: Some("repo:read"),
4177 params: &[
4178 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4179 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4180 ],
4181 body: &[],
4182 },
4183 Operation {
4184 id: "get_license",
4185 method: "GET",
4186 path: "/repos/{owner}/{name}/license",
4187 tag: "Repository insights",
4188 summary: "Get a repository's license",
4189 scope: Some("repo:read"),
4190 params: &[
4191 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4192 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4193 ],
4194 body: &[],
4195 },
4196 Operation {
4197 id: "list_contributors",
4198 method: "GET",
4199 path: "/repos/{owner}/{name}/contributors",
4200 tag: "Repository insights",
4201 summary: "List a repository's contributors",
4202 scope: Some("repo:read"),
4203 params: &[
4204 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4205 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4206 ],
4207 body: &[],
4208 },
4209 Operation {
4210 id: "create_repo_ruleset",
4211 method: "POST",
4212 path: "/repos/{owner}/{name}/rulesets",
4213 tag: "Rules",
4214 summary: "Create a repository ruleset",
4215 scope: Some("repo:admin"),
4216 params: &[
4217 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4218 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4219 ],
4220 body: &[
4221 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4222 Field { name: "conditions", kind: "object", required: false, values: &[] },
4223 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4224 Field { name: "rules", kind: "array", required: false, values: &[] },
4225 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4226 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4227 ],
4228 },
4229 Operation {
4230 id: "create_workspace_ruleset",
4231 method: "POST",
4232 path: "/workspaces/{workspace}/rulesets",
4233 tag: "Rules",
4234 summary: "Create a workspace ruleset",
4235 scope: Some("workspace:admin"),
4236 params: &[
4237 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4238 ],
4239 body: &[
4240 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4241 Field { name: "conditions", kind: "object", required: false, values: &[] },
4242 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4243 Field { name: "rules", kind: "array", required: false, values: &[] },
4244 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4245 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4246 ],
4247 },
4248 Operation {
4249 id: "delete_repo_ruleset",
4250 method: "DELETE",
4251 path: "/repos/{owner}/{name}/rulesets/{id}",
4252 tag: "Rules",
4253 summary: "Delete a repository ruleset",
4254 scope: Some("repo:admin"),
4255 params: &[
4256 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4257 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4258 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4259 ],
4260 body: &[],
4261 },
4262 Operation {
4263 id: "delete_workspace_ruleset",
4264 method: "DELETE",
4265 path: "/workspaces/{workspace}/rulesets/{id}",
4266 tag: "Rules",
4267 summary: "Delete a workspace ruleset",
4268 scope: Some("workspace:admin"),
4269 params: &[
4270 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4271 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4272 ],
4273 body: &[],
4274 },
4275 Operation {
4276 id: "get_branch_rules",
4277 method: "GET",
4278 path: "/repos/{owner}/{name}/rules/branches/{branch}",
4279 tag: "Rules",
4280 summary: "Get the rules for a branch",
4281 scope: Some("repo:read"),
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: "branch", location: In::Path, kind: "string", required: true, values: &[] },
4286 Param { name: "target", location: In::Query, kind: "string", required: false, values: &["branch", "tag"] },
4287 ],
4288 body: &[],
4289 },
4290 Operation {
4291 id: "get_repo_ruleset",
4292 method: "GET",
4293 path: "/repos/{owner}/{name}/rulesets/{id}",
4294 tag: "Rules",
4295 summary: "Get a repository ruleset",
4296 scope: Some("repo:read"),
4297 params: &[
4298 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4299 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4300 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4301 ],
4302 body: &[],
4303 },
4304 Operation {
4305 id: "get_workspace_ruleset",
4306 method: "GET",
4307 path: "/workspaces/{workspace}/rulesets/{id}",
4308 tag: "Rules",
4309 summary: "Get a workspace ruleset",
4310 scope: Some("workspace:read"),
4311 params: &[
4312 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4313 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4314 ],
4315 body: &[],
4316 },
4317 Operation {
4318 id: "list_repo_rulesets",
4319 method: "GET",
4320 path: "/repos/{owner}/{name}/rulesets",
4321 tag: "Rules",
4322 summary: "List a repository's rulesets",
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: "include_parents", location: In::Query, kind: "boolean", required: false, values: &[] },
4328 ],
4329 body: &[],
4330 },
4331 Operation {
4332 id: "list_rule_evaluations",
4333 method: "GET",
4334 path: "/repos/{owner}/{name}/rules/evaluations",
4335 tag: "Rules",
4336 summary: "List a repository's rule evaluations",
4337 scope: Some("repo:read"),
4338 params: &[
4339 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4340 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4341 Param { name: "ruleset_id", location: In::Query, kind: "string", required: false, values: &[] },
4342 Param { name: "verdict", location: In::Query, kind: "string", required: false, values: &["pass", "fail", "bypass"] },
4343 Param { name: "problems_only", location: In::Query, kind: "boolean", required: false, values: &[] },
4344 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
4345 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4346 ],
4347 body: &[],
4348 },
4349 Operation {
4350 id: "list_workspace_rule_evaluations",
4351 method: "GET",
4352 path: "/workspaces/{workspace}/rules/evaluations",
4353 tag: "Rules",
4354 summary: "List a workspace's rule evaluations",
4355 scope: Some("workspace:read"),
4356 params: &[
4357 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4358 Param { name: "ruleset_id", location: In::Query, kind: "string", required: false, values: &[] },
4359 Param { name: "verdict", location: In::Query, kind: "string", required: false, values: &["pass", "fail", "bypass"] },
4360 Param { name: "problems_only", location: In::Query, kind: "boolean", required: false, values: &[] },
4361 Param { name: "before", location: In::Query, kind: "string", required: false, values: &[] },
4362 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
4363 ],
4364 body: &[],
4365 },
4366 Operation {
4367 id: "list_workspace_rulesets",
4368 method: "GET",
4369 path: "/workspaces/{workspace}/rulesets",
4370 tag: "Rules",
4371 summary: "List a workspace's rulesets",
4372 scope: Some("workspace:read"),
4373 params: &[
4374 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4375 ],
4376 body: &[],
4377 },
4378 Operation {
4379 id: "update_repo_ruleset",
4380 method: "PUT",
4381 path: "/repos/{owner}/{name}/rulesets/{id}",
4382 tag: "Rules",
4383 summary: "Update a repository ruleset",
4384 scope: Some("repo:admin"),
4385 params: &[
4386 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4387 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4388 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4389 ],
4390 body: &[
4391 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4392 Field { name: "conditions", kind: "object", required: false, values: &[] },
4393 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4394 Field { name: "rules", kind: "array", required: false, values: &[] },
4395 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4396 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4397 ],
4398 },
4399 Operation {
4400 id: "update_workspace_ruleset",
4401 method: "PUT",
4402 path: "/workspaces/{workspace}/rulesets/{id}",
4403 tag: "Rules",
4404 summary: "Update a workspace ruleset",
4405 scope: Some("workspace:admin"),
4406 params: &[
4407 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4408 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4409 ],
4410 body: &[
4411 Field { name: "bypass_actors", kind: "array", required: false, values: &[] },
4412 Field { name: "conditions", kind: "object", required: false, values: &[] },
4413 Field { name: "enforcement", kind: "string", required: false, values: &["active", "evaluate", "disabled"] },
4414 Field { name: "rules", kind: "array", required: false, values: &[] },
4415 Field { name: "ruleset_name", kind: "string", required: false, values: &[] },
4416 Field { name: "target", kind: "string", required: false, values: &["branch", "tag"] },
4417 ],
4418 },
4419 Operation {
4420 id: "approve_workflow_run",
4421 method: "POST",
4422 path: "/repos/{owner}/{name}/actions/runs/{id}/approve",
4423 tag: "Run protection",
4424 summary: "Approve a workflow run",
4425 scope: Some("workflows:write"),
4426 params: &[
4427 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4428 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4429 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4430 ],
4431 body: &[],
4432 },
4433 Operation {
4434 id: "create_repository_dispatch",
4435 method: "POST",
4436 path: "/repos/{owner}/{name}/dispatches",
4437 tag: "Run protection",
4438 summary: "Create a repository dispatch event",
4439 scope: Some("code:write"),
4440 params: &[
4441 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4442 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4443 ],
4444 body: &[
4445 Field { name: "client_payload", kind: "object", required: false, values: &[] },
4446 Field { name: "event_type", kind: "string", required: true, values: &[] },
4447 ],
4448 },
4449 Operation {
4450 id: "create_workspace_managed_workflow",
4451 method: "POST",
4452 path: "/workspaces/{workspace}/actions/managed-workflows",
4453 tag: "Run protection",
4454 summary: "Add a workflow a workspace manages",
4455 scope: Some("workspace:admin"),
4456 params: &[
4457 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4458 ],
4459 body: &[
4460 Field { name: "mode", kind: "string", required: true, values: &["required", "default"] },
4461 Field { name: "name", kind: "string", required: true, values: &[] },
4462 Field { name: "repositories", kind: "array", required: false, values: &[] },
4463 Field { name: "source", kind: "string", required: true, values: &[] },
4464 Field { name: "visibility", kind: "string", required: false, values: &["all", "public", "private"] },
4465 ],
4466 },
4467 Operation {
4468 id: "delete_environment",
4469 method: "DELETE",
4470 path: "/repos/{owner}/{name}/environments/{environment}",
4471 tag: "Run protection",
4472 summary: "Delete an environment's protection rules",
4473 scope: Some("repo:admin"),
4474 params: &[
4475 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4476 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4477 Param { name: "environment", location: In::Path, kind: "string", required: true, values: &[] },
4478 ],
4479 body: &[],
4480 },
4481 Operation {
4482 id: "delete_workspace_managed_workflow",
4483 method: "DELETE",
4484 path: "/workspaces/{workspace}/actions/managed-workflows/{workflow}",
4485 tag: "Run protection",
4486 summary: "Remove a workflow a workspace manages",
4487 scope: Some("workspace:admin"),
4488 params: &[
4489 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4490 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
4491 ],
4492 body: &[],
4493 },
4494 Operation {
4495 id: "get_actions_access",
4496 method: "GET",
4497 path: "/repos/{owner}/{name}/actions/permissions/access",
4498 tag: "Run protection",
4499 summary: "Get who may use a repository's actions and workflows",
4500 scope: Some("repo:read"),
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 ],
4505 body: &[],
4506 },
4507 Operation {
4508 id: "get_fork_pr_approval",
4509 method: "GET",
4510 path: "/repos/{owner}/{name}/actions/permissions/fork-pr-contributor-approval",
4511 tag: "Run protection",
4512 summary: "Get the approval policy for outside pull requests",
4513 scope: Some("repo:read"),
4514 params: &[
4515 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4516 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4517 ],
4518 body: &[],
4519 },
4520 Operation {
4521 id: "get_pending_deployments",
4522 method: "GET",
4523 path: "/repos/{owner}/{name}/actions/runs/{id}/pending_deployments",
4524 tag: "Run protection",
4525 summary: "Get a run's pending deployments",
4526 scope: Some("workflows:read"),
4527 params: &[
4528 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4529 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4530 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4531 ],
4532 body: &[],
4533 },
4534 Operation {
4535 id: "get_workflow_permissions",
4536 method: "GET",
4537 path: "/repos/{owner}/{name}/actions/permissions/workflow",
4538 tag: "Run protection",
4539 summary: "Get the default workflow permissions",
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_workspace_workflow_permissions",
4549 method: "GET",
4550 path: "/workspaces/{workspace}/actions/permissions/workflow",
4551 tag: "Run protection",
4552 summary: "Get a workspace's default workflow permissions",
4553 scope: Some("workspace:read"),
4554 params: &[
4555 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4556 ],
4557 body: &[],
4558 },
4559 Operation {
4560 id: "list_workspace_managed_workflows",
4561 method: "GET",
4562 path: "/workspaces/{workspace}/actions/managed-workflows",
4563 tag: "Run protection",
4564 summary: "List the workflows a workspace manages",
4565 scope: Some("workspace:read"),
4566 params: &[
4567 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4568 ],
4569 body: &[],
4570 },
4571 Operation {
4572 id: "review_pending_deployments",
4573 method: "POST",
4574 path: "/repos/{owner}/{name}/actions/runs/{id}/pending_deployments",
4575 tag: "Run protection",
4576 summary: "Review a run's pending deployments",
4577 scope: Some("workflows:write"),
4578 params: &[
4579 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4580 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4581 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4582 ],
4583 body: &[
4584 Field { name: "comment", kind: "string", required: false, values: &[] },
4585 Field { name: "environment_names", kind: "array", required: false, values: &[] },
4586 Field { name: "state", kind: "string", required: true, values: &["approved", "rejected"] },
4587 ],
4588 },
4589 Operation {
4590 id: "set_actions_access",
4591 method: "PUT",
4592 path: "/repos/{owner}/{name}/actions/permissions/access",
4593 tag: "Run protection",
4594 summary: "Set who may use a repository's actions and workflows",
4595 scope: Some("repo:admin"),
4596 params: &[
4597 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4598 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4599 ],
4600 body: &[
4601 Field { name: "access_level", kind: "string", required: true, values: &["none", "organization", "user"] },
4602 ],
4603 },
4604 Operation {
4605 id: "set_fork_pr_approval",
4606 method: "PUT",
4607 path: "/repos/{owner}/{name}/actions/permissions/fork-pr-contributor-approval",
4608 tag: "Run protection",
4609 summary: "Set the approval policy for outside pull requests",
4610 scope: Some("repo:admin"),
4611 params: &[
4612 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4613 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4614 ],
4615 body: &[
4616 Field { name: "approval_policy", kind: "string", required: true, values: &["first_time_contributors", "outside_contributors", "all_external_contributors"] },
4617 ],
4618 },
4619 Operation {
4620 id: "set_workflow_permissions",
4621 method: "PUT",
4622 path: "/repos/{owner}/{name}/actions/permissions/workflow",
4623 tag: "Run protection",
4624 summary: "Set the default workflow permissions",
4625 scope: Some("repo:admin"),
4626 params: &[
4627 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4628 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4629 ],
4630 body: &[
4631 Field { name: "can_approve_pull_request_reviews", kind: "boolean", required: false, values: &[] },
4632 Field { name: "default_workflow_permissions", kind: "string", required: false, values: &["read", "write", "inherit"] },
4633 ],
4634 },
4635 Operation {
4636 id: "set_workspace_workflow_permissions",
4637 method: "PUT",
4638 path: "/workspaces/{workspace}/actions/permissions/workflow",
4639 tag: "Run protection",
4640 summary: "Set a workspace's default workflow permissions",
4641 scope: Some("workspace:admin"),
4642 params: &[
4643 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4644 ],
4645 body: &[
4646 Field { name: "can_approve_pull_request_reviews", kind: "boolean", required: false, values: &[] },
4647 Field { name: "default_workflow_permissions", kind: "string", required: false, values: &["read", "write"] },
4648 Field { name: "max_workflow_permissions", kind: "string", required: false, values: &["read", "write"] },
4649 ],
4650 },
4651 Operation {
4652 id: "update_environment",
4653 method: "PUT",
4654 path: "/repos/{owner}/{name}/environments/{environment}",
4655 tag: "Run protection",
4656 summary: "Create or update an environment's protection rules",
4657 scope: Some("repo:admin"),
4658 params: &[
4659 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4660 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4661 Param { name: "environment", location: In::Path, kind: "string", required: true, values: &[] },
4662 ],
4663 body: &[
4664 Field { name: "branch_policies", kind: "array", required: false, values: &[] },
4665 Field { name: "can_admins_bypass", kind: "boolean", required: false, values: &[] },
4666 Field { name: "deployment_branch_policy", kind: "object", required: false, values: &[] },
4667 Field { name: "prevent_self_review", kind: "boolean", required: false, values: &[] },
4668 Field { name: "reviewers", kind: "array", required: false, values: &[] },
4669 Field { name: "wait_timer", kind: "integer", required: false, values: &[] },
4670 ],
4671 },
4672 Operation {
4673 id: "update_workspace_managed_workflow",
4674 method: "PATCH",
4675 path: "/workspaces/{workspace}/actions/managed-workflows/{workflow}",
4676 tag: "Run protection",
4677 summary: "Update a workflow a workspace manages",
4678 scope: Some("workspace:admin"),
4679 params: &[
4680 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4681 Param { name: "workflow", location: In::Path, kind: "string", required: true, values: &[] },
4682 ],
4683 body: &[
4684 Field { name: "mode", kind: "string", required: false, values: &["required", "default"] },
4685 Field { name: "refresh", kind: "boolean", required: false, values: &[] },
4686 Field { name: "repositories", kind: "array", required: false, values: &[] },
4687 Field { name: "source", kind: "string", required: false, values: &[] },
4688 Field { name: "visibility", kind: "string", required: false, values: &["all", "public", "private"] },
4689 ],
4690 },
4691 Operation {
4692 id: "create_runner_group",
4693 method: "POST",
4694 path: "/workspaces/{workspace}/actions/runner-groups",
4695 tag: "Runners",
4696 summary: "Create a runner group",
4697 scope: Some("runners:admin"),
4698 params: &[
4699 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4700 ],
4701 body: &[
4702 Field { name: "id", kind: "string", required: false, values: &[] },
4703 Field { name: "name", kind: "string", required: true, values: &[] },
4704 Field { name: "repositories", kind: "array", required: false, values: &[] },
4705 ],
4706 },
4707 Operation {
4708 id: "create_runner_registration_token",
4709 method: "POST",
4710 path: "/repos/{owner}/{name}/actions/runners/registration-token",
4711 tag: "Runners",
4712 summary: "Create a runner registration token",
4713 scope: Some("runners:admin"),
4714 params: &[
4715 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4716 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4717 ],
4718 body: &[
4719 Field { name: "group", kind: "string", required: false, values: &[] },
4720 Field { name: "workspace", kind: "string", required: false, values: &[] },
4721 ],
4722 },
4723 Operation {
4724 id: "create_runner_registration_token_for_workspace",
4725 method: "POST",
4726 path: "/workspaces/{workspace}/actions/runners/registration-token",
4727 tag: "Runners",
4728 summary: "Create a runner registration token for a workspace",
4729 scope: Some("runners:admin"),
4730 params: &[
4731 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4732 ],
4733 body: &[
4734 Field { name: "group", kind: "string", required: false, values: &[] },
4735 ],
4736 },
4737 Operation {
4738 id: "delete_runner_group",
4739 method: "DELETE",
4740 path: "/workspaces/{workspace}/actions/runner-groups/{id}",
4741 tag: "Runners",
4742 summary: "Delete a runner group",
4743 scope: Some("runners:admin"),
4744 params: &[
4745 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4746 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4747 ],
4748 body: &[],
4749 },
4750 Operation {
4751 id: "get_runner_settings",
4752 method: "GET",
4753 path: "/repos/{owner}/{name}/actions/runner-settings",
4754 tag: "Runners",
4755 summary: "Get runner settings",
4756 scope: Some("runners:read"),
4757 params: &[
4758 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4759 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4760 ],
4761 body: &[],
4762 },
4763 Operation {
4764 id: "get_runner_settings_for_workspace",
4765 method: "GET",
4766 path: "/workspaces/{workspace}/actions/runner-settings",
4767 tag: "Runners",
4768 summary: "Get runner settings for a workspace",
4769 scope: Some("runners:read"),
4770 params: &[
4771 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4772 ],
4773 body: &[],
4774 },
4775 Operation {
4776 id: "list_runner_groups",
4777 method: "GET",
4778 path: "/workspaces/{workspace}/actions/runner-groups",
4779 tag: "Runners",
4780 summary: "List runner groups",
4781 scope: Some("runners:read"),
4782 params: &[
4783 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4784 ],
4785 body: &[],
4786 },
4787 Operation {
4788 id: "list_runners",
4789 method: "GET",
4790 path: "/repos/{owner}/{name}/actions/runners",
4791 tag: "Runners",
4792 summary: "List self-hosted runners",
4793 scope: Some("runners:read"),
4794 params: &[
4795 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4796 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4797 ],
4798 body: &[],
4799 },
4800 Operation {
4801 id: "list_runners_for_workspace",
4802 method: "GET",
4803 path: "/workspaces/{workspace}/actions/runners",
4804 tag: "Runners",
4805 summary: "List self-hosted runners for a workspace",
4806 scope: Some("runners:read"),
4807 params: &[
4808 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4809 ],
4810 body: &[],
4811 },
4812 Operation {
4813 id: "remove_runner",
4814 method: "DELETE",
4815 path: "/repos/{owner}/{name}/actions/runners/{id}",
4816 tag: "Runners",
4817 summary: "Remove a self-hosted runner",
4818 scope: Some("runners:admin"),
4819 params: &[
4820 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4821 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4822 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4823 ],
4824 body: &[
4825 Field { name: "workspace", kind: "string", required: false, values: &[] },
4826 ],
4827 },
4828 Operation {
4829 id: "remove_runner_for_workspace",
4830 method: "DELETE",
4831 path: "/workspaces/{workspace}/actions/runners/{id}",
4832 tag: "Runners",
4833 summary: "Remove a self-hosted runner for a workspace",
4834 scope: Some("runners:admin"),
4835 params: &[
4836 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4837 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4838 ],
4839 body: &[],
4840 },
4841 Operation {
4842 id: "update_runner_group",
4843 method: "PATCH",
4844 path: "/workspaces/{workspace}/actions/runner-groups/{id}",
4845 tag: "Runners",
4846 summary: "Change a runner group",
4847 scope: Some("runners:admin"),
4848 params: &[
4849 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4850 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4851 ],
4852 body: &[
4853 Field { name: "name", kind: "string", required: false, values: &[] },
4854 Field { name: "repositories", kind: "array", required: false, values: &[] },
4855 ],
4856 },
4857 Operation {
4858 id: "update_runner_settings",
4859 method: "PATCH",
4860 path: "/repos/{owner}/{name}/actions/runner-settings",
4861 tag: "Runners",
4862 summary: "Change runner settings",
4863 scope: Some("runners:admin"),
4864 params: &[
4865 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4866 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4867 ],
4868 body: &[
4869 Field { name: "agent_labels", kind: "array", required: false, values: &[] },
4870 Field { name: "agents_on_self_hosted", kind: "boolean", required: false, values: &[] },
4871 Field { name: "fork_pull_requests", kind: "boolean", required: false, values: &[] },
4872 Field { name: "inherit", kind: "boolean", required: false, values: &[] },
4873 Field { name: "workspace", kind: "string", required: false, values: &[] },
4874 ],
4875 },
4876 Operation {
4877 id: "update_runner_settings_for_workspace",
4878 method: "PATCH",
4879 path: "/workspaces/{workspace}/actions/runner-settings",
4880 tag: "Runners",
4881 summary: "Change runner settings for a workspace",
4882 scope: Some("runners:admin"),
4883 params: &[
4884 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4885 ],
4886 body: &[
4887 Field { name: "agent_labels", kind: "array", required: false, values: &[] },
4888 Field { name: "agents_on_self_hosted", kind: "boolean", required: false, values: &[] },
4889 Field { name: "fork_pull_requests", kind: "boolean", required: false, values: &[] },
4890 Field { name: "inherit", kind: "boolean", required: false, values: &[] },
4891 ],
4892 },
4893 Operation {
4894 id: "search",
4895 method: "GET",
4896 path: "/search",
4897 tag: "Search",
4898 summary: "Search g1t",
4899 scope: Some("repo:read"),
4900 params: &[
4901 Param { name: "q", location: In::Query, kind: "string", required: true, values: &[] },
4902 Param { name: "type", location: In::Query, kind: "string", required: false, values: &["repositories", "code", "issues", "pulls", "people"] },
4903 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
4904 Param { name: "per_page", location: In::Query, kind: "integer", required: false, values: &[] },
4905 ],
4906 body: &[],
4907 },
4908 Operation {
4909 id: "bypass_push_protection",
4910 method: "POST",
4911 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}/bypass",
4912 tag: "Secret scanning",
4913 summary: "Bypass push protection",
4914 scope: Some("security:write"),
4915 params: &[
4916 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4917 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4918 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4919 ],
4920 body: &[
4921 Field { name: "comment", kind: "string", required: false, values: &[] },
4922 Field { name: "reason", kind: "string", required: true, values: &["false_positive", "used_in_tests", "will_fix_later"] },
4923 ],
4924 },
4925 Operation {
4926 id: "check_secret_validity",
4927 method: "POST",
4928 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}/validity",
4929 tag: "Secret scanning",
4930 summary: "Check whether a secret still works",
4931 scope: Some("security:write"),
4932 params: &[
4933 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4934 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4935 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4936 ],
4937 body: &[],
4938 },
4939 Operation {
4940 id: "create_custom_pattern",
4941 method: "POST",
4942 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns",
4943 tag: "Secret scanning",
4944 summary: "Create a custom pattern",
4945 scope: Some("security:write"),
4946 params: &[
4947 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4948 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4949 ],
4950 body: &[
4951 Field { name: "after", kind: "string", required: false, values: &[] },
4952 Field { name: "before", kind: "string", required: false, values: &[] },
4953 Field { name: "pattern", kind: "string", required: true, values: &[] },
4954 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
4955 Field { name: "publish", kind: "boolean", required: false, values: &[] },
4956 Field { name: "test_strings", kind: "array", required: false, values: &[] },
4957 Field { name: "workspace", kind: "string", required: false, values: &[] },
4958 ],
4959 },
4960 Operation {
4961 id: "create_custom_pattern_for_workspace",
4962 method: "POST",
4963 path: "/workspaces/{workspace}/secret-scanning/custom-patterns",
4964 tag: "Secret scanning",
4965 summary: "Create a custom pattern for a workspace",
4966 scope: Some("security:write"),
4967 params: &[
4968 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
4969 ],
4970 body: &[
4971 Field { name: "after", kind: "string", required: false, values: &[] },
4972 Field { name: "before", kind: "string", required: false, values: &[] },
4973 Field { name: "pattern", kind: "string", required: true, values: &[] },
4974 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
4975 Field { name: "publish", kind: "boolean", required: false, values: &[] },
4976 Field { name: "test_strings", kind: "array", required: false, values: &[] },
4977 ],
4978 },
4979 Operation {
4980 id: "delete_custom_pattern",
4981 method: "DELETE",
4982 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns/{id}",
4983 tag: "Secret scanning",
4984 summary: "Delete a custom pattern",
4985 scope: Some("security:write"),
4986 params: &[
4987 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
4988 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
4989 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
4990 ],
4991 body: &[
4992 Field { name: "workspace", kind: "string", required: false, values: &[] },
4993 ],
4994 },
4995 Operation {
4996 id: "delete_custom_pattern_for_workspace",
4997 method: "DELETE",
4998 path: "/workspaces/{workspace}/secret-scanning/custom-patterns/{id}",
4999 tag: "Secret scanning",
5000 summary: "Delete a custom pattern for a workspace",
5001 scope: Some("security:write"),
5002 params: &[
5003 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5004 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5005 ],
5006 body: &[],
5007 },
5008 Operation {
5009 id: "dry_run_custom_pattern",
5010 method: "POST",
5011 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns/dry-run",
5012 tag: "Secret scanning",
5013 summary: "Dry-run a custom pattern",
5014 scope: Some("security:write"),
5015 params: &[
5016 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5017 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5018 ],
5019 body: &[
5020 Field { name: "after", kind: "string", required: false, values: &[] },
5021 Field { name: "before", kind: "string", required: false, values: &[] },
5022 Field { name: "pattern", kind: "string", required: true, values: &[] },
5023 Field { name: "pattern_name", kind: "string", required: false, values: &[] },
5024 Field { name: "repos", kind: "array", required: false, values: &[] },
5025 Field { name: "workspace", kind: "string", required: false, values: &[] },
5026 ],
5027 },
5028 Operation {
5029 id: "dry_run_custom_pattern_for_workspace",
5030 method: "POST",
5031 path: "/workspaces/{workspace}/secret-scanning/custom-patterns/dry-run",
5032 tag: "Secret scanning",
5033 summary: "Dry-run a custom pattern for a workspace",
5034 scope: Some("security:write"),
5035 params: &[
5036 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5037 ],
5038 body: &[
5039 Field { name: "after", kind: "string", required: false, values: &[] },
5040 Field { name: "before", kind: "string", required: false, values: &[] },
5041 Field { name: "pattern", kind: "string", required: true, values: &[] },
5042 Field { name: "pattern_name", kind: "string", required: false, values: &[] },
5043 Field { name: "repos", kind: "array", required: false, values: &[] },
5044 ],
5045 },
5046 Operation {
5047 id: "get_secret_scanning_alert",
5048 method: "GET",
5049 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}",
5050 tag: "Secret scanning",
5051 summary: "Get a secret scanning alert",
5052 scope: Some("security:read"),
5053 params: &[
5054 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5055 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5056 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5057 ],
5058 body: &[],
5059 },
5060 Operation {
5061 id: "list_bypass_requests",
5062 method: "GET",
5063 path: "/workspaces/{workspace}/secret-scanning/bypass-requests",
5064 tag: "Secret scanning",
5065 summary: "List push protection bypass requests",
5066 scope: Some("security:read"),
5067 params: &[
5068 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5069 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["pending", "approved", "denied", "cancelled"] },
5070 Param { name: "repo", location: In::Query, kind: "string", required: false, values: &[] },
5071 ],
5072 body: &[],
5073 },
5074 Operation {
5075 id: "list_custom_patterns",
5076 method: "GET",
5077 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns",
5078 tag: "Secret scanning",
5079 summary: "List custom patterns",
5080 scope: Some("security:read"),
5081 params: &[
5082 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5083 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5084 ],
5085 body: &[],
5086 },
5087 Operation {
5088 id: "list_custom_patterns_for_workspace",
5089 method: "GET",
5090 path: "/workspaces/{workspace}/secret-scanning/custom-patterns",
5091 tag: "Secret scanning",
5092 summary: "List custom patterns for a workspace",
5093 scope: Some("security:read"),
5094 params: &[
5095 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5096 ],
5097 body: &[],
5098 },
5099 Operation {
5100 id: "list_secret_scanning_alerts",
5101 method: "GET",
5102 path: "/repos/{owner}/{name}/secret-scanning/alerts",
5103 tag: "Secret scanning",
5104 summary: "List secret scanning alerts",
5105 scope: Some("security:read"),
5106 params: &[
5107 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5108 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5109 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
5110 Param { name: "secret_type", location: In::Query, kind: "string", required: false, values: &[] },
5111 Param { name: "validity", location: In::Query, kind: "string", required: false, values: &["active", "inactive", "unknown", "unsupported"] },
5112 Param { name: "bypassed", location: In::Query, kind: "boolean", required: false, values: &[] },
5113 ],
5114 body: &[],
5115 },
5116 Operation {
5117 id: "list_secret_scanning_alerts_for_workspace",
5118 method: "GET",
5119 path: "/workspaces/{workspace}/secret-scanning/alerts",
5120 tag: "Secret scanning",
5121 summary: "List secret scanning alerts for a workspace",
5122 scope: Some("security:read"),
5123 params: &[
5124 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5125 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
5126 Param { name: "secret_type", location: In::Query, kind: "string", required: false, values: &[] },
5127 Param { name: "validity", location: In::Query, kind: "string", required: false, values: &["active", "inactive", "unknown", "unsupported"] },
5128 Param { name: "bypassed", location: In::Query, kind: "boolean", required: false, values: &[] },
5129 ],
5130 body: &[],
5131 },
5132 Operation {
5133 id: "list_secret_scanning_locations",
5134 method: "GET",
5135 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}/locations",
5136 tag: "Secret scanning",
5137 summary: "List where a secret was found",
5138 scope: Some("security:read"),
5139 params: &[
5140 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5141 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5142 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5143 ],
5144 body: &[],
5145 },
5146 Operation {
5147 id: "review_bypass_request",
5148 method: "PATCH",
5149 path: "/workspaces/{workspace}/secret-scanning/bypass-requests/{id}",
5150 tag: "Secret scanning",
5151 summary: "Review a bypass request",
5152 scope: Some("security:write"),
5153 params: &[
5154 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5155 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5156 ],
5157 body: &[
5158 Field { name: "comment", kind: "string", required: false, values: &[] },
5159 Field { name: "decision", kind: "string", required: true, values: &["approve", "deny", "cancel"] },
5160 ],
5161 },
5162 Operation {
5163 id: "update_custom_pattern",
5164 method: "PATCH",
5165 path: "/repos/{owner}/{name}/secret-scanning/custom-patterns/{id}",
5166 tag: "Secret scanning",
5167 summary: "Update a custom pattern",
5168 scope: Some("security:write"),
5169 params: &[
5170 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5171 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5172 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5173 ],
5174 body: &[
5175 Field { name: "after", kind: "string", required: false, values: &[] },
5176 Field { name: "before", kind: "string", required: false, values: &[] },
5177 Field { name: "pattern", kind: "string", required: true, values: &[] },
5178 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
5179 Field { name: "publish", kind: "boolean", required: false, values: &[] },
5180 Field { name: "test_strings", kind: "array", required: false, values: &[] },
5181 Field { name: "workspace", kind: "string", required: false, values: &[] },
5182 ],
5183 },
5184 Operation {
5185 id: "update_custom_pattern_for_workspace",
5186 method: "PATCH",
5187 path: "/workspaces/{workspace}/secret-scanning/custom-patterns/{id}",
5188 tag: "Secret scanning",
5189 summary: "Update a custom pattern for a workspace",
5190 scope: Some("security:write"),
5191 params: &[
5192 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5193 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5194 ],
5195 body: &[
5196 Field { name: "after", kind: "string", required: false, values: &[] },
5197 Field { name: "before", kind: "string", required: false, values: &[] },
5198 Field { name: "pattern", kind: "string", required: true, values: &[] },
5199 Field { name: "pattern_name", kind: "string", required: true, values: &[] },
5200 Field { name: "publish", kind: "boolean", required: false, values: &[] },
5201 Field { name: "test_strings", kind: "array", required: false, values: &[] },
5202 ],
5203 },
5204 Operation {
5205 id: "update_secret_scanning_alert",
5206 method: "PATCH",
5207 path: "/repos/{owner}/{name}/secret-scanning/alerts/{id}",
5208 tag: "Secret scanning",
5209 summary: "Dismiss or reopen a secret scanning alert",
5210 scope: Some("security:write"),
5211 params: &[
5212 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5213 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5214 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5215 ],
5216 body: &[
5217 Field { name: "comment", kind: "string", required: false, values: &[] },
5218 Field { name: "reason", kind: "string", required: false, values: &["false_positive", "used_in_tests", "revoked", "wont_fix"] },
5219 Field { name: "state", kind: "string", required: true, values: &["open", "dismissed"] },
5220 ],
5221 },
5222 Operation {
5223 id: "delete_actions_secret",
5224 method: "DELETE",
5225 path: "/repos/{owner}/{name}/actions/secrets/{setting}",
5226 tag: "Secrets and variables",
5227 summary: "Delete a secret",
5228 scope: Some("secrets:admin"),
5229 params: &[
5230 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5231 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5232 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5233 ],
5234 body: &[
5235 Field { name: "id", kind: "string", required: false, values: &[] },
5236 Field { name: "workspace", kind: "string", required: false, values: &[] },
5237 ],
5238 },
5239 Operation {
5240 id: "delete_actions_secret_for_workspace",
5241 method: "DELETE",
5242 path: "/workspaces/{workspace}/actions/secrets/{setting}",
5243 tag: "Secrets and variables",
5244 summary: "Delete a secret for a workspace",
5245 scope: Some("secrets:admin"),
5246 params: &[
5247 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5248 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5249 ],
5250 body: &[
5251 Field { name: "id", kind: "string", required: false, values: &[] },
5252 ],
5253 },
5254 Operation {
5255 id: "delete_actions_variable",
5256 method: "DELETE",
5257 path: "/repos/{owner}/{name}/actions/variables/{setting}",
5258 tag: "Secrets and variables",
5259 summary: "Delete a variable",
5260 scope: Some("secrets:admin"),
5261 params: &[
5262 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5263 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5264 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5265 ],
5266 body: &[
5267 Field { name: "id", kind: "string", required: false, values: &[] },
5268 Field { name: "workspace", kind: "string", required: false, values: &[] },
5269 ],
5270 },
5271 Operation {
5272 id: "delete_actions_variable_for_workspace",
5273 method: "DELETE",
5274 path: "/workspaces/{workspace}/actions/variables/{setting}",
5275 tag: "Secrets and variables",
5276 summary: "Delete a variable for a workspace",
5277 scope: Some("secrets:admin"),
5278 params: &[
5279 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5280 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5281 ],
5282 body: &[
5283 Field { name: "id", kind: "string", required: false, values: &[] },
5284 ],
5285 },
5286 Operation {
5287 id: "list_actions_secrets",
5288 method: "GET",
5289 path: "/repos/{owner}/{name}/actions/secrets",
5290 tag: "Secrets and variables",
5291 summary: "List secrets",
5292 scope: Some("secrets:read"),
5293 params: &[
5294 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5295 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5296 ],
5297 body: &[],
5298 },
5299 Operation {
5300 id: "list_actions_secrets_for_workspace",
5301 method: "GET",
5302 path: "/workspaces/{workspace}/actions/secrets",
5303 tag: "Secrets and variables",
5304 summary: "List secrets for a workspace",
5305 scope: Some("secrets:read"),
5306 params: &[
5307 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5308 ],
5309 body: &[],
5310 },
5311 Operation {
5312 id: "list_actions_variables",
5313 method: "GET",
5314 path: "/repos/{owner}/{name}/actions/variables",
5315 tag: "Secrets and variables",
5316 summary: "List variables",
5317 scope: Some("secrets:read"),
5318 params: &[
5319 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5320 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5321 ],
5322 body: &[],
5323 },
5324 Operation {
5325 id: "list_actions_variables_for_workspace",
5326 method: "GET",
5327 path: "/workspaces/{workspace}/actions/variables",
5328 tag: "Secrets and variables",
5329 summary: "List variables for a workspace",
5330 scope: Some("secrets:read"),
5331 params: &[
5332 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5333 ],
5334 body: &[],
5335 },
5336 Operation {
5337 id: "set_actions_secret",
5338 method: "PUT",
5339 path: "/repos/{owner}/{name}/actions/secrets/{setting}",
5340 tag: "Secrets and variables",
5341 summary: "Set a secret",
5342 scope: Some("secrets:admin"),
5343 params: &[
5344 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5345 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5346 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5347 ],
5348 body: &[
5349 Field { name: "available_to", kind: "array", required: false, values: &[] },
5350 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5351 Field { name: "environments", kind: "array", required: false, values: &[] },
5352 Field { name: "id", kind: "string", required: false, values: &[] },
5353 Field { name: "note", kind: "string", required: false, values: &[] },
5354 Field { name: "projects", kind: "array", required: false, values: &[] },
5355 Field { name: "value", kind: "string", required: false, values: &[] },
5356 Field { name: "workspace", kind: "string", required: false, values: &[] },
5357 ],
5358 },
5359 Operation {
5360 id: "set_actions_secret_for_workspace",
5361 method: "PUT",
5362 path: "/workspaces/{workspace}/actions/secrets/{setting}",
5363 tag: "Secrets and variables",
5364 summary: "Set a secret for a workspace",
5365 scope: Some("secrets:admin"),
5366 params: &[
5367 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5368 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5369 ],
5370 body: &[
5371 Field { name: "available_to", kind: "array", required: false, values: &[] },
5372 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5373 Field { name: "environments", kind: "array", required: false, values: &[] },
5374 Field { name: "id", kind: "string", required: false, values: &[] },
5375 Field { name: "note", kind: "string", required: false, values: &[] },
5376 Field { name: "projects", kind: "array", required: false, values: &[] },
5377 Field { name: "value", kind: "string", required: false, values: &[] },
5378 ],
5379 },
5380 Operation {
5381 id: "set_actions_variable",
5382 method: "POST",
5383 path: "/repos/{owner}/{name}/actions/variables",
5384 tag: "Secrets and variables",
5385 summary: "Set a variable",
5386 scope: Some("secrets:admin"),
5387 params: &[
5388 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5389 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5390 ],
5391 body: &[
5392 Field { name: "available_to", kind: "array", required: false, values: &[] },
5393 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5394 Field { name: "environments", kind: "array", required: false, values: &[] },
5395 Field { name: "id", kind: "string", required: false, values: &[] },
5396 Field { name: "note", kind: "string", required: false, values: &[] },
5397 Field { name: "projects", kind: "array", required: false, values: &[] },
5398 Field { name: "setting", kind: "string", required: true, values: &[] },
5399 Field { name: "value", kind: "string", required: false, values: &[] },
5400 Field { name: "workspace", kind: "string", required: false, values: &[] },
5401 ],
5402 },
5403 Operation {
5404 id: "set_actions_variable_for_workspace",
5405 method: "POST",
5406 path: "/workspaces/{workspace}/actions/variables",
5407 tag: "Secrets and variables",
5408 summary: "Set a variable for a workspace",
5409 scope: Some("secrets:admin"),
5410 params: &[
5411 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5412 ],
5413 body: &[
5414 Field { name: "available_to", kind: "array", required: false, values: &[] },
5415 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5416 Field { name: "environments", kind: "array", required: false, values: &[] },
5417 Field { name: "id", kind: "string", required: false, values: &[] },
5418 Field { name: "note", kind: "string", required: false, values: &[] },
5419 Field { name: "projects", kind: "array", required: false, values: &[] },
5420 Field { name: "setting", kind: "string", required: true, values: &[] },
5421 Field { name: "value", kind: "string", required: false, values: &[] },
5422 ],
5423 },
5424 Operation {
5425 id: "update_actions_variable",
5426 method: "PATCH",
5427 path: "/repos/{owner}/{name}/actions/variables/{setting}",
5428 tag: "Secrets and variables",
5429 summary: "Update a variable",
5430 scope: Some("secrets:admin"),
5431 params: &[
5432 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5433 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5434 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5435 ],
5436 body: &[
5437 Field { name: "available_to", kind: "array", required: false, values: &[] },
5438 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5439 Field { name: "environments", kind: "array", required: false, values: &[] },
5440 Field { name: "id", kind: "string", required: false, values: &[] },
5441 Field { name: "note", kind: "string", required: false, values: &[] },
5442 Field { name: "projects", kind: "array", required: false, values: &[] },
5443 Field { name: "value", kind: "string", required: false, values: &[] },
5444 Field { name: "workspace", kind: "string", required: false, values: &[] },
5445 ],
5446 },
5447 Operation {
5448 id: "update_actions_variable_for_workspace",
5449 method: "PATCH",
5450 path: "/workspaces/{workspace}/actions/variables/{setting}",
5451 tag: "Secrets and variables",
5452 summary: "Update a variable for a workspace",
5453 scope: Some("secrets:admin"),
5454 params: &[
5455 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5456 Param { name: "setting", location: In::Path, kind: "string", required: true, values: &[] },
5457 ],
5458 body: &[
5459 Field { name: "available_to", kind: "array", required: false, values: &[] },
5460 Field { name: "brokered_hosts", kind: "array", required: false, values: &[] },
5461 Field { name: "environments", kind: "array", required: false, values: &[] },
5462 Field { name: "id", kind: "string", required: false, values: &[] },
5463 Field { name: "note", kind: "string", required: false, values: &[] },
5464 Field { name: "projects", kind: "array", required: false, values: &[] },
5465 Field { name: "value", kind: "string", required: false, values: &[] },
5466 ],
5467 },
5468 Operation {
5469 id: "dismiss_security_alert",
5470 method: "POST",
5471 path: "/repos/{owner}/{name}/security/alerts/{id}/dismiss",
5472 tag: "Security",
5473 summary: "Dismiss a security alert",
5474 scope: Some("repo:admin"),
5475 params: &[
5476 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5477 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5478 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5479 ],
5480 body: &[
5481 Field { name: "comment", kind: "string", required: false, values: &[] },
5482 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"] },
5483 ],
5484 },
5485 Operation {
5486 id: "list_security_alerts",
5487 method: "GET",
5488 path: "/repos/{owner}/{name}/security/alerts",
5489 tag: "Security",
5490 summary: "List security alerts",
5491 scope: Some("repo:read"),
5492 params: &[
5493 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5494 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5495 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
5496 Param { name: "kind", location: In::Query, kind: "string", required: false, values: &["secret", "dependency"] },
5497 ],
5498 body: &[],
5499 },
5500 Operation {
5501 id: "reopen_security_alert",
5502 method: "POST",
5503 path: "/repos/{owner}/{name}/security/alerts/{id}/reopen",
5504 tag: "Security",
5505 summary: "Reopen a security alert",
5506 scope: Some("repo:admin"),
5507 params: &[
5508 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5509 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5510 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5511 ],
5512 body: &[],
5513 },
5514 Operation {
5515 id: "create_security_advisory",
5516 method: "POST",
5517 path: "/repos/{owner}/{name}/security/advisories",
5518 tag: "Security advisories",
5519 summary: "Create a security advisory",
5520 scope: Some("security:write"),
5521 params: &[
5522 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5523 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5524 ],
5525 body: &[
5526 Field { name: "affected_versions", kind: "string", required: false, values: &[] },
5527 Field { name: "credits", kind: "array", required: false, values: &[] },
5528 Field { name: "cve_id", kind: "string", required: false, values: &[] },
5529 Field { name: "cvss_score", kind: "number", required: false, values: &[] },
5530 Field { name: "cvss_vector", kind: "string", required: false, values: &[] },
5531 Field { name: "description", kind: "string", required: false, values: &[] },
5532 Field { name: "ecosystem", kind: "string", required: false, values: &[] },
5533 Field { name: "package", kind: "string", required: false, values: &[] },
5534 Field { name: "patched_versions", kind: "string", required: false, values: &[] },
5535 Field { name: "severity", kind: "string", required: true, values: &["critical", "high", "medium", "low"] },
5536 Field { name: "title", kind: "string", required: true, values: &[] },
5537 ],
5538 },
5539 Operation {
5540 id: "get_security_advisory",
5541 method: "GET",
5542 path: "/repos/{owner}/{name}/security/advisories/{id}",
5543 tag: "Security advisories",
5544 summary: "Get a security advisory",
5545 scope: Some("security:read"),
5546 params: &[
5547 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5548 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5549 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5550 ],
5551 body: &[],
5552 },
5553 Operation {
5554 id: "list_security_advisories",
5555 method: "GET",
5556 path: "/repos/{owner}/{name}/security/advisories",
5557 tag: "Security advisories",
5558 summary: "List security advisories",
5559 scope: Some("security:read"),
5560 params: &[
5561 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5562 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5563 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["draft", "published", "withdrawn"] },
5564 ],
5565 body: &[],
5566 },
5567 Operation {
5568 id: "list_vulnerability_reports",
5569 method: "GET",
5570 path: "/repos/{owner}/{name}/security/reports",
5571 tag: "Security advisories",
5572 summary: "List vulnerability reports",
5573 scope: Some("security:read"),
5574 params: &[
5575 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5576 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5577 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["new", "accepted", "declined"] },
5578 ],
5579 body: &[],
5580 },
5581 Operation {
5582 id: "report_vulnerability",
5583 method: "POST",
5584 path: "/repos/{owner}/{name}/security/reports",
5585 tag: "Security advisories",
5586 summary: "Report a vulnerability privately",
5587 scope: Some("security:write"),
5588 params: &[
5589 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5590 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5591 ],
5592 body: &[
5593 Field { name: "description", kind: "string", required: true, values: &[] },
5594 Field { name: "email", kind: "string", required: false, values: &[] },
5595 Field { name: "severity", kind: "string", required: false, values: &["critical", "high", "medium", "low"] },
5596 Field { name: "title", kind: "string", required: true, values: &[] },
5597 ],
5598 },
5599 Operation {
5600 id: "review_vulnerability_report",
5601 method: "PATCH",
5602 path: "/repos/{owner}/{name}/security/reports/{id}",
5603 tag: "Security advisories",
5604 summary: "Accept or decline a vulnerability report",
5605 scope: Some("security:write"),
5606 params: &[
5607 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5608 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5609 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5610 ],
5611 body: &[
5612 Field { name: "decision", kind: "string", required: true, values: &["accept", "decline"] },
5613 Field { name: "note", kind: "string", required: false, values: &[] },
5614 ],
5615 },
5616 Operation {
5617 id: "set_security_advisory_state",
5618 method: "POST",
5619 path: "/repos/{owner}/{name}/security/advisories/{id}/state",
5620 tag: "Security advisories",
5621 summary: "Publish or withdraw a security advisory",
5622 scope: Some("security:write"),
5623 params: &[
5624 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5625 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5626 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5627 ],
5628 body: &[
5629 Field { name: "state", kind: "string", required: true, values: &["published", "withdrawn"] },
5630 ],
5631 },
5632 Operation {
5633 id: "update_security_advisory",
5634 method: "PATCH",
5635 path: "/repos/{owner}/{name}/security/advisories/{id}",
5636 tag: "Security advisories",
5637 summary: "Update a security advisory",
5638 scope: Some("security:write"),
5639 params: &[
5640 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5641 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5642 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5643 ],
5644 body: &[
5645 Field { name: "affected_versions", kind: "string", required: false, values: &[] },
5646 Field { name: "credits", kind: "array", required: false, values: &[] },
5647 Field { name: "cve_id", kind: "string", required: false, values: &[] },
5648 Field { name: "cvss_score", kind: "number", required: false, values: &[] },
5649 Field { name: "cvss_vector", kind: "string", required: false, values: &[] },
5650 Field { name: "description", kind: "string", required: false, values: &[] },
5651 Field { name: "ecosystem", kind: "string", required: false, values: &[] },
5652 Field { name: "package", kind: "string", required: false, values: &[] },
5653 Field { name: "patched_versions", kind: "string", required: false, values: &[] },
5654 Field { name: "severity", kind: "string", required: false, values: &["critical", "high", "medium", "low"] },
5655 Field { name: "title", kind: "string", required: false, values: &[] },
5656 ],
5657 },
5658 Operation {
5659 id: "get_security_overview",
5660 method: "GET",
5661 path: "/workspaces/{workspace}/security/overview",
5662 tag: "Security settings",
5663 summary: "Get the security overview",
5664 scope: Some("security:read"),
5665 params: &[
5666 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5667 Param { name: "days", location: In::Query, kind: "integer", required: false, values: &[] },
5668 ],
5669 body: &[],
5670 },
5671 Operation {
5672 id: "get_security_settings",
5673 method: "GET",
5674 path: "/repos/{owner}/{name}/security/settings",
5675 tag: "Security settings",
5676 summary: "Get a repository's security settings",
5677 scope: Some("security:read"),
5678 params: &[
5679 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5680 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5681 ],
5682 body: &[],
5683 },
5684 Operation {
5685 id: "get_workspace_security_settings",
5686 method: "GET",
5687 path: "/workspaces/{workspace}/security/settings",
5688 tag: "Security settings",
5689 summary: "Get a workspace's security settings",
5690 scope: Some("security:read"),
5691 params: &[
5692 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5693 ],
5694 body: &[],
5695 },
5696 Operation {
5697 id: "update_security_settings",
5698 method: "PATCH",
5699 path: "/repos/{owner}/{name}/security/settings",
5700 tag: "Security settings",
5701 summary: "Update a repository's security settings",
5702 scope: Some("security:write"),
5703 params: &[
5704 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5705 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5706 ],
5707 body: &[
5708 Field { name: "code_scanning_gate", kind: "string", required: false, values: &["none", "errors", "critical", "high", "medium", "any"] },
5709 Field { name: "dependency_review", kind: "boolean", required: false, values: &[] },
5710 Field { name: "history_alerts", kind: "boolean", required: false, values: &[] },
5711 Field { name: "private_vulnerability_reporting", kind: "boolean", required: false, values: &[] },
5712 Field { name: "review_comment", kind: "boolean", required: false, values: &[] },
5713 Field { name: "review_deny_licenses", kind: "array", required: false, values: &[] },
5714 Field { name: "review_fail_on", kind: "string", required: false, values: &["critical", "high", "medium", "low", "none"] },
5715 ],
5716 },
5717 Operation {
5718 id: "update_workspace_security_settings",
5719 method: "PATCH",
5720 path: "/workspaces/{workspace}/security/settings",
5721 tag: "Security settings",
5722 summary: "Update a workspace's security settings",
5723 scope: Some("security:write"),
5724 params: &[
5725 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
5726 ],
5727 body: &[
5728 Field { name: "delegated_bypass", kind: "boolean", required: false, values: &[] },
5729 Field { name: "validity_checks", kind: "boolean", required: false, values: &[] },
5730 ],
5731 },
5732 Operation {
5733 id: "end_session",
5734 method: "POST",
5735 path: "/repos/{owner}/{name}/sessions/{id}/end",
5736 tag: "Sessions",
5737 summary: "End a session",
5738 scope: Some("pull_requests:write"),
5739 params: &[
5740 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5741 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5742 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5743 ],
5744 body: &[
5745 Field { name: "reason", kind: "string", required: false, values: &[] },
5746 Field { name: "result", kind: "string", required: false, values: &[] },
5747 ],
5748 },
5749 Operation {
5750 id: "get_session",
5751 method: "GET",
5752 path: "/repos/{owner}/{name}/sessions/{id}",
5753 tag: "Sessions",
5754 summary: "Get a session",
5755 scope: Some("pull_requests:read"),
5756 params: &[
5757 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5758 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5759 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5760 Param { name: "after", location: In::Query, kind: "integer", required: false, values: &[] },
5761 ],
5762 body: &[],
5763 },
5764 Operation {
5765 id: "list_sessions",
5766 method: "GET",
5767 path: "/repos/{owner}/{name}/sessions",
5768 tag: "Sessions",
5769 summary: "List sessions",
5770 scope: Some("pull_requests:read"),
5771 params: &[
5772 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5773 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5774 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["active", "idle", "ended"] },
5775 Param { name: "issue", location: In::Query, kind: "integer", required: false, values: &[] },
5776 Param { name: "pull", location: In::Query, kind: "integer", required: false, values: &[] },
5777 Param { name: "path", location: In::Query, kind: "string", required: false, values: &[] },
5778 Param { name: "subagents", location: In::Query, kind: "boolean", required: false, values: &[] },
5779 ],
5780 body: &[],
5781 },
5782 Operation {
5783 id: "read_session",
5784 method: "GET",
5785 path: "/repos/{owner}/{name}/pulls/{number}/session",
5786 tag: "Sessions",
5787 summary: "Read a session",
5788 scope: Some("pull_requests:read"),
5789 params: &[
5790 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5791 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5792 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
5793 Param { name: "after", location: In::Query, kind: "integer", required: false, values: &[] },
5794 ],
5795 body: &[],
5796 },
5797 Operation {
5798 id: "record_session",
5799 method: "POST",
5800 path: "/repos/{owner}/{name}/pulls/{number}/session",
5801 tag: "Sessions",
5802 summary: "Record session entries",
5803 scope: Some("pull_requests:write"),
5804 params: &[
5805 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5806 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5807 Param { name: "number", location: In::Path, kind: "integer", required: true, values: &[] },
5808 ],
5809 body: &[
5810 Field { name: "entries", kind: "array", required: true, values: &[] },
5811 ],
5812 },
5813 Operation {
5814 id: "record_session_entries",
5815 method: "POST",
5816 path: "/repos/{owner}/{name}/sessions/{id}/entries",
5817 tag: "Sessions",
5818 summary: "Record entries in a session",
5819 scope: Some("pull_requests:write"),
5820 params: &[
5821 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5822 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5823 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
5824 ],
5825 body: &[
5826 Field { name: "entries", kind: "array", required: false, values: &[] },
5827 Field { name: "touched", kind: "array", required: false, values: &[] },
5828 ],
5829 },
5830 Operation {
5831 id: "start_agent_session",
5832 method: "POST",
5833 path: "/repos/{owner}/{name}/agent-sessions",
5834 tag: "Sessions",
5835 summary: "Start an agent session on an issue",
5836 scope: Some("pull_requests:write"),
5837 params: &[
5838 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5839 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5840 ],
5841 body: &[
5842 Field { name: "body", kind: "string", required: false, values: &[] },
5843 Field { name: "handoff", kind: "boolean", required: false, values: &[] },
5844 Field { name: "instruction", kind: "string", required: false, values: &[] },
5845 Field { name: "issue", kind: "integer", required: false, values: &[] },
5846 Field { name: "mode", kind: "string", required: false, values: &["plan", "implement", "review"] },
5847 Field { name: "title", kind: "string", required: false, values: &[] },
5848 ],
5849 },
5850 Operation {
5851 id: "start_session",
5852 method: "POST",
5853 path: "/repos/{owner}/{name}/sessions",
5854 tag: "Sessions",
5855 summary: "Start a session",
5856 scope: Some("pull_requests:write"),
5857 params: &[
5858 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5859 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5860 ],
5861 body: &[
5862 Field { name: "agent_type", kind: "string", required: false, values: &[] },
5863 Field { name: "branch", kind: "string", required: false, values: &[] },
5864 Field { name: "harness", kind: "string", required: true, values: &["claude_code", "claude_managed_agents", "codex", "cursor", "copilot", "other"] },
5865 Field { name: "harness_session_id", kind: "string", required: false, values: &[] },
5866 Field { name: "head_commit", kind: "string", required: false, values: &[] },
5867 Field { name: "issue", kind: "integer", required: false, values: &[] },
5868 Field { name: "model", kind: "string", required: false, values: &[] },
5869 Field { name: "parent_id", kind: "string", required: false, values: &[] },
5870 Field { name: "prompt", kind: "string", required: false, values: &[] },
5871 Field { name: "pull", kind: "integer", required: false, values: &[] },
5872 Field { name: "task", kind: "string", required: false, values: &[] },
5873 Field { name: "title", kind: "string", required: false, values: &[] },
5874 ],
5875 },
5876 Operation {
5877 id: "update_session",
5878 method: "PATCH",
5879 path: "/repos/{owner}/{name}/sessions/{id}",
5880 tag: "Sessions",
5881 summary: "Update a session",
5882 scope: Some("pull_requests:write"),
5883 params: &[
5884 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5885 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5886 Param { name: "id", 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: "head_commit", kind: "string", required: false, values: &[] },
5892 Field { name: "issue", kind: "integer", required: false, values: &[] },
5893 Field { name: "model", kind: "string", required: false, values: &[] },
5894 Field { name: "prompt", kind: "string", required: false, values: &[] },
5895 Field { name: "pull", kind: "integer", required: false, values: &[] },
5896 Field { name: "result", kind: "string", required: false, values: &[] },
5897 Field { name: "task", kind: "string", required: false, values: &[] },
5898 Field { name: "title", kind: "string", required: false, values: &[] },
5899 ],
5900 },
5901 Operation {
5902 id: "check_starred",
5903 method: "GET",
5904 path: "/user/starred/{owner}/{name}",
5905 tag: "Stars",
5906 summary: "Check whether you starred a repository",
5907 scope: Some("account:read"),
5908 params: &[
5909 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5910 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5911 ],
5912 body: &[],
5913 },
5914 Operation {
5915 id: "list_stargazers",
5916 method: "GET",
5917 path: "/repos/{owner}/{name}/stargazers",
5918 tag: "Stars",
5919 summary: "List who starred a repository",
5920 scope: Some("repo:read"),
5921 params: &[
5922 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5923 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5924 Param { name: "page", location: In::Query, kind: "integer", required: false, values: &[] },
5925 ],
5926 body: &[],
5927 },
5928 Operation {
5929 id: "list_starred",
5930 method: "GET",
5931 path: "/user/starred",
5932 tag: "Stars",
5933 summary: "List repositories you starred",
5934 scope: Some("account:read"),
5935 params: &[],
5936 body: &[],
5937 },
5938 Operation {
5939 id: "star_repo",
5940 method: "PUT",
5941 path: "/user/starred/{owner}/{name}",
5942 tag: "Stars",
5943 summary: "Star a repository",
5944 scope: Some("account:write"),
5945 params: &[
5946 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5947 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5948 ],
5949 body: &[],
5950 },
5951 Operation {
5952 id: "unstar_repo",
5953 method: "DELETE",
5954 path: "/user/starred/{owner}/{name}",
5955 tag: "Stars",
5956 summary: "Unstar a repository",
5957 scope: Some("account:write"),
5958 params: &[
5959 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5960 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5961 ],
5962 body: &[],
5963 },
5964 Operation {
5965 id: "compare_dependencies",
5966 method: "GET",
5967 path: "/repos/{owner}/{name}/dependency-graph/compare/{basehead}",
5968 tag: "Supply chain",
5969 summary: "Compare dependencies",
5970 scope: Some("security:read"),
5971 params: &[
5972 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
5973 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
5974 Param { name: "basehead", location: In::Path, kind: "string", required: true, values: &[] },
5975 ],
5976 body: &[],
5977 },
5978 Operation {
5979 id: "get_dependency_graph",
5980 method: "GET",
5981 path: "/repos/{owner}/{name}/dependency-graph",
5982 tag: "Supply chain",
5983 summary: "Get the dependency graph",
5984 scope: Some("security:read"),
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: "get_sbom",
5993 method: "GET",
5994 path: "/repos/{owner}/{name}/dependency-graph/sbom",
5995 tag: "Supply chain",
5996 summary: "Export an SBOM",
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 ],
6002 body: &[],
6003 },
6004 Operation {
6005 id: "get_vulnerability_alert",
6006 method: "GET",
6007 path: "/repos/{owner}/{name}/vulnerability-alerts/{id}",
6008 tag: "Supply chain",
6009 summary: "Get a vulnerability alert",
6010 scope: Some("security:read"),
6011 params: &[
6012 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6013 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6014 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6015 ],
6016 body: &[],
6017 },
6018 Operation {
6019 id: "list_vulnerability_alerts",
6020 method: "GET",
6021 path: "/repos/{owner}/{name}/vulnerability-alerts",
6022 tag: "Supply chain",
6023 summary: "List vulnerability alerts",
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 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
6029 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
6030 Param { name: "ecosystem", location: In::Query, kind: "string", required: false, values: &[] },
6031 Param { name: "package", location: In::Query, kind: "string", required: false, values: &[] },
6032 ],
6033 body: &[],
6034 },
6035 Operation {
6036 id: "list_vulnerability_alerts_for_workspace",
6037 method: "GET",
6038 path: "/workspaces/{workspace}/vulnerability-alerts",
6039 tag: "Supply chain",
6040 summary: "List vulnerability alerts for a workspace",
6041 scope: Some("security:read"),
6042 params: &[
6043 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6044 Param { name: "state", location: In::Query, kind: "string", required: false, values: &["open", "dismissed", "fixed"] },
6045 Param { name: "severity", location: In::Query, kind: "string", required: false, values: &["critical", "high", "medium", "low", "unknown"] },
6046 Param { name: "ecosystem", location: In::Query, kind: "string", required: false, values: &[] },
6047 Param { name: "package", location: In::Query, kind: "string", required: false, values: &[] },
6048 ],
6049 body: &[],
6050 },
6051 Operation {
6052 id: "update_vulnerability_alert",
6053 method: "PATCH",
6054 path: "/repos/{owner}/{name}/vulnerability-alerts/{id}",
6055 tag: "Supply chain",
6056 summary: "Dismiss or reopen a vulnerability alert",
6057 scope: Some("security:write"),
6058 params: &[
6059 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6060 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6061 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6062 ],
6063 body: &[
6064 Field { name: "comment", kind: "string", required: false, values: &[] },
6065 Field { name: "reason", kind: "string", required: false, values: &["fix_started", "no_bandwidth", "tolerable_risk", "inaccurate", "not_used"] },
6066 Field { name: "state", kind: "string", required: true, values: &["open", "dismissed"] },
6067 ],
6068 },
6069 Operation {
6070 id: "create_team",
6071 method: "POST",
6072 path: "/workspaces/{workspace}/teams",
6073 tag: "Teams",
6074 summary: "Create a team",
6075 scope: Some("workspace:admin"),
6076 params: &[
6077 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6078 ],
6079 body: &[
6080 Field { name: "description", kind: "string", required: false, values: &[] },
6081 Field { name: "members", kind: "array", required: false, values: &[] },
6082 Field { name: "name", kind: "string", required: true, values: &[] },
6083 Field { name: "notify", kind: "boolean", required: false, values: &[] },
6084 Field { name: "parent", kind: "string", required: false, values: &[] },
6085 Field { name: "slug", kind: "string", required: false, values: &[] },
6086 Field { name: "visibility", kind: "string", required: false, values: &["visible", "secret"] },
6087 ],
6088 },
6089 Operation {
6090 id: "delete_team",
6091 method: "DELETE",
6092 path: "/workspaces/{workspace}/teams/{team}",
6093 tag: "Teams",
6094 summary: "Delete a team",
6095 scope: Some("workspace:admin"),
6096 params: &[
6097 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6098 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6099 ],
6100 body: &[],
6101 },
6102 Operation {
6103 id: "get_team",
6104 method: "GET",
6105 path: "/workspaces/{workspace}/teams/{team}",
6106 tag: "Teams",
6107 summary: "Get a team",
6108 scope: Some("workspace:read"),
6109 params: &[
6110 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6111 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6112 ],
6113 body: &[],
6114 },
6115 Operation {
6116 id: "list_child_teams",
6117 method: "GET",
6118 path: "/workspaces/{workspace}/teams/{team}/teams",
6119 tag: "Teams",
6120 summary: "List child teams",
6121 scope: Some("workspace:read"),
6122 params: &[
6123 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6124 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6125 ],
6126 body: &[],
6127 },
6128 Operation {
6129 id: "list_team_members",
6130 method: "GET",
6131 path: "/workspaces/{workspace}/teams/{team}/members",
6132 tag: "Teams",
6133 summary: "List a team's members",
6134 scope: Some("workspace:read"),
6135 params: &[
6136 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6137 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6138 Param { name: "include_child_teams", location: In::Query, kind: "boolean", required: false, values: &[] },
6139 ],
6140 body: &[],
6141 },
6142 Operation {
6143 id: "list_team_repos",
6144 method: "GET",
6145 path: "/workspaces/{workspace}/teams/{team}/repos",
6146 tag: "Teams",
6147 summary: "List a team's repositories",
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_teams",
6157 method: "GET",
6158 path: "/workspaces/{workspace}/teams",
6159 tag: "Teams",
6160 summary: "List teams",
6161 scope: Some("workspace:read"),
6162 params: &[
6163 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6164 Param { name: "q", location: In::Query, kind: "string", required: false, values: &[] },
6165 ],
6166 body: &[],
6167 },
6168 Operation {
6169 id: "list_user_teams",
6170 method: "GET",
6171 path: "/workspaces/{workspace}/members/{username}/teams",
6172 tag: "Teams",
6173 summary: "List someone's teams",
6174 scope: Some("workspace:read"),
6175 params: &[
6176 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6177 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6178 ],
6179 body: &[],
6180 },
6181 Operation {
6182 id: "remove_team_member",
6183 method: "DELETE",
6184 path: "/workspaces/{workspace}/teams/{team}/members/{username}",
6185 tag: "Teams",
6186 summary: "Remove a team member",
6187 scope: Some("workspace:admin"),
6188 params: &[
6189 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6190 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6191 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6192 ],
6193 body: &[],
6194 },
6195 Operation {
6196 id: "remove_team_repo",
6197 method: "DELETE",
6198 path: "/workspaces/{workspace}/teams/{team}/repos/{repo}",
6199 tag: "Teams",
6200 summary: "Remove a team from a repository",
6201 scope: Some("access:admin"),
6202 params: &[
6203 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6204 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6205 Param { name: "repo", location: In::Path, kind: "string", required: true, values: &[] },
6206 ],
6207 body: &[],
6208 },
6209 Operation {
6210 id: "set_team_member",
6211 method: "PUT",
6212 path: "/workspaces/{workspace}/teams/{team}/members/{username}",
6213 tag: "Teams",
6214 summary: "Add or change a team member",
6215 scope: Some("workspace:admin"),
6216 params: &[
6217 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6218 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6219 Param { name: "username", location: In::Path, kind: "string", required: true, values: &[] },
6220 ],
6221 body: &[
6222 Field { name: "role", kind: "string", required: false, values: &["member", "maintainer"] },
6223 ],
6224 },
6225 Operation {
6226 id: "set_team_repo",
6227 method: "PUT",
6228 path: "/workspaces/{workspace}/teams/{team}/repos/{repo}",
6229 tag: "Teams",
6230 summary: "Give a team a role on a repository",
6231 scope: Some("access:admin"),
6232 params: &[
6233 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6234 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6235 Param { name: "repo", location: In::Path, kind: "string", required: true, values: &[] },
6236 ],
6237 body: &[
6238 Field { name: "role", kind: "string", required: true, values: &["read", "triage", "write", "maintain", "admin"] },
6239 ],
6240 },
6241 Operation {
6242 id: "set_team_review_assignment",
6243 method: "PUT",
6244 path: "/workspaces/{workspace}/teams/{team}/review_assignment",
6245 tag: "Teams",
6246 summary: "Set a team's review assignment",
6247 scope: Some("workspace:admin"),
6248 params: &[
6249 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6250 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6251 ],
6252 body: &[
6253 Field { name: "algorithm", kind: "string", required: false, values: &["round_robin", "load_balance"] },
6254 Field { name: "busy_at", kind: "integer", required: false, values: &[] },
6255 Field { name: "count", kind: "integer", required: false, values: &[] },
6256 Field { name: "enabled", kind: "boolean", required: false, values: &[] },
6257 Field { name: "excluded", kind: "array", required: false, values: &[] },
6258 Field { name: "include_child_teams", kind: "boolean", required: false, values: &[] },
6259 Field { name: "notify_team", kind: "boolean", required: false, values: &[] },
6260 Field { name: "skip_busy", kind: "boolean", required: false, values: &[] },
6261 ],
6262 },
6263 Operation {
6264 id: "update_team",
6265 method: "PATCH",
6266 path: "/workspaces/{workspace}/teams/{team}",
6267 tag: "Teams",
6268 summary: "Update a team",
6269 scope: Some("workspace:admin"),
6270 params: &[
6271 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6272 Param { name: "team", location: In::Path, kind: "string", required: true, values: &[] },
6273 ],
6274 body: &[
6275 Field { name: "description", kind: "string", required: false, values: &[] },
6276 Field { name: "name", kind: "string", required: false, values: &[] },
6277 Field { name: "notify", kind: "boolean", required: false, values: &[] },
6278 Field { name: "parent", kind: "string", required: false, values: &[] },
6279 Field { name: "review_assignment", kind: "object", required: false, values: &[] },
6280 Field { name: "slug", kind: "string", required: false, values: &[] },
6281 Field { name: "visibility", kind: "string", required: false, values: &["visible", "secret"] },
6282 ],
6283 },
6284 Operation {
6285 id: "create_webhook",
6286 method: "POST",
6287 path: "/repos/{owner}/{name}/hooks",
6288 tag: "Webhooks",
6289 summary: "Create a webhook",
6290 scope: Some("webhooks:admin"),
6291 params: &[
6292 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6293 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6294 ],
6295 body: &[
6296 Field { name: "events", kind: "array", required: false, values: &[] },
6297 Field { name: "secret", kind: "string", required: false, values: &[] },
6298 Field { name: "url", kind: "string", required: true, values: &[] },
6299 Field { name: "workspace", kind: "string", required: false, values: &[] },
6300 ],
6301 },
6302 Operation {
6303 id: "create_webhook_for_workspace",
6304 method: "POST",
6305 path: "/workspaces/{workspace}/hooks",
6306 tag: "Webhooks",
6307 summary: "Create a webhook for a workspace",
6308 scope: Some("webhooks:admin"),
6309 params: &[
6310 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6311 ],
6312 body: &[
6313 Field { name: "events", kind: "array", required: false, values: &[] },
6314 Field { name: "secret", kind: "string", required: false, values: &[] },
6315 Field { name: "url", kind: "string", required: true, values: &[] },
6316 ],
6317 },
6318 Operation {
6319 id: "delete_webhook",
6320 method: "DELETE",
6321 path: "/repos/{owner}/{name}/hooks/{id}",
6322 tag: "Webhooks",
6323 summary: "Delete a webhook",
6324 scope: Some("webhooks:admin"),
6325 params: &[
6326 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6327 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6328 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6329 ],
6330 body: &[
6331 Field { name: "workspace", kind: "string", required: false, values: &[] },
6332 ],
6333 },
6334 Operation {
6335 id: "delete_webhook_for_workspace",
6336 method: "DELETE",
6337 path: "/workspaces/{workspace}/hooks/{id}",
6338 tag: "Webhooks",
6339 summary: "Delete a webhook for a workspace",
6340 scope: Some("webhooks:admin"),
6341 params: &[
6342 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6343 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6344 ],
6345 body: &[],
6346 },
6347 Operation {
6348 id: "list_webhook_deliveries",
6349 method: "GET",
6350 path: "/repos/{owner}/{name}/hooks/{id}/deliveries",
6351 tag: "Webhooks",
6352 summary: "List webhook deliveries",
6353 scope: Some("webhooks:read"),
6354 params: &[
6355 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6356 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6357 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6358 ],
6359 body: &[],
6360 },
6361 Operation {
6362 id: "list_webhook_deliveries_for_workspace",
6363 method: "GET",
6364 path: "/workspaces/{workspace}/hooks/{id}/deliveries",
6365 tag: "Webhooks",
6366 summary: "List webhook deliveries for a workspace",
6367 scope: Some("webhooks:read"),
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_webhooks",
6376 method: "GET",
6377 path: "/repos/{owner}/{name}/hooks",
6378 tag: "Webhooks",
6379 summary: "List webhooks",
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 ],
6385 body: &[],
6386 },
6387 Operation {
6388 id: "list_webhooks_for_workspace",
6389 method: "GET",
6390 path: "/workspaces/{workspace}/hooks",
6391 tag: "Webhooks",
6392 summary: "List webhooks for a workspace",
6393 scope: Some("webhooks:read"),
6394 params: &[
6395 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6396 ],
6397 body: &[],
6398 },
6399 Operation {
6400 id: "ping_webhook",
6401 method: "POST",
6402 path: "/repos/{owner}/{name}/hooks/{id}/pings",
6403 tag: "Webhooks",
6404 summary: "Ping a webhook",
6405 scope: Some("webhooks:admin"),
6406 params: &[
6407 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6408 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6409 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6410 ],
6411 body: &[
6412 Field { name: "workspace", kind: "string", required: false, values: &[] },
6413 ],
6414 },
6415 Operation {
6416 id: "ping_webhook_for_workspace",
6417 method: "POST",
6418 path: "/workspaces/{workspace}/hooks/{id}/pings",
6419 tag: "Webhooks",
6420 summary: "Ping a webhook for a workspace",
6421 scope: Some("webhooks:admin"),
6422 params: &[
6423 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6424 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6425 ],
6426 body: &[],
6427 },
6428 Operation {
6429 id: "redeliver_webhook",
6430 method: "POST",
6431 path: "/repos/{owner}/{name}/hooks/{id}/deliveries/{delivery}/redeliver",
6432 tag: "Webhooks",
6433 summary: "Redeliver a webhook delivery",
6434 scope: Some("webhooks:admin"),
6435 params: &[
6436 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6437 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6438 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6439 Param { name: "delivery", location: In::Path, kind: "string", required: true, values: &[] },
6440 ],
6441 body: &[
6442 Field { name: "workspace", kind: "string", required: false, values: &[] },
6443 ],
6444 },
6445 Operation {
6446 id: "redeliver_webhook_for_workspace",
6447 method: "POST",
6448 path: "/workspaces/{workspace}/hooks/{id}/deliveries/{delivery}/redeliver",
6449 tag: "Webhooks",
6450 summary: "Redeliver a webhook delivery for a workspace",
6451 scope: Some("webhooks:admin"),
6452 params: &[
6453 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6454 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6455 Param { name: "delivery", location: In::Path, kind: "string", required: true, values: &[] },
6456 ],
6457 body: &[],
6458 },
6459 Operation {
6460 id: "update_webhook",
6461 method: "PATCH",
6462 path: "/repos/{owner}/{name}/hooks/{id}",
6463 tag: "Webhooks",
6464 summary: "Update a webhook",
6465 scope: Some("webhooks:admin"),
6466 params: &[
6467 Param { name: "owner", location: In::Path, kind: "string", required: true, values: &[] },
6468 Param { name: "name", location: In::Path, kind: "string", required: true, values: &[] },
6469 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6470 ],
6471 body: &[
6472 Field { name: "active", kind: "boolean", required: false, values: &[] },
6473 Field { name: "events", kind: "array", required: false, values: &[] },
6474 Field { name: "url", kind: "string", required: false, values: &[] },
6475 Field { name: "workspace", kind: "string", required: false, values: &[] },
6476 ],
6477 },
6478 Operation {
6479 id: "update_webhook_for_workspace",
6480 method: "PATCH",
6481 path: "/workspaces/{workspace}/hooks/{id}",
6482 tag: "Webhooks",
6483 summary: "Update a webhook for a workspace",
6484 scope: Some("webhooks:admin"),
6485 params: &[
6486 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6487 Param { name: "id", location: In::Path, kind: "string", required: true, values: &[] },
6488 ],
6489 body: &[
6490 Field { name: "active", kind: "boolean", required: false, values: &[] },
6491 Field { name: "events", kind: "array", required: false, values: &[] },
6492 Field { name: "url", kind: "string", required: false, values: &[] },
6493 ],
6494 },
6495 Operation {
6496 id: "create_workspace",
6497 method: "POST",
6498 path: "/workspaces",
6499 tag: "Workspaces",
6500 summary: "Create a workspace",
6501 scope: Some("workspace:admin"),
6502 params: &[],
6503 body: &[
6504 Field { name: "name", kind: "string", required: false, values: &[] },
6505 Field { name: "slug", kind: "string", required: true, values: &[] },
6506 ],
6507 },
6508 Operation {
6509 id: "delete_workspace",
6510 method: "DELETE",
6511 path: "/workspaces/{workspace}",
6512 tag: "Workspaces",
6513 summary: "Delete a workspace",
6514 scope: Some("workspace:admin"),
6515 params: &[
6516 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6517 ],
6518 body: &[
6519 Field { name: "confirm", kind: "string", required: true, values: &[] },
6520 ],
6521 },
6522 Operation {
6523 id: "get_workspace",
6524 method: "GET",
6525 path: "/workspaces/{workspace}",
6526 tag: "Workspaces",
6527 summary: "Get a workspace",
6528 scope: Some("workspace:read"),
6529 params: &[
6530 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6531 ],
6532 body: &[],
6533 },
6534 Operation {
6535 id: "get_workspace_activity",
6536 method: "GET",
6537 path: "/workspaces/{workspace}/activity",
6538 tag: "Workspaces",
6539 summary: "Get a workspace's activity",
6540 scope: Some("repo:read"),
6541 params: &[
6542 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6543 Param { name: "since", location: In::Query, kind: "string", required: false, values: &[] },
6544 Param { name: "until", location: In::Query, kind: "string", required: false, values: &[] },
6545 Param { name: "kinds", location: In::Query, kind: "array", required: false, values: &[] },
6546 Param { name: "limit", location: In::Query, kind: "integer", required: false, values: &[] },
6547 ],
6548 body: &[],
6549 },
6550 Operation {
6551 id: "update_workspace",
6552 method: "PATCH",
6553 path: "/workspaces/{workspace}",
6554 tag: "Workspaces",
6555 summary: "Update a workspace",
6556 scope: Some("workspace:admin"),
6557 params: &[
6558 Param { name: "workspace", location: In::Path, kind: "string", required: true, values: &[] },
6559 ],
6560 body: &[
6561 Field { name: "base_permission", kind: "string", required: false, values: &["none", "read", "write", "admin"] },
6562 Field { name: "description", kind: "string", required: false, values: &[] },
6563 Field { name: "members_can_change_repo_visibility", kind: "boolean", required: false, values: &[] },
6564 Field { name: "members_can_create_private_repositories", kind: "boolean", required: false, values: &[] },
6565 Field { name: "members_can_create_public_repositories", kind: "boolean", required: false, values: &[] },
6566 Field { name: "members_can_delete_repositories", kind: "boolean", required: false, values: &[] },
6567 Field { name: "members_can_invite_outside_collaborators", kind: "boolean", required: false, values: &[] },
6568 Field { name: "name", kind: "string", required: false, values: &[] },
6569 Field { name: "team_creation", kind: "string", required: false, values: &["members", "owners"] },
6570 Field { name: "two_factor_requirement_enabled", kind: "boolean", required: false, values: &[] },
6571 ],
6572 },
6573];