codecraftai-restclient-gitlab 1.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. ccai/gitlab/py.typed +0 -0
  2. ccai/gitlab/rest/aspectsrest.py +120 -0
  3. ccai/gitlab/rest/clients/__init__.py +0 -0
  4. ccai/gitlab/rest/clients/gitlabrestclient.py +118 -0
  5. ccai/gitlab/rest/clients/groups/__init__.py +0 -0
  6. ccai/gitlab/rest/clients/groups/accessrequests.py +230 -0
  7. ccai/gitlab/rest/clients/groups/admin.py +41 -0
  8. ccai/gitlab/rest/clients/groups/alertmanagement.py +149 -0
  9. ccai/gitlab/rest/clients/groups/application.py +68 -0
  10. ccai/gitlab/rest/clients/groups/applications.py +95 -0
  11. ccai/gitlab/rest/clients/groups/avatar.py +41 -0
  12. ccai/gitlab/rest/clients/groups/badges.py +338 -0
  13. ccai/gitlab/rest/clients/groups/batchedbackgroundmigrations.py +122 -0
  14. ccai/gitlab/rest/clients/groups/branches.py +230 -0
  15. ccai/gitlab/rest/clients/groups/broadcastmessages.py +149 -0
  16. ccai/gitlab/rest/clients/groups/bulkimports.py +176 -0
  17. ccai/gitlab/rest/clients/groups/clusters.py +149 -0
  18. ccai/gitlab/rest/clients/groups/jobs.py +95 -0
  19. ccai/gitlab/rest/clients/groups/metadata.py +68 -0
  20. ccai/gitlab/rest/clients/groups/migrations.py +41 -0
  21. ccai/gitlab/rest/clients/groups/pipelinecomposition.py +146 -0
  22. ccai/gitlab/rest/clients/groups/planlimits.py +68 -0
  23. ccai/gitlab/rest/clients/parameters/__init__.py +0 -0
  24. ccai/gitlab/rest/clients/parameters/accessrequests.py +222 -0
  25. ccai/gitlab/rest/clients/parameters/admin.py +31 -0
  26. ccai/gitlab/rest/clients/parameters/alertmanagement.py +147 -0
  27. ccai/gitlab/rest/clients/parameters/application.py +27 -0
  28. ccai/gitlab/rest/clients/parameters/applications.py +51 -0
  29. ccai/gitlab/rest/clients/parameters/avatar.py +31 -0
  30. ccai/gitlab/rest/clients/parameters/badges.py +344 -0
  31. ccai/gitlab/rest/clients/parameters/batchedbackgroundmigrations.py +105 -0
  32. ccai/gitlab/rest/clients/parameters/branches.py +236 -0
  33. ccai/gitlab/rest/clients/parameters/broadcastmessages.py +123 -0
  34. ccai/gitlab/rest/clients/parameters/bulkimports.py +173 -0
  35. ccai/gitlab/rest/clients/parameters/clusters.py +100 -0
  36. ccai/gitlab/rest/clients/parameters/jobs.py +88 -0
  37. ccai/gitlab/rest/clients/parameters/metadata.py +11 -0
  38. ccai/gitlab/rest/clients/parameters/migrations.py +29 -0
  39. ccai/gitlab/rest/clients/parameters/pipelinecomposition.py +123 -0
  40. ccai/gitlab/rest/clients/parameters/planlimits.py +47 -0
  41. ccai/gitlab/rest/clients/responses/__init__.py +0 -0
  42. ccai/gitlab/rest/clients/responses/accessrequests.py +157 -0
  43. ccai/gitlab/rest/clients/responses/admin.py +24 -0
  44. ccai/gitlab/rest/clients/responses/alertmanagement.py +100 -0
  45. ccai/gitlab/rest/clients/responses/application.py +43 -0
  46. ccai/gitlab/rest/clients/responses/applications.py +62 -0
  47. ccai/gitlab/rest/clients/responses/avatar.py +24 -0
  48. ccai/gitlab/rest/clients/responses/badges.py +233 -0
  49. ccai/gitlab/rest/clients/responses/batchedbackgroundmigrations.py +81 -0
  50. ccai/gitlab/rest/clients/responses/branches.py +157 -0
  51. ccai/gitlab/rest/clients/responses/broadcastmessages.py +100 -0
  52. ccai/gitlab/rest/clients/responses/bulkimports.py +119 -0
  53. ccai/gitlab/rest/clients/responses/clusters.py +100 -0
  54. ccai/gitlab/rest/clients/responses/jobs.py +62 -0
  55. ccai/gitlab/rest/clients/responses/metadata.py +43 -0
  56. ccai/gitlab/rest/clients/responses/migrations.py +24 -0
  57. ccai/gitlab/rest/clients/responses/pipelinecomposition.py +100 -0
  58. ccai/gitlab/rest/clients/responses/planlimits.py +43 -0
  59. ccai/gitlab/rest/descriptions/gitlab-openapi-hints.yaml +195 -0
  60. ccai/gitlab/rest/descriptions/gitlab-openapi-spec.yaml +3635 -0
  61. ccai/gitlab/rest/generation/__init__.py +0 -0
  62. ccai/gitlab/rest/generation/restclientgenerator.py +581 -0
  63. ccai/gitlab/rest/itemsresult.py +274 -0
  64. ccai/gitlab/rest/restapigroup.py +17 -0
  65. ccai/gitlab/rest/restclientbase.py +676 -0
  66. ccai/gitlab/rest/restclientutils.py +0 -0
  67. codecraftai_restclient_gitlab-1.2.0.dist-info/METADATA +90 -0
  68. codecraftai_restclient_gitlab-1.2.0.dist-info/RECORD +70 -0
  69. codecraftai_restclient_gitlab-1.2.0.dist-info/WHEEL +4 -0
  70. codecraftai_restclient_gitlab-1.2.0.dist-info/licenses/LICENSE.md +204 -0
@@ -0,0 +1,3635 @@
1
+ openapi: 3.0.1
2
+ info:
3
+ title: GitLab API
4
+ version: v4
5
+ description: |
6
+ An OpenAPI definition for the GitLab REST API.
7
+ Few API resources or endpoints are currently included.
8
+ The intent is to expand this to match the entire Markdown documentation of the API:
9
+ <https://docs.gitlab.com/ee/api/>. Contributions are welcome.
10
+
11
+ When viewing this on gitlab.com, you can test API calls directly from the browser
12
+ against the `gitlab.com` instance, if you are logged in.
13
+ The feature uses the current [GitLab session cookie](https://docs.gitlab.com/ee/api/#session-cookie),
14
+ so each request is made using your account.
15
+
16
+ Instructions for using this tool can be found in [Interactive API Documentation](https://docs.gitlab.com/ee/api/openapi/openapi_interactive.html)
17
+ termsOfService: 'https://about.gitlab.com/terms/'
18
+ license:
19
+ name: CC BY-SA 4.0
20
+ url: 'https://gitlab.com/gitlab-org/gitlab/-/blob/master/LICENSE'
21
+ servers:
22
+ - url: https://www.gitlab.com/api/v4
23
+ security:
24
+ - ApiKeyAuth: []
25
+ tags:
26
+ - name: badges
27
+ description: Operations about badges
28
+ - name: branches
29
+ description: Operations about branches
30
+ - name: alert_management
31
+ description: Operations about alert_managements
32
+ - name: batched_background_migrations
33
+ description: Operations about batched_background_migrations
34
+ - name: admin
35
+ description: Operations about admins
36
+ - name: migrations
37
+ description: Operations about migrations
38
+ - name: applications
39
+ description: Operations about applications
40
+ - name: avatar
41
+ description: Operations about avatars
42
+ - name: broadcast_messages
43
+ description: Operations about broadcast_messages
44
+ - name: bulk_imports
45
+ description: Operations about bulk_imports
46
+ - name: application
47
+ description: Operations about applications
48
+ - name: access_requests
49
+ description: Operations related to access requests
50
+ - name: ci_lint
51
+ description: Operations related to linting a CI config file
52
+ - name: ci_resource_groups
53
+ description: Operations to manage job concurrency with resource groups
54
+ - name: ci_variables
55
+ description: Operations related to CI/CD variables
56
+ - name: cluster_agents
57
+ description: Operations related to the GitLab agent for Kubernetes
58
+ - name: clusters
59
+ description: Operations related to clusters
60
+ - name: composer_packages
61
+ description: Operations related to Composer packages
62
+ - name: conan_packages
63
+ description: Operations related to Conan packages
64
+ - name: container_registry
65
+ description: Operations related to container registry
66
+ - name: container_registry_event
67
+ description: Operations related to container registry events
68
+ - name: debian_distribution
69
+ description: Operations related to Debian Linux distributions
70
+ - name: debian_packages
71
+ description: Operations related to Debian Linux packages
72
+ - name: dependency_proxy
73
+ description: Operations to manage dependency proxy for a groups
74
+ - name: deploy_keys
75
+ description: Operations related to deploy keys
76
+ - name: deploy_tokens
77
+ description: Operations related to deploy tokens
78
+ - name: deployments
79
+ description: Operations related to deployments
80
+ - name: dora_metrics
81
+ description: Operations related to DevOps Research and Assessment (DORA) key metrics
82
+ - name: environments
83
+ description: Operations related to environments
84
+ - name: error_tracking_client_keys
85
+ description: Operations related to error tracking client keys
86
+ - name: error_tracking_project_settings
87
+ description: Operations related to error tracking project settings
88
+ - name: feature_flags_user_lists
89
+ description: Operations related to accessing GitLab feature flag user lists
90
+ - name: feature_flags
91
+ description: Operations related to feature flags
92
+ - name: features
93
+ description: Operations related to managing Flipper-based feature flags
94
+ - name: freeze_periods
95
+ description: Operations related to deploy freeze periods
96
+ - name: generic_packages
97
+ description: Operations related to Generic packages
98
+ - name: geo
99
+ description: Operations related to Geo
100
+ - name: geo_nodes
101
+ description: Operations related Geo Nodes
102
+ - name: go_proxy
103
+ description: Operations related to Go Proxy
104
+ - name: group_export
105
+ description: Operations related to exporting groups
106
+ - name: group_import
107
+ description: Operations related to importing groups
108
+ - name: group_packages
109
+ description: Operations related to group packages
110
+ - name: helm_packages
111
+ description: Operations related to Helm packages
112
+ - name: integrations
113
+ description: Operations related to integrations
114
+ - name: issue_links
115
+ description: Operations related to issue links
116
+ - name: jira_connect_subscriptions
117
+ description: Operations related to JiraConnect subscriptions
118
+ - name: jobs
119
+ description: Operations related to CI Jobs
120
+ - name: maven_packages
121
+ description: Operations related to Maven packages
122
+ - name: merge_requests
123
+ description: Operations related to merge requests
124
+ - name: metadata
125
+ description: Operations related to metadata of the GitLab instance
126
+ - name: ml_model_registry
127
+ description: Operations related to Model registry
128
+ - name: npm_packages
129
+ description: Operations related to NPM packages
130
+ - name: nuget_packages
131
+ description: Operations related to Nuget packages
132
+ - name: package_files
133
+ description: Operations about package files
134
+ - name: plan_limits
135
+ description: Operations related to plan limits
136
+ - name: project_export
137
+ description: Operations related to exporting projects
138
+ - name: project_hooks
139
+ description: Operations related to project hooks
140
+ - name: project_import
141
+ description: Operations related to importing projects
142
+ - name: project_import_bitbucket
143
+ description: Operations related to importing BitBucket projects
144
+ - name: project_import_github
145
+ description: Operations related to importing GitHub projects
146
+ - name: project_packages
147
+ description: Operations related to project packages
148
+ - name: projects
149
+ description: Operations related to projects
150
+ - name: protected environments
151
+ description: Operations related to protected environments
152
+ - name: pypi_packages
153
+ description: Operations related to PyPI packages
154
+ - name: release_links
155
+ description: Operations related to release assets (links)
156
+ - name: releases
157
+ description: Operations related to releases
158
+ - name: resource_milestone_events
159
+ description: Operations about resource milestone events
160
+ - name: rpm_packages
161
+ description: Operations related to RPM packages
162
+ - name: rubygem_packages
163
+ description: Operations related to RubyGems
164
+ - name: suggestions
165
+ description: Operations related to suggestions
166
+ - name: system_hooks
167
+ description: Operations related to system hooks
168
+ - name: terraform_state
169
+ description: Operations related to Terraform state files
170
+ - name: terraform_registry
171
+ description: Operations related to the Terraform module registry
172
+ - name: unleash_api
173
+ description: Operations related to Unleash API
174
+ paths:
175
+ /groups/{id}/badges/{badge_id}:
176
+ get:
177
+ tags:
178
+ - badges
179
+ summary: Gets a badge of a group.
180
+ description: This feature was introduced in GitLab 10.6.
181
+ operationId: getApiV4GroupsIdBadgesBadgeId
182
+ parameters:
183
+ - name: id
184
+ in: path
185
+ description: The ID or URL-encoded path of the group owned by the authenticated
186
+ user.
187
+ required: true
188
+ schema:
189
+ type: string
190
+ - name: badge_id
191
+ in: path
192
+ description: The badge ID
193
+ required: true
194
+ schema:
195
+ type: integer
196
+ format: int32
197
+ responses:
198
+ 200:
199
+ description: Gets a badge of a group.
200
+ content:
201
+ application/json:
202
+ schema:
203
+ $ref: '#/components/schemas/API_Entities_Badge'
204
+ put:
205
+ tags:
206
+ - badges
207
+ summary: Updates a badge of a group.
208
+ description: This feature was introduced in GitLab 10.6.
209
+ operationId: putApiV4GroupsIdBadgesBadgeId
210
+ parameters:
211
+ - name: id
212
+ in: path
213
+ description: The ID or URL-encoded path of the group owned by the authenticated
214
+ user.
215
+ required: true
216
+ schema:
217
+ type: string
218
+ - name: badge_id
219
+ in: path
220
+ required: true
221
+ schema:
222
+ type: integer
223
+ format: int32
224
+ requestBody:
225
+ content:
226
+ application/json:
227
+ schema:
228
+ properties:
229
+ link_url:
230
+ type: string
231
+ description: URL of the badge link
232
+ image_url:
233
+ type: string
234
+ description: URL of the badge image
235
+ name:
236
+ type: string
237
+ description: Name for the badge
238
+ responses:
239
+ 200:
240
+ description: Updates a badge of a group.
241
+ content:
242
+ application/json:
243
+ schema:
244
+ $ref: '#/components/schemas/API_Entities_Badge'
245
+ delete:
246
+ tags:
247
+ - badges
248
+ summary: Removes a badge from the group.
249
+ description: This feature was introduced in GitLab 10.6.
250
+ operationId: deleteApiV4GroupsIdBadgesBadgeId
251
+ parameters:
252
+ - name: id
253
+ in: path
254
+ description: The ID or URL-encoded path of the group owned by the authenticated
255
+ user.
256
+ required: true
257
+ schema:
258
+ type: string
259
+ - name: badge_id
260
+ in: path
261
+ description: The badge ID
262
+ required: true
263
+ schema:
264
+ type: integer
265
+ format: int32
266
+ responses:
267
+ 204:
268
+ description: Removes a badge from the group.
269
+ content: {}
270
+ /groups/{id}/badges:
271
+ get:
272
+ tags:
273
+ - badges
274
+ summary: Gets a list of group badges viewable by the authenticated user.
275
+ description: This feature was introduced in GitLab 10.6.
276
+ operationId: getApiV4GroupsIdBadges
277
+ parameters:
278
+ - name: id
279
+ in: path
280
+ description: The ID or URL-encoded path of the group owned by the authenticated
281
+ user.
282
+ required: true
283
+ schema:
284
+ type: string
285
+ - name: page
286
+ in: query
287
+ description: Current page number
288
+ schema:
289
+ type: integer
290
+ format: int32
291
+ default: 1
292
+ - name: per_page
293
+ in: query
294
+ description: Number of items per page
295
+ schema:
296
+ type: integer
297
+ format: int32
298
+ default: 20
299
+ - name: name
300
+ in: query
301
+ description: Name for the badge
302
+ schema:
303
+ type: string
304
+ responses:
305
+ 200:
306
+ description: Gets a list of group badges viewable by the authenticated user.
307
+ content:
308
+ application/json:
309
+ schema:
310
+ type: array
311
+ items:
312
+ $ref: '#/components/schemas/API_Entities_Badge'
313
+ post:
314
+ tags:
315
+ - badges
316
+ summary: Adds a badge to a group.
317
+ description: This feature was introduced in GitLab 10.6.
318
+ operationId: postApiV4GroupsIdBadges
319
+ parameters:
320
+ - name: id
321
+ in: path
322
+ description: The ID or URL-encoded path of the group owned by the authenticated
323
+ user.
324
+ required: true
325
+ schema:
326
+ type: string
327
+ requestBody:
328
+ content:
329
+ application/json:
330
+ schema:
331
+ required:
332
+ - image_url
333
+ - link_url
334
+ properties:
335
+ link_url:
336
+ type: string
337
+ description: URL of the badge link
338
+ image_url:
339
+ type: string
340
+ description: URL of the badge image
341
+ name:
342
+ type: string
343
+ description: Name for the badge
344
+ required: true
345
+ responses:
346
+ 201:
347
+ description: Adds a badge to a group.
348
+ content:
349
+ application/json:
350
+ schema:
351
+ $ref: '#/components/schemas/API_Entities_Badge'
352
+ /groups/{id}/badges/render:
353
+ get:
354
+ tags:
355
+ - badges
356
+ summary: Preview a badge from a group.
357
+ description: This feature was introduced in GitLab 10.6.
358
+ operationId: getApiV4GroupsIdBadgesRender
359
+ parameters:
360
+ - name: id
361
+ in: path
362
+ description: The ID or URL-encoded path of the group owned by the authenticated
363
+ user.
364
+ required: true
365
+ schema:
366
+ type: string
367
+ - name: link_url
368
+ in: query
369
+ description: URL of the badge link
370
+ required: true
371
+ schema:
372
+ type: string
373
+ - name: image_url
374
+ in: query
375
+ description: URL of the badge image
376
+ required: true
377
+ schema:
378
+ type: string
379
+ responses:
380
+ 200:
381
+ description: Preview a badge from a group.
382
+ content:
383
+ application/json:
384
+ schema:
385
+ $ref: '#/components/schemas/API_Entities_BasicBadgeDetails'
386
+ /groups/{id}/access_requests/{user_id}:
387
+ delete:
388
+ tags:
389
+ - access_requests
390
+ summary: Denies an access request for the given user.
391
+ description: This feature was introduced in GitLab 8.11.
392
+ operationId: deleteApiV4GroupsIdAccessRequestsUserId
393
+ parameters:
394
+ - name: id
395
+ in: path
396
+ description: The ID or URL-encoded path of the group owned by the authenticated
397
+ user
398
+ required: true
399
+ schema:
400
+ type: string
401
+ - name: user_id
402
+ in: path
403
+ description: The user ID of the access requester
404
+ required: true
405
+ schema:
406
+ type: integer
407
+ format: int32
408
+ responses:
409
+ 204:
410
+ description: Denies an access request for the given user.
411
+ content: {}
412
+ /groups/{id}/access_requests/{user_id}/approve:
413
+ put:
414
+ tags:
415
+ - access_requests
416
+ summary: Approves an access request for the given user.
417
+ description: This feature was introduced in GitLab 8.11.
418
+ operationId: putApiV4GroupsIdAccessRequestsUserIdApprove
419
+ parameters:
420
+ - name: id
421
+ in: path
422
+ description: The ID or URL-encoded path of the group owned by the authenticated
423
+ user
424
+ required: true
425
+ schema:
426
+ type: string
427
+ - name: user_id
428
+ in: path
429
+ description: The user ID of the access requester
430
+ required: true
431
+ schema:
432
+ type: integer
433
+ format: int32
434
+ requestBody:
435
+ content:
436
+ application/json:
437
+ schema:
438
+ properties:
439
+ access_level:
440
+ type: integer
441
+ description: 'A valid access level (defaults: `30`, the Developer
442
+ role)'
443
+ format: int32
444
+ default: 30
445
+ responses:
446
+ 200:
447
+ description: successful operation
448
+ content:
449
+ application/json:
450
+ schema:
451
+ $ref: '#/components/schemas/API_Entities_AccessRequester'
452
+ successfull_response:
453
+ example:
454
+ id: 1
455
+ username: raymond_smith
456
+ name: Raymond Smith
457
+ state: active
458
+ created_at: 2012-10-22T14:13:35Z
459
+ access_level: 20
460
+ /groups/{id}/access_requests:
461
+ get:
462
+ tags:
463
+ - access_requests
464
+ summary: Gets a list of access requests for a group.
465
+ description: This feature was introduced in GitLab 8.11.
466
+ operationId: getApiV4GroupsIdAccessRequests
467
+ parameters:
468
+ - name: id
469
+ in: path
470
+ description: The ID or URL-encoded path of the group owned by the authenticated
471
+ user
472
+ required: true
473
+ schema:
474
+ type: string
475
+ - name: page
476
+ in: query
477
+ description: Current page number
478
+ schema:
479
+ type: integer
480
+ format: int32
481
+ default: 1
482
+ - name: per_page
483
+ in: query
484
+ description: Number of items per page
485
+ schema:
486
+ type: integer
487
+ format: int32
488
+ default: 20
489
+ responses:
490
+ 200:
491
+ description: Gets a list of access requests for a group.
492
+ content:
493
+ application/json:
494
+ schema:
495
+ $ref: '#/components/schemas/API_Entities_AccessRequester'
496
+ post:
497
+ tags:
498
+ - access_requests
499
+ summary: Requests access for the authenticated user to a group.
500
+ description: This feature was introduced in GitLab 8.11.
501
+ operationId: postApiV4GroupsIdAccessRequests
502
+ parameters:
503
+ - name: id
504
+ in: path
505
+ description: The ID or URL-encoded path of the group owned by the authenticated
506
+ user
507
+ required: true
508
+ schema:
509
+ type: string
510
+ responses:
511
+ 200:
512
+ description: successful operation
513
+ content:
514
+ application/json:
515
+ schema:
516
+ $ref: '#/components/schemas/API_Entities_AccessRequester'
517
+ successfull_response:
518
+ example:
519
+ id: 1
520
+ username: raymond_smith
521
+ name: Raymond Smith
522
+ state: active
523
+ created_at: 2012-10-22T14:13:35Z
524
+ access_level: 20
525
+ /projects/{id}/repository/merged_branches:
526
+ delete:
527
+ tags:
528
+ - branches
529
+ description: Delete all merged branches
530
+ operationId: deleteApiV4ProjectsIdRepositoryMergedBranches
531
+ parameters:
532
+ - $ref: '#/components/parameters/ProjectIdOrPath'
533
+ responses:
534
+ 202:
535
+ description: 202 Accepted
536
+ content: {}
537
+ 404:
538
+ description: 404 Project Not Found
539
+ content: {}
540
+ /projects/{id}/repository/branches/{branch}:
541
+ get:
542
+ tags:
543
+ - branches
544
+ description: Get a single repository branch
545
+ operationId: getApiV4ProjectsIdRepositoryBranchesBranch
546
+ parameters:
547
+ - $ref: '#/components/parameters/ProjectIdOrPath'
548
+ - name: branch
549
+ in: path
550
+ required: true
551
+ schema:
552
+ type: integer
553
+ format: int32
554
+ responses:
555
+ 200:
556
+ description: Get a single repository branch
557
+ content:
558
+ application/json:
559
+ schema:
560
+ $ref: '#/components/schemas/API_Entities_Branch'
561
+ 404:
562
+ description: Branch Not Found
563
+ content: {}
564
+ delete:
565
+ tags:
566
+ - branches
567
+ description: Delete a branch
568
+ operationId: deleteApiV4ProjectsIdRepositoryBranchesBranch
569
+ parameters:
570
+ - $ref: '#/components/parameters/ProjectIdOrPath'
571
+ - name: branch
572
+ in: path
573
+ description: The name of the branch
574
+ required: true
575
+ schema:
576
+ type: string
577
+ responses:
578
+ 204:
579
+ description: Delete a branch
580
+ content: {}
581
+ 404:
582
+ description: Branch Not Found
583
+ content: {}
584
+ head:
585
+ tags:
586
+ - branches
587
+ description: Check if a branch exists
588
+ operationId: headApiV4ProjectsIdRepositoryBranchesBranch
589
+ parameters:
590
+ - $ref: '#/components/parameters/ProjectIdOrPath'
591
+ - name: branch
592
+ in: path
593
+ description: The name of the branch
594
+ required: true
595
+ schema:
596
+ type: string
597
+ responses:
598
+ 204:
599
+ description: No Content
600
+ content: {}
601
+ 404:
602
+ description: Not Found
603
+ content: {}
604
+ /projects/{id}/repository/branches:
605
+ get:
606
+ tags:
607
+ - branches
608
+ description: Get a project repository branches
609
+ operationId: getApiV4ProjectsIdRepositoryBranches
610
+ parameters:
611
+ - $ref: '#/components/parameters/ProjectIdOrPath'
612
+ - name: page
613
+ in: query
614
+ description: Current page number
615
+ schema:
616
+ type: integer
617
+ format: int32
618
+ default: 1
619
+ - name: per_page
620
+ in: query
621
+ description: Number of items per page
622
+ schema:
623
+ type: integer
624
+ format: int32
625
+ default: 20
626
+ - name: search
627
+ in: query
628
+ description: Return list of branches matching the search criteria
629
+ schema:
630
+ type: string
631
+ - name: regex
632
+ in: query
633
+ description: Return list of branches matching the regex
634
+ schema:
635
+ type: string
636
+ - name: sort
637
+ in: query
638
+ description: Return list of branches sorted by the given field
639
+ schema:
640
+ type: string
641
+ enum:
642
+ - name_asc
643
+ - updated_asc
644
+ - updated_desc
645
+ - name: page_token
646
+ in: query
647
+ description: Name of branch to start the pagination from
648
+ schema:
649
+ type: string
650
+ responses:
651
+ 200:
652
+ description: Get a project repository branches
653
+ content:
654
+ application/json:
655
+ schema:
656
+ type: array
657
+ items:
658
+ $ref: '#/components/schemas/API_Entities_Branch'
659
+ 404:
660
+ description: 404 Project Not Found
661
+ content: {}
662
+ post:
663
+ tags:
664
+ - branches
665
+ description: Create branch
666
+ operationId: postApiV4ProjectsIdRepositoryBranches
667
+ parameters:
668
+ - $ref: '#/components/parameters/ProjectIdOrPath'
669
+ - name: branch
670
+ in: query
671
+ description: The name of the branch
672
+ required: true
673
+ schema:
674
+ type: string
675
+ - name: ref
676
+ in: query
677
+ description: Create branch from commit sha or existing branch
678
+ required: true
679
+ schema:
680
+ type: string
681
+ responses:
682
+ 201:
683
+ description: Create branch
684
+ content:
685
+ application/json:
686
+ schema:
687
+ $ref: '#/components/schemas/API_Entities_Branch'
688
+ 400:
689
+ description: Failed to create branch
690
+ content: {}
691
+ /projects/{id}/repository/branches/{branch}/unprotect:
692
+ put:
693
+ tags:
694
+ - branches
695
+ description: Unprotect a single branch
696
+ operationId: putApiV4ProjectsIdRepositoryBranchesBranchUnprotect
697
+ parameters:
698
+ - $ref: '#/components/parameters/ProjectIdOrPath'
699
+ - name: branch
700
+ in: path
701
+ description: The name of the branch
702
+ required: true
703
+ schema:
704
+ type: string
705
+ responses:
706
+ 200:
707
+ description: Unprotect a single branch
708
+ content:
709
+ application/json:
710
+ schema:
711
+ $ref: '#/components/schemas/API_Entities_Branch'
712
+ 404:
713
+ description: 404 Project Not Found
714
+ content: {}
715
+ /projects/{id}/repository/branches/{branch}/protect:
716
+ put:
717
+ tags:
718
+ - branches
719
+ description: Protect a single branch
720
+ operationId: putApiV4ProjectsIdRepositoryBranchesBranchProtect
721
+ parameters:
722
+ - $ref: '#/components/parameters/ProjectIdOrPath'
723
+ - name: branch
724
+ in: path
725
+ description: The name of the branch
726
+ required: true
727
+ schema:
728
+ type: string
729
+ requestBody:
730
+ content:
731
+ application/json:
732
+ schema:
733
+ properties:
734
+ developers_can_push:
735
+ type: boolean
736
+ description: Flag if developers can push to that branch
737
+ developers_can_merge:
738
+ type: boolean
739
+ description: Flag if developers can merge to that branch
740
+ responses:
741
+ 200:
742
+ description: Protect a single branch
743
+ content:
744
+ application/json:
745
+ schema:
746
+ $ref: '#/components/schemas/API_Entities_Branch'
747
+ 404:
748
+ description: 404 Branch Not Found
749
+ content: {}
750
+ /projects/{id}/badges/{badge_id}:
751
+ get:
752
+ tags:
753
+ - badges
754
+ summary: Gets a badge of a project.
755
+ description: This feature was introduced in GitLab 10.6.
756
+ operationId: getApiV4ProjectsIdBadgesBadgeId
757
+ parameters:
758
+ - $ref: '#/components/parameters/ProjectIdOrPath'
759
+ - name: badge_id
760
+ in: path
761
+ description: The badge ID
762
+ required: true
763
+ schema:
764
+ type: integer
765
+ format: int32
766
+ responses:
767
+ 200:
768
+ description: Gets a badge of a project.
769
+ content:
770
+ application/json:
771
+ schema:
772
+ $ref: '#/components/schemas/API_Entities_Badge'
773
+ put:
774
+ tags:
775
+ - badges
776
+ summary: Updates a badge of a project.
777
+ description: This feature was introduced in GitLab 10.6.
778
+ operationId: putApiV4ProjectsIdBadgesBadgeId
779
+ parameters:
780
+ - $ref: '#/components/parameters/ProjectIdOrPath'
781
+ - name: badge_id
782
+ in: path
783
+ required: true
784
+ schema:
785
+ type: integer
786
+ format: int32
787
+ requestBody:
788
+ content:
789
+ application/json:
790
+ schema:
791
+ properties:
792
+ link_url:
793
+ type: string
794
+ description: URL of the badge link
795
+ image_url:
796
+ type: string
797
+ description: URL of the badge image
798
+ name:
799
+ type: string
800
+ description: Name for the badge
801
+ responses:
802
+ 200:
803
+ description: Updates a badge of a project.
804
+ content:
805
+ application/json:
806
+ schema:
807
+ $ref: '#/components/schemas/API_Entities_Badge'
808
+ delete:
809
+ tags:
810
+ - badges
811
+ summary: Removes a badge from the project.
812
+ description: This feature was introduced in GitLab 10.6.
813
+ operationId: deleteApiV4ProjectsIdBadgesBadgeId
814
+ parameters:
815
+ - $ref: '#/components/parameters/ProjectIdOrPath'
816
+ - name: badge_id
817
+ in: path
818
+ description: The badge ID
819
+ required: true
820
+ schema:
821
+ type: integer
822
+ format: int32
823
+ responses:
824
+ 204:
825
+ description: Removes a badge from the project.
826
+ content: {}
827
+ /projects/{id}/badges:
828
+ get:
829
+ tags:
830
+ - badges
831
+ summary: Gets a list of project badges viewable by the authenticated user.
832
+ description: This feature was introduced in GitLab 10.6.
833
+ operationId: getApiV4ProjectsIdBadges
834
+ parameters:
835
+ - $ref: '#/components/parameters/ProjectIdOrPath'
836
+ - name: page
837
+ in: query
838
+ description: Current page number
839
+ schema:
840
+ type: integer
841
+ format: int32
842
+ default: 1
843
+ - name: per_page
844
+ in: query
845
+ description: Number of items per page
846
+ schema:
847
+ type: integer
848
+ format: int32
849
+ default: 20
850
+ - name: name
851
+ in: query
852
+ description: Name for the badge
853
+ schema:
854
+ type: string
855
+ responses:
856
+ 200:
857
+ description: Gets a list of project badges viewable by the authenticated
858
+ user.
859
+ content:
860
+ application/json:
861
+ schema:
862
+ type: array
863
+ items:
864
+ $ref: '#/components/schemas/API_Entities_Badge'
865
+ post:
866
+ tags:
867
+ - badges
868
+ summary: Adds a badge to a project.
869
+ description: This feature was introduced in GitLab 10.6.
870
+ operationId: postApiV4ProjectsIdBadges
871
+ parameters:
872
+ - $ref: '#/components/parameters/ProjectIdOrPath'
873
+ requestBody:
874
+ content:
875
+ application/json:
876
+ schema:
877
+ required:
878
+ - image_url
879
+ - link_url
880
+ properties:
881
+ link_url:
882
+ type: string
883
+ description: URL of the badge link
884
+ image_url:
885
+ type: string
886
+ description: URL of the badge image
887
+ name:
888
+ type: string
889
+ description: Name for the badge
890
+ required: true
891
+ responses:
892
+ 201:
893
+ description: Adds a badge to a project.
894
+ content:
895
+ application/json:
896
+ schema:
897
+ $ref: '#/components/schemas/API_Entities_Badge'
898
+ /projects/{id}/badges/render:
899
+ get:
900
+ tags:
901
+ - badges
902
+ summary: Preview a badge from a project.
903
+ description: This feature was introduced in GitLab 10.6.
904
+ operationId: getApiV4ProjectsIdBadgesRender
905
+ parameters:
906
+ - $ref: '#/components/parameters/ProjectIdOrPath'
907
+ - name: link_url
908
+ in: query
909
+ description: URL of the badge link
910
+ required: true
911
+ schema:
912
+ type: string
913
+ - name: image_url
914
+ in: query
915
+ description: URL of the badge image
916
+ required: true
917
+ schema:
918
+ type: string
919
+ responses:
920
+ 200:
921
+ description: Preview a badge from a project.
922
+ content:
923
+ application/json:
924
+ schema:
925
+ $ref: '#/components/schemas/API_Entities_BasicBadgeDetails'
926
+ /projects/{id}/access_requests/{user_id}:
927
+ delete:
928
+ tags:
929
+ - access_requests
930
+ summary: Denies an access request for the given user.
931
+ description: This feature was introduced in GitLab 8.11.
932
+ operationId: deleteApiV4ProjectsIdAccessRequestsUserId
933
+ parameters:
934
+ - $ref: '#/components/parameters/ProjectIdOrPath'
935
+ - name: user_id
936
+ in: path
937
+ description: The user ID of the access requester
938
+ required: true
939
+ schema:
940
+ type: integer
941
+ format: int32
942
+ responses:
943
+ 204:
944
+ description: Denies an access request for the given user.
945
+ content: {}
946
+ /projects/{id}/access_requests/{user_id}/approve:
947
+ put:
948
+ tags:
949
+ - access_requests
950
+ summary: Approves an access request for the given user.
951
+ description: This feature was introduced in GitLab 8.11.
952
+ operationId: putApiV4ProjectsIdAccessRequestsUserIdApprove
953
+ parameters:
954
+ - $ref: '#/components/parameters/ProjectIdOrPath'
955
+ - name: user_id
956
+ in: path
957
+ description: The user ID of the access requester
958
+ required: true
959
+ schema:
960
+ type: integer
961
+ format: int32
962
+ requestBody:
963
+ content:
964
+ application/json:
965
+ schema:
966
+ properties:
967
+ access_level:
968
+ type: integer
969
+ description: 'A valid access level (defaults: `30`, the Developer
970
+ role)'
971
+ format: int32
972
+ default: 30
973
+ responses:
974
+ 200:
975
+ description: successful operation
976
+ content:
977
+ application/json:
978
+ schema:
979
+ $ref: '#/components/schemas/API_Entities_AccessRequester'
980
+ successfull_response:
981
+ example:
982
+ id: 1
983
+ username: raymond_smith
984
+ name: Raymond Smith
985
+ state: active
986
+ created_at: 2012-10-22T14:13:35Z
987
+ access_level: 20
988
+ /projects/{id}/access_requests:
989
+ get:
990
+ tags:
991
+ - access_requests
992
+ summary: Gets a list of access requests for a project.
993
+ description: This feature was introduced in GitLab 8.11.
994
+ operationId: getApiV4ProjectsIdAccessRequests
995
+ parameters:
996
+ - $ref: '#/components/parameters/ProjectIdOrPath'
997
+ - name: page
998
+ in: query
999
+ description: Current page number
1000
+ schema:
1001
+ type: integer
1002
+ format: int32
1003
+ default: 1
1004
+ - name: per_page
1005
+ in: query
1006
+ description: Number of items per page
1007
+ schema:
1008
+ type: integer
1009
+ format: int32
1010
+ default: 20
1011
+ responses:
1012
+ 200:
1013
+ description: Gets a list of access requests for a project.
1014
+ content:
1015
+ application/json:
1016
+ schema:
1017
+ $ref: '#/components/schemas/API_Entities_AccessRequester'
1018
+ post:
1019
+ tags:
1020
+ - access_requests
1021
+ summary: Requests access for the authenticated user to a project.
1022
+ description: This feature was introduced in GitLab 8.11.
1023
+ operationId: postApiV4ProjectsIdAccessRequests
1024
+ parameters:
1025
+ - $ref: '#/components/parameters/ProjectIdOrPath'
1026
+ responses:
1027
+ 200:
1028
+ description: successful operation
1029
+ content:
1030
+ application/json:
1031
+ schema:
1032
+ $ref: '#/components/schemas/API_Entities_AccessRequester'
1033
+ successfull_response:
1034
+ example:
1035
+ id: 1
1036
+ username: raymond_smith
1037
+ name: Raymond Smith
1038
+ state: active
1039
+ created_at: 2012-10-22T14:13:35Z
1040
+ access_level: 20
1041
+ /projects/{id}/alert_management_alerts/{alert_iid}/metric_images/{metric_image_id}:
1042
+ put:
1043
+ tags:
1044
+ - alert_management
1045
+ description: Update a metric image for an alert
1046
+ operationId: putApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImagesMetricImageId
1047
+ parameters:
1048
+ - $ref: '#/components/parameters/ProjectIdOrPath'
1049
+ - name: alert_iid
1050
+ in: path
1051
+ description: The IID of the Alert
1052
+ required: true
1053
+ schema:
1054
+ type: integer
1055
+ format: int32
1056
+ - name: metric_image_id
1057
+ in: path
1058
+ description: The ID of metric image
1059
+ required: true
1060
+ schema:
1061
+ type: integer
1062
+ format: int32
1063
+ requestBody:
1064
+ content:
1065
+ multipart/form-data:
1066
+ schema:
1067
+ properties:
1068
+ url:
1069
+ type: string
1070
+ description: The url to view more metric info
1071
+ url_text:
1072
+ type: string
1073
+ description: A description of the image or URL
1074
+ responses:
1075
+ 200:
1076
+ description: Update a metric image for an alert
1077
+ content:
1078
+ application/json:
1079
+ schema:
1080
+ $ref: '#/components/schemas/API_Entities_MetricImage'
1081
+ 403:
1082
+ description: Forbidden
1083
+ content: {}
1084
+ 422:
1085
+ description: Unprocessable entity
1086
+ content: {}
1087
+ delete:
1088
+ tags:
1089
+ - alert_management
1090
+ description: Remove a metric image for an alert
1091
+ operationId: deleteApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImagesMetricImageId
1092
+ parameters:
1093
+ - $ref: '#/components/parameters/ProjectIdOrPath'
1094
+ - name: alert_iid
1095
+ in: path
1096
+ description: The IID of the Alert
1097
+ required: true
1098
+ schema:
1099
+ type: integer
1100
+ format: int32
1101
+ - name: metric_image_id
1102
+ in: path
1103
+ description: The ID of metric image
1104
+ required: true
1105
+ schema:
1106
+ type: integer
1107
+ format: int32
1108
+ responses:
1109
+ 204:
1110
+ description: Remove a metric image for an alert
1111
+ content:
1112
+ application/json:
1113
+ schema:
1114
+ $ref: '#/components/schemas/API_Entities_MetricImage'
1115
+ 403:
1116
+ description: Forbidden
1117
+ content: {}
1118
+ 422:
1119
+ description: Unprocessable entity
1120
+ content: {}
1121
+ /projects/{id}/alert_management_alerts/{alert_iid}/metric_images:
1122
+ get:
1123
+ tags:
1124
+ - alert_management
1125
+ description: Metric Images for alert
1126
+ operationId: getApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImages
1127
+ parameters:
1128
+ - $ref: '#/components/parameters/ProjectIdOrPath'
1129
+ - name: alert_iid
1130
+ in: path
1131
+ description: The IID of the Alert
1132
+ required: true
1133
+ schema:
1134
+ type: integer
1135
+ format: int32
1136
+ responses:
1137
+ 200:
1138
+ description: Metric Images for alert
1139
+ content:
1140
+ application/json:
1141
+ schema:
1142
+ type: array
1143
+ items:
1144
+ $ref: '#/components/schemas/API_Entities_MetricImage'
1145
+ 404:
1146
+ description: Not found
1147
+ content: {}
1148
+ post:
1149
+ tags:
1150
+ - alert_management
1151
+ description: Upload a metric image for an alert
1152
+ operationId: postApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImages
1153
+ parameters:
1154
+ - $ref: '#/components/parameters/ProjectIdOrPath'
1155
+ - name: alert_iid
1156
+ in: path
1157
+ description: The IID of the Alert
1158
+ required: true
1159
+ schema:
1160
+ type: integer
1161
+ format: int32
1162
+ requestBody:
1163
+ content:
1164
+ multipart/form-data:
1165
+ schema:
1166
+ required:
1167
+ - file
1168
+ properties:
1169
+ file:
1170
+ type: string
1171
+ description: The image file to be uploaded
1172
+ format: binary
1173
+ url:
1174
+ type: string
1175
+ description: The url to view more metric info
1176
+ url_text:
1177
+ type: string
1178
+ description: A description of the image or URL
1179
+ required: true
1180
+ responses:
1181
+ 200:
1182
+ description: Upload a metric image for an alert
1183
+ content:
1184
+ application/json:
1185
+ schema:
1186
+ $ref: '#/components/schemas/API_Entities_MetricImage'
1187
+ 403:
1188
+ description: Forbidden
1189
+ content: {}
1190
+ /projects/{id}/alert_management_alerts/{alert_iid}/metric_images/authorize:
1191
+ post:
1192
+ tags:
1193
+ - alert_management
1194
+ description: Workhorse authorize metric image file upload
1195
+ operationId: postApiV4ProjectsIdAlertManagementAlertsAlertIidMetricImagesAuthorize
1196
+ parameters:
1197
+ - $ref: '#/components/parameters/ProjectIdOrPath'
1198
+ - name: alert_iid
1199
+ in: path
1200
+ description: The IID of the Alert
1201
+ required: true
1202
+ schema:
1203
+ type: integer
1204
+ format: int32
1205
+ responses:
1206
+ 200:
1207
+ description: Workhorse authorize metric image file upload
1208
+ content: {}
1209
+ 403:
1210
+ description: Forbidden
1211
+ content: {}
1212
+ /admin/batched_background_migrations/{id}:
1213
+ get:
1214
+ tags:
1215
+ - batched_background_migrations
1216
+ description: Retrieve a batched background migration
1217
+ operationId: getApiV4AdminBatchedBackgroundMigrationsId
1218
+ parameters:
1219
+ - name: database
1220
+ in: query
1221
+ description: The name of the database
1222
+ schema:
1223
+ type: string
1224
+ default: main
1225
+ enum:
1226
+ - main
1227
+ - ci
1228
+ - embedding
1229
+ - main_clusterwide
1230
+ - geo
1231
+ - name: id
1232
+ in: path
1233
+ description: The batched background migration id
1234
+ required: true
1235
+ schema:
1236
+ type: integer
1237
+ format: int32
1238
+ responses:
1239
+ 200:
1240
+ description: Retrieve a batched background migration
1241
+ content:
1242
+ application/json:
1243
+ schema:
1244
+ $ref: '#/components/schemas/API_Entities_BatchedBackgroundMigration'
1245
+ 401:
1246
+ description: 401 Unauthorized
1247
+ content: {}
1248
+ 403:
1249
+ description: 403 Forbidden
1250
+ content: {}
1251
+ 404:
1252
+ description: 404 Not found
1253
+ content: {}
1254
+ /admin/batched_background_migrations:
1255
+ get:
1256
+ tags:
1257
+ - batched_background_migrations
1258
+ description: Get the list of batched background migrations
1259
+ operationId: getApiV4AdminBatchedBackgroundMigrations
1260
+ parameters:
1261
+ - name: database
1262
+ in: query
1263
+ description: The name of the database, the default `main`
1264
+ schema:
1265
+ type: string
1266
+ default: main
1267
+ enum:
1268
+ - main
1269
+ - ci
1270
+ - embedding
1271
+ - main_clusterwide
1272
+ - geo
1273
+ responses:
1274
+ 200:
1275
+ description: Get the list of batched background migrations
1276
+ content:
1277
+ application/json:
1278
+ schema:
1279
+ type: array
1280
+ items:
1281
+ $ref: '#/components/schemas/API_Entities_BatchedBackgroundMigration'
1282
+ 401:
1283
+ description: 401 Unauthorized
1284
+ content: {}
1285
+ 403:
1286
+ description: 403 Forbidden
1287
+ content: {}
1288
+ /admin/batched_background_migrations/{id}/resume:
1289
+ put:
1290
+ tags:
1291
+ - batched_background_migrations
1292
+ description: Resume a batched background migration
1293
+ operationId: putApiV4AdminBatchedBackgroundMigrationsIdResume
1294
+ parameters:
1295
+ - name: id
1296
+ in: path
1297
+ description: The batched background migration id
1298
+ required: true
1299
+ schema:
1300
+ type: integer
1301
+ format: int32
1302
+ requestBody:
1303
+ content:
1304
+ application/json:
1305
+ schema:
1306
+ properties:
1307
+ database:
1308
+ type: string
1309
+ description: The name of the database
1310
+ default: main
1311
+ enum:
1312
+ - main
1313
+ - ci
1314
+ - embedding
1315
+ - main_clusterwide
1316
+ - geo
1317
+ responses:
1318
+ 200:
1319
+ description: Resume a batched background migration
1320
+ content:
1321
+ application/json:
1322
+ schema:
1323
+ $ref: '#/components/schemas/API_Entities_BatchedBackgroundMigration'
1324
+ 401:
1325
+ description: 401 Unauthorized
1326
+ content: {}
1327
+ 403:
1328
+ description: 403 Forbidden
1329
+ content: {}
1330
+ 404:
1331
+ description: 404 Not found
1332
+ content: {}
1333
+ 422:
1334
+ description: You can resume only `paused` batched background migrations.
1335
+ content: {}
1336
+ /admin/batched_background_migrations/{id}/pause:
1337
+ put:
1338
+ tags:
1339
+ - batched_background_migrations
1340
+ description: Pause a batched background migration
1341
+ operationId: putApiV4AdminBatchedBackgroundMigrationsIdPause
1342
+ parameters:
1343
+ - name: id
1344
+ in: path
1345
+ description: The batched background migration id
1346
+ required: true
1347
+ schema:
1348
+ type: integer
1349
+ format: int32
1350
+ requestBody:
1351
+ content:
1352
+ application/json:
1353
+ schema:
1354
+ properties:
1355
+ database:
1356
+ type: string
1357
+ description: The name of the database
1358
+ default: main
1359
+ enum:
1360
+ - main
1361
+ - ci
1362
+ - embedding
1363
+ - main_clusterwide
1364
+ - geo
1365
+ responses:
1366
+ 200:
1367
+ description: Pause a batched background migration
1368
+ content:
1369
+ application/json:
1370
+ schema:
1371
+ $ref: '#/components/schemas/API_Entities_BatchedBackgroundMigration'
1372
+ 401:
1373
+ description: 401 Unauthorized
1374
+ content: {}
1375
+ 403:
1376
+ description: 403 Forbidden
1377
+ content: {}
1378
+ 404:
1379
+ description: 404 Not found
1380
+ content: {}
1381
+ 422:
1382
+ description: You can pause only `active` batched background migrations.
1383
+ content: {}
1384
+ /admin/ci/variables/{key}:
1385
+ get:
1386
+ tags:
1387
+ - pipeline_composition
1388
+ description: Get the details of a specific instance-level variable
1389
+ operationId: getApiV4AdminCiVariablesKey
1390
+ parameters:
1391
+ - name: key
1392
+ in: path
1393
+ description: The key of a variable
1394
+ required: true
1395
+ schema:
1396
+ type: string
1397
+ responses:
1398
+ 200:
1399
+ description: Get the details of a specific instance-level variable
1400
+ content:
1401
+ application/json:
1402
+ schema:
1403
+ $ref: '#/components/schemas/API_Entities_Ci_Variable'
1404
+ 404:
1405
+ description: Instance Variable Not Found
1406
+ content: {}
1407
+ put:
1408
+ tags:
1409
+ - pipeline_composition
1410
+ description: Update an instance-level variable
1411
+ operationId: putApiV4AdminCiVariablesKey
1412
+ parameters:
1413
+ - name: key
1414
+ in: path
1415
+ description: The key of a variable
1416
+ required: true
1417
+ schema:
1418
+ type: string
1419
+ requestBody:
1420
+ content:
1421
+ application/json:
1422
+ schema:
1423
+ properties:
1424
+ value:
1425
+ type: string
1426
+ description: The value of a variable
1427
+ protected:
1428
+ type: boolean
1429
+ description: Whether the variable is protected
1430
+ masked:
1431
+ type: boolean
1432
+ description: Whether the variable is masked
1433
+ raw:
1434
+ type: boolean
1435
+ description: Whether the variable will be expanded
1436
+ variable_type:
1437
+ type: string
1438
+ description: 'The type of a variable. Available types are: env_var
1439
+ (default) and file'
1440
+ enum:
1441
+ - env_var
1442
+ - file
1443
+ responses:
1444
+ 200:
1445
+ description: Update an instance-level variable
1446
+ content:
1447
+ application/json:
1448
+ schema:
1449
+ $ref: '#/components/schemas/API_Entities_Ci_Variable'
1450
+ 404:
1451
+ description: Instance Variable Not Found
1452
+ content: {}
1453
+ delete:
1454
+ tags:
1455
+ - pipeline_composition
1456
+ description: Delete an existing instance-level variable
1457
+ operationId: deleteApiV4AdminCiVariablesKey
1458
+ parameters:
1459
+ - name: key
1460
+ in: path
1461
+ description: The key of a variable
1462
+ required: true
1463
+ schema:
1464
+ type: string
1465
+ responses:
1466
+ 204:
1467
+ description: Delete an existing instance-level variable
1468
+ content:
1469
+ application/json:
1470
+ schema:
1471
+ $ref: '#/components/schemas/API_Entities_Ci_Variable'
1472
+ 404:
1473
+ description: Instance Variable Not Found
1474
+ content: {}
1475
+ /admin/ci/variables:
1476
+ get:
1477
+ tags:
1478
+ - pipeline_composition
1479
+ description: List all instance-level variables
1480
+ operationId: getApiV4AdminCiVariables
1481
+ parameters:
1482
+ - name: page
1483
+ in: query
1484
+ description: Current page number
1485
+ schema:
1486
+ type: integer
1487
+ format: int32
1488
+ default: 1
1489
+ - name: per_page
1490
+ in: query
1491
+ description: Number of items per page
1492
+ schema:
1493
+ type: integer
1494
+ format: int32
1495
+ default: 20
1496
+ responses:
1497
+ 200:
1498
+ description: List all instance-level variables
1499
+ content:
1500
+ application/json:
1501
+ schema:
1502
+ $ref: '#/components/schemas/API_Entities_Ci_Variable'
1503
+ post:
1504
+ tags:
1505
+ - pipeline_composition
1506
+ description: Create a new instance-level variable
1507
+ operationId: postApiV4AdminCiVariables
1508
+ requestBody:
1509
+ content:
1510
+ application/json:
1511
+ schema:
1512
+ required:
1513
+ - key
1514
+ - value
1515
+ properties:
1516
+ key:
1517
+ type: string
1518
+ description: The key of the variable. Max 255 characters
1519
+ value:
1520
+ type: string
1521
+ description: The value of a variable
1522
+ protected:
1523
+ type: boolean
1524
+ description: Whether the variable is protected
1525
+ masked:
1526
+ type: boolean
1527
+ description: Whether the variable is masked
1528
+ raw:
1529
+ type: boolean
1530
+ description: Whether the variable will be expanded
1531
+ variable_type:
1532
+ type: string
1533
+ description: 'The type of a variable. Available types are: env_var
1534
+ (default) and file'
1535
+ enum:
1536
+ - env_var
1537
+ - file
1538
+ required: true
1539
+ responses:
1540
+ 201:
1541
+ description: Create a new instance-level variable
1542
+ content:
1543
+ application/json:
1544
+ schema:
1545
+ $ref: '#/components/schemas/API_Entities_Ci_Variable'
1546
+ 400:
1547
+ description: 400 Bad Request
1548
+ content: {}
1549
+ /admin/databases/{database_name}/dictionary/tables/{table_name}:
1550
+ get:
1551
+ tags:
1552
+ - admin
1553
+ description: Retrieve dictionary details
1554
+ operationId: getApiV4AdminDatabasesDatabaseNameDictionaryTablesTableName
1555
+ parameters:
1556
+ - name: database_name
1557
+ in: path
1558
+ description: The database name
1559
+ required: true
1560
+ schema:
1561
+ type: string
1562
+ enum:
1563
+ - main
1564
+ - ci
1565
+ - name: table_name
1566
+ in: path
1567
+ description: The table name
1568
+ required: true
1569
+ schema:
1570
+ type: string
1571
+ responses:
1572
+ 200:
1573
+ description: Retrieve dictionary details
1574
+ content:
1575
+ application/json:
1576
+ schema:
1577
+ $ref: '#/components/schemas/API_Entities_Dictionary_Table'
1578
+ 401:
1579
+ description: 401 Unauthorized
1580
+ content: {}
1581
+ 403:
1582
+ description: 403 Forbidden
1583
+ content: {}
1584
+ 404:
1585
+ description: 404 Not found
1586
+ content: {}
1587
+ /admin/clusters/{cluster_id}:
1588
+ get:
1589
+ tags:
1590
+ - clusters
1591
+ summary: Get a single instance cluster
1592
+ description: This feature was introduced in GitLab 13.2. Returns a single instance
1593
+ cluster.
1594
+ operationId: getApiV4AdminClustersClusterId
1595
+ parameters:
1596
+ - name: cluster_id
1597
+ in: path
1598
+ description: The cluster ID
1599
+ required: true
1600
+ schema:
1601
+ type: integer
1602
+ format: int32
1603
+ responses:
1604
+ 200:
1605
+ description: Get a single instance cluster
1606
+ content:
1607
+ application/json:
1608
+ schema:
1609
+ $ref: '#/components/schemas/API_Entities_Cluster'
1610
+ 403:
1611
+ description: Forbidden
1612
+ content: {}
1613
+ 404:
1614
+ description: Not found
1615
+ content: {}
1616
+ put:
1617
+ tags:
1618
+ - clusters
1619
+ summary: Edit instance cluster
1620
+ description: This feature was introduced in GitLab 13.2. Updates an existing
1621
+ instance cluster.
1622
+ operationId: putApiV4AdminClustersClusterId
1623
+ parameters:
1624
+ - name: cluster_id
1625
+ in: path
1626
+ description: The cluster ID
1627
+ required: true
1628
+ schema:
1629
+ type: integer
1630
+ format: int32
1631
+ requestBody:
1632
+ content:
1633
+ application/json:
1634
+ schema:
1635
+ properties:
1636
+ name:
1637
+ type: string
1638
+ description: Cluster name
1639
+ enabled:
1640
+ type: boolean
1641
+ description: Enable or disable Gitlab's connection to your Kubernetes
1642
+ cluster
1643
+ environment_scope:
1644
+ type: string
1645
+ description: The associated environment to the cluster
1646
+ namespace_per_environment:
1647
+ type: boolean
1648
+ description: Deploy each environment to a separate Kubernetes namespace
1649
+ default: true
1650
+ domain:
1651
+ type: string
1652
+ description: Cluster base domain
1653
+ management_project_id:
1654
+ type: integer
1655
+ description: The ID of the management project
1656
+ format: int32
1657
+ managed:
1658
+ type: boolean
1659
+ description: Determines if GitLab will manage namespaces and service
1660
+ accounts for this cluster
1661
+ platform_kubernetes_attributes[api_url]:
1662
+ type: string
1663
+ description: URL to access the Kubernetes API
1664
+ platform_kubernetes_attributes[token]:
1665
+ type: string
1666
+ description: Token to authenticate against Kubernetes
1667
+ platform_kubernetes_attributes[ca_cert]:
1668
+ type: string
1669
+ description: TLS certificate (needed if API is using a self-signed
1670
+ TLS certificate)
1671
+ platform_kubernetes_attributes[namespace]:
1672
+ type: string
1673
+ description: Unique namespace related to Project
1674
+ responses:
1675
+ 200:
1676
+ description: Edit instance cluster
1677
+ content:
1678
+ application/json:
1679
+ schema:
1680
+ $ref: '#/components/schemas/API_Entities_Cluster'
1681
+ 400:
1682
+ description: Validation error
1683
+ content: {}
1684
+ 403:
1685
+ description: Forbidden
1686
+ content: {}
1687
+ 404:
1688
+ description: Not found
1689
+ content: {}
1690
+ delete:
1691
+ tags:
1692
+ - clusters
1693
+ summary: Delete instance cluster
1694
+ description: This feature was introduced in GitLab 13.2. Deletes an existing
1695
+ instance cluster. Does not remove existing resources within the connected
1696
+ Kubernetes cluster.
1697
+ operationId: deleteApiV4AdminClustersClusterId
1698
+ parameters:
1699
+ - name: cluster_id
1700
+ in: path
1701
+ description: The cluster ID
1702
+ required: true
1703
+ schema:
1704
+ type: integer
1705
+ format: int32
1706
+ responses:
1707
+ 204:
1708
+ description: Delete instance cluster
1709
+ content:
1710
+ application/json:
1711
+ schema:
1712
+ $ref: '#/components/schemas/API_Entities_Cluster'
1713
+ 403:
1714
+ description: Forbidden
1715
+ content: {}
1716
+ 404:
1717
+ description: Not found
1718
+ content: {}
1719
+ /admin/clusters/add:
1720
+ post:
1721
+ tags:
1722
+ - clusters
1723
+ summary: Add existing instance cluster
1724
+ description: This feature was introduced in GitLab 13.2. Adds an existing Kubernetes
1725
+ instance cluster.
1726
+ operationId: postApiV4AdminClustersAdd
1727
+ requestBody:
1728
+ content:
1729
+ application/json:
1730
+ schema:
1731
+ required:
1732
+ - name
1733
+ - platform_kubernetes_attributes[api_url]
1734
+ - platform_kubernetes_attributes[token]
1735
+ properties:
1736
+ name:
1737
+ type: string
1738
+ description: Cluster name
1739
+ enabled:
1740
+ type: boolean
1741
+ description: Determines if cluster is active or not, defaults to
1742
+ true
1743
+ default: true
1744
+ environment_scope:
1745
+ type: string
1746
+ description: The associated environment to the cluster
1747
+ default: '*'
1748
+ namespace_per_environment:
1749
+ type: boolean
1750
+ description: Deploy each environment to a separate Kubernetes namespace
1751
+ default: true
1752
+ domain:
1753
+ type: string
1754
+ description: Cluster base domain
1755
+ management_project_id:
1756
+ type: integer
1757
+ description: The ID of the management project
1758
+ format: int32
1759
+ managed:
1760
+ type: boolean
1761
+ description: Determines if GitLab will manage namespaces and service
1762
+ accounts for this cluster, defaults to true
1763
+ default: true
1764
+ platform_kubernetes_attributes[api_url]:
1765
+ type: string
1766
+ description: URL to access the Kubernetes API
1767
+ platform_kubernetes_attributes[token]:
1768
+ type: string
1769
+ description: Token to authenticate against Kubernetes
1770
+ platform_kubernetes_attributes[ca_cert]:
1771
+ type: string
1772
+ description: TLS certificate (needed if API is using a self-signed
1773
+ TLS certificate)
1774
+ platform_kubernetes_attributes[namespace]:
1775
+ type: string
1776
+ description: Unique namespace related to Project
1777
+ platform_kubernetes_attributes[authorization_type]:
1778
+ type: string
1779
+ description: Cluster authorization type, defaults to RBAC
1780
+ default: rbac
1781
+ enum:
1782
+ - unknown_authorization
1783
+ - rbac
1784
+ - abac
1785
+ required: true
1786
+ responses:
1787
+ 201:
1788
+ description: Add existing instance cluster
1789
+ content:
1790
+ application/json:
1791
+ schema:
1792
+ $ref: '#/components/schemas/API_Entities_Cluster'
1793
+ 400:
1794
+ description: Validation error
1795
+ content: {}
1796
+ 403:
1797
+ description: Forbidden
1798
+ content: {}
1799
+ 404:
1800
+ description: Not found
1801
+ content: {}
1802
+ /admin/clusters:
1803
+ get:
1804
+ tags:
1805
+ - clusters
1806
+ summary: List instance clusters
1807
+ description: This feature was introduced in GitLab 13.2. Returns a list of instance
1808
+ clusters.
1809
+ operationId: getApiV4AdminClusters
1810
+ responses:
1811
+ 200:
1812
+ description: List instance clusters
1813
+ content:
1814
+ application/json:
1815
+ schema:
1816
+ type: array
1817
+ items:
1818
+ $ref: '#/components/schemas/API_Entities_Cluster'
1819
+ 403:
1820
+ description: Forbidden
1821
+ content: {}
1822
+ /admin/migrations/{timestamp}/mark:
1823
+ post:
1824
+ tags:
1825
+ - migrations
1826
+ description: Mark the migration as successfully executed
1827
+ operationId: postApiV4AdminMigrationsTimestampMark
1828
+ parameters:
1829
+ - name: timestamp
1830
+ in: path
1831
+ description: The migration version timestamp
1832
+ required: true
1833
+ schema:
1834
+ type: integer
1835
+ format: int32
1836
+ requestBody:
1837
+ content:
1838
+ application/json:
1839
+ schema:
1840
+ properties:
1841
+ database:
1842
+ type: string
1843
+ description: The name of the database
1844
+ default: main
1845
+ enum:
1846
+ - main
1847
+ - ci
1848
+ - embedding
1849
+ - main_clusterwide
1850
+ - geo
1851
+ responses:
1852
+ 201:
1853
+ description: 201 Created
1854
+ content: {}
1855
+ 401:
1856
+ description: 401 Unauthorized
1857
+ content: {}
1858
+ 403:
1859
+ description: 403 Forbidden
1860
+ content: {}
1861
+ 404:
1862
+ description: 404 Not found
1863
+ content: {}
1864
+ 422:
1865
+ description: You can mark only pending migrations
1866
+ content: {}
1867
+ /applications/{id}:
1868
+ delete:
1869
+ tags:
1870
+ - applications
1871
+ summary: Delete an application
1872
+ description: Delete a specific application
1873
+ operationId: deleteApiV4ApplicationsId
1874
+ parameters:
1875
+ - name: id
1876
+ in: path
1877
+ description: The ID of the application (not the application_id)
1878
+ required: true
1879
+ schema:
1880
+ type: integer
1881
+ format: int32
1882
+ responses:
1883
+ 204:
1884
+ description: Delete an application
1885
+ content: {}
1886
+ /applications:
1887
+ get:
1888
+ tags:
1889
+ - applications
1890
+ summary: Get applications
1891
+ description: List all registered applications
1892
+ operationId: getApiV4Applications
1893
+ responses:
1894
+ 200:
1895
+ description: Get applications
1896
+ content:
1897
+ application/json:
1898
+ schema:
1899
+ type: array
1900
+ items:
1901
+ $ref: '#/components/schemas/API_Entities_Application'
1902
+ post:
1903
+ tags:
1904
+ - applications
1905
+ summary: Create a new application
1906
+ description: This feature was introduced in GitLab 10.5
1907
+ operationId: postApiV4Applications
1908
+ requestBody:
1909
+ content:
1910
+ application/json:
1911
+ schema:
1912
+ required:
1913
+ - name
1914
+ - redirect_uri
1915
+ - scopes
1916
+ properties:
1917
+ name:
1918
+ type: string
1919
+ description: Name of the application.
1920
+ redirect_uri:
1921
+ type: string
1922
+ description: Redirect URI of the application.
1923
+ scopes:
1924
+ type: string
1925
+ description: |-
1926
+ Scopes of the application. You can specify multiple scopes by separating\
1927
+ each scope using a space
1928
+ confidential:
1929
+ type: boolean
1930
+ description: |-
1931
+ The application is used where the client secret can be kept confidential. Native mobile apps \
1932
+ and Single Page Apps are considered non-confidential. Defaults to true if not supplied
1933
+ default: true
1934
+ required: true
1935
+ responses:
1936
+ 200:
1937
+ description: Create a new application
1938
+ content:
1939
+ application/json:
1940
+ schema:
1941
+ $ref: '#/components/schemas/API_Entities_ApplicationWithSecret'
1942
+ /avatar:
1943
+ get:
1944
+ tags:
1945
+ - avatar
1946
+ description: Return avatar url for a user
1947
+ operationId: getApiV4Avatar
1948
+ parameters:
1949
+ - name: email
1950
+ in: query
1951
+ description: Public email address of the user
1952
+ required: true
1953
+ schema:
1954
+ type: string
1955
+ - name: size
1956
+ in: query
1957
+ description: Single pixel dimension for Gravatar images
1958
+ schema:
1959
+ type: integer
1960
+ format: int32
1961
+ responses:
1962
+ 200:
1963
+ description: Return avatar url for a user
1964
+ content:
1965
+ application/json:
1966
+ schema:
1967
+ $ref: '#/components/schemas/API_Entities_Avatar'
1968
+ /broadcast_messages/{id}:
1969
+ get:
1970
+ tags:
1971
+ - broadcast_messages
1972
+ summary: Get a specific broadcast message
1973
+ description: This feature was introduced in GitLab 8.12.
1974
+ operationId: getApiV4BroadcastMessagesId
1975
+ parameters:
1976
+ - name: id
1977
+ in: path
1978
+ description: Broadcast message ID
1979
+ required: true
1980
+ schema:
1981
+ type: integer
1982
+ format: int32
1983
+ responses:
1984
+ 200:
1985
+ description: Get a specific broadcast message
1986
+ content:
1987
+ application/json:
1988
+ schema:
1989
+ $ref: '#/components/schemas/API_Entities_BroadcastMessage'
1990
+ put:
1991
+ tags:
1992
+ - broadcast_messages
1993
+ summary: Update a broadcast message
1994
+ description: This feature was introduced in GitLab 8.12.
1995
+ operationId: putApiV4BroadcastMessagesId
1996
+ parameters:
1997
+ - name: id
1998
+ in: path
1999
+ description: Broadcast message ID
2000
+ required: true
2001
+ schema:
2002
+ type: integer
2003
+ format: int32
2004
+ requestBody:
2005
+ content:
2006
+ application/json:
2007
+ schema:
2008
+ properties:
2009
+ message:
2010
+ type: string
2011
+ description: Message to display
2012
+ starts_at:
2013
+ type: string
2014
+ description: Starting time
2015
+ format: date-time
2016
+ ends_at:
2017
+ type: string
2018
+ description: Ending time
2019
+ format: date-time
2020
+ color:
2021
+ type: string
2022
+ description: Background color
2023
+ font:
2024
+ type: string
2025
+ description: Foreground color
2026
+ target_access_levels:
2027
+ type: array
2028
+ description: Target user roles
2029
+ items:
2030
+ type: integer
2031
+ format: int32
2032
+ enum:
2033
+ - 10
2034
+ - 20
2035
+ - 30
2036
+ - 40
2037
+ - 50
2038
+ target_path:
2039
+ type: string
2040
+ description: Target path
2041
+ broadcast_type:
2042
+ type: string
2043
+ description: Broadcast Type
2044
+ enum:
2045
+ - banner
2046
+ - notification
2047
+ dismissable:
2048
+ type: boolean
2049
+ description: Is dismissable
2050
+ responses:
2051
+ 200:
2052
+ description: Update a broadcast message
2053
+ content:
2054
+ application/json:
2055
+ schema:
2056
+ $ref: '#/components/schemas/API_Entities_BroadcastMessage'
2057
+ delete:
2058
+ tags:
2059
+ - broadcast_messages
2060
+ summary: Delete a broadcast message
2061
+ description: This feature was introduced in GitLab 8.12.
2062
+ operationId: deleteApiV4BroadcastMessagesId
2063
+ parameters:
2064
+ - name: id
2065
+ in: path
2066
+ description: Broadcast message ID
2067
+ required: true
2068
+ schema:
2069
+ type: integer
2070
+ format: int32
2071
+ responses:
2072
+ 200:
2073
+ description: Delete a broadcast message
2074
+ content:
2075
+ application/json:
2076
+ schema:
2077
+ $ref: '#/components/schemas/API_Entities_BroadcastMessage'
2078
+ /broadcast_messages:
2079
+ get:
2080
+ tags:
2081
+ - broadcast_messages
2082
+ summary: Get all broadcast messages
2083
+ description: This feature was introduced in GitLab 8.12.
2084
+ operationId: getApiV4BroadcastMessages
2085
+ parameters:
2086
+ - name: page
2087
+ in: query
2088
+ description: Current page number
2089
+ schema:
2090
+ type: integer
2091
+ format: int32
2092
+ default: 1
2093
+ - name: per_page
2094
+ in: query
2095
+ description: Number of items per page
2096
+ schema:
2097
+ type: integer
2098
+ format: int32
2099
+ default: 20
2100
+ responses:
2101
+ 200:
2102
+ description: Get all broadcast messages
2103
+ content:
2104
+ application/json:
2105
+ schema:
2106
+ $ref: '#/components/schemas/API_Entities_BroadcastMessage'
2107
+ post:
2108
+ tags:
2109
+ - broadcast_messages
2110
+ summary: Create a broadcast message
2111
+ description: This feature was introduced in GitLab 8.12.
2112
+ operationId: postApiV4BroadcastMessages
2113
+ requestBody:
2114
+ content:
2115
+ application/json:
2116
+ schema:
2117
+ required:
2118
+ - message
2119
+ properties:
2120
+ message:
2121
+ type: string
2122
+ description: Message to display
2123
+ starts_at:
2124
+ type: string
2125
+ description: Starting time
2126
+ format: date-time
2127
+ ends_at:
2128
+ type: string
2129
+ description: Ending time
2130
+ format: date-time
2131
+ color:
2132
+ type: string
2133
+ description: Background color
2134
+ font:
2135
+ type: string
2136
+ description: Foreground color
2137
+ target_access_levels:
2138
+ type: array
2139
+ description: Target user roles
2140
+ items:
2141
+ type: integer
2142
+ format: int32
2143
+ enum:
2144
+ - 10
2145
+ - 20
2146
+ - 30
2147
+ - 40
2148
+ - 50
2149
+ target_path:
2150
+ type: string
2151
+ description: Target path
2152
+ broadcast_type:
2153
+ type: string
2154
+ description: Broadcast type. Defaults to banner
2155
+ enum:
2156
+ - banner
2157
+ - notification
2158
+ dismissable:
2159
+ type: boolean
2160
+ description: Is dismissable
2161
+ required: true
2162
+ responses:
2163
+ 201:
2164
+ description: Create a broadcast message
2165
+ content:
2166
+ application/json:
2167
+ schema:
2168
+ $ref: '#/components/schemas/API_Entities_BroadcastMessage'
2169
+ /bulk_imports/{import_id}/entities/{entity_id}:
2170
+ get:
2171
+ tags:
2172
+ - bulk_imports
2173
+ summary: Get GitLab Migration entity details
2174
+ description: This feature was introduced in GitLab 14.1.
2175
+ operationId: getApiV4BulkImportsImportIdEntitiesEntityId
2176
+ parameters:
2177
+ - name: import_id
2178
+ in: path
2179
+ description: The ID of user's GitLab Migration
2180
+ required: true
2181
+ schema:
2182
+ type: integer
2183
+ format: int32
2184
+ - name: entity_id
2185
+ in: path
2186
+ description: The ID of GitLab Migration entity
2187
+ required: true
2188
+ schema:
2189
+ type: integer
2190
+ format: int32
2191
+ responses:
2192
+ 200:
2193
+ description: Get GitLab Migration entity details
2194
+ content:
2195
+ application/json:
2196
+ schema:
2197
+ $ref: '#/components/schemas/API_Entities_BulkImports'
2198
+ 401:
2199
+ description: Unauthorized
2200
+ content: {}
2201
+ 404:
2202
+ description: Not found
2203
+ content: {}
2204
+ 503:
2205
+ description: Service unavailable
2206
+ content: {}
2207
+ /bulk_imports/{import_id}/entities:
2208
+ get:
2209
+ tags:
2210
+ - bulk_imports
2211
+ summary: List GitLab Migration entities
2212
+ description: This feature was introduced in GitLab 14.1.
2213
+ operationId: getApiV4BulkImportsImportIdEntities
2214
+ parameters:
2215
+ - name: import_id
2216
+ in: path
2217
+ description: The ID of user's GitLab Migration
2218
+ required: true
2219
+ schema:
2220
+ type: integer
2221
+ format: int32
2222
+ - name: status
2223
+ in: query
2224
+ description: Return import entities with specified status
2225
+ schema:
2226
+ type: string
2227
+ enum:
2228
+ - created
2229
+ - started
2230
+ - finished
2231
+ - timeout
2232
+ - failed
2233
+ - name: page
2234
+ in: query
2235
+ description: Current page number
2236
+ schema:
2237
+ type: integer
2238
+ format: int32
2239
+ default: 1
2240
+ - name: per_page
2241
+ in: query
2242
+ description: Number of items per page
2243
+ schema:
2244
+ type: integer
2245
+ format: int32
2246
+ default: 20
2247
+ responses:
2248
+ 200:
2249
+ description: List GitLab Migration entities
2250
+ content:
2251
+ application/json:
2252
+ schema:
2253
+ type: array
2254
+ items:
2255
+ $ref: '#/components/schemas/API_Entities_BulkImports'
2256
+ 401:
2257
+ description: Unauthorized
2258
+ content: {}
2259
+ 404:
2260
+ description: Not found
2261
+ content: {}
2262
+ 503:
2263
+ description: Service unavailable
2264
+ content: {}
2265
+ /bulk_imports/{import_id}:
2266
+ get:
2267
+ tags:
2268
+ - bulk_imports
2269
+ summary: Get GitLab Migration details
2270
+ description: This feature was introduced in GitLab 14.1.
2271
+ operationId: getApiV4BulkImportsImportId
2272
+ parameters:
2273
+ - name: import_id
2274
+ in: path
2275
+ description: The ID of user's GitLab Migration
2276
+ required: true
2277
+ schema:
2278
+ type: integer
2279
+ format: int32
2280
+ responses:
2281
+ 200:
2282
+ description: Get GitLab Migration details
2283
+ content:
2284
+ application/json:
2285
+ schema:
2286
+ $ref: '#/components/schemas/API_Entities_BulkImport'
2287
+ 401:
2288
+ description: Unauthorized
2289
+ content: {}
2290
+ 404:
2291
+ description: Not found
2292
+ content: {}
2293
+ 503:
2294
+ description: Service unavailable
2295
+ content: {}
2296
+ /bulk_imports/entities:
2297
+ get:
2298
+ tags:
2299
+ - bulk_imports
2300
+ summary: List all GitLab Migrations' entities
2301
+ description: This feature was introduced in GitLab 14.1.
2302
+ operationId: getApiV4BulkImportsEntities
2303
+ parameters:
2304
+ - name: page
2305
+ in: query
2306
+ description: Current page number
2307
+ schema:
2308
+ type: integer
2309
+ format: int32
2310
+ default: 1
2311
+ - name: per_page
2312
+ in: query
2313
+ description: Number of items per page
2314
+ schema:
2315
+ type: integer
2316
+ format: int32
2317
+ default: 20
2318
+ - name: sort
2319
+ in: query
2320
+ description: Return GitLab Migrations sorted in created by `asc` or `desc`
2321
+ order.
2322
+ schema:
2323
+ type: string
2324
+ default: desc
2325
+ enum:
2326
+ - asc
2327
+ - desc
2328
+ - name: status
2329
+ in: query
2330
+ description: Return all GitLab Migrations' entities with specified status
2331
+ schema:
2332
+ type: string
2333
+ enum:
2334
+ - created
2335
+ - started
2336
+ - finished
2337
+ - timeout
2338
+ - failed
2339
+ responses:
2340
+ 200:
2341
+ description: List all GitLab Migrations' entities
2342
+ content:
2343
+ application/json:
2344
+ schema:
2345
+ type: array
2346
+ items:
2347
+ $ref: '#/components/schemas/API_Entities_BulkImports'
2348
+ 401:
2349
+ description: Unauthorized
2350
+ content: {}
2351
+ 404:
2352
+ description: Not found
2353
+ content: {}
2354
+ 503:
2355
+ description: Service unavailable
2356
+ content: {}
2357
+ /bulk_imports:
2358
+ get:
2359
+ tags:
2360
+ - bulk_imports
2361
+ summary: List all GitLab Migrations
2362
+ description: This feature was introduced in GitLab 14.1.
2363
+ operationId: getApiV4BulkImports
2364
+ parameters:
2365
+ - name: page
2366
+ in: query
2367
+ description: Current page number
2368
+ schema:
2369
+ type: integer
2370
+ format: int32
2371
+ default: 1
2372
+ - name: per_page
2373
+ in: query
2374
+ description: Number of items per page
2375
+ schema:
2376
+ type: integer
2377
+ format: int32
2378
+ default: 20
2379
+ - name: sort
2380
+ in: query
2381
+ description: Return GitLab Migrations sorted in created by `asc` or `desc`
2382
+ order.
2383
+ schema:
2384
+ type: string
2385
+ default: desc
2386
+ enum:
2387
+ - asc
2388
+ - desc
2389
+ - name: status
2390
+ in: query
2391
+ description: Return GitLab Migrations with specified status
2392
+ schema:
2393
+ type: string
2394
+ enum:
2395
+ - created
2396
+ - started
2397
+ - finished
2398
+ - timeout
2399
+ - failed
2400
+ responses:
2401
+ 200:
2402
+ description: List all GitLab Migrations
2403
+ content:
2404
+ application/json:
2405
+ schema:
2406
+ type: array
2407
+ items:
2408
+ $ref: '#/components/schemas/API_Entities_BulkImport'
2409
+ 401:
2410
+ description: Unauthorized
2411
+ content: {}
2412
+ 404:
2413
+ description: Not found
2414
+ content: {}
2415
+ 503:
2416
+ description: Service unavailable
2417
+ content: {}
2418
+ post:
2419
+ tags:
2420
+ - bulk_imports
2421
+ summary: Start a new GitLab Migration
2422
+ description: This feature was introduced in GitLab 14.2.
2423
+ operationId: postApiV4BulkImports
2424
+ requestBody:
2425
+ content:
2426
+ application/x-www-form-urlencoded:
2427
+ schema:
2428
+ required:
2429
+ - configuration[access_token]
2430
+ - configuration[url]
2431
+ - entities[destination_namespace]
2432
+ - entities[source_full_path]
2433
+ - entities[source_type]
2434
+ properties:
2435
+ configuration[url]:
2436
+ type: string
2437
+ description: Source GitLab instance URL
2438
+ configuration[access_token]:
2439
+ type: string
2440
+ description: Access token to the source GitLab instance
2441
+ entities[source_type]:
2442
+ type: array
2443
+ description: Source entity type
2444
+ items:
2445
+ type: string
2446
+ enum:
2447
+ - group_entity
2448
+ - project_entity
2449
+ entities[source_full_path]:
2450
+ type: array
2451
+ description: Relative path of the source entity to import
2452
+ items:
2453
+ type: string
2454
+ entities[destination_namespace]:
2455
+ type: array
2456
+ description: Destination namespace for the entity
2457
+ items:
2458
+ type: string
2459
+ entities[destination_slug]:
2460
+ type: array
2461
+ description: Destination slug for the entity
2462
+ items:
2463
+ type: string
2464
+ entities[destination_name]:
2465
+ type: array
2466
+ description: 'Deprecated: Use :destination_slug instead. Destination
2467
+ slug for the entity'
2468
+ items:
2469
+ type: string
2470
+ entities[migrate_projects]:
2471
+ type: array
2472
+ description: Indicates group migration should include nested projects
2473
+ items:
2474
+ type: boolean
2475
+ required: true
2476
+ responses:
2477
+ 200:
2478
+ description: Start a new GitLab Migration
2479
+ content:
2480
+ application/json:
2481
+ schema:
2482
+ $ref: '#/components/schemas/API_Entities_BulkImport'
2483
+ 400:
2484
+ description: Bad request
2485
+ content: {}
2486
+ 401:
2487
+ description: Unauthorized
2488
+ content: {}
2489
+ 404:
2490
+ description: Not found
2491
+ content: {}
2492
+ 422:
2493
+ description: Unprocessable entity
2494
+ content: {}
2495
+ 503:
2496
+ description: Service unavailable
2497
+ content: {}
2498
+ /application/appearance:
2499
+ get:
2500
+ tags:
2501
+ - application
2502
+ description: Get the current appearance
2503
+ operationId: getApiV4ApplicationAppearance
2504
+ responses:
2505
+ 200:
2506
+ description: Get the current appearance
2507
+ content:
2508
+ application/json:
2509
+ schema:
2510
+ $ref: '#/components/schemas/API_Entities_Appearance'
2511
+ put:
2512
+ tags:
2513
+ - application
2514
+ description: Modify appearance
2515
+ operationId: putApiV4ApplicationAppearance
2516
+ requestBody:
2517
+ content:
2518
+ multipart/form-data:
2519
+ schema:
2520
+ properties:
2521
+ title:
2522
+ type: string
2523
+ description: Instance title on the sign in / sign up page
2524
+ description:
2525
+ type: string
2526
+ description: Markdown text shown on the sign in / sign up page
2527
+ pwa_name:
2528
+ type: string
2529
+ description: Name of the Progressive Web App
2530
+ pwa_short_name:
2531
+ type: string
2532
+ description: Optional, short name for Progressive Web App
2533
+ pwa_description:
2534
+ type: string
2535
+ description: An explanation of what the Progressive Web App does
2536
+ logo:
2537
+ type: string
2538
+ description: Instance image used on the sign in / sign up page
2539
+ format: binary
2540
+ pwa_icon:
2541
+ type: string
2542
+ description: Icon used for Progressive Web App
2543
+ format: binary
2544
+ header_logo:
2545
+ type: string
2546
+ description: Instance image used for the main navigation bar
2547
+ format: binary
2548
+ favicon:
2549
+ type: string
2550
+ description: Instance favicon in .ico/.png format
2551
+ format: binary
2552
+ new_project_guidelines:
2553
+ type: string
2554
+ description: Markdown text shown on the new project page
2555
+ profile_image_guidelines:
2556
+ type: string
2557
+ description: Markdown text shown on the profile page below Public
2558
+ Avatar
2559
+ header_message:
2560
+ type: string
2561
+ description: Message within the system header bar
2562
+ footer_message:
2563
+ type: string
2564
+ description: Message within the system footer bar
2565
+ message_background_color:
2566
+ type: string
2567
+ description: Background color for the system header / footer bar
2568
+ message_font_color:
2569
+ type: string
2570
+ description: Font color for the system header / footer bar
2571
+ email_header_and_footer_enabled:
2572
+ type: boolean
2573
+ description: Add header and footer to all outgoing emails if enabled
2574
+ responses:
2575
+ 200:
2576
+ description: Modify appearance
2577
+ content:
2578
+ application/json:
2579
+ schema:
2580
+ $ref: '#/components/schemas/API_Entities_Appearance'
2581
+ /application/plan_limits:
2582
+ get:
2583
+ tags:
2584
+ - plan_limits
2585
+ summary: Get current plan limits
2586
+ description: List the current limits of a plan on the GitLab instance.
2587
+ operationId: getApiV4ApplicationPlanLimits
2588
+ parameters:
2589
+ - name: plan_name
2590
+ in: query
2591
+ description: 'Name of the plan to get the limits from. Default: default.'
2592
+ schema:
2593
+ type: string
2594
+ default: default
2595
+ enum:
2596
+ - default
2597
+ - free
2598
+ - bronze
2599
+ - silver
2600
+ - premium
2601
+ - gold
2602
+ - ultimate
2603
+ - ultimate_trial
2604
+ - premium_trial
2605
+ - opensource
2606
+ responses:
2607
+ 200:
2608
+ description: Get current plan limits
2609
+ content:
2610
+ application/json:
2611
+ schema:
2612
+ $ref: '#/components/schemas/API_Entities_PlanLimit'
2613
+ 401:
2614
+ description: Unauthorized
2615
+ content: {}
2616
+ 403:
2617
+ description: Forbidden
2618
+ content: {}
2619
+ put:
2620
+ tags:
2621
+ - plan_limits
2622
+ summary: Change plan limits
2623
+ description: Modify the limits of a plan on the GitLab instance.
2624
+ operationId: putApiV4ApplicationPlanLimits
2625
+ requestBody:
2626
+ content:
2627
+ application/json:
2628
+ schema:
2629
+ required:
2630
+ - plan_name
2631
+ properties:
2632
+ plan_name:
2633
+ type: string
2634
+ description: Name of the plan to update
2635
+ enum:
2636
+ - default
2637
+ - free
2638
+ - bronze
2639
+ - silver
2640
+ - premium
2641
+ - gold
2642
+ - ultimate
2643
+ - ultimate_trial
2644
+ - premium_trial
2645
+ - opensource
2646
+ ci_pipeline_size:
2647
+ type: integer
2648
+ description: Maximum number of jobs in a single pipeline
2649
+ format: int32
2650
+ ci_active_jobs:
2651
+ type: integer
2652
+ description: Total number of jobs in currently active pipelines
2653
+ format: int32
2654
+ ci_project_subscriptions:
2655
+ type: integer
2656
+ description: Maximum number of pipeline subscriptions to and from
2657
+ a project
2658
+ format: int32
2659
+ ci_pipeline_schedules:
2660
+ type: integer
2661
+ description: Maximum number of pipeline schedules
2662
+ format: int32
2663
+ ci_needs_size_limit:
2664
+ type: integer
2665
+ description: Maximum number of needs dependencies that a job can have
2666
+ format: int32
2667
+ ci_registered_group_runners:
2668
+ type: integer
2669
+ description: Maximum number of runners registered per group
2670
+ format: int32
2671
+ ci_registered_project_runners:
2672
+ type: integer
2673
+ description: Maximum number of runners registered per project
2674
+ format: int32
2675
+ conan_max_file_size:
2676
+ type: integer
2677
+ description: Maximum Conan package file size in bytes
2678
+ format: int32
2679
+ enforcement_limit:
2680
+ type: integer
2681
+ description: Maximum storage size for the root namespace enforcement
2682
+ in MiB
2683
+ format: int32
2684
+ generic_packages_max_file_size:
2685
+ type: integer
2686
+ description: Maximum generic package file size in bytes
2687
+ format: int32
2688
+ helm_max_file_size:
2689
+ type: integer
2690
+ description: Maximum Helm chart file size in bytes
2691
+ format: int32
2692
+ maven_max_file_size:
2693
+ type: integer
2694
+ description: Maximum Maven package file size in bytes
2695
+ format: int32
2696
+ notification_limit:
2697
+ type: integer
2698
+ description: Maximum storage size for the root namespace notifications
2699
+ in MiB
2700
+ format: int32
2701
+ npm_max_file_size:
2702
+ type: integer
2703
+ description: Maximum NPM package file size in bytes
2704
+ format: int32
2705
+ nuget_max_file_size:
2706
+ type: integer
2707
+ description: Maximum NuGet package file size in bytes
2708
+ format: int32
2709
+ pypi_max_file_size:
2710
+ type: integer
2711
+ description: Maximum PyPI package file size in bytes
2712
+ format: int32
2713
+ terraform_module_max_file_size:
2714
+ type: integer
2715
+ description: Maximum Terraform Module package file size in bytes
2716
+ format: int32
2717
+ storage_size_limit:
2718
+ type: integer
2719
+ description: Maximum storage size for the root namespace in MiB
2720
+ format: int32
2721
+ pipeline_hierarchy_size:
2722
+ type: integer
2723
+ description: Maximum number of downstream pipelines in a pipeline's
2724
+ hierarchy tree
2725
+ format: int32
2726
+ required: true
2727
+ responses:
2728
+ 200:
2729
+ description: Change plan limits
2730
+ content:
2731
+ application/json:
2732
+ schema:
2733
+ $ref: '#/components/schemas/API_Entities_PlanLimit'
2734
+ 400:
2735
+ description: Bad request
2736
+ content: {}
2737
+ 401:
2738
+ description: Unauthorized
2739
+ content: {}
2740
+ 403:
2741
+ description: Forbidden
2742
+ content: {}
2743
+ /metadata:
2744
+ get:
2745
+ tags:
2746
+ - metadata
2747
+ summary: Retrieve metadata information for this GitLab instance
2748
+ description: This feature was introduced in GitLab 15.2.
2749
+ operationId: getApiV4Metadata
2750
+ responses:
2751
+ 200:
2752
+ description: Retrieve metadata information for this GitLab instance
2753
+ content:
2754
+ application/json:
2755
+ schema:
2756
+ $ref: '#/components/schemas/API_Entities_Metadata'
2757
+ 401:
2758
+ description: Unauthorized
2759
+ content: {}
2760
+ /version:
2761
+ get:
2762
+ tags:
2763
+ - metadata
2764
+ summary: Retrieves version information for the GitLab instance
2765
+ description: This feature was introduced in GitLab 8.13 and deprecated in 15.5.
2766
+ We recommend you instead use the Metadata API.
2767
+ operationId: getApiV4Version
2768
+ responses:
2769
+ 200:
2770
+ description: Retrieves version information for the GitLab instance
2771
+ content:
2772
+ application/json:
2773
+ schema:
2774
+ $ref: '#/components/schemas/API_Entities_Metadata'
2775
+ 401:
2776
+ description: Unauthorized
2777
+ content: {}
2778
+ /projects/{id}/jobs:
2779
+ get:
2780
+ tags:
2781
+ - jobs
2782
+ summary: List jobs for a project
2783
+ operationId: listProjectJobs
2784
+ parameters:
2785
+ - $ref: '#/components/parameters/ProjectIdOrPath'
2786
+ - name: scope
2787
+ in: query
2788
+ required: false
2789
+ description: Return all jobs with the specified statuses
2790
+ schema:
2791
+ type: array
2792
+ items:
2793
+ type: string
2794
+ responses:
2795
+ '200':
2796
+ description: An array of jobs
2797
+ content:
2798
+ application/json:
2799
+ schema:
2800
+ type: array
2801
+ items:
2802
+ $ref: '#/components/schemas/API_Entities_Job'
2803
+ /projects/{id}/jobs/{job_id}:
2804
+ get:
2805
+ tags:
2806
+ - jobs
2807
+ summary: Get a single job by ID
2808
+ operationId: getSingleJob
2809
+ parameters:
2810
+ - $ref: '#/components/parameters/ProjectIdOrPath'
2811
+ - name: job_id
2812
+ in: path
2813
+ required: true
2814
+ description: The ID of the job
2815
+ schema:
2816
+ type: integer
2817
+ responses:
2818
+ '200':
2819
+ description: A single job object
2820
+ content:
2821
+ application/json:
2822
+ schema:
2823
+ $ref: '#/components/schemas/API_Entities_Job'
2824
+ /projects/{id}/jobs/{job_id}/play:
2825
+ post:
2826
+ tags:
2827
+ - jobs
2828
+ summary: Run a manual job
2829
+ operationId: triggerManualJob
2830
+ parameters:
2831
+ - $ref: '#/components/parameters/ProjectIdOrPath'
2832
+ - name: job_id
2833
+ in: path
2834
+ required: true
2835
+ description: The ID of the manual job to run
2836
+ schema:
2837
+ type: integer
2838
+ - name: job_variables_attributes
2839
+ in: query
2840
+ required: false
2841
+ description: An array containing the custom variables available to the job
2842
+ schema:
2843
+ type: array
2844
+ items:
2845
+ type: string
2846
+ responses:
2847
+ '200':
2848
+ description: Job started successfully
2849
+ components:
2850
+ parameters:
2851
+ ProjectIdOrPath:
2852
+ name: id
2853
+ in: path
2854
+ description: The ID or [URL-encoded path of the project](https://docs.gitlab.com/api/rest/#namespaced-paths).
2855
+ required: true
2856
+ schema:
2857
+ anyOf:
2858
+ - type: string
2859
+ example: gitlab-org/gitlab
2860
+ - type: integer
2861
+ example: 278964
2862
+ schemas:
2863
+ API_Entities_Badge:
2864
+ type: object
2865
+ properties:
2866
+ name:
2867
+ type: string
2868
+ link_url:
2869
+ type: string
2870
+ image_url:
2871
+ type: string
2872
+ rendered_link_url:
2873
+ type: string
2874
+ rendered_image_url:
2875
+ type: string
2876
+ id:
2877
+ type: string
2878
+ kind:
2879
+ type: string
2880
+ description: API_Entities_Badge model
2881
+ API_Entities_BasicBadgeDetails:
2882
+ type: object
2883
+ properties:
2884
+ name:
2885
+ type: string
2886
+ link_url:
2887
+ type: string
2888
+ image_url:
2889
+ type: string
2890
+ rendered_link_url:
2891
+ type: string
2892
+ rendered_image_url:
2893
+ type: string
2894
+ description: API_Entities_BasicBadgeDetails model
2895
+ API_Entities_AccessRequester:
2896
+ type: object
2897
+ properties:
2898
+ id:
2899
+ type: integer
2900
+ format: int32
2901
+ example: 1
2902
+ username:
2903
+ type: string
2904
+ example: admin
2905
+ name:
2906
+ type: string
2907
+ example: Administrator
2908
+ state:
2909
+ type: string
2910
+ example: active
2911
+ avatar_url:
2912
+ type: string
2913
+ example: https://gravatar.com/avatar/1
2914
+ avatar_path:
2915
+ type: string
2916
+ example: /user/avatar/28/The-Big-Lebowski-400-400.png
2917
+ custom_attributes:
2918
+ type: array
2919
+ items:
2920
+ $ref: '#/components/schemas/API_Entities_CustomAttribute'
2921
+ web_url:
2922
+ type: string
2923
+ example: https://gitlab.example.com/root
2924
+ email:
2925
+ type: string
2926
+ requested_at:
2927
+ type: string
2928
+ description: API_Entities_AccessRequester model
2929
+ API_Entities_CustomAttribute:
2930
+ type: object
2931
+ properties:
2932
+ key:
2933
+ type: string
2934
+ example: foo
2935
+ value:
2936
+ type: string
2937
+ example: bar
2938
+ API_Entities_Branch:
2939
+ type: object
2940
+ properties:
2941
+ name:
2942
+ type: string
2943
+ example: master
2944
+ commit:
2945
+ $ref: '#/components/schemas/API_Entities_Commit'
2946
+ merged:
2947
+ type: boolean
2948
+ example: true
2949
+ protected:
2950
+ type: boolean
2951
+ example: true
2952
+ developers_can_push:
2953
+ type: boolean
2954
+ example: true
2955
+ developers_can_merge:
2956
+ type: boolean
2957
+ example: true
2958
+ can_push:
2959
+ type: boolean
2960
+ example: true
2961
+ default:
2962
+ type: boolean
2963
+ example: true
2964
+ web_url:
2965
+ type: string
2966
+ example: https://gitlab.example.com/Commit921/the-dude/-/tree/master
2967
+ description: API_Entities_Branch model
2968
+ API_Entities_Commit:
2969
+ type: object
2970
+ properties:
2971
+ id:
2972
+ type: string
2973
+ example: 2695effb5807a22ff3d138d593fd856244e155e7
2974
+ short_id:
2975
+ type: string
2976
+ example: 2695effb
2977
+ created_at:
2978
+ type: string
2979
+ format: date-time
2980
+ example: 2017-07-26T11:08:53+02:00
2981
+ parent_ids:
2982
+ type: array
2983
+ items:
2984
+ type: string
2985
+ example: 2a4b78934375d7f53875269ffd4f45fd83a84ebe
2986
+ title:
2987
+ type: string
2988
+ example: Initial commit
2989
+ message:
2990
+ type: string
2991
+ example: Initial commit
2992
+ author_name:
2993
+ type: string
2994
+ example: John Smith
2995
+ author_email:
2996
+ type: string
2997
+ example: john@example.com
2998
+ authored_date:
2999
+ type: string
3000
+ format: date-time
3001
+ example: 2012-05-28T04:42:42-07:00
3002
+ committer_name:
3003
+ type: string
3004
+ example: Jack Smith
3005
+ committer_email:
3006
+ type: string
3007
+ example: jack@example.com
3008
+ committed_date:
3009
+ type: string
3010
+ format: date-time
3011
+ example: 2012-05-28T04:42:42-07:00
3012
+ trailers:
3013
+ type: object
3014
+ properties: {}
3015
+ example: '{ "Merged-By": "Jane Doe janedoe@gitlab.com" }'
3016
+ web_url:
3017
+ type: string
3018
+ example: https://gitlab.example.com/janedoe/gitlab-foss/-/commit/ed899a2f4b50b4370feeea94676502b42383c746
3019
+ API_Entities_MetricImage:
3020
+ type: object
3021
+ properties:
3022
+ id:
3023
+ type: integer
3024
+ format: int32
3025
+ example: 23
3026
+ created_at:
3027
+ type: string
3028
+ format: date-time
3029
+ example: 2020-11-13T00:06:18.084Z
3030
+ filename:
3031
+ type: string
3032
+ example: file.png
3033
+ file_path:
3034
+ type: string
3035
+ example: /uploads/-/system/alert_metric_image/file/23/file.png
3036
+ url:
3037
+ type: string
3038
+ example: https://example.com/metric
3039
+ url_text:
3040
+ type: string
3041
+ example: An example metric
3042
+ description: API_Entities_MetricImage model
3043
+ API_Entities_BatchedBackgroundMigration:
3044
+ type: object
3045
+ properties:
3046
+ id:
3047
+ type: string
3048
+ example: "1234"
3049
+ job_class_name:
3050
+ type: string
3051
+ example: CopyColumnUsingBackgroundMigrationJob
3052
+ table_name:
3053
+ type: string
3054
+ example: events
3055
+ status:
3056
+ type: string
3057
+ example: active
3058
+ progress:
3059
+ type: number
3060
+ format: float
3061
+ example: 50.0
3062
+ created_at:
3063
+ type: string
3064
+ format: date-time
3065
+ example: 2022-11-28T16:26:39+02:00
3066
+ description: API_Entities_BatchedBackgroundMigration model
3067
+ API_Entities_Ci_Variable:
3068
+ type: object
3069
+ properties:
3070
+ variable_type:
3071
+ type: string
3072
+ example: env_var
3073
+ key:
3074
+ type: string
3075
+ example: TEST_VARIABLE_1
3076
+ value:
3077
+ type: string
3078
+ example: TEST_1
3079
+ protected:
3080
+ type: boolean
3081
+ masked:
3082
+ type: boolean
3083
+ raw:
3084
+ type: boolean
3085
+ environment_scope:
3086
+ type: string
3087
+ example: '*'
3088
+ description: API_Entities_Ci_Variable model
3089
+ API_Entities_Dictionary_Table:
3090
+ type: object
3091
+ properties:
3092
+ table_name:
3093
+ type: string
3094
+ example: users
3095
+ feature_categories:
3096
+ type: array
3097
+ items:
3098
+ type: string
3099
+ example: database
3100
+ description: API_Entities_Dictionary_Table model
3101
+ API_Entities_Cluster:
3102
+ type: object
3103
+ properties:
3104
+ id:
3105
+ type: string
3106
+ name:
3107
+ type: string
3108
+ created_at:
3109
+ type: string
3110
+ domain:
3111
+ type: string
3112
+ enabled:
3113
+ type: string
3114
+ managed:
3115
+ type: string
3116
+ provider_type:
3117
+ type: string
3118
+ platform_type:
3119
+ type: string
3120
+ environment_scope:
3121
+ type: string
3122
+ cluster_type:
3123
+ type: string
3124
+ namespace_per_environment:
3125
+ type: string
3126
+ user:
3127
+ $ref: '#/components/schemas/API_Entities_UserBasic'
3128
+ platform_kubernetes:
3129
+ $ref: '#/components/schemas/API_Entities_Platform_Kubernetes'
3130
+ provider_gcp:
3131
+ $ref: '#/components/schemas/API_Entities_Provider_Gcp'
3132
+ management_project:
3133
+ $ref: '#/components/schemas/API_Entities_ProjectIdentity'
3134
+ description: API_Entities_Cluster model
3135
+ API_Entities_UserBasic:
3136
+ type: object
3137
+ properties:
3138
+ id:
3139
+ type: integer
3140
+ format: int32
3141
+ example: 1
3142
+ username:
3143
+ type: string
3144
+ example: admin
3145
+ name:
3146
+ type: string
3147
+ example: Administrator
3148
+ state:
3149
+ type: string
3150
+ example: active
3151
+ avatar_url:
3152
+ type: string
3153
+ example: https://gravatar.com/avatar/1
3154
+ avatar_path:
3155
+ type: string
3156
+ example: /user/avatar/28/The-Big-Lebowski-400-400.png
3157
+ custom_attributes:
3158
+ type: array
3159
+ items:
3160
+ $ref: '#/components/schemas/API_Entities_CustomAttribute'
3161
+ web_url:
3162
+ type: string
3163
+ example: https://gitlab.example.com/root
3164
+ email:
3165
+ type: string
3166
+ API_Entities_Platform_Kubernetes:
3167
+ type: object
3168
+ properties:
3169
+ api_url:
3170
+ type: string
3171
+ namespace:
3172
+ type: string
3173
+ authorization_type:
3174
+ type: string
3175
+ ca_cert:
3176
+ type: string
3177
+ API_Entities_Provider_Gcp:
3178
+ type: object
3179
+ properties:
3180
+ cluster_id:
3181
+ type: string
3182
+ status_name:
3183
+ type: string
3184
+ gcp_project_id:
3185
+ type: string
3186
+ zone:
3187
+ type: string
3188
+ machine_type:
3189
+ type: string
3190
+ num_nodes:
3191
+ type: string
3192
+ endpoint:
3193
+ type: string
3194
+ API_Entities_ProjectIdentity:
3195
+ type: object
3196
+ properties:
3197
+ id:
3198
+ type: integer
3199
+ format: int32
3200
+ example: 1
3201
+ description:
3202
+ type: string
3203
+ example: desc
3204
+ name:
3205
+ type: string
3206
+ example: project1
3207
+ name_with_namespace:
3208
+ type: string
3209
+ example: John Doe / project1
3210
+ path:
3211
+ type: string
3212
+ example: project1
3213
+ path_with_namespace:
3214
+ type: string
3215
+ example: namespace1/project1
3216
+ created_at:
3217
+ type: string
3218
+ format: date-time
3219
+ example: 2020-05-07T04:27:17.016Z
3220
+ API_Entities_Application:
3221
+ type: object
3222
+ properties:
3223
+ id:
3224
+ type: string
3225
+ application_id:
3226
+ type: string
3227
+ example: 5832fc6e14300a0d962240a8144466eef4ee93ef0d218477e55f11cf12fc3737
3228
+ application_name:
3229
+ type: string
3230
+ example: MyApplication
3231
+ callback_url:
3232
+ type: string
3233
+ example: https://redirect.uri
3234
+ confidential:
3235
+ type: boolean
3236
+ example: true
3237
+ description: API_Entities_Application model
3238
+ API_Entities_ApplicationWithSecret:
3239
+ type: object
3240
+ properties:
3241
+ id:
3242
+ type: string
3243
+ application_id:
3244
+ type: string
3245
+ example: 5832fc6e14300a0d962240a8144466eef4ee93ef0d218477e55f11cf12fc3737
3246
+ application_name:
3247
+ type: string
3248
+ example: MyApplication
3249
+ callback_url:
3250
+ type: string
3251
+ example: https://redirect.uri
3252
+ confidential:
3253
+ type: boolean
3254
+ example: true
3255
+ secret:
3256
+ type: string
3257
+ example: ee1dd64b6adc89cf7e2c23099301ccc2c61b441064e9324d963c46902a85ec34
3258
+ description: API_Entities_ApplicationWithSecret model
3259
+ API_Entities_Avatar:
3260
+ type: object
3261
+ properties:
3262
+ avatar_url:
3263
+ type: string
3264
+ description: API_Entities_Avatar model
3265
+ API_Entities_BroadcastMessage:
3266
+ type: object
3267
+ properties:
3268
+ id:
3269
+ type: string
3270
+ message:
3271
+ type: string
3272
+ starts_at:
3273
+ type: string
3274
+ ends_at:
3275
+ type: string
3276
+ color:
3277
+ type: string
3278
+ font:
3279
+ type: string
3280
+ target_access_levels:
3281
+ type: string
3282
+ target_path:
3283
+ type: string
3284
+ broadcast_type:
3285
+ type: string
3286
+ dismissable:
3287
+ type: string
3288
+ active:
3289
+ type: string
3290
+ description: API_Entities_BroadcastMessage model
3291
+ API_Entities_BulkImports:
3292
+ type: object
3293
+ properties:
3294
+ id:
3295
+ type: integer
3296
+ format: int32
3297
+ example: 1
3298
+ bulk_import_id:
3299
+ type: integer
3300
+ format: int32
3301
+ example: 1
3302
+ status:
3303
+ type: string
3304
+ example: created
3305
+ enum:
3306
+ - created
3307
+ - started
3308
+ - finished
3309
+ - timeout
3310
+ - failed
3311
+ entity_type:
3312
+ type: string
3313
+ enum:
3314
+ - group
3315
+ - project
3316
+ source_full_path:
3317
+ type: string
3318
+ example: source_group
3319
+ destination_full_path:
3320
+ type: string
3321
+ example: some_group/source_project
3322
+ destination_name:
3323
+ type: string
3324
+ example: destination_slug
3325
+ destination_slug:
3326
+ type: string
3327
+ example: destination_slug
3328
+ destination_namespace:
3329
+ type: string
3330
+ example: destination_path
3331
+ parent_id:
3332
+ type: integer
3333
+ format: int32
3334
+ example: 1
3335
+ namespace_id:
3336
+ type: integer
3337
+ format: int32
3338
+ example: 1
3339
+ project_id:
3340
+ type: integer
3341
+ format: int32
3342
+ example: 1
3343
+ created_at:
3344
+ type: string
3345
+ format: date-time
3346
+ example: 2012-05-28T04:42:42-07:00
3347
+ updated_at:
3348
+ type: string
3349
+ format: date-time
3350
+ example: 2012-05-28T04:42:42-07:00
3351
+ failures:
3352
+ type: array
3353
+ items:
3354
+ $ref: '#/components/schemas/API_Entities_BulkImports_EntityFailure'
3355
+ migrate_projects:
3356
+ type: boolean
3357
+ example: true
3358
+ description: API_Entities_BulkImports model
3359
+ API_Entities_BulkImports_EntityFailure:
3360
+ type: object
3361
+ properties:
3362
+ relation:
3363
+ type: string
3364
+ example: group
3365
+ step:
3366
+ type: string
3367
+ example: extractor
3368
+ exception_message:
3369
+ type: string
3370
+ example: error message
3371
+ exception_class:
3372
+ type: string
3373
+ example: Exception
3374
+ correlation_id_value:
3375
+ type: string
3376
+ example: dfcf583058ed4508e4c7c617bd7f0edd
3377
+ created_at:
3378
+ type: string
3379
+ format: date-time
3380
+ example: 2012-05-28T04:42:42-07:00
3381
+ pipeline_class:
3382
+ type: string
3383
+ example: BulkImports::Groups::Pipelines::GroupPipeline
3384
+ pipeline_step:
3385
+ type: string
3386
+ example: extractor
3387
+ API_Entities_BulkImport:
3388
+ type: object
3389
+ properties:
3390
+ id:
3391
+ type: integer
3392
+ format: int32
3393
+ example: 1
3394
+ status:
3395
+ type: string
3396
+ example: finished
3397
+ enum:
3398
+ - created
3399
+ - started
3400
+ - finished
3401
+ - timeout
3402
+ - failed
3403
+ source_type:
3404
+ type: string
3405
+ example: gitlab
3406
+ created_at:
3407
+ type: string
3408
+ format: date-time
3409
+ example: 2012-05-28T04:42:42-07:00
3410
+ updated_at:
3411
+ type: string
3412
+ format: date-time
3413
+ example: 2012-05-28T04:42:42-07:00
3414
+ description: API_Entities_BulkImport model
3415
+ API_Entities_Appearance:
3416
+ type: object
3417
+ properties:
3418
+ title:
3419
+ type: string
3420
+ description:
3421
+ type: string
3422
+ pwa_name:
3423
+ type: string
3424
+ pwa_short_name:
3425
+ type: string
3426
+ pwa_description:
3427
+ type: string
3428
+ logo:
3429
+ type: string
3430
+ pwa_icon:
3431
+ type: string
3432
+ header_logo:
3433
+ type: string
3434
+ favicon:
3435
+ type: string
3436
+ new_project_guidelines:
3437
+ type: string
3438
+ profile_image_guidelines:
3439
+ type: string
3440
+ header_message:
3441
+ type: string
3442
+ footer_message:
3443
+ type: string
3444
+ message_background_color:
3445
+ type: string
3446
+ message_font_color:
3447
+ type: string
3448
+ email_header_and_footer_enabled:
3449
+ type: string
3450
+ description: API_Entities_Appearance model
3451
+ API_Entities_PlanLimit:
3452
+ type: object
3453
+ properties:
3454
+ ci_pipeline_size:
3455
+ type: integer
3456
+ format: int32
3457
+ example: 0
3458
+ ci_active_jobs:
3459
+ type: integer
3460
+ format: int32
3461
+ example: 0
3462
+ ci_project_subscriptions:
3463
+ type: integer
3464
+ format: int32
3465
+ example: 2
3466
+ ci_pipeline_schedules:
3467
+ type: integer
3468
+ format: int32
3469
+ example: 10
3470
+ ci_needs_size_limit:
3471
+ type: integer
3472
+ format: int32
3473
+ example: 50
3474
+ ci_registered_group_runners:
3475
+ type: integer
3476
+ format: int32
3477
+ example: 1000
3478
+ ci_registered_project_runners:
3479
+ type: integer
3480
+ format: int32
3481
+ example: 1000
3482
+ conan_max_file_size:
3483
+ type: integer
3484
+ format: int32
3485
+ example: 3221225472
3486
+ enforcement_limit:
3487
+ type: integer
3488
+ format: int32
3489
+ example: 15000
3490
+ generic_packages_max_file_size:
3491
+ type: integer
3492
+ format: int32
3493
+ example: 5368709120
3494
+ helm_max_file_size:
3495
+ type: integer
3496
+ format: int32
3497
+ example: 5242880
3498
+ limits_history:
3499
+ type: object
3500
+ properties: {}
3501
+ example: |-
3502
+ {"enforcement_limit"=>[{"timestamp"=>1686909124, "user_id"=>1, "username"=>"x", "value"=>5}],
3503
+ "notification_limit"=>[{"timestamp"=>1686909124, "user_id"=>2, "username"=>"y", "value"=>7}]}
3504
+ maven_max_file_size:
3505
+ type: integer
3506
+ format: int32
3507
+ example: 3221225472
3508
+ notification_limit:
3509
+ type: integer
3510
+ format: int32
3511
+ example: 15000
3512
+ npm_max_file_size:
3513
+ type: integer
3514
+ format: int32
3515
+ example: 524288000
3516
+ nuget_max_file_size:
3517
+ type: integer
3518
+ format: int32
3519
+ example: 524288000
3520
+ pipeline_hierarchy_size:
3521
+ type: integer
3522
+ format: int32
3523
+ example: 1000
3524
+ pypi_max_file_size:
3525
+ type: integer
3526
+ format: int32
3527
+ example: 3221225472
3528
+ terraform_module_max_file_size:
3529
+ type: integer
3530
+ format: int32
3531
+ example: 1073741824
3532
+ storage_size_limit:
3533
+ type: integer
3534
+ format: int32
3535
+ example: 15000
3536
+ description: API_Entities_PlanLimit model
3537
+ API_Entities_Metadata:
3538
+ type: object
3539
+ properties:
3540
+ version:
3541
+ type: string
3542
+ example: 15.2-pre
3543
+ revision:
3544
+ type: string
3545
+ example: c401a659d0c
3546
+ kas:
3547
+ type: object
3548
+ properties:
3549
+ enabled:
3550
+ type: boolean
3551
+ externalUrl:
3552
+ type: string
3553
+ example: grpc://gitlab.example.com:8150
3554
+ version:
3555
+ type: string
3556
+ example: 15.0.0
3557
+ enterprise:
3558
+ type: boolean
3559
+ description: API_Entities_Metadata model
3560
+ API_Entities_Job:
3561
+ type: object
3562
+ properties:
3563
+ id:
3564
+ type: integer
3565
+ description: The ID of the job
3566
+ name:
3567
+ type: string
3568
+ description: The name of the job
3569
+ status:
3570
+ type: string
3571
+ description: The current status of the job
3572
+ stage:
3573
+ type: string
3574
+ description: The stage of the job in the CI/CD pipeline
3575
+ created_at:
3576
+ type: string
3577
+ format: date-time
3578
+ example: 2016-01-11T10:13:33.506Z
3579
+ description: The creation time of the job
3580
+ started_at:
3581
+ type: string
3582
+ format: date-time
3583
+ example: 2016-01-11T10:13:33.506Z
3584
+ description: The start time of the job
3585
+ finished_at:
3586
+ type: string
3587
+ format: date-time
3588
+ example: 2016-01-11T10:13:33.506Z
3589
+ description: The finish time of the job
3590
+ commit:
3591
+ $ref: '#/components/schemas/API_Entities_Commit'
3592
+ archived:
3593
+ type: boolean
3594
+ description: Indicates if the job is archived
3595
+ allow_failure:
3596
+ type: boolean
3597
+ description: Indicates if the job is allowed to fail
3598
+ erased_at:
3599
+ type: string
3600
+ format: date-time
3601
+ example: 2016-01-11T10:13:33.506Z
3602
+ description: The time when the job was erased, if applicable
3603
+ duration:
3604
+ type: integer
3605
+ description: The duration of the job in seconds
3606
+ queued_duration:
3607
+ type: number
3608
+ description: The duration the job was queued before execution, in seconds
3609
+ ref:
3610
+ type: string
3611
+ description: The reference for the job
3612
+ artifacts:
3613
+ type: array
3614
+ description: The artifacts produced by the job
3615
+ tag:
3616
+ type: boolean
3617
+ description: Indicates if the job is tagged
3618
+ web_url:
3619
+ type: string
3620
+ description: The URL for accessing the job in the web interface
3621
+ project:
3622
+ type: object
3623
+ properties:
3624
+ ci_job_token_scope_enabled:
3625
+ type: boolean
3626
+ description: Indicates if the CI/CD job token scope setting is enabled for the project
3627
+ user:
3628
+ $ref: '#/components/schemas/API_Entities_UserBasic'
3629
+ description: The user that started the job
3630
+ description: API_Entities_Job model
3631
+ securitySchemes:
3632
+ ApiKeyAuth:
3633
+ type: apiKey
3634
+ in: header
3635
+ name: Private-Token