1GitLab::API::v4(3pm) User Contributed Perl Documentation GitLab::API::v4(3pm)
2
3
4
6 GitLab::API::v4 - A complete GitLab API v4 client.
7
9 use GitLab::API::v4;
10
11 my $api = GitLab::API::v4->new(
12 url => $v4_api_url,
13 private_token => $token,
14 );
15
16 my $branches = $api->branches( $project_id );
17
19 This module provides a one-to-one interface with the GitLab API v4.
20 Much is not documented here as it would just be duplicating GitLab's
21 own API Documentation <http://doc.gitlab.com/ce/api/README.html>.
22
23 Note that this distribution also includes the gitlab-api-v4 command-
24 line interface (CLI).
25
26 Upgrading
27 If you are upgrading from GitLab::API::v3 make sure you read:
28
29 <https://docs.gitlab.com/ce/api/v3_to_v4.html>
30
31 Also, review the "Changes" file included in the distribution as it
32 outlines the changes made to convert the v3 module to v4:
33
34 <https://github.com/bluefeet/GitLab-API-v4/blob/master/Changes>
35
36 Finally, be aware that many methods were added, removed, renamed,
37 and/or altered. If you want to review exactly what was changed you can
38 use GitHub's compare tool:
39
40 <https://github.com/bluefeet/GitLab-API-v4/compare/72e384775c9570f60f8ef68dee3a1eecd347fb69...master>
41
42 Or clone the repo and run this command:
43
44 "git diff 72e384775c9570f60f8ef68dee3a1eecd347fb69..HEAD --
45 author/sections/"
46
47 Credentials
48 Authentication credentials may be defined by setting either the
49 "access_token" or "private_token" arguments.
50
51 If no credentials are supplied then the client will be anonymous and
52 greatly limited in what it can do with the API.
53
54 Extra care has been taken to hide the token arguments behind closures.
55 This way, if you dump your api object, your tokens won't accidentally
56 leak into places you don't want them to.
57
58 Constants
59 The GitLab API, in rare cases, uses a hard-coded value to represent a
60 state. To make life easier the GitLab::API::v4::Constants module
61 exposes these states as named variables.
62
63 Exceptions
64 The API methods will all throw a useful exception if an unsuccessful
65 response is received from the API. That is except for "GET" requests
66 that return a 404 response - these will return "undef" for methods that
67 return a value.
68
69 If you'd like to catch and handle these exceptions consider using
70 Try::Tiny.
71
72 Logging
73 This module uses Log::Any and produces some debug messages here and
74 there, but the most useful bits are the info messages produced just
75 before each API call.
76
77 Project ID
78 Note that many API calls require a $project_id. This can be specified
79 as a numeric project "ID" or, in many cases, maybe all cases, as a
80 "NAMESPACE_PATH/PROJECT_PATH" string. The GitLab documentation on this
81 point is vague.
82
84 url
85 The URL to your v4 API endpoint. Typically this will be something like
86 "https://git.example.com/api/v4".
87
89 access_token
90 A GitLab API OAuth2 token. If set then "private_token" may not be set.
91
92 See <https://docs.gitlab.com/ce/api/#oauth2-tokens>.
93
94 private_token
95 A GitLab API personal token. If set then "access_token" may not be
96 set.
97
98 See <https://docs.gitlab.com/ce/api/#personal-access-tokens>.
99
100 retries
101 The number of times the request should be retried in case it fails (5XX
102 HTTP response code). Defaults to 0 (false), meaning that a failed
103 request will not be retried.
104
105 sudo_user
106 The user to execute API calls as. You may find it more useful to use
107 the "sudo" method instead.
108
109 See <https://docs.gitlab.com/ce/api/#sudo>.
110
111 rest_client
112 An instance of GitLab::API::v4::RESTClient (or whatever
113 "rest_client_class" is set to). Typically you will not be setting this
114 as it defaults to a new instance and customization should not be
115 necessary.
116
117 rest_client_class
118 The class to use when constructing the "rest_client". Defaults to
119 GitLab::API::v4::RESTClient.
120
122 paginator
123 my $paginator = $api->paginator( $method, @method_args );
124
125 my $members = $api->paginator('group_members', $group_id);
126 while (my $member = $members->next()) {
127 ...
128 }
129
130 my $users_pager = $api->paginator('users');
131 while (my $users = $users_pager->next_page()) {
132 ...
133 }
134
135 my $all_open_issues = $api->paginator(
136 'issues',
137 $project_id,
138 { state=>'opened' },
139 )->all();
140
141 Given a method who supports the "page" and "per_page" parameters, and
142 returns an array ref, this will return a GitLab::API::v4::Paginator
143 object that will allow you to walk the records one page or one record
144 at a time.
145
146 sudo
147 $api->sudo('fred')->create_issue(...);
148
149 Returns a new instance of GitLab::API::v4 with the "sudo_user" argument
150 set.
151
152 See <https://docs.gitlab.com/ce/api/#sudo>.
153
155 Award Emoji
156 See <https://docs.gitlab.com/ce/api/award_emoji.html>.
157
158 issue_award_emojis
159 my $award_emojis = $api->issue_award_emojis(
160 $project_id,
161 $issue_iid,
162 \%params,
163 );
164
165 Sends a "GET" request to
166 "projects/:project_id/issues/:issue_iid/award_emoji" and returns
167 the decoded response content.
168
169 merge_request_award_emojis
170 my $award_emojis = $api->merge_request_award_emojis(
171 $project_id,
172 $merge_request_iid,
173 \%params,
174 );
175
176 Sends a "GET" request to
177 "projects/:project_id/merge_requests/:merge_request_iid/award_emoji"
178 and returns the decoded response content.
179
180 snippet_award_emojis
181 my $award_emojis = $api->snippet_award_emojis(
182 $project_id,
183 $merge_request_id,
184 \%params,
185 );
186
187 Sends a "GET" request to
188 "projects/:project_id/merge_requests/:merge_request_id/award_emoji"
189 and returns the decoded response content.
190
191 issue_award_emoji
192 my $award_emoji = $api->issue_award_emoji(
193 $project_id,
194 $issue_iid,
195 $award_id,
196 );
197
198 Sends a "GET" request to
199 "projects/:project_id/issues/:issue_iid/award_emoji/:award_id" and
200 returns the decoded response content.
201
202 merge_request_award_emoji
203 my $award_emoji = $api->merge_request_award_emoji(
204 $project_id,
205 $merge_request_iid,
206 $award_id,
207 );
208
209 Sends a "GET" request to
210 "projects/:project_id/merge_requests/:merge_request_iid/award_emoji/:award_id"
211 and returns the decoded response content.
212
213 snippet_award_emoji
214 my $award_emoji = $api->snippet_award_emoji(
215 $project_id,
216 $snippet_id,
217 $award_id,
218 );
219
220 Sends a "GET" request to
221 "projects/:project_id/snippets/:snippet_id/award_emoji/:award_id"
222 and returns the decoded response content.
223
224 create_issue_award_emoji
225 my $award_emoji = $api->create_issue_award_emoji(
226 $project_id,
227 $issue_iid,
228 \%params,
229 );
230
231 Sends a "POST" request to
232 "projects/:project_id/issues/:issue_iid/award_emoji" and returns
233 the decoded response content.
234
235 create_merge_request_award_emoji
236 my $award_emoji = $api->create_merge_request_award_emoji(
237 $project_id,
238 $merge_request_iid,
239 \%params,
240 );
241
242 Sends a "POST" request to
243 "projects/:project_id/merge_requests/:merge_request_iid/award_emoji"
244 and returns the decoded response content.
245
246 create_snippet_award_emoji
247 my $award_emoji = $api->create_snippet_award_emoji(
248 $project_id,
249 $snippet_id,
250 );
251
252 Sends a "POST" request to
253 "projects/:project_id/snippets/:snippet_id/award_emoji" and returns
254 the decoded response content.
255
256 delete_issue_award_emoji
257 my $award_emoji = $api->delete_issue_award_emoji(
258 $project_id,
259 $issue_id,
260 $award_id,
261 );
262
263 Sends a "DELETE" request to
264 "projects/:project_id/issues/:issue_id/award_emoji/:award_id" and
265 returns the decoded response content.
266
267 delete_merge_request_award_emoji
268 my $award_emoji = $api->delete_merge_request_award_emoji(
269 $project_id,
270 $merge_request_id,
271 $award_id,
272 );
273
274 Sends a "DELETE" request to
275 "projects/:project_id/merge_requests/:merge_request_id/award_emoji/:award_id"
276 and returns the decoded response content.
277
278 delete_snippet_award_emoji
279 my $award_emoji = $api->delete_snippet_award_emoji(
280 $project_id,
281 $snippet_id,
282 $award_id,
283 );
284
285 Sends a "DELETE" request to
286 "projects/:project_id/snippets/:snippet_id/award_emoji/:award_id"
287 and returns the decoded response content.
288
289 issue_note_award_emojis
290 my $award_emojis = $api->issue_note_award_emojis(
291 $project_id,
292 $issue_iid,
293 $note_id,
294 );
295
296 Sends a "GET" request to
297 "projects/:project_id/issues/:issue_iid/notes/:note_id/award_emoji"
298 and returns the decoded response content.
299
300 issue_note_award_emoji
301 my $award_emoji = $api->issue_note_award_emoji(
302 $project_id,
303 $issue_iid,
304 $note_id,
305 $award_id,
306 );
307
308 Sends a "GET" request to
309 "projects/:project_id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id"
310 and returns the decoded response content.
311
312 create_issue_note_award_emoji
313 my $award_emoji = $api->create_issue_note_award_emoji(
314 $project_id,
315 $issue_iid,
316 $note_id,
317 \%params,
318 );
319
320 Sends a "POST" request to
321 "projects/:project_id/issues/:issue_iid/notes/:note_id/award_emoji"
322 and returns the decoded response content.
323
324 delete_issue_note_award_emoji
325 my $award_emoji = $api->delete_issue_note_award_emoji(
326 $project_id,
327 $issue_iid,
328 $note_id,
329 $award_id,
330 );
331
332 Sends a "DELETE" request to
333 "projects/:project_id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id"
334 and returns the decoded response content.
335
336 merge_request_note_award_emojis
337 my $award_emojis = $api->merge_request_note_award_emojis(
338 $project_id,
339 $merge_request_iid,
340 $note_id,
341 );
342
343 Sends a "GET" request to
344 "projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji"
345 and returns the decoded response content.
346
347 merge_request_note_award_emoji
348 my $award_emoji = $api->merge_request_note_award_emoji(
349 $project_id,
350 $merge_request_iid,
351 $note_id,
352 $award_id,
353 );
354
355 Sends a "GET" request to
356 "projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji/:award_id"
357 and returns the decoded response content.
358
359 create_merge_request_note_award_emoji
360 my $award_emoji = $api->create_merge_request_note_award_emoji(
361 $project_id,
362 $merge_request_iid,
363 $note_id,
364 \%params,
365 );
366
367 Sends a "POST" request to
368 "projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji"
369 and returns the decoded response content.
370
371 delete_merge_request_note_award_emoji
372 my $award_emoji = $api->delete_merge_request_note_award_emoji(
373 $project_id,
374 $merge_request_iid,
375 $note_id,
376 $award_id,
377 );
378
379 Sends a "DELETE" request to
380 "projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji/:award_id"
381 and returns the decoded response content.
382
383 Branches
384 See <https://docs.gitlab.com/ce/api/branches.html>.
385
386 branches
387 my $branches = $api->branches(
388 $project_id,
389 \%params,
390 );
391
392 Sends a "GET" request to "projects/:project_id/repository/branches"
393 and returns the decoded response content.
394
395 branch
396 my $branch = $api->branch(
397 $project_id,
398 $branch_name,
399 );
400
401 Sends a "GET" request to
402 "projects/:project_id/repository/branches/:branch_name" and returns
403 the decoded response content.
404
405 create_branch
406 my $branch = $api->create_branch(
407 $project_id,
408 \%params,
409 );
410
411 Sends a "POST" request to
412 "projects/:project_id/repository/branches" and returns the decoded
413 response content.
414
415 delete_branch
416 $api->delete_branch(
417 $project_id,
418 $branch_name,
419 );
420
421 Sends a "DELETE" request to
422 "projects/:project_id/repository/branches/:branch_name".
423
424 delete_merged_branches
425 $api->delete_merged_branches(
426 $project_id,
427 );
428
429 Sends a "DELETE" request to
430 "projects/:project_id/repository/merged_branches".
431
432 Broadcast Messages
433 See <https://docs.gitlab.com/ce/api/broadcast_messages.html>.
434
435 broadcast_messages
436 my $messages = $api->broadcast_messages(
437 \%params,
438 );
439
440 Sends a "GET" request to "broadcast_messages" and returns the
441 decoded response content.
442
443 broadcast_message
444 my $message = $api->broadcast_message(
445 $message_id,
446 );
447
448 Sends a "GET" request to "broadcast_messages/:message_id" and
449 returns the decoded response content.
450
451 create_broadcast_message
452 my $message = $api->create_broadcast_message(
453 \%params,
454 );
455
456 Sends a "POST" request to "broadcast_messages" and returns the
457 decoded response content.
458
459 edit_broadcast_message
460 my $message = $api->edit_broadcast_message(
461 $message_id,
462 \%params,
463 );
464
465 Sends a "PUT" request to "broadcast_messages/:message_id" and
466 returns the decoded response content.
467
468 delete_broadcast_message
469 $api->delete_broadcast_message(
470 $message_id,
471 );
472
473 Sends a "DELETE" request to "broadcast_messages/:message_id".
474
475 Project-level Variables
476 See <https://docs.gitlab.com/ce/api/project_level_variables.html>.
477
478 project_variables
479 my $variables = $api->project_variables(
480 $project_id,
481 \%params,
482 );
483
484 Sends a "GET" request to "projects/:project_id/variables" and
485 returns the decoded response content.
486
487 project_variable
488 my $variable = $api->project_variable(
489 $project_id,
490 $variable_key,
491 );
492
493 Sends a "GET" request to
494 "projects/:project_id/variables/:variable_key" and returns the
495 decoded response content.
496
497 create_project_variable
498 my $variable = $api->create_project_variable(
499 $project_id,
500 \%params,
501 );
502
503 Sends a "POST" request to "projects/:project_id/variables" and
504 returns the decoded response content.
505
506 edit_project_variable
507 my $variable = $api->edit_project_variable(
508 $project_id,
509 $variable_key,
510 \%params,
511 );
512
513 Sends a "PUT" request to
514 "projects/:project_id/variables/:variable_key" and returns the
515 decoded response content.
516
517 delete_project_variable
518 $api->delete_project_variable(
519 $project_id,
520 $variable_key,
521 );
522
523 Sends a "DELETE" request to
524 "projects/:project_id/variables/:variable_key".
525
526 Group-level Variables
527 See <https://docs.gitlab.com/ce/api/group_level_variables.html>.
528
529 group_variables
530 my $variables = $api->group_variables(
531 $group_id,
532 \%params,
533 );
534
535 Sends a "GET" request to "groups/:group_id/variables" and returns
536 the decoded response content.
537
538 group_variable
539 my $variable = $api->group_variable(
540 $group_id,
541 $variable_key,
542 );
543
544 Sends a "GET" request to "groups/:group_id/variables/:variable_key"
545 and returns the decoded response content.
546
547 create_group_variable
548 my $variable = $api->create_group_variable(
549 $group_id,
550 \%params,
551 );
552
553 Sends a "POST" request to "groups/:group_id/variables" and returns
554 the decoded response content.
555
556 edit_group_variable
557 my $variable = $api->edit_group_variable(
558 $group_id,
559 $variable_key,
560 \%params,
561 );
562
563 Sends a "PUT" request to "groups/:group_id/variables/:variable_key"
564 and returns the decoded response content.
565
566 delete_group_variable
567 $api->delete_group_variable(
568 $group_id,
569 $variable_key,
570 );
571
572 Sends a "DELETE" request to
573 "groups/:group_id/variables/:variable_key".
574
575 Snippets
576 See <https://docs.gitlab.com/ce/api/snippets.html>.
577
578 snippets
579 my $snippets = $api->snippets();
580
581 Sends a "GET" request to "snippets" and returns the decoded
582 response content.
583
584 snippet
585 my $snippet = $api->snippet(
586 $snippet_id,
587 );
588
589 Sends a "GET" request to "snippets/:snippet_id" and returns the
590 decoded response content.
591
592 create_snippet
593 my $snippet = $api->create_snippet(
594 \%params,
595 );
596
597 Sends a "POST" request to "snippets" and returns the decoded
598 response content.
599
600 edit_snippet
601 my $snippet = $api->edit_snippet(
602 $snippet_id,
603 \%params,
604 );
605
606 Sends a "PUT" request to "snippets/:snippet_id" and returns the
607 decoded response content.
608
609 delete_snippet
610 $api->delete_snippet(
611 $snippet_id,
612 );
613
614 Sends a "DELETE" request to "snippets/:snippet_id".
615
616 public_snippets
617 my $snippets = $api->public_snippets(
618 \%params,
619 );
620
621 Sends a "GET" request to "snippets/public" and returns the decoded
622 response content.
623
624 snippet_user_agent_detail
625 my $user_agent = $api->snippet_user_agent_detail(
626 $snippet_id,
627 );
628
629 Sends a "GET" request to "snippets/:snippet_id/user_agent_detail"
630 and returns the decoded response content.
631
632 Commits
633 See <https://docs.gitlab.com/ce/api/commits.html>.
634
635 commits
636 my $commits = $api->commits(
637 $project_id,
638 \%params,
639 );
640
641 Sends a "GET" request to "projects/:project_id/repository/commits"
642 and returns the decoded response content.
643
644 create_commit
645 my $commit = $api->create_commit(
646 $project_id,
647 \%params,
648 );
649
650 Sends a "POST" request to "projects/:project_id/repository/commits"
651 and returns the decoded response content.
652
653 commit
654 my $commit = $api->commit(
655 $project_id,
656 $commit_sha,
657 );
658
659 Sends a "GET" request to
660 "projects/:project_id/repository/commits/:commit_sha" and returns
661 the decoded response content.
662
663 commit_refs
664 my $refs = $api->commit_refs(
665 $project_id,
666 $commit_sha,
667 \%params,
668 );
669
670 Sends a "GET" request to
671 "projects/:project_id/repository/commits/:commit_sha/refs" and
672 returns the decoded response content.
673
674 cherry_pick_commit
675 my $commit = $api->cherry_pick_commit(
676 $project_id,
677 $commit_sha,
678 \%params,
679 );
680
681 Sends a "POST" request to
682 "projects/:project_id/repository/commits/:commit_sha/cherry_pick"
683 and returns the decoded response content.
684
685 commit_diff
686 my $diff = $api->commit_diff(
687 $project_id,
688 $commit_sha,
689 \%params,
690 );
691
692 Sends a "GET" request to
693 "projects/:project_id/repository/commits/:commit_sha/diff" and
694 returns the decoded response content.
695
696 commit_comments
697 my $comments = $api->commit_comments(
698 $project_id,
699 $commit_sha,
700 \%params,
701 );
702
703 Sends a "GET" request to
704 "projects/:project_id/repository/commits/:commit_sha/comments" and
705 returns the decoded response content.
706
707 create_commit_comment
708 $api->create_commit_comment(
709 $project_id,
710 $commit_sha,
711 \%params,
712 );
713
714 Sends a "POST" request to
715 "projects/:project_id/repository/commits/:commit_sha/comments".
716
717 commit_statuses
718 my $build_statuses = $api->commit_statuses(
719 $project_id,
720 $commit_sha,
721 \%params,
722 );
723
724 Sends a "GET" request to
725 "projects/:project_id/repository/commits/:commit_sha/statuses" and
726 returns the decoded response content.
727
728 create_commit_status
729 my $build_status = $api->create_commit_status(
730 $project_id,
731 $commit_sha,
732 \%params,
733 );
734
735 Sends a "POST" request to
736 "projects/:project_id/statuses/:commit_sha" and returns the decoded
737 response content.
738
739 Custom Attributes
740 See <https://docs.gitlab.com/ce/api/custom_attributes.html>.
741
742 custom_user_attributes
743 my $attributes = $api->custom_user_attributes(
744 $user_id,
745 );
746
747 Sends a "GET" request to "users/:user_id/custom_attributes" and
748 returns the decoded response content.
749
750 custom_group_attributes
751 my $attributes = $api->custom_group_attributes(
752 $group_id,
753 );
754
755 Sends a "GET" request to "groups/:group_id/custom_attributes" and
756 returns the decoded response content.
757
758 custom_project_attributes
759 my $attributes = $api->custom_project_attributes(
760 $project_id,
761 );
762
763 Sends a "GET" request to "projects/:project_id/custom_attributes"
764 and returns the decoded response content.
765
766 custom_user_attribute
767 my $attribute = $api->custom_user_attribute(
768 $user_id,
769 $attribute_key,
770 );
771
772 Sends a "GET" request to
773 "users/:user_id/custom_attributes/:attribute_key" and returns the
774 decoded response content.
775
776 custom_group_attribute
777 my $attribute = $api->custom_group_attribute(
778 $group_id,
779 $attribute_key,
780 );
781
782 Sends a "GET" request to
783 "groups/:group_id/custom_attributes/:attribute_key" and returns the
784 decoded response content.
785
786 custom_project_attribute
787 my $attribute = $api->custom_project_attribute(
788 $project_id,
789 $attribute_key,
790 );
791
792 Sends a "GET" request to
793 "projects/:project_id/custom_attributes/:attribute_key" and returns
794 the decoded response content.
795
796 set_custom_user_attribute
797 my $attribute = $api->set_custom_user_attribute(
798 $user_id,
799 $attribute_key,
800 \%params,
801 );
802
803 Sends a "PUT" request to
804 "users/:user_id/custom_attributes/:attribute_key" and returns the
805 decoded response content.
806
807 set_custom_group_attribute
808 my $attribute = $api->set_custom_group_attribute(
809 $group_id,
810 $attribute_key,
811 \%params,
812 );
813
814 Sends a "PUT" request to
815 "groups/:group_id/custom_attributes/:attribute_key" and returns the
816 decoded response content.
817
818 set_custom_project_attribute
819 my $attribute = $api->set_custom_project_attribute(
820 $project_id,
821 $attribute_key,
822 \%params,
823 );
824
825 Sends a "PUT" request to
826 "projects/:project_id/custom_attributes/:attribute_key" and returns
827 the decoded response content.
828
829 delete_custom_user_attribute
830 $api->delete_custom_user_attribute(
831 $user_id,
832 $attribute_key,
833 );
834
835 Sends a "DELETE" request to
836 "users/:user_id/custom_attributes/:attribute_key".
837
838 delete_custom_group_attribute
839 $api->delete_custom_group_attribute(
840 $group_id,
841 $attribute_key,
842 );
843
844 Sends a "DELETE" request to
845 "groups/:group_id/custom_attributes/:attribute_key".
846
847 delete_custom_project_attribute
848 $api->delete_custom_project_attribute(
849 $project_id,
850 $attribute_key,
851 );
852
853 Sends a "DELETE" request to
854 "projects/:project_id/custom_attributes/:attribute_key".
855
856 Deployments
857 See <https://docs.gitlab.com/ce/api/deployments.html>.
858
859 deployments
860 my $deployments = $api->deployments(
861 $project_id,
862 \%params,
863 );
864
865 Sends a "GET" request to "projects/:project_id/deployments" and
866 returns the decoded response content.
867
868 deployment
869 my $deployment = $api->deployment(
870 $project_id,
871 $deployment_id,
872 );
873
874 Sends a "GET" request to
875 "projects/:project_id/deployments/:deployment_id" and returns the
876 decoded response content.
877
878 Deploy Keys
879 See <https://docs.gitlab.com/ce/api/deploy_keys.html>.
880
881 all_deploy_keys
882 my $keys = $api->all_deploy_keys(
883 \%params,
884 );
885
886 Sends a "GET" request to "deploy_keys" and returns the decoded
887 response content.
888
889 deploy_keys
890 my $keys = $api->deploy_keys(
891 $project_id,
892 \%params,
893 );
894
895 Sends a "GET" request to "projects/:project_id/deploy_keys" and
896 returns the decoded response content.
897
898 deploy_key
899 my $key = $api->deploy_key(
900 $project_id,
901 $key_id,
902 );
903
904 Sends a "GET" request to "projects/:project_id/deploy_keys/:key_id"
905 and returns the decoded response content.
906
907 create_deploy_key
908 my $key = $api->create_deploy_key(
909 $project_id,
910 \%params,
911 );
912
913 Sends a "POST" request to "projects/:project_id/deploy_keys" and
914 returns the decoded response content.
915
916 delete_deploy_key
917 $api->delete_deploy_key(
918 $project_id,
919 $key_id,
920 );
921
922 Sends a "DELETE" request to
923 "projects/:project_id/deploy_keys/:key_id".
924
925 enable_deploy_key
926 my $key = $api->enable_deploy_key(
927 $project_id,
928 $key_id,
929 );
930
931 Sends a "POST" request to
932 "projects/:project_id/deploy_keys/:key_id/enable" and returns the
933 decoded response content.
934
935 Environments
936 See <https://docs.gitlab.com/ce/api/environments.html>.
937
938 environments
939 my $environments = $api->environments(
940 $project_id,
941 \%params,
942 );
943
944 Sends a "GET" request to "projects/:project_id/environments" and
945 returns the decoded response content.
946
947 create_environment
948 my $environment = $api->create_environment(
949 $project_id,
950 \%params,
951 );
952
953 Sends a "POST" request to "projects/:project_id/environments" and
954 returns the decoded response content.
955
956 edit_environment
957 my $environment = $api->edit_environment(
958 $project_id,
959 $environments_id,
960 \%params,
961 );
962
963 Sends a "PUT" request to
964 "projects/:project_id/environments/:environments_id" and returns
965 the decoded response content.
966
967 delete_environment
968 $api->delete_environment(
969 $project_id,
970 $environment_id,
971 );
972
973 Sends a "DELETE" request to
974 "projects/:project_id/environments/:environment_id".
975
976 stop_environment
977 my $environment = $api->stop_environment(
978 $project_id,
979 $environment_id,
980 );
981
982 Sends a "POST" request to
983 "projects/:project_id/environments/:environment_id/stop" and
984 returns the decoded response content.
985
986 Events
987 See <https://docs.gitlab.com/ce/api/events.html>.
988
989 all_events
990 my $events = $api->all_events(
991 \%params,
992 );
993
994 Sends a "GET" request to "events" and returns the decoded response
995 content.
996
997 user_events
998 my $events = $api->user_events(
999 $user_id,
1000 \%params,
1001 );
1002
1003 Sends a "GET" request to "users/:user_id/events" and returns the
1004 decoded response content.
1005
1006 project_events
1007 my $events = $api->project_events(
1008 $project_id,
1009 \%params,
1010 );
1011
1012 Sends a "GET" request to "projects/:project_id/events" and returns
1013 the decoded response content.
1014
1015 Feature flags
1016 See <https://docs.gitlab.com/ce/api/features.html>.
1017
1018 features
1019 my $features = $api->features();
1020
1021 Sends a "GET" request to "features" and returns the decoded
1022 response content.
1023
1024 set_feature
1025 my $feature = $api->set_feature(
1026 $name,
1027 \%params,
1028 );
1029
1030 Sends a "POST" request to "features/:name" and returns the decoded
1031 response content.
1032
1033 Gitignores
1034 See <https://docs.gitlab.com/ce/api/templates/gitignores.html>.
1035
1036 gitignores_templates
1037 my $templates = $api->gitignores_templates(
1038 \%params,
1039 );
1040
1041 Sends a "GET" request to "templates/gitignores" and returns the
1042 decoded response content.
1043
1044 gitignores_template
1045 my $template = $api->gitignores_template(
1046 $template_key,
1047 );
1048
1049 Sends a "GET" request to "templates/gitignores/:template_key" and
1050 returns the decoded response content.
1051
1052 GitLab CI YMLs
1053 See <https://docs.gitlab.com/ce/api/templates/gitlab_ci_ymls.html>.
1054
1055 gitlab_ci_ymls_templates
1056 my $templates = $api->gitlab_ci_ymls_templates(
1057 \%params,
1058 );
1059
1060 Sends a "GET" request to "templates/gitlab_ci_ymls" and returns the
1061 decoded response content.
1062
1063 gitlab_ci_ymls_template
1064 my $template = $api->gitlab_ci_ymls_template(
1065 $template_key,
1066 );
1067
1068 Sends a "GET" request to "templates/gitlab_ci_ymls/:template_key"
1069 and returns the decoded response content.
1070
1071 Groups
1072 See <https://docs.gitlab.com/ce/api/groups.html>.
1073
1074 groups
1075 my $groups = $api->groups(
1076 \%params,
1077 );
1078
1079 Sends a "GET" request to "groups" and returns the decoded response
1080 content.
1081
1082 group_subgroups
1083 my $subgroups = $api->group_subgroups(
1084 $group_id,
1085 \%params,
1086 );
1087
1088 Sends a "GET" request to "groups/:group_id/subgroups" and returns
1089 the decoded response content.
1090
1091 group_projects
1092 my $projects = $api->group_projects(
1093 $group_id,
1094 \%params,
1095 );
1096
1097 Sends a "GET" request to "groups/:group_id/projects" and returns
1098 the decoded response content.
1099
1100 group
1101 my $group = $api->group(
1102 $group_id,
1103 \%params,
1104 );
1105
1106 Sends a "GET" request to "groups/:group_id" and returns the decoded
1107 response content.
1108
1109 create_group
1110 $api->create_group(
1111 \%params,
1112 );
1113
1114 Sends a "POST" request to "groups".
1115
1116 transfer_project_to_group
1117 $api->transfer_project_to_group(
1118 $group_id,
1119 $project_id,
1120 );
1121
1122 Sends a "POST" request to "groups/:group_id/projects/:project_id".
1123
1124 edit_group
1125 my $group = $api->edit_group(
1126 $group_id,
1127 \%params,
1128 );
1129
1130 Sends a "PUT" request to "groups/:group_id" and returns the decoded
1131 response content.
1132
1133 delete_group
1134 $api->delete_group(
1135 $group_id,
1136 );
1137
1138 Sends a "DELETE" request to "groups/:group_id".
1139
1140 sync_group_with_ldap
1141 $api->sync_group_with_ldap(
1142 $group_id,
1143 );
1144
1145 Sends a "POST" request to "groups/:group_id/ldap_sync".
1146
1147 create_ldap_group_link
1148 $api->create_ldap_group_link(
1149 $group_id,
1150 \%params,
1151 );
1152
1153 Sends a "POST" request to "groups/:group_id/ldap_group_links".
1154
1155 delete_ldap_group_link
1156 $api->delete_ldap_group_link(
1157 $group_id,
1158 $cn,
1159 );
1160
1161 Sends a "DELETE" request to
1162 "groups/:group_id/ldap_group_links/:cn".
1163
1164 delete_ldap_provider_group_link
1165 $api->delete_ldap_provider_group_link(
1166 $group_id,
1167 $provider,
1168 $cn,
1169 );
1170
1171 Sends a "DELETE" request to
1172 "groups/:group_id/ldap_group_links/:provider/:cn".
1173
1174 Group access requests
1175 See <https://docs.gitlab.com/ce/api/access_requests.html>.
1176
1177 group_access_requests
1178 my $requests = $api->group_access_requests(
1179 $group_id,
1180 \%params,
1181 );
1182
1183 Sends a "GET" request to "groups/:group_id/access_requests" and
1184 returns the decoded response content.
1185
1186 request_group_access
1187 my $request = $api->request_group_access(
1188 $group_id,
1189 );
1190
1191 Sends a "POST" request to "groups/:group_id/access_requests" and
1192 returns the decoded response content.
1193
1194 approve_group_access
1195 my $request = $api->approve_group_access(
1196 $group_id,
1197 $user_id,
1198 );
1199
1200 Sends a "PUT" request to
1201 "groups/:group_id/access_requests/:user_id/approve" and returns the
1202 decoded response content.
1203
1204 deny_group_access
1205 $api->deny_group_access(
1206 $group_id,
1207 $user_id,
1208 );
1209
1210 Sends a "DELETE" request to
1211 "groups/:group_id/access_requests/:user_id".
1212
1213 Group badges
1214 See <https://docs.gitlab.com/ce/api/group_badges.html>.
1215
1216 group_badges
1217 my $badges = $api->group_badges(
1218 $group_id,
1219 );
1220
1221 Sends a "GET" request to "groups/:group_id/badges" and returns the
1222 decoded response content.
1223
1224 group_badge
1225 my $badge = $api->group_badge(
1226 $group_id,
1227 $badge_id,
1228 );
1229
1230 Sends a "GET" request to "groups/:group_id/badges/:badge_id" and
1231 returns the decoded response content.
1232
1233 create_group_badge
1234 my $badge = $api->create_group_badge(
1235 $group_id,
1236 \%params,
1237 );
1238
1239 Sends a "POST" request to "groups/:group_id/badges" and returns the
1240 decoded response content.
1241
1242 edit_group_badge
1243 my $badge = $api->edit_group_badge(
1244 $group_id,
1245 $badge_id,
1246 \%params,
1247 );
1248
1249 Sends a "PUT" request to "groups/:group_id/badges/:badge_id" and
1250 returns the decoded response content.
1251
1252 delete_group_badge
1253 $api->delete_group_badge(
1254 $group_id,
1255 $badge_id,
1256 );
1257
1258 Sends a "DELETE" request to "groups/:group_id/badges/:badge_id".
1259
1260 preview_group_badge
1261 my $preview = $api->preview_group_badge(
1262 $group_id,
1263 \%params,
1264 );
1265
1266 Sends a "GET" request to "groups/:group_id/badges/render" and
1267 returns the decoded response content.
1268
1269 Group members
1270 See <https://docs.gitlab.com/ce/api/members.html>.
1271
1272 group_members
1273 my $members = $api->group_members(
1274 $group_id,
1275 \%params,
1276 );
1277
1278 Sends a "GET" request to "groups/:group_id/members" and returns the
1279 decoded response content.
1280
1281 all_group_members
1282 my $members = $api->all_group_members(
1283 $group_id,
1284 \%params,
1285 );
1286
1287 Sends a "GET" request to "groups/:group_id/members/all" and returns
1288 the decoded response content.
1289
1290 group_member
1291 my $member = $api->group_member(
1292 $project_id,
1293 $user_id,
1294 );
1295
1296 Sends a "GET" request to "groups/:project_id/members/:user_id" and
1297 returns the decoded response content.
1298
1299 add_group_member
1300 my $member = $api->add_group_member(
1301 $group_id,
1302 \%params,
1303 );
1304
1305 Sends a "POST" request to "groups/:group_id/members" and returns
1306 the decoded response content.
1307
1308 update_group_member
1309 my $member = $api->update_group_member(
1310 $group_id,
1311 $user_id,
1312 \%params,
1313 );
1314
1315 Sends a "PUT" request to "groups/:group_id/members/:user_id" and
1316 returns the decoded response content.
1317
1318 remove_group_member
1319 $api->remove_group_member(
1320 $group_id,
1321 $user_id,
1322 );
1323
1324 Sends a "DELETE" request to "groups/:group_id/members/:user_id".
1325
1326 Issues
1327 See <https://docs.gitlab.com/ce/api/issues.html>.
1328
1329 global_issues
1330 my $issues = $api->global_issues(
1331 \%params,
1332 );
1333
1334 Sends a "GET" request to "issues" and returns the decoded response
1335 content.
1336
1337 group_issues
1338 my $issues = $api->group_issues(
1339 $group_id,
1340 \%params,
1341 );
1342
1343 Sends a "GET" request to "groups/:group_id/issues" and returns the
1344 decoded response content.
1345
1346 issues
1347 my $issues = $api->issues(
1348 $project_id,
1349 \%params,
1350 );
1351
1352 Sends a "GET" request to "projects/:project_id/issues" and returns
1353 the decoded response content.
1354
1355 issue
1356 my $issue = $api->issue(
1357 $project_id,
1358 $issue_iid,
1359 );
1360
1361 Sends a "GET" request to "projects/:project_id/issues/:issue_iid"
1362 and returns the decoded response content.
1363
1364 create_issue
1365 my $issue = $api->create_issue(
1366 $project_id,
1367 \%params,
1368 );
1369
1370 Sends a "POST" request to "projects/:project_id/issues" and returns
1371 the decoded response content.
1372
1373 edit_issue
1374 my $issue = $api->edit_issue(
1375 $project_id,
1376 $issue_iid,
1377 \%params,
1378 );
1379
1380 Sends a "PUT" request to "projects/:project_id/issues/:issue_iid"
1381 and returns the decoded response content.
1382
1383 delete_issue
1384 $api->delete_issue(
1385 $project_id,
1386 $issue_iid,
1387 );
1388
1389 Sends a "DELETE" request to
1390 "projects/:project_id/issues/:issue_iid".
1391
1392 move_issue
1393 my $issue = $api->move_issue(
1394 $project_id,
1395 $issue_iid,
1396 \%params,
1397 );
1398
1399 Sends a "POST" request to
1400 "projects/:project_id/issues/:issue_iid/move" and returns the
1401 decoded response content.
1402
1403 subscribe_to_issue
1404 my $issue = $api->subscribe_to_issue(
1405 $project_id,
1406 $issue_iid,
1407 );
1408
1409 Sends a "POST" request to
1410 "projects/:project_id/issues/:issue_iid/subscribe" and returns the
1411 decoded response content.
1412
1413 unsubscribe_from_issue
1414 my $issue = $api->unsubscribe_from_issue(
1415 $project_id,
1416 $issue_iid,
1417 );
1418
1419 Sends a "POST" request to
1420 "projects/:project_id/issues/:issue_iid/unsubscribe" and returns
1421 the decoded response content.
1422
1423 create_issue_todo
1424 my $todo = $api->create_issue_todo(
1425 $project_id,
1426 $issue_iid,
1427 );
1428
1429 Sends a "POST" request to
1430 "projects/:project_id/issues/:issue_iid/todo" and returns the
1431 decoded response content.
1432
1433 set_issue_time_estimate
1434 my $tracking = $api->set_issue_time_estimate(
1435 $project_id,
1436 $issue_iid,
1437 \%params,
1438 );
1439
1440 Sends a "POST" request to
1441 "projects/:project_id/issues/:issue_iid/time_estimate" and returns
1442 the decoded response content.
1443
1444 reset_issue_time_estimate
1445 my $tracking = $api->reset_issue_time_estimate(
1446 $project_id,
1447 $issue_iid,
1448 );
1449
1450 Sends a "POST" request to
1451 "projects/:project_id/issues/:issue_iid/reset_time_estimate" and
1452 returns the decoded response content.
1453
1454 add_issue_spent_time
1455 my $tracking = $api->add_issue_spent_time(
1456 $project_id,
1457 $issue_iid,
1458 \%params,
1459 );
1460
1461 Sends a "POST" request to
1462 "projects/:project_id/issues/:issue_iid/add_spent_time" and returns
1463 the decoded response content.
1464
1465 reset_issue_spent_time
1466 my $tracking = $api->reset_issue_spent_time(
1467 $project_id,
1468 $issue_iid,
1469 );
1470
1471 Sends a "POST" request to
1472 "projects/:project_id/issues/:issue_iid/reset_spent_time" and
1473 returns the decoded response content.
1474
1475 issue_time_stats
1476 my $tracking = $api->issue_time_stats(
1477 $project_id,
1478 $issue_iid,
1479 );
1480
1481 Sends a "GET" request to
1482 "projects/:project_id/issues/:issue_iid/time_stats" and returns the
1483 decoded response content.
1484
1485 issue_closed_by
1486 my $merge_requests = $api->issue_closed_by(
1487 $project_id,
1488 $issue_iid,
1489 );
1490
1491 Sends a "GET" request to
1492 "projects/:project_id/issues/:issue_iid/closed_by" and returns the
1493 decoded response content.
1494
1495 issue_user_agent_detail
1496 my $user_agent = $api->issue_user_agent_detail(
1497 $project_id,
1498 $issue_iid,
1499 );
1500
1501 Sends a "GET" request to
1502 "projects/:project_id/issues/:issue_iid/user_agent_detail" and
1503 returns the decoded response content.
1504
1505 Issue Boards
1506 See <https://docs.gitlab.com/ce/api/boards.html>.
1507
1508 project_boards
1509 my $boards = $api->project_boards(
1510 $project_id,
1511 \%params,
1512 );
1513
1514 Sends a "GET" request to "projects/:project_id/boards" and returns
1515 the decoded response content.
1516
1517 project_board_lists
1518 my $lists = $api->project_board_lists(
1519 $project_id,
1520 $board_id,
1521 \%params,
1522 );
1523
1524 Sends a "GET" request to
1525 "projects/:project_id/boards/:board_id/lists" and returns the
1526 decoded response content.
1527
1528 project_board_list
1529 my $list = $api->project_board_list(
1530 $project_id,
1531 $board_id,
1532 $list_id,
1533 );
1534
1535 Sends a "GET" request to
1536 "projects/:project_id/boards/:board_id/lists/:list_id" and returns
1537 the decoded response content.
1538
1539 create_project_board_list
1540 my $list = $api->create_project_board_list(
1541 $project_id,
1542 $board_id,
1543 \%params,
1544 );
1545
1546 Sends a "POST" request to
1547 "projects/:project_id/boards/:board_id/lists" and returns the
1548 decoded response content.
1549
1550 edit_project_board_list
1551 my $list = $api->edit_project_board_list(
1552 $project_id,
1553 $board_id,
1554 $list_id,
1555 \%params,
1556 );
1557
1558 Sends a "PUT" request to
1559 "projects/:project_id/boards/:board_id/lists/:list_id" and returns
1560 the decoded response content.
1561
1562 delete_project_board_list
1563 $api->delete_project_board_list(
1564 $project_id,
1565 $board_id,
1566 $list_id,
1567 );
1568
1569 Sends a "DELETE" request to
1570 "projects/:project_id/boards/:board_id/lists/:list_id".
1571
1572 Group Issue Boards
1573 See <https://docs.gitlab.com/ce/api/group_boards.html>.
1574
1575 group_boards
1576 my $boards = $api->group_boards(
1577 $group_id,
1578 );
1579
1580 Sends a "GET" request to "groups/:group_id/boards" and returns the
1581 decoded response content.
1582
1583 group_board
1584 my $board = $api->group_board(
1585 $group_id,
1586 $board_id,
1587 );
1588
1589 Sends a "GET" request to "groups/:group_id/boards/:board_id" and
1590 returns the decoded response content.
1591
1592 group_board_lists
1593 my $lists = $api->group_board_lists(
1594 $group_id,
1595 $board_id,
1596 );
1597
1598 Sends a "GET" request to "groups/:group_id/boards/:board_id/lists"
1599 and returns the decoded response content.
1600
1601 group_board_list
1602 my $list = $api->group_board_list(
1603 $group_id,
1604 $board_id,
1605 $list_id,
1606 );
1607
1608 Sends a "GET" request to
1609 "groups/:group_id/boards/:board_id/lists/:list_id" and returns the
1610 decoded response content.
1611
1612 create_group_board_list
1613 my $list = $api->create_group_board_list(
1614 $group_id,
1615 $board_id,
1616 \%params,
1617 );
1618
1619 Sends a "POST" request to "groups/:group_id/boards/:board_id/lists"
1620 and returns the decoded response content.
1621
1622 edit_group_board_list
1623 my $list = $api->edit_group_board_list(
1624 $group_id,
1625 $board_id,
1626 $list_id,
1627 \%params,
1628 );
1629
1630 Sends a "PUT" request to
1631 "groups/:group_id/boards/:board_id/lists/:list_id" and returns the
1632 decoded response content.
1633
1634 delete_group_board_list
1635 $api->delete_group_board_list(
1636 $group_id,
1637 $board_id,
1638 $list_id,
1639 );
1640
1641 Sends a "DELETE" request to
1642 "groups/:group_id/boards/:board_id/lists/:list_id".
1643
1644 Jobs
1645 See <https://docs.gitlab.com/ce/api/jobs.html>.
1646
1647 jobs
1648 my $jobs = $api->jobs(
1649 $project_id,
1650 \%params,
1651 );
1652
1653 Sends a "GET" request to "projects/:project_id/jobs" and returns
1654 the decoded response content.
1655
1656 pipeline_jobs
1657 my $jobs = $api->pipeline_jobs(
1658 $project_id,
1659 $pipeline_id,
1660 \%params,
1661 );
1662
1663 Sends a "GET" request to
1664 "projects/:project_id/pipelines/:pipeline_id/jobs" and returns the
1665 decoded response content.
1666
1667 job
1668 my $job = $api->job(
1669 $project_id,
1670 $job_id,
1671 );
1672
1673 Sends a "GET" request to "projects/:project_id/jobs/:job_id" and
1674 returns the decoded response content.
1675
1676 job_artifacts
1677 my $artifacts = $api->job_artifacts(
1678 $project_id,
1679 $job_id,
1680 );
1681
1682 Sends a "GET" request to
1683 "projects/:project_id/jobs/:job_id/artifacts" and returns the
1684 decoded response content.
1685
1686 job_artifacts_archive
1687 my $archive = $api->job_artifacts_archive(
1688 $project_id,
1689 $ref_name,
1690 \%params,
1691 );
1692
1693 Sends a "GET" request to
1694 "projects/:project_id/jobs/artifacts/:ref_name/download" and
1695 returns the decoded response content.
1696
1697 job_artifacts_file
1698 my $file = $api->job_artifacts_file(
1699 $project_id,
1700 $job_id,
1701 $artifact_path,
1702 );
1703
1704 Sends a "GET" request to
1705 "projects/:project_id/jobs/:job_id/artifacts/:artifact_path" and
1706 returns the decoded response content.
1707
1708 job_trace_file
1709 my $file = $api->job_trace_file(
1710 $project_id,
1711 $job_id,
1712 );
1713
1714 Sends a "GET" request to "projects/:project_id/jobs/:job_id/trace"
1715 and returns the decoded response content.
1716
1717 cancel_job
1718 my $job = $api->cancel_job(
1719 $project_id,
1720 $job_id,
1721 );
1722
1723 Sends a "POST" request to
1724 "projects/:project_id/jobs/:job_id/cancel" and returns the decoded
1725 response content.
1726
1727 retry_job
1728 my $job = $api->retry_job(
1729 $project_id,
1730 $job_id,
1731 );
1732
1733 Sends a "POST" request to "projects/:project_id/jobs/:job_id/retry"
1734 and returns the decoded response content.
1735
1736 erase_job
1737 my $job = $api->erase_job(
1738 $project_id,
1739 $job_id,
1740 );
1741
1742 Sends a "POST" request to "projects/:project_id/jobs/:job_id/erase"
1743 and returns the decoded response content.
1744
1745 keep_job_artifacts
1746 my $job = $api->keep_job_artifacts(
1747 $project_id,
1748 $job_id,
1749 );
1750
1751 Sends a "POST" request to
1752 "projects/:project_id/jobs/:job_id/artifacts/keep" and returns the
1753 decoded response content.
1754
1755 play_job
1756 my $job = $api->play_job(
1757 $project_id,
1758 $job_id,
1759 );
1760
1761 Sends a "POST" request to "projects/:project_id/jobs/:job_id/play"
1762 and returns the decoded response content.
1763
1764 Keys
1765 See <https://docs.gitlab.com/ce/api/keys.html>.
1766
1767 key
1768 my $key = $api->key(
1769 $key_id,
1770 );
1771
1772 Sends a "GET" request to "keys/:key_id" and returns the decoded
1773 response content.
1774
1775 Labels
1776 See <https://docs.gitlab.com/ce/api/labels.html>.
1777
1778 labels
1779 my $labels = $api->labels(
1780 $project_id,
1781 \%params,
1782 );
1783
1784 Sends a "GET" request to "projects/:project_id/labels" and returns
1785 the decoded response content.
1786
1787 create_label
1788 my $label = $api->create_label(
1789 $project_id,
1790 \%params,
1791 );
1792
1793 Sends a "POST" request to "projects/:project_id/labels" and returns
1794 the decoded response content.
1795
1796 delete_label
1797 $api->delete_label(
1798 $project_id,
1799 \%params,
1800 );
1801
1802 Sends a "DELETE" request to "projects/:project_id/labels".
1803
1804 edit_label
1805 my $label = $api->edit_label(
1806 $project_id,
1807 \%params,
1808 );
1809
1810 Sends a "PUT" request to "projects/:project_id/labels" and returns
1811 the decoded response content.
1812
1813 subscribe_to_label
1814 my $label = $api->subscribe_to_label(
1815 $project_id,
1816 $label_id,
1817 );
1818
1819 Sends a "POST" request to
1820 "projects/:project_id/labels/:label_id/subscribe" and returns the
1821 decoded response content.
1822
1823 unsubscribe_from_label
1824 $api->unsubscribe_from_label(
1825 $project_id,
1826 $label_id,
1827 );
1828
1829 Sends a "POST" request to
1830 "projects/:project_id/labels/:label_id/unsubscribe".
1831
1832 Markdown
1833 See <https://docs.gitlab.com/ce/api/markdown.html>.
1834
1835 markdown
1836 my $html = $api->markdown(
1837 \%params,
1838 );
1839
1840 Sends a "POST" request to "markdown" and returns the decoded
1841 response content.
1842
1843 Merge requests
1844 See <https://docs.gitlab.com/ce/api/merge_requests.html>.
1845
1846 global_merge_requests
1847 my $merge_requests = $api->global_merge_requests(
1848 \%params,
1849 );
1850
1851 Sends a "GET" request to "merge_requests" and returns the decoded
1852 response content.
1853
1854 merge_requests
1855 my $merge_requests = $api->merge_requests(
1856 $project_id,
1857 \%params,
1858 );
1859
1860 Sends a "GET" request to "projects/:project_id/merge_requests" and
1861 returns the decoded response content.
1862
1863 merge_request
1864 my $merge_request = $api->merge_request(
1865 $project_id,
1866 $merge_request_iid,
1867 );
1868
1869 Sends a "GET" request to
1870 "projects/:project_id/merge_requests/:merge_request_iid" and
1871 returns the decoded response content.
1872
1873 merge_request_commits
1874 my $commits = $api->merge_request_commits(
1875 $project_id,
1876 $merge_request_iid,
1877 );
1878
1879 Sends a "GET" request to
1880 "projects/:project_id/merge_requests/:merge_request_iid/commits"
1881 and returns the decoded response content.
1882
1883 merge_request_with_changes
1884 my $merge_request = $api->merge_request_with_changes(
1885 $project_id,
1886 $merge_request_iid,
1887 );
1888
1889 Sends a "GET" request to
1890 "projects/:project_id/merge_requests/:merge_request_iid/changes"
1891 and returns the decoded response content.
1892
1893 create_merge_request
1894 my $merge_request = $api->create_merge_request(
1895 $project_id,
1896 \%params,
1897 );
1898
1899 Sends a "POST" request to "projects/:project_id/merge_requests" and
1900 returns the decoded response content.
1901
1902 edit_merge_request
1903 my $merge_request = $api->edit_merge_request(
1904 $project_id,
1905 $merge_request_iid,
1906 \%params,
1907 );
1908
1909 Sends a "PUT" request to
1910 "projects/:project_id/merge_requests/:merge_request_iid" and
1911 returns the decoded response content.
1912
1913 delete_merge_request
1914 $api->delete_merge_request(
1915 $project_id,
1916 $merge_request_iid,
1917 );
1918
1919 Sends a "DELETE" request to
1920 "projects/:project_id/merge_requests/:merge_request_iid".
1921
1922 accept_merge_request
1923 my $merge_request = $api->accept_merge_request(
1924 $project_id,
1925 $merge_request_iid,
1926 \%params,
1927 );
1928
1929 Sends a "PUT" request to
1930 "projects/:project_id/merge_requests/:merge_request_iid/merge" and
1931 returns the decoded response content.
1932
1933 cancel_merge_when_pipeline_succeeds
1934 my $merge_request = $api->cancel_merge_when_pipeline_succeeds(
1935 $project_id,
1936 $merge_request_iid,
1937 );
1938
1939 Sends a "PUT" request to
1940 "projects/:project_id/merge_requests/:merge_request_iid/cancel_merge_when_pipeline_succeeds"
1941 and returns the decoded response content.
1942
1943 merge_request_closes_issues
1944 my $issues = $api->merge_request_closes_issues(
1945 $project_id,
1946 $merge_request_iid,
1947 \%params,
1948 );
1949
1950 Sends a "GET" request to
1951 "projects/:project_id/merge_requests/:merge_request_iid/closes_issues"
1952 and returns the decoded response content.
1953
1954 subscribe_to_merge_request
1955 my $merge_request = $api->subscribe_to_merge_request(
1956 $project_id,
1957 $merge_request_iid,
1958 );
1959
1960 Sends a "POST" request to
1961 "projects/:project_id/merge_requests/:merge_request_iid/subscribe"
1962 and returns the decoded response content.
1963
1964 unsubscribe_from_merge_request
1965 my $merge_request = $api->unsubscribe_from_merge_request(
1966 $project_id,
1967 $merge_request_iid,
1968 );
1969
1970 Sends a "POST" request to
1971 "projects/:project_id/merge_requests/:merge_request_iid/unsubscribe"
1972 and returns the decoded response content.
1973
1974 create_merge_request_todo
1975 my $todo = $api->create_merge_request_todo(
1976 $project_id,
1977 $merge_request_iid,
1978 );
1979
1980 Sends a "POST" request to
1981 "projects/:project_id/merge_requests/:merge_request_iid/todo" and
1982 returns the decoded response content.
1983
1984 merge_request_diff_versions
1985 my $versions = $api->merge_request_diff_versions(
1986 $project_id,
1987 $merge_request_iid,
1988 );
1989
1990 Sends a "GET" request to
1991 "projects/:project_id/merge_requests/:merge_request_iid/versions"
1992 and returns the decoded response content.
1993
1994 merge_request_diff_version
1995 my $version = $api->merge_request_diff_version(
1996 $project_id,
1997 $merge_request_iid,
1998 $version_id,
1999 );
2000
2001 Sends a "GET" request to
2002 "projects/:project_id/merge_requests/:merge_request_iid/versions/:version_id"
2003 and returns the decoded response content.
2004
2005 set_merge_request_time_estimate
2006 my $tracking = $api->set_merge_request_time_estimate(
2007 $project_id,
2008 $merge_request_iid,
2009 \%params,
2010 );
2011
2012 Sends a "POST" request to
2013 "projects/:project_id/merge_requests/:merge_request_iid/time_estimate"
2014 and returns the decoded response content.
2015
2016 reset_merge_request_time_estimate
2017 my $tracking = $api->reset_merge_request_time_estimate(
2018 $project_id,
2019 $merge_request_iid,
2020 );
2021
2022 Sends a "POST" request to
2023 "projects/:project_id/merge_requests/:merge_request_iid/reset_time_estimate"
2024 and returns the decoded response content.
2025
2026 add_merge_request_spent_time
2027 my $tracking = $api->add_merge_request_spent_time(
2028 $project_id,
2029 $merge_request_iid,
2030 \%params,
2031 );
2032
2033 Sends a "POST" request to
2034 "projects/:project_id/merge_requests/:merge_request_iid/add_spent_time"
2035 and returns the decoded response content.
2036
2037 reset_merge_request_spent_time
2038 my $tracking = $api->reset_merge_request_spent_time(
2039 $project_id,
2040 $merge_request_iid,
2041 );
2042
2043 Sends a "POST" request to
2044 "projects/:project_id/merge_requests/:merge_request_iid/reset_spent_time"
2045 and returns the decoded response content.
2046
2047 merge_request_time_stats
2048 my $tracking = $api->merge_request_time_stats(
2049 $project_id,
2050 $merge_request_iid,
2051 );
2052
2053 Sends a "GET" request to
2054 "projects/:project_id/merge_requests/:merge_request_iid/time_stats"
2055 and returns the decoded response content.
2056
2057 Milestones
2058 See <https://docs.gitlab.com/ce/api/milestones.html>.
2059
2060 project_milestones
2061 my $milestones = $api->project_milestones(
2062 $project_id,
2063 \%params,
2064 );
2065
2066 Sends a "GET" request to "projects/:project_id/milestones" and
2067 returns the decoded response content.
2068
2069 project_milestone
2070 my $milestone = $api->project_milestone(
2071 $project_id,
2072 $milestone_id,
2073 );
2074
2075 Sends a "GET" request to
2076 "projects/:project_id/milestones/:milestone_id" and returns the
2077 decoded response content.
2078
2079 create_project_milestone
2080 my $milestone = $api->create_project_milestone(
2081 $project_id,
2082 \%params,
2083 );
2084
2085 Sends a "POST" request to "projects/:project_id/milestones" and
2086 returns the decoded response content.
2087
2088 edit_project_milestone
2089 my $milestone = $api->edit_project_milestone(
2090 $project_id,
2091 $milestone_id,
2092 \%params,
2093 );
2094
2095 Sends a "PUT" request to
2096 "projects/:project_id/milestones/:milestone_id" and returns the
2097 decoded response content.
2098
2099 project_milestone_issues
2100 my $issues = $api->project_milestone_issues(
2101 $project_id,
2102 $milestone_id,
2103 \%params,
2104 );
2105
2106 Sends a "GET" request to
2107 "projects/:project_id/milestones/:milestone_id/issues" and returns
2108 the decoded response content.
2109
2110 project_milestone_merge_requests
2111 my $merge_requests = $api->project_milestone_merge_requests(
2112 $project_id,
2113 $milestone_id,
2114 \%params,
2115 );
2116
2117 Sends a "GET" request to
2118 "projects/:project_id/milestones/:milestone_id/merge_requests" and
2119 returns the decoded response content.
2120
2121 Group milestones
2122 See <https://docs.gitlab.com/ce/api/group_milestones.html>.
2123
2124 group_milestones
2125 my $milestones = $api->group_milestones(
2126 $group_id,
2127 \%params,
2128 );
2129
2130 Sends a "GET" request to "groups/:group_id/milestones" and returns
2131 the decoded response content.
2132
2133 group_milestone
2134 my $milestone = $api->group_milestone(
2135 $group_id,
2136 $milestone_id,
2137 );
2138
2139 Sends a "GET" request to
2140 "groups/:group_id/milestones/:milestone_id" and returns the decoded
2141 response content.
2142
2143 create_group_milestone
2144 my $milestone = $api->create_group_milestone(
2145 $group_id,
2146 \%params,
2147 );
2148
2149 Sends a "POST" request to "groups/:group_id/milestones" and returns
2150 the decoded response content.
2151
2152 edit_group_milestone
2153 my $milestone = $api->edit_group_milestone(
2154 $group_id,
2155 $milestone_id,
2156 \%params,
2157 );
2158
2159 Sends a "PUT" request to
2160 "groups/:group_id/milestones/:milestone_id" and returns the decoded
2161 response content.
2162
2163 group_milestone_issues
2164 my $issues = $api->group_milestone_issues(
2165 $group_id,
2166 $milestone_id,
2167 \%params,
2168 );
2169
2170 Sends a "GET" request to
2171 "groups/:group_id/milestones/:milestone_id/issues" and returns the
2172 decoded response content.
2173
2174 group_milestone_merge_requests
2175 my $merge_requests = $api->group_milestone_merge_requests(
2176 $group_id,
2177 $milestone_id,
2178 \%params,
2179 );
2180
2181 Sends a "GET" request to
2182 "groups/:group_id/milestones/:milestone_id/merge_requests" and
2183 returns the decoded response content.
2184
2185 Namespaces
2186 See <https://docs.gitlab.com/ce/api/namespaces.html>.
2187
2188 namespaces
2189 my $namespaces = $api->namespaces(
2190 \%params,
2191 );
2192
2193 Sends a "GET" request to "namespaces" and returns the decoded
2194 response content.
2195
2196 namespace
2197 my $namespace = $api->namespace(
2198 $namespace_id,
2199 );
2200
2201 Sends a "GET" request to "namespaces/:namespace_id" and returns the
2202 decoded response content.
2203
2204 Notes
2205 See <https://docs.gitlab.com/ce/api/notes.html>.
2206
2207 issue_notes
2208 my $notes = $api->issue_notes(
2209 $project_id,
2210 $issue_iid,
2211 \%params,
2212 );
2213
2214 Sends a "GET" request to
2215 "projects/:project_id/issues/:issue_iid/notes" and returns the
2216 decoded response content.
2217
2218 issue_note
2219 my $note = $api->issue_note(
2220 $project_id,
2221 $issue_iid,
2222 $note_id,
2223 );
2224
2225 Sends a "GET" request to
2226 "projects/:project_id/issues/:issue_iid/notes/:note_id" and returns
2227 the decoded response content.
2228
2229 create_issue_note
2230 my $note = $api->create_issue_note(
2231 $project_id,
2232 $issue_iid,
2233 \%params,
2234 );
2235
2236 Sends a "POST" request to
2237 "projects/:project_id/issues/:issue_iid/notes" and returns the
2238 decoded response content.
2239
2240 edit_issue_note
2241 $api->edit_issue_note(
2242 $project_id,
2243 $issue_iid,
2244 $note_id,
2245 \%params,
2246 );
2247
2248 Sends a "PUT" request to
2249 "projects/:project_id/issues/:issue_iid/notes/:note_id".
2250
2251 delete_issue_note
2252 $api->delete_issue_note(
2253 $project_id,
2254 $issue_iid,
2255 $note_id,
2256 );
2257
2258 Sends a "DELETE" request to
2259 "projects/:project_id/issues/:issue_iid/notes/:note_id".
2260
2261 snippet_notes
2262 my $notes = $api->snippet_notes(
2263 $project_id,
2264 $snippet_id,
2265 \%params,
2266 );
2267
2268 Sends a "GET" request to
2269 "projects/:project_id/snippets/:snippet_id/notes" and returns the
2270 decoded response content.
2271
2272 snippet_note
2273 my $note = $api->snippet_note(
2274 $project_id,
2275 $snippet_id,
2276 $note_id,
2277 );
2278
2279 Sends a "GET" request to
2280 "projects/:project_id/snippets/:snippet_id/notes/:note_id" and
2281 returns the decoded response content.
2282
2283 create_snippet_note
2284 my $note = $api->create_snippet_note(
2285 $project_id,
2286 $snippet_id,
2287 \%params,
2288 );
2289
2290 Sends a "POST" request to
2291 "projects/:project_id/snippets/:snippet_id/notes" and returns the
2292 decoded response content.
2293
2294 edit_snippet_note
2295 $api->edit_snippet_note(
2296 $project_id,
2297 $snippet_id,
2298 $note_id,
2299 \%params,
2300 );
2301
2302 Sends a "PUT" request to
2303 "projects/:project_id/snippets/:snippet_id/notes/:note_id".
2304
2305 delete_snippet_note
2306 $api->delete_snippet_note(
2307 $project_id,
2308 $snippet_id,
2309 $note_id,
2310 );
2311
2312 Sends a "DELETE" request to
2313 "projects/:project_id/snippets/:snippet_id/notes/:note_id".
2314
2315 merge_request_notes
2316 my $notes = $api->merge_request_notes(
2317 $project_id,
2318 $merge_request_iid,
2319 \%params,
2320 );
2321
2322 Sends a "GET" request to
2323 "projects/:project_id/merge_requests/:merge_request_iid/notes" and
2324 returns the decoded response content.
2325
2326 merge_request_note
2327 my $note = $api->merge_request_note(
2328 $project_id,
2329 $merge_request_iid,
2330 $note_id,
2331 );
2332
2333 Sends a "GET" request to
2334 "projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id"
2335 and returns the decoded response content.
2336
2337 create_merge_request_note
2338 my $note = $api->create_merge_request_note(
2339 $project_id,
2340 $merge_request_iid,
2341 \%params,
2342 );
2343
2344 Sends a "POST" request to
2345 "projects/:project_id/merge_requests/:merge_request_iid/notes" and
2346 returns the decoded response content.
2347
2348 edit_merge_request_note
2349 $api->edit_merge_request_note(
2350 $project_id,
2351 $merge_request_iid,
2352 $note_id,
2353 \%params,
2354 );
2355
2356 Sends a "PUT" request to
2357 "projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id".
2358
2359 delete_merge_request_note
2360 $api->delete_merge_request_note(
2361 $project_id,
2362 $merge_request_iid,
2363 $note_id,
2364 );
2365
2366 Sends a "DELETE" request to
2367 "projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id".
2368
2369 Discussions
2370 See <https://docs.gitlab.com/ce/api/discussions.html>.
2371
2372 issue_discussions
2373 my $discussions = $api->issue_discussions(
2374 $project_id,
2375 $issue_iid,
2376 \%params,
2377 );
2378
2379 Sends a "GET" request to
2380 "projects/:project_id/issues/:issue_iid/discussions" and returns
2381 the decoded response content.
2382
2383 issue_discussion
2384 my $discussion = $api->issue_discussion(
2385 $project_id,
2386 $issue_iid,
2387 $discussion_id,
2388 );
2389
2390 Sends a "GET" request to
2391 "projects/:project_id/issues/:issue_iid/discussions/:discussion_id"
2392 and returns the decoded response content.
2393
2394 create_issue_discussion
2395 my $discussion = $api->create_issue_discussion(
2396 $project_id,
2397 $issue_iid,
2398 \%params,
2399 );
2400
2401 Sends a "POST" request to
2402 "projects/:project_id/issues/:issue_iid/discussions" and returns
2403 the decoded response content.
2404
2405 create_issue_discussion_note
2406 $api->create_issue_discussion_note(
2407 $project_id,
2408 $issue_iid,
2409 $discussion_id,
2410 \%params,
2411 );
2412
2413 Sends a "POST" request to
2414 "projects/:project_id/issues/:issue_iid/discussions/:discussion_id/notes".
2415
2416 edit_issue_discussion_note
2417 $api->edit_issue_discussion_note(
2418 $project_id,
2419 $issue_iid,
2420 $discussion_id,
2421 $note_id,
2422 \%params,
2423 );
2424
2425 Sends a "PUT" request to
2426 "projects/:project_id/issues/:issue_iid/discussions/:discussion_id/notes/:note_id".
2427
2428 delete_issue_discussion_note
2429 $api->delete_issue_discussion_note(
2430 $project_id,
2431 $issue_iid,
2432 $discussion_id,
2433 $note_id,
2434 );
2435
2436 Sends a "DELETE" request to
2437 "projects/:project_id/issues/:issue_iid/discussions/:discussion_id/notes/:note_id".
2438
2439 project_snippet_discussions
2440 my $discussions = $api->project_snippet_discussions(
2441 $project_id,
2442 $snippet_id,
2443 \%params,
2444 );
2445
2446 Sends a "GET" request to
2447 "projects/:project_id/snippets/:snippet_id/discussions" and returns
2448 the decoded response content.
2449
2450 project_snippet_discussion
2451 my $discussion = $api->project_snippet_discussion(
2452 $project_id,
2453 $snippet_id,
2454 $discussion_id,
2455 );
2456
2457 Sends a "GET" request to
2458 "projects/:project_id/snippets/:snippet_id/discussions/:discussion_id"
2459 and returns the decoded response content.
2460
2461 create_project_snippet_discussion
2462 my $discussion = $api->create_project_snippet_discussion(
2463 $project_id,
2464 $snippet_id,
2465 \%params,
2466 );
2467
2468 Sends a "POST" request to
2469 "projects/:project_id/snippets/:snippet_id/discussions" and returns
2470 the decoded response content.
2471
2472 create_project_snippet_discussion_note
2473 $api->create_project_snippet_discussion_note(
2474 $project_id,
2475 $snippet_id,
2476 $discussion_id,
2477 \%params,
2478 );
2479
2480 Sends a "POST" request to
2481 "projects/:project_id/snippets/:snippet_id/discussions/:discussion_id/notes".
2482
2483 edit_project_snippet_discussion_note
2484 $api->edit_project_snippet_discussion_note(
2485 $project_id,
2486 $snippet_id,
2487 $discussion_id,
2488 $note_id,
2489 \%params,
2490 );
2491
2492 Sends a "PUT" request to
2493 "projects/:project_id/snippets/:snippet_id/discussions/:discussion_id/notes/:note_id".
2494
2495 delete_project_snippet_discussion_note
2496 $api->delete_project_snippet_discussion_note(
2497 $project_id,
2498 $snippet_id,
2499 $discussion_id,
2500 $note_id,
2501 );
2502
2503 Sends a "DELETE" request to
2504 "projects/:project_id/snippets/:snippet_id/discussions/:discussion_id/notes/:note_id".
2505
2506 merge_request_discussions
2507 my $discussions = $api->merge_request_discussions(
2508 $project_id,
2509 $merge_request_iid,
2510 \%params,
2511 );
2512
2513 Sends a "GET" request to
2514 "projects/:project_id/merge_requests/:merge_request_iid/discussions"
2515 and returns the decoded response content.
2516
2517 merge_request_discussion
2518 my $discussion = $api->merge_request_discussion(
2519 $project_id,
2520 $merge_request_iid,
2521 $discussion_id,
2522 );
2523
2524 Sends a "GET" request to
2525 "projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id"
2526 and returns the decoded response content.
2527
2528 create_merge_request_discussion
2529 my $discussion = $api->create_merge_request_discussion(
2530 $project_id,
2531 $merge_request_iid,
2532 \%params,
2533 );
2534
2535 Sends a "POST" request to
2536 "projects/:project_id/merge_requests/:merge_request_iid/discussions"
2537 and returns the decoded response content.
2538
2539 resolve_merge_request_discussion
2540 $api->resolve_merge_request_discussion(
2541 $project_id,
2542 $merge_request_iid,
2543 $discussion_id,
2544 \%params,
2545 );
2546
2547 Sends a "PUT" request to
2548 "projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id".
2549
2550 create_merge_request_discussion_note
2551 $api->create_merge_request_discussion_note(
2552 $project_id,
2553 $merge_request_iid,
2554 $discussion_id,
2555 \%params,
2556 );
2557
2558 Sends a "POST" request to
2559 "projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes".
2560
2561 edit_merge_request_discussion_note
2562 $api->edit_merge_request_discussion_note(
2563 $project_id,
2564 $merge_request_iid,
2565 $discussion_id,
2566 $note_id,
2567 \%params,
2568 );
2569
2570 Sends a "PUT" request to
2571 "projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes/:note_id".
2572
2573 delete_merge_request_discussion_note
2574 $api->delete_merge_request_discussion_note(
2575 $project_id,
2576 $merge_request_iid,
2577 $discussion_id,
2578 $note_id,
2579 );
2580
2581 Sends a "DELETE" request to
2582 "projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes/:note_id".
2583
2584 commit_discussions
2585 my $discussions = $api->commit_discussions(
2586 $project_id,
2587 $commit_id,
2588 \%params,
2589 );
2590
2591 Sends a "GET" request to
2592 "projects/:project_id/commits/:commit_id/discussions" and returns
2593 the decoded response content.
2594
2595 commit_discussion
2596 my $discussion = $api->commit_discussion(
2597 $project_id,
2598 $commit_id,
2599 $discussion_id,
2600 );
2601
2602 Sends a "GET" request to
2603 "projects/:project_id/commits/:commit_id/discussions/:discussion_id"
2604 and returns the decoded response content.
2605
2606 create_commit_discussion
2607 my $discussion = $api->create_commit_discussion(
2608 $project_id,
2609 $commit_id,
2610 \%params,
2611 );
2612
2613 Sends a "POST" request to
2614 "projects/:project_id/commits/:commit_id/discussions" and returns
2615 the decoded response content.
2616
2617 create_commit_discussion_note
2618 $api->create_commit_discussion_note(
2619 $project_id,
2620 $commit_id,
2621 $discussion_id,
2622 \%params,
2623 );
2624
2625 Sends a "POST" request to
2626 "projects/:project_id/commits/:commit_id/discussions/:discussion_id/notes".
2627
2628 edit_commit_discussion_note
2629 $api->edit_commit_discussion_note(
2630 $project_id,
2631 $commit_id,
2632 $discussion_id,
2633 $note_id,
2634 \%params,
2635 );
2636
2637 Sends a "PUT" request to
2638 "projects/:project_id/commits/:commit_id/discussions/:discussion_id/notes/:note_id".
2639
2640 delete_commit_discussion_note
2641 $api->delete_commit_discussion_note(
2642 $project_id,
2643 $commit_id,
2644 $discussion_id,
2645 $note_id,
2646 );
2647
2648 Sends a "DELETE" request to
2649 "projects/:project_id/commits/:commit_id/discussions/:discussion_id/notes/:note_id".
2650
2651 Resource label events
2652 See <https://docs.gitlab.com/ce/api/resource_label_events.html>.
2653
2654 issue_resource_label_events
2655 my $events = $api->issue_resource_label_events(
2656 $project_id,
2657 $issue_iid,
2658 );
2659
2660 Sends a "GET" request to
2661 "projects/:project_id/issues/:issue_iid/resource_label_events" and
2662 returns the decoded response content.
2663
2664 issue_resource_label_event
2665 my $event = $api->issue_resource_label_event(
2666 $project_id,
2667 $issue_iid,
2668 $resource_label_event_id,
2669 );
2670
2671 Sends a "GET" request to
2672 "projects/:project_id/issues/:issue_iid/resource_label_events/:resource_label_event_id"
2673 and returns the decoded response content.
2674
2675 merge_request_resource_label_events
2676 my $events = $api->merge_request_resource_label_events(
2677 $project_id,
2678 $merge_request_iid,
2679 );
2680
2681 Sends a "GET" request to
2682 "projects/:project_id/merge_requests/:merge_request_iid/resource_label_events"
2683 and returns the decoded response content.
2684
2685 merge_request_resource_label_event
2686 my $event = $api->merge_request_resource_label_event(
2687 $project_id,
2688 $merge_request_iid,
2689 $resource_label_event_id,
2690 );
2691
2692 Sends a "GET" request to
2693 "projects/:project_id/merge_requests/:merge_request_iid/resource_label_events/:resource_label_event_id"
2694 and returns the decoded response content.
2695
2696 Notification settings
2697 See <https://docs.gitlab.com/ce/api/notification_settings.html>.
2698
2699 global_notification_settings
2700 my $settings = $api->global_notification_settings();
2701
2702 Sends a "GET" request to "notification_settings" and returns the
2703 decoded response content.
2704
2705 set_global_notification_settings
2706 my $settings = $api->set_global_notification_settings(
2707 \%params,
2708 );
2709
2710 Sends a "PUT" request to "notification_settings" and returns the
2711 decoded response content.
2712
2713 group_notification_settings
2714 my $settings = $api->group_notification_settings(
2715 $group_id,
2716 );
2717
2718 Sends a "GET" request to "groups/:group_id/notification_settings"
2719 and returns the decoded response content.
2720
2721 project_notification_settings
2722 my $settings = $api->project_notification_settings(
2723 $project_id,
2724 );
2725
2726 Sends a "GET" request to
2727 "projects/:project_id/notification_settings" and returns the
2728 decoded response content.
2729
2730 set_group_notification_settings
2731 my $settings = $api->set_group_notification_settings(
2732 $group_id,
2733 \%params,
2734 );
2735
2736 Sends a "PUT" request to "groups/:group_id/notification_settings"
2737 and returns the decoded response content.
2738
2739 set_project_notification_settings
2740 my $settings = $api->set_project_notification_settings(
2741 $project_id,
2742 \%params,
2743 );
2744
2745 Sends a "PUT" request to
2746 "projects/:project_id/notification_settings" and returns the
2747 decoded response content.
2748
2749 Licenses
2750 See <https://docs.gitlab.com/ce/api/templates/licenses.html>.
2751
2752 license_templates
2753 my $templates = $api->license_templates(
2754 \%params,
2755 );
2756
2757 Sends a "GET" request to "templates/licenses" and returns the
2758 decoded response content.
2759
2760 license_template
2761 my $template = $api->license_template(
2762 $template_key,
2763 \%params,
2764 );
2765
2766 Sends a "GET" request to "templates/licenses/:template_key" and
2767 returns the decoded response content.
2768
2769 Pages domains
2770 See <https://docs.gitlab.com/ce/api/pages_domains.html>.
2771
2772 global_pages_domains
2773 my $domains = $api->global_pages_domains(
2774 \%params,
2775 );
2776
2777 Sends a "GET" request to "pages/domains" and returns the decoded
2778 response content.
2779
2780 pages_domains
2781 my $domains = $api->pages_domains(
2782 $project_id,
2783 \%params,
2784 );
2785
2786 Sends a "GET" request to "projects/:project_id/pages/domains" and
2787 returns the decoded response content.
2788
2789 pages_domain
2790 my $domain = $api->pages_domain(
2791 $project_id,
2792 $domain,
2793 );
2794
2795 Sends a "GET" request to
2796 "projects/:project_id/pages/domains/:domain" and returns the
2797 decoded response content.
2798
2799 create_pages_domain
2800 my $domain = $api->create_pages_domain(
2801 $project_id,
2802 \%params,
2803 );
2804
2805 Sends a "POST" request to "projects/:project_id/pages/domains" and
2806 returns the decoded response content.
2807
2808 edit_pages_domain
2809 my $domain = $api->edit_pages_domain(
2810 $project_id,
2811 $domain,
2812 \%params,
2813 );
2814
2815 Sends a "PUT" request to
2816 "projects/:project_id/pages/domains/:domain" and returns the
2817 decoded response content.
2818
2819 delete_pages_domain
2820 $api->delete_pages_domain(
2821 $project_id,
2822 $domain,
2823 );
2824
2825 Sends a "DELETE" request to
2826 "projects/:project_id/pages/domains/:domain".
2827
2828 Pipelines
2829 See <https://docs.gitlab.com/ce/api/pipelines.html>.
2830
2831 pipelines
2832 my $pipelines = $api->pipelines(
2833 $project_id,
2834 \%params,
2835 );
2836
2837 Sends a "GET" request to "projects/:project_id/pipelines" and
2838 returns the decoded response content.
2839
2840 pipeline
2841 my $pipeline = $api->pipeline(
2842 $project_id,
2843 $pipeline_id,
2844 );
2845
2846 Sends a "GET" request to
2847 "projects/:project_id/pipelines/:pipeline_id" and returns the
2848 decoded response content.
2849
2850 create_pipeline
2851 my $pipeline = $api->create_pipeline(
2852 $project_id,
2853 \%params,
2854 );
2855
2856 Sends a "POST" request to "projects/:project_id/pipeline" and
2857 returns the decoded response content.
2858
2859 Git ref (branch or tag) name must be specified in the "ref" field
2860 of the %params hash. It's also possible to pass variables to a
2861 pipeline in the "variables" field like in the following example:
2862
2863 my $pipeline = $api->create_pipeline(
2864 $project_id,
2865 {
2866 'ref' => 'master',
2867 variables => [
2868 { 'key' => 'VARIABLE1', 'value' => 'VALUE1' },
2869 { 'key' => 'VARIABLE2', 'value' => 'VALUE2' },
2870 ],
2871 },
2872 );
2873
2874 retry_pipeline_jobs
2875 my $pipeline = $api->retry_pipeline_jobs(
2876 $project_id,
2877 $pipeline_id,
2878 );
2879
2880 Sends a "POST" request to
2881 "projects/:project_id/pipelines/:pipeline_id/retry" and returns the
2882 decoded response content.
2883
2884 cancel_pipeline_jobs
2885 my $pipeline = $api->cancel_pipeline_jobs(
2886 $project_id,
2887 $pipeline_id,
2888 );
2889
2890 Sends a "POST" request to
2891 "projects/:project_id/pipelines/:pipeline_id/cancel" and returns
2892 the decoded response content.
2893
2894 Pipeline triggers
2895 See <https://docs.gitlab.com/ce/api/pipeline_triggers.html>.
2896
2897 triggers
2898 my $triggers = $api->triggers(
2899 $project_id,
2900 \%params,
2901 );
2902
2903 Sends a "GET" request to "projects/:project_id/triggers" and
2904 returns the decoded response content.
2905
2906 trigger
2907 my $trigger = $api->trigger(
2908 $project_id,
2909 $trigger_id,
2910 );
2911
2912 Sends a "GET" request to
2913 "projects/:project_id/triggers/:trigger_id" and returns the decoded
2914 response content.
2915
2916 create_trigger
2917 my $trigger = $api->create_trigger(
2918 $project_id,
2919 \%params,
2920 );
2921
2922 Sends a "POST" request to "projects/:project_id/triggers" and
2923 returns the decoded response content.
2924
2925 edit_trigger
2926 my $trigger = $api->edit_trigger(
2927 $project_id,
2928 $trigger_id,
2929 \%params,
2930 );
2931
2932 Sends a "PUT" request to
2933 "projects/:project_id/triggers/:trigger_id" and returns the decoded
2934 response content.
2935
2936 take_ownership_of_trigger
2937 my $trigger = $api->take_ownership_of_trigger(
2938 $project_id,
2939 $trigger_id,
2940 );
2941
2942 Sends a "POST" request to
2943 "projects/:project_id/triggers/:trigger_id/take_ownership" and
2944 returns the decoded response content.
2945
2946 delete_trigger
2947 $api->delete_trigger(
2948 $project_id,
2949 $trigger_id,
2950 );
2951
2952 Sends a "DELETE" request to
2953 "projects/:project_id/triggers/:trigger_id".
2954
2955 trigger_pipeline
2956 my $pipeline = $api->trigger_pipeline(
2957 $project_id,
2958 \%params,
2959 );
2960
2961 Sends a "POST" request to "projects/:project_id/trigger/pipeline"
2962 and returns the decoded response content.
2963
2964 The API authentication token ("private_token" or "access_token"
2965 parameters in a constructor) is not needed when using this method,
2966 however You must pass trigger token (generated at the trigger
2967 creation) as "token" field and git ref name as "ref" field in the
2968 %params hash. You can also pass variables to be set in a pipeline
2969 in the "variables" field. Example:
2970
2971 my $pipeline = $api->trigger_pipeline(
2972 $project_id,
2973 {
2974 token => 'd69dba9162ab6ac72fa0993496286ada',
2975 'ref' => 'master',
2976 variables => {
2977 variable1 => 'value1',
2978 variable2 => 'value2',
2979 },
2980 },
2981 );
2982
2983 Read more at
2984 <https://docs.gitlab.com/ce/ci/triggers/#triggering-a-pipeline>.
2985
2986 Pipeline schedules
2987 See <https://docs.gitlab.com/ce/api/pipeline_schedules.html>.
2988
2989 pipeline_schedules
2990 my $schedules = $api->pipeline_schedules(
2991 $project_id,
2992 \%params,
2993 );
2994
2995 Sends a "GET" request to "projects/:project_id/pipeline_schedules"
2996 and returns the decoded response content.
2997
2998 pipeline_schedule
2999 my $schedule = $api->pipeline_schedule(
3000 $project_id,
3001 $pipeline_schedule_id,
3002 );
3003
3004 Sends a "GET" request to
3005 "projects/:project_id/pipeline_schedules/:pipeline_schedule_id" and
3006 returns the decoded response content.
3007
3008 create_pipeline_schedule
3009 my $schedule = $api->create_pipeline_schedule(
3010 $project_id,
3011 \%params,
3012 );
3013
3014 Sends a "POST" request to "projects/:project_id/pipeline_schedules"
3015 and returns the decoded response content.
3016
3017 edit_pipeline_schedule
3018 my $schedule = $api->edit_pipeline_schedule(
3019 $project_id,
3020 $pipeline_schedule_id,
3021 \%params,
3022 );
3023
3024 Sends a "PUT" request to
3025 "projects/:project_id/pipeline_schedules/:pipeline_schedule_id" and
3026 returns the decoded response content.
3027
3028 take_ownership_of_pipeline_schedule
3029 my $schedule = $api->take_ownership_of_pipeline_schedule(
3030 $project_id,
3031 $pipeline_schedule_id,
3032 );
3033
3034 Sends a "POST" request to
3035 "projects/:project_id/pipeline_schedules/:pipeline_schedule_id/take_ownership"
3036 and returns the decoded response content.
3037
3038 delete_pipeline_schedule
3039 my $schedule = $api->delete_pipeline_schedule(
3040 $project_id,
3041 $pipeline_schedule_id,
3042 );
3043
3044 Sends a "DELETE" request to
3045 "projects/:project_id/pipeline_schedules/:pipeline_schedule_id" and
3046 returns the decoded response content.
3047
3048 create_pipeline_schedule_variable
3049 my $variable = $api->create_pipeline_schedule_variable(
3050 $project_id,
3051 $pipeline_schedule_id,
3052 \%params,
3053 );
3054
3055 Sends a "POST" request to
3056 "projects/:project_id/pipeline_schedules/:pipeline_schedule_id/variables"
3057 and returns the decoded response content.
3058
3059 edit_pipeline_schedule_variable
3060 my $variable = $api->edit_pipeline_schedule_variable(
3061 $project_id,
3062 $pipeline_schedule_id,
3063 $variable_key,
3064 \%params,
3065 );
3066
3067 Sends a "PUT" request to
3068 "projects/:project_id/pipeline_schedules/:pipeline_schedule_id/variables/:variable_key"
3069 and returns the decoded response content.
3070
3071 delete_pipeline_schedule_variable
3072 my $variable = $api->delete_pipeline_schedule_variable(
3073 $project_id,
3074 $pipeline_schedule_id,
3075 $variable_key,
3076 );
3077
3078 Sends a "DELETE" request to
3079 "projects/:project_id/pipeline_schedules/:pipeline_schedule_id/variables/:variable_key"
3080 and returns the decoded response content.
3081
3082 Projects
3083 See <https://docs.gitlab.com/ce/api/projects.html>.
3084
3085 projects
3086 my $projects = $api->projects(
3087 \%params,
3088 );
3089
3090 Sends a "GET" request to "projects" and returns the decoded
3091 response content.
3092
3093 user_projects
3094 my $projects = $api->user_projects(
3095 $user_id,
3096 \%params,
3097 );
3098
3099 Sends a "GET" request to "users/:user_id/projects" and returns the
3100 decoded response content.
3101
3102 project
3103 my $project = $api->project(
3104 $project_id,
3105 \%params,
3106 );
3107
3108 Sends a "GET" request to "projects/:project_id" and returns the
3109 decoded response content.
3110
3111 project_users
3112 my $users = $api->project_users(
3113 $project_id,
3114 \%params,
3115 );
3116
3117 Sends a "GET" request to "projects/:project_id/users" and returns
3118 the decoded response content.
3119
3120 create_project
3121 my $project = $api->create_project(
3122 \%params,
3123 );
3124
3125 Sends a "POST" request to "projects" and returns the decoded
3126 response content.
3127
3128 create_project_for_user
3129 $api->create_project_for_user(
3130 $user_id,
3131 \%params,
3132 );
3133
3134 Sends a "POST" request to "projects/user/:user_id".
3135
3136 edit_project
3137 $api->edit_project(
3138 $project_id,
3139 \%params,
3140 );
3141
3142 Sends a "PUT" request to "projects/:project_id".
3143
3144 fork_project
3145 $api->fork_project(
3146 $project_id,
3147 \%params,
3148 );
3149
3150 Sends a "POST" request to "projects/:project_id/fork".
3151
3152 project_forks
3153 my $forks = $api->project_forks(
3154 $project_id,
3155 \%params,
3156 );
3157
3158 Sends a "GET" request to "projects/:project_id/forks" and returns
3159 the decoded response content.
3160
3161 start_project
3162 my $project = $api->start_project(
3163 $project_id,
3164 );
3165
3166 Sends a "POST" request to "projects/:project_id/star" and returns
3167 the decoded response content.
3168
3169 unstar_project
3170 my $project = $api->unstar_project(
3171 $project_id,
3172 );
3173
3174 Sends a "POST" request to "projects/:project_id/unstar" and returns
3175 the decoded response content.
3176
3177 project_languages
3178 my $languages = $api->project_languages(
3179 $project_id,
3180 );
3181
3182 Sends a "GET" request to "projects/:project_id/languages" and
3183 returns the decoded response content.
3184
3185 archive_project
3186 my $project = $api->archive_project(
3187 $project_id,
3188 );
3189
3190 Sends a "POST" request to "projects/:project_id/archive" and
3191 returns the decoded response content.
3192
3193 unarchive_project
3194 my $project = $api->unarchive_project(
3195 $project_id,
3196 );
3197
3198 Sends a "POST" request to "projects/:project_id/unarchive" and
3199 returns the decoded response content.
3200
3201 delete_project
3202 $api->delete_project(
3203 $project_id,
3204 );
3205
3206 Sends a "DELETE" request to "projects/:project_id".
3207
3208 upload_file_to_project
3209 my $upload = $api->upload_file_to_project(
3210 $project_id,
3211 \%params,
3212 );
3213
3214 Sends a "POST" request to "projects/:project_id/uploads" and
3215 returns the decoded response content.
3216
3217 The "file" parameter must point to a readable file on the local
3218 filesystem.
3219
3220 share_project_with_group
3221 $api->share_project_with_group(
3222 $project_id,
3223 \%params,
3224 );
3225
3226 Sends a "POST" request to "projects/:project_id/share".
3227
3228 unshare_project_with_group
3229 $api->unshare_project_with_group(
3230 $project_id,
3231 $group_id,
3232 );
3233
3234 Sends a "DELETE" request to "projects/:project_id/share/:group_id".
3235
3236 project_hooks
3237 my $hooks = $api->project_hooks(
3238 $project_id,
3239 );
3240
3241 Sends a "GET" request to "projects/:project_id/hooks" and returns
3242 the decoded response content.
3243
3244 project_hook
3245 my $hook = $api->project_hook(
3246 $project_id,
3247 $hook_id,
3248 );
3249
3250 Sends a "GET" request to "projects/:project_id/hooks/:hook_id" and
3251 returns the decoded response content.
3252
3253 create_project_hook
3254 my $hook = $api->create_project_hook(
3255 $project_id,
3256 \%params,
3257 );
3258
3259 Sends a "POST" request to "projects/:project_id/hooks" and returns
3260 the decoded response content.
3261
3262 edit_project_hook
3263 my $hook = $api->edit_project_hook(
3264 $project_id,
3265 $hook_id,
3266 \%params,
3267 );
3268
3269 Sends a "PUT" request to "projects/:project_id/hooks/:hook_id" and
3270 returns the decoded response content.
3271
3272 delete_project_hook
3273 $api->delete_project_hook(
3274 $project_id,
3275 $hook_id,
3276 );
3277
3278 Sends a "DELETE" request to "projects/:project_id/hooks/:hook_id".
3279
3280 set_project_fork
3281 $api->set_project_fork(
3282 $project_id,
3283 $from_project_id,
3284 );
3285
3286 Sends a "POST" request to
3287 "projects/:project_id/fork/:from_project_id".
3288
3289 clear_project_fork
3290 $api->clear_project_fork(
3291 $project_id,
3292 );
3293
3294 Sends a "DELETE" request to "projects/:project_id/fork".
3295
3296 start_housekeeping
3297 $api->start_housekeeping(
3298 $project_id,
3299 );
3300
3301 Sends a "POST" request to "projects/:project_id/housekeeping".
3302
3303 transfer_project_to_namespace
3304 $api->transfer_project_to_namespace(
3305 $project_id,
3306 \%params,
3307 );
3308
3309 Sends a "PUT" request to "projects/:project_id/transfer".
3310
3311 Project access requests
3312 See <https://docs.gitlab.com/ce/api/access_requests.html>.
3313
3314 project_access_requests
3315 my $requests = $api->project_access_requests(
3316 $project_id,
3317 \%params,
3318 );
3319
3320 Sends a "GET" request to "projects/:project_id/access_requests" and
3321 returns the decoded response content.
3322
3323 request_project_access
3324 my $request = $api->request_project_access(
3325 $project_id,
3326 );
3327
3328 Sends a "POST" request to "projects/:project_id/access_requests"
3329 and returns the decoded response content.
3330
3331 approve_project_access
3332 my $request = $api->approve_project_access(
3333 $project_id,
3334 $user_id,
3335 );
3336
3337 Sends a "PUT" request to
3338 "projects/:project_id/access_requests/:user_id/approve" and returns
3339 the decoded response content.
3340
3341 deny_project_access
3342 $api->deny_project_access(
3343 $project_id,
3344 $user_id,
3345 );
3346
3347 Sends a "DELETE" request to
3348 "projects/:project_id/access_requests/:user_id".
3349
3350 Project badges
3351 See <https://docs.gitlab.com/ce/api/project_badges.html>.
3352
3353 project_badges
3354 my $badges = $api->project_badges(
3355 $project_id,
3356 );
3357
3358 Sends a "GET" request to "projects/:project_id/badges" and returns
3359 the decoded response content.
3360
3361 project_badge
3362 my $badge = $api->project_badge(
3363 $project_id,
3364 $badge_id,
3365 );
3366
3367 Sends a "GET" request to "projects/:project_id/badges/:badge_id"
3368 and returns the decoded response content.
3369
3370 create_project_badge
3371 my $badge = $api->create_project_badge(
3372 $project_id,
3373 \%params,
3374 );
3375
3376 Sends a "POST" request to "projects/:project_id/badges" and returns
3377 the decoded response content.
3378
3379 edit_project_badge
3380 my $badge = $api->edit_project_badge(
3381 $project_id,
3382 $badge_id,
3383 \%params,
3384 );
3385
3386 Sends a "PUT" request to "projects/:project_id/badges/:badge_id"
3387 and returns the decoded response content.
3388
3389 delete_project_badge
3390 $api->delete_project_badge(
3391 $project_id,
3392 $badge_id,
3393 );
3394
3395 Sends a "DELETE" request to
3396 "projects/:project_id/badges/:badge_id".
3397
3398 preview_project_badge
3399 my $preview = $api->preview_project_badge(
3400 $project_id,
3401 \%params,
3402 );
3403
3404 Sends a "GET" request to "projects/:project_id/badges/render" and
3405 returns the decoded response content.
3406
3407 Project import/export
3408 See <https://docs.gitlab.com/ce/api/project_import_export.html>.
3409
3410 schedule_project_export
3411 $api->schedule_project_export(
3412 $project_id,
3413 \%params,
3414 );
3415
3416 Sends a "POST" request to "projects/:project_id/export".
3417
3418 project_export_status
3419 my $status = $api->project_export_status(
3420 $project_id,
3421 );
3422
3423 Sends a "GET" request to "projects/:project_id/export" and returns
3424 the decoded response content.
3425
3426 download_project_export
3427 my $download = $api->download_project_export(
3428 $project_id,
3429 );
3430
3431 Sends a "GET" request to "projects/:project_id/export/download" and
3432 returns the decoded response content.
3433
3434 schedule_project_import
3435 $api->schedule_project_import(
3436 \%params,
3437 );
3438
3439 Sends a "POST" request to "projects/import".
3440
3441 project_import_status
3442 my $status = $api->project_import_status(
3443 $project_id,
3444 );
3445
3446 Sends a "GET" request to "projects/:project_id/import" and returns
3447 the decoded response content.
3448
3449 Project members
3450 See <https://docs.gitlab.com/ce/api/members.html>.
3451
3452 project_members
3453 my $members = $api->project_members(
3454 $project_id,
3455 \%params,
3456 );
3457
3458 Sends a "GET" request to "projects/:project_id/members" and returns
3459 the decoded response content.
3460
3461 all_project_members
3462 my $members = $api->all_project_members(
3463 $project_id,
3464 \%params,
3465 );
3466
3467 Sends a "GET" request to "projects/:project_id/members/all" and
3468 returns the decoded response content.
3469
3470 project_member
3471 my $member = $api->project_member(
3472 $project_id,
3473 $user_id,
3474 );
3475
3476 Sends a "GET" request to "projects/:project_id/members/:user_id"
3477 and returns the decoded response content.
3478
3479 add_project_member
3480 my $member = $api->add_project_member(
3481 $project_id,
3482 \%params,
3483 );
3484
3485 Sends a "POST" request to "projects/:project_id/members" and
3486 returns the decoded response content.
3487
3488 update_project_member
3489 my $member = $api->update_project_member(
3490 $project_id,
3491 $user_id,
3492 \%params,
3493 );
3494
3495 Sends a "PUT" request to "projects/:project_id/members/:user_id"
3496 and returns the decoded response content.
3497
3498 remove_project_member
3499 $api->remove_project_member(
3500 $project_id,
3501 $user_id,
3502 );
3503
3504 Sends a "DELETE" request to
3505 "projects/:project_id/members/:user_id".
3506
3507 Project snippets
3508 See <https://docs.gitlab.com/ce/api/project_snippets.html>.
3509
3510 project_snippets
3511 my $snippets = $api->project_snippets(
3512 $project_id,
3513 \%params,
3514 );
3515
3516 Sends a "GET" request to "projects/:project_id/snippets" and
3517 returns the decoded response content.
3518
3519 project_snippet
3520 my $snippet = $api->project_snippet(
3521 $project_id,
3522 $snippet_id,
3523 );
3524
3525 Sends a "GET" request to
3526 "projects/:project_id/snippets/:snippet_id" and returns the decoded
3527 response content.
3528
3529 create_project_snippet
3530 $api->create_project_snippet(
3531 $project_id,
3532 \%params,
3533 );
3534
3535 Sends a "POST" request to "projects/:project_id/snippets".
3536
3537 edit_project_snippet
3538 $api->edit_project_snippet(
3539 $project_id,
3540 $snippet_id,
3541 \%params,
3542 );
3543
3544 Sends a "PUT" request to
3545 "projects/:project_id/snippets/:snippet_id".
3546
3547 delete_project_snippet
3548 $api->delete_project_snippet(
3549 $project_id,
3550 $snippet_id,
3551 );
3552
3553 Sends a "DELETE" request to
3554 "projects/:project_id/snippets/:snippet_id".
3555
3556 project_snippet_content
3557 my $content = $api->project_snippet_content(
3558 $project_id,
3559 $snippet_id,
3560 );
3561
3562 Sends a "GET" request to
3563 "projects/:project_id/snippets/:snippet_id/raw" and returns the
3564 decoded response content.
3565
3566 project_snippet_user_agent_detail
3567 my $user_agent = $api->project_snippet_user_agent_detail(
3568 $project_id,
3569 $snippet_id,
3570 );
3571
3572 Sends a "GET" request to
3573 "projects/:project_id/snippets/:snippet_id/user_agent_detail" and
3574 returns the decoded response content.
3575
3576 Protected branches
3577 See <https://docs.gitlab.com/ce/api/protected_branches.html>.
3578
3579 protected_branches
3580 my $branches = $api->protected_branches(
3581 $project_id,
3582 \%params,
3583 );
3584
3585 Sends a "GET" request to "projects/:project_id/protected_branches"
3586 and returns the decoded response content.
3587
3588 protected_branch
3589 my $branch = $api->protected_branch(
3590 $project_id,
3591 $branch_name,
3592 );
3593
3594 Sends a "GET" request to
3595 "projects/:project_id/protected_branches/:branch_name" and returns
3596 the decoded response content.
3597
3598 protect_branch
3599 my $branch = $api->protect_branch(
3600 $project_id,
3601 \%params,
3602 );
3603
3604 Sends a "POST" request to "projects/:project_id/protected_branches"
3605 and returns the decoded response content.
3606
3607 unprotect_branch
3608 $api->unprotect_branch(
3609 $project_id,
3610 $branch_name,
3611 );
3612
3613 Sends a "DELETE" request to
3614 "projects/:project_id/protected_branches/:branch_name".
3615
3616 Protected tags
3617 See <https://docs.gitlab.com/ce/api/protected_tags.html>.
3618
3619 protected_tags
3620 my $tags = $api->protected_tags(
3621 $project_id,
3622 \%params,
3623 );
3624
3625 Sends a "GET" request to "projects/:project_id/protected_tags" and
3626 returns the decoded response content.
3627
3628 protected_tag
3629 my $tag = $api->protected_tag(
3630 $project_id,
3631 $tag_name,
3632 );
3633
3634 Sends a "GET" request to
3635 "projects/:project_id/protected_tags/:tag_name" and returns the
3636 decoded response content.
3637
3638 protect_tag
3639 my $tag = $api->protect_tag(
3640 $project_id,
3641 \%params,
3642 );
3643
3644 Sends a "POST" request to "projects/:project_id/protected_tags" and
3645 returns the decoded response content.
3646
3647 unprotect_tag
3648 $api->unprotect_tag(
3649 $project_id,
3650 $tag_name,
3651 );
3652
3653 Sends a "DELETE" request to
3654 "projects/:project_id/protected_tags/:tag_name".
3655
3656 Repositories
3657 See <https://docs.gitlab.com/ce/api/repositories.html>.
3658
3659 tree
3660 my $tree = $api->tree(
3661 $project_id,
3662 \%params,
3663 );
3664
3665 Sends a "GET" request to "projects/:project_id/repository/tree" and
3666 returns the decoded response content.
3667
3668 blob
3669 my $blob = $api->blob(
3670 $project_id,
3671 $sha,
3672 );
3673
3674 Sends a "GET" request to
3675 "projects/:project_id/repository/blobs/:sha" and returns the
3676 decoded response content.
3677
3678 raw_blob
3679 my $raw_blob = $api->raw_blob(
3680 $project_id,
3681 $sha,
3682 );
3683
3684 Sends a "GET" request to
3685 "projects/:project_id/repository/blobs/:sha/raw" and returns the
3686 decoded response content.
3687
3688 archive
3689 my $archive = $api->archive(
3690 $project_id,
3691 \%params,
3692 );
3693
3694 Sends a "GET" request to "projects/:project_id/repository/archive"
3695 and returns the raw response content.
3696
3697 compare
3698 my $comparison = $api->compare(
3699 $project_id,
3700 \%params,
3701 );
3702
3703 Sends a "GET" request to "projects/:project_id/repository/compare"
3704 and returns the decoded response content.
3705
3706 contributors
3707 my $contributors = $api->contributors(
3708 $project_id,
3709 \%params,
3710 );
3711
3712 Sends a "GET" request to
3713 "projects/:project_id/repository/contributors" and returns the
3714 decoded response content.
3715
3716 Repository files
3717 See <https://docs.gitlab.com/ce/api/repository_files.html>.
3718
3719 file
3720 my $file = $api->file(
3721 $project_id,
3722 $file_path,
3723 \%params,
3724 );
3725
3726 Sends a "GET" request to
3727 "projects/:project_id/repository/files/:file_path" and returns the
3728 decoded response content.
3729
3730 raw_file
3731 my $content = $api->raw_file(
3732 $project_id,
3733 $file_path,
3734 \%params,
3735 );
3736
3737 Sends a "GET" request to
3738 "projects/:project_id/repository/files/:file_path/raw" and returns
3739 the raw response content.
3740
3741 create_file
3742 $api->create_file(
3743 $project_id,
3744 $file_path,
3745 \%params,
3746 );
3747
3748 Sends a "POST" request to
3749 "projects/:project_id/repository/files/:file_path".
3750
3751 edit_file
3752 $api->edit_file(
3753 $project_id,
3754 $file_path,
3755 \%params,
3756 );
3757
3758 Sends a "PUT" request to
3759 "projects/:project_id/repository/files/:file_path".
3760
3761 delete_file
3762 $api->delete_file(
3763 $project_id,
3764 $file_path,
3765 \%params,
3766 );
3767
3768 Sends a "DELETE" request to
3769 "projects/:project_id/repository/files/:file_path".
3770
3771 Runners
3772 See <https://docs.gitlab.com/ce/api/runners.html>.
3773
3774 runners
3775 my $runners = $api->runners(
3776 \%params,
3777 );
3778
3779 Sends a "GET" request to "runners" and returns the decoded response
3780 content.
3781
3782 all_runners
3783 my $runners = $api->all_runners(
3784 \%params,
3785 );
3786
3787 Sends a "GET" request to "runners/all" and returns the decoded
3788 response content.
3789
3790 runner
3791 my $runner = $api->runner(
3792 $runner_id,
3793 );
3794
3795 Sends a "GET" request to "runners/:runner_id" and returns the
3796 decoded response content.
3797
3798 update_runner
3799 my $runner = $api->update_runner(
3800 $runner_id,
3801 \%params,
3802 );
3803
3804 Sends a "PUT" request to "runners/:runner_id" and returns the
3805 decoded response content.
3806
3807 delete_runner
3808 my $runner = $api->delete_runner(
3809 $runner_id,
3810 );
3811
3812 Sends a "DELETE" request to "runners/:runner_id" and returns the
3813 decoded response content.
3814
3815 runner_jobs
3816 my $jobs = $api->runner_jobs(
3817 $runner_id,
3818 \%params,
3819 );
3820
3821 Sends a "GET" request to "runners/:runner_id/jobs" and returns the
3822 decoded response content.
3823
3824 project_runners
3825 my $runners = $api->project_runners(
3826 $project_id,
3827 \%params,
3828 );
3829
3830 Sends a "GET" request to "projects/:project_id/runners" and returns
3831 the decoded response content.
3832
3833 enable_project_runner
3834 my $runner = $api->enable_project_runner(
3835 $project_id,
3836 \%params,
3837 );
3838
3839 Sends a "POST" request to "projects/:project_id/runners" and
3840 returns the decoded response content.
3841
3842 disable_project_runner
3843 my $runner = $api->disable_project_runner(
3844 $project_id,
3845 $runner_id,
3846 );
3847
3848 Sends a "DELETE" request to
3849 "projects/:project_id/runners/:runner_id" and returns the decoded
3850 response content.
3851
3852 Search
3853 See <https://docs.gitlab.com/ce/api/search.html>.
3854
3855 search
3856 my $results = $api->search(
3857 \%params,
3858 );
3859
3860 Sends a "GET" request to "search" and returns the decoded response
3861 content.
3862
3863 Services
3864 See <https://docs.gitlab.com/ce/api/services.html>.
3865
3866 project_service
3867 my $service = $api->project_service(
3868 $project_id,
3869 $service_name,
3870 );
3871
3872 Sends a "GET" request to
3873 "projects/:project_id/services/:service_name" and returns the
3874 decoded response content.
3875
3876 edit_project_service
3877 $api->edit_project_service(
3878 $project_id,
3879 $service_name,
3880 \%params,
3881 );
3882
3883 Sends a "PUT" request to
3884 "projects/:project_id/services/:service_name".
3885
3886 delete_project_service
3887 $api->delete_project_service(
3888 $project_id,
3889 $service_name,
3890 );
3891
3892 Sends a "DELETE" request to
3893 "projects/:project_id/services/:service_name".
3894
3895 Application settings
3896 See <https://docs.gitlab.com/ce/api/settings.html>.
3897
3898 settings
3899 my $settings = $api->settings();
3900
3901 Sends a "GET" request to "application/settings" and returns the
3902 decoded response content.
3903
3904 update_settings
3905 my $settings = $api->update_settings(
3906 \%params,
3907 );
3908
3909 Sends a "PUT" request to "application/settings" and returns the
3910 decoded response content.
3911
3912 Sidekiq Metrics
3913 See <https://docs.gitlab.com/ce/api/sidekiq_metrics.html>.
3914
3915 queue_metrics
3916 my $metrics = $api->queue_metrics();
3917
3918 Sends a "GET" request to "sidekiq/queue_metrics" and returns the
3919 decoded response content.
3920
3921 process_metrics
3922 my $metrics = $api->process_metrics();
3923
3924 Sends a "GET" request to "sidekiq/process_metrics" and returns the
3925 decoded response content.
3926
3927 job_stats
3928 my $stats = $api->job_stats();
3929
3930 Sends a "GET" request to "sidekiq/job_stats" and returns the
3931 decoded response content.
3932
3933 compound_metrics
3934 my $metrics = $api->compound_metrics();
3935
3936 Sends a "GET" request to "sidekiq/compound_metrics" and returns the
3937 decoded response content.
3938
3939 System hooks
3940 See <https://docs.gitlab.com/ce/api/system_hooks.html>.
3941
3942 hooks
3943 my $hooks = $api->hooks(
3944 \%params,
3945 );
3946
3947 Sends a "GET" request to "hooks" and returns the decoded response
3948 content.
3949
3950 create_hook
3951 $api->create_hook(
3952 \%params,
3953 );
3954
3955 Sends a "POST" request to "hooks".
3956
3957 test_hook
3958 my $hook = $api->test_hook(
3959 $hook_id,
3960 );
3961
3962 Sends a "GET" request to "hooks/:hook_id" and returns the decoded
3963 response content.
3964
3965 delete_hook
3966 $api->delete_hook(
3967 $hook_id,
3968 );
3969
3970 Sends a "DELETE" request to "hooks/:hook_id".
3971
3972 Tags
3973 See <https://docs.gitlab.com/ce/api/tags.html>.
3974
3975 tags
3976 my $tags = $api->tags(
3977 $project_id,
3978 \%params,
3979 );
3980
3981 Sends a "GET" request to "projects/:project_id/repository/tags" and
3982 returns the decoded response content.
3983
3984 tag
3985 my $tag = $api->tag(
3986 $project_id,
3987 $tag_name,
3988 );
3989
3990 Sends a "GET" request to
3991 "projects/:project_id/repository/tags/:tag_name" and returns the
3992 decoded response content.
3993
3994 create_tag
3995 my $tag = $api->create_tag(
3996 $project_id,
3997 \%params,
3998 );
3999
4000 Sends a "POST" request to "projects/:project_id/repository/tags"
4001 and returns the decoded response content.
4002
4003 delete_tag
4004 $api->delete_tag(
4005 $project_id,
4006 $tag_name,
4007 );
4008
4009 Sends a "DELETE" request to
4010 "projects/:project_id/repository/tags/:tag_name".
4011
4012 create_release
4013 $api->create_release(
4014 $project_id,
4015 $tag_name,
4016 \%params,
4017 );
4018
4019 Sends a "POST" request to
4020 "projects/:project_id/repository/tags/:tag_name/release".
4021
4022 edit_release
4023 $api->edit_release(
4024 $project_id,
4025 $tag_name,
4026 \%params,
4027 );
4028
4029 Sends a "PUT" request to
4030 "projects/:project_id/repository/tags/:tag_name/release".
4031
4032 Todos
4033 See <https://docs.gitlab.com/ce/api/todos.html>.
4034
4035 todos
4036 my $todos = $api->todos(
4037 \%params,
4038 );
4039
4040 Sends a "GET" request to "todos" and returns the decoded response
4041 content.
4042
4043 mark_todo_done
4044 my $todo = $api->mark_todo_done(
4045 $todo_id,
4046 );
4047
4048 Sends a "POST" request to "todos/:todo_id/mark_as_done" and returns
4049 the decoded response content.
4050
4051 mark_all_todos_done
4052 $api->mark_all_todos_done();
4053
4054 Sends a "POST" request to "todos/mark_as_done".
4055
4056 Users
4057 See <https://docs.gitlab.com/ce/api/users.html>.
4058
4059 users
4060 my $users = $api->users(
4061 \%params,
4062 );
4063
4064 Sends a "GET" request to "users" and returns the decoded response
4065 content.
4066
4067 user
4068 my $user = $api->user(
4069 $user_id,
4070 );
4071
4072 Sends a "GET" request to "users/:user_id" and returns the decoded
4073 response content.
4074
4075 create_user
4076 $api->create_user(
4077 \%params,
4078 );
4079
4080 Sends a "POST" request to "users".
4081
4082 edit_user
4083 $api->edit_user(
4084 $user_id,
4085 \%params,
4086 );
4087
4088 Sends a "PUT" request to "users/:user_id".
4089
4090 delete_user
4091 $api->delete_user(
4092 $user_id,
4093 );
4094
4095 Sends a "DELETE" request to "users/:user_id".
4096
4097 current_user
4098 my $user = $api->current_user();
4099
4100 Sends a "GET" request to "user" and returns the decoded response
4101 content.
4102
4103 current_user_ssh_keys
4104 my $keys = $api->current_user_ssh_keys(
4105 \%params,
4106 );
4107
4108 Sends a "GET" request to "user/keys" and returns the decoded
4109 response content.
4110
4111 user_ssh_keys
4112 my $keys = $api->user_ssh_keys(
4113 $user_id,
4114 \%params,
4115 );
4116
4117 Sends a "GET" request to "users/:user_id/keys" and returns the
4118 decoded response content.
4119
4120 user_ssh_key
4121 my $key = $api->user_ssh_key(
4122 $key_id,
4123 );
4124
4125 Sends a "GET" request to "user/keys/:key_id" and returns the
4126 decoded response content.
4127
4128 create_current_user_ssh_key
4129 $api->create_current_user_ssh_key(
4130 \%params,
4131 );
4132
4133 Sends a "POST" request to "user/keys".
4134
4135 create_user_ssh_key
4136 $api->create_user_ssh_key(
4137 $user_id,
4138 \%params,
4139 );
4140
4141 Sends a "POST" request to "users/:user_id/keys".
4142
4143 delete_current_user_ssh_key
4144 $api->delete_current_user_ssh_key(
4145 $key_id,
4146 );
4147
4148 Sends a "DELETE" request to "user/keys/:key_id".
4149
4150 delete_user_ssh_key
4151 $api->delete_user_ssh_key(
4152 $user_id,
4153 $key_id,
4154 );
4155
4156 Sends a "DELETE" request to "users/:user_id/keys/:key_id".
4157
4158 current_user_gpg_keys
4159 my $keys = $api->current_user_gpg_keys(
4160 \%params,
4161 );
4162
4163 Sends a "GET" request to "user/gpg_keys" and returns the decoded
4164 response content.
4165
4166 current_user_gpg_key
4167 my $key = $api->current_user_gpg_key(
4168 $key_id,
4169 );
4170
4171 Sends a "GET" request to "user/gpg_keys/:key_id" and returns the
4172 decoded response content.
4173
4174 create_current_user_gpg_key
4175 $api->create_current_user_gpg_key(
4176 \%params,
4177 );
4178
4179 Sends a "POST" request to "user/gpg_keys".
4180
4181 delete_current_user_gpg_key
4182 $api->delete_current_user_gpg_key(
4183 $key_id,
4184 );
4185
4186 Sends a "DELETE" request to "user/gpg_keys/:key_id".
4187
4188 user_gpg_keys
4189 my $keys = $api->user_gpg_keys(
4190 $user_id,
4191 \%params,
4192 );
4193
4194 Sends a "GET" request to "users/:user_id/gpg_keys" and returns the
4195 decoded response content.
4196
4197 user_gpg_key
4198 my $key = $api->user_gpg_key(
4199 $user_id,
4200 $key_id,
4201 );
4202
4203 Sends a "GET" request to "users/:user_id/gpg_keys/:key_id" and
4204 returns the decoded response content.
4205
4206 create_user_gpg_key
4207 my $keys = $api->create_user_gpg_key(
4208 $user_id,
4209 \%params,
4210 );
4211
4212 Sends a "POST" request to "users/:user_id/gpg_keys" and returns the
4213 decoded response content.
4214
4215 delete_user_gpg_key
4216 $api->delete_user_gpg_key(
4217 $user_id,
4218 $key_id,
4219 );
4220
4221 Sends a "DELETE" request to "users/:user_id/gpg_keys/:key_id".
4222
4223 current_user_emails
4224 my $emails = $api->current_user_emails(
4225 \%params,
4226 );
4227
4228 Sends a "GET" request to "user/emails" and returns the decoded
4229 response content.
4230
4231 user_emails
4232 my $emails = $api->user_emails(
4233 $user_id,
4234 \%params,
4235 );
4236
4237 Sends a "GET" request to "users/:user_id/emails" and returns the
4238 decoded response content.
4239
4240 current_user_email
4241 my $email = $api->current_user_email(
4242 $email_id,
4243 );
4244
4245 Sends a "GET" request to "user/emails/:email_id" and returns the
4246 decoded response content.
4247
4248 create_current_user_email
4249 my $email = $api->create_current_user_email(
4250 \%params,
4251 );
4252
4253 Sends a "POST" request to "user/emails" and returns the decoded
4254 response content.
4255
4256 create_user_email
4257 my $email = $api->create_user_email(
4258 $user_id,
4259 \%params,
4260 );
4261
4262 Sends a "POST" request to "users/:user_id/emails" and returns the
4263 decoded response content.
4264
4265 delete_current_user_email
4266 $api->delete_current_user_email(
4267 $email_id,
4268 );
4269
4270 Sends a "DELETE" request to "user/emails/:email_id".
4271
4272 delete_user_email
4273 $api->delete_user_email(
4274 $user_id,
4275 $email_id,
4276 );
4277
4278 Sends a "DELETE" request to "users/:user_id/emails/:email_id".
4279
4280 block_user
4281 my $success = $api->block_user(
4282 $user_id,
4283 );
4284
4285 Sends a "POST" request to "users/:user_id/block" and returns the
4286 decoded response content.
4287
4288 unblock_user
4289 my $success = $api->unblock_user(
4290 $user_id,
4291 );
4292
4293 Sends a "POST" request to "users/:user_id/unblock" and returns the
4294 decoded response content.
4295
4296 user_impersonation_tokens
4297 my $tokens = $api->user_impersonation_tokens(
4298 $user_id,
4299 \%params,
4300 );
4301
4302 Sends a "GET" request to "users/:user_id/impersonation_tokens" and
4303 returns the decoded response content.
4304
4305 user_impersonation_token
4306 my $token = $api->user_impersonation_token(
4307 $user_id,
4308 $impersonation_token_id,
4309 );
4310
4311 Sends a "GET" request to
4312 "users/:user_id/impersonation_tokens/:impersonation_token_id" and
4313 returns the decoded response content.
4314
4315 create_user_impersonation_token
4316 my $token = $api->create_user_impersonation_token(
4317 $user_id,
4318 \%params,
4319 );
4320
4321 Sends a "POST" request to "users/:user_id/impersonation_tokens" and
4322 returns the decoded response content.
4323
4324 delete_user_impersonation_token
4325 $api->delete_user_impersonation_token(
4326 $user_id,
4327 $impersonation_token_id,
4328 );
4329
4330 Sends a "DELETE" request to
4331 "users/:user_id/impersonation_tokens/:impersonation_token_id".
4332
4333 all_user_activities
4334 my $activities = $api->all_user_activities(
4335 \%params,
4336 );
4337
4338 Sends a "GET" request to "user/activities" and returns the decoded
4339 response content.
4340
4341 Validate the .gitlab-ci.yml
4342 See <https://docs.gitlab.com/ce/api/lint.html>.
4343
4344 lint
4345 my $result = $api->lint(
4346 \%params,
4347 );
4348
4349 Sends a "POST" request to "lint" and returns the decoded response
4350 content.
4351
4352 Version
4353 See <https://docs.gitlab.com/ce/api/version.html>.
4354
4355 version
4356 my $version = $api->version();
4357
4358 Sends a "GET" request to "version" and returns the decoded response
4359 content.
4360
4361 Wikis
4362 See <https://docs.gitlab.com/ce/api/wikis.html>.
4363
4364 wiki_pages
4365 my $pages = $api->wiki_pages(
4366 $project_id,
4367 \%params,
4368 );
4369
4370 Sends a "GET" request to "projects/:project_id/wikis" and returns
4371 the decoded response content.
4372
4373 wiki_page
4374 my $pages = $api->wiki_page(
4375 $project_id,
4376 $slug,
4377 );
4378
4379 Sends a "GET" request to "projects/:project_id/wikis/:slug" and
4380 returns the decoded response content.
4381
4382 create_wiki_page
4383 my $page = $api->create_wiki_page(
4384 $project_id,
4385 \%params,
4386 );
4387
4388 Sends a "POST" request to "projects/:project_id/wikis" and returns
4389 the decoded response content.
4390
4391 edit_wiki_page
4392 my $page = $api->edit_wiki_page(
4393 $project_id,
4394 $slug,
4395 \%params,
4396 );
4397
4398 Sends a "PUT" request to "projects/:project_id/wikis/:slug" and
4399 returns the decoded response content.
4400
4401 delete_wiki_page
4402 $api->delete_wiki_page(
4403 $project_id,
4404 $slug,
4405 );
4406
4407 Sends a "DELETE" request to "projects/:project_id/wikis/:slug".
4408
4410 This module is auto-generated from a set of YAML files defining the
4411 interface of GitLab's API. If you'd like to contribute to this module
4412 then please feel free to make a fork on GitHub
4413 <https://github.com/bluefeet/GitLab-API-v4> and submit a pull request,
4414 just make sure you edit the files in the "authors/" directory instead
4415 of "lib/GitLab/API/v4.pm" directly.
4416
4417 Please see
4418 <https://github.com/bluefeet/GitLab-API-v4/blob/master/author/README.pod>
4419 for more information.
4420
4421 Alternatively, you can open a ticket
4422 <https://github.com/bluefeet/GitLab-API-v4/issues>.
4423
4425 Please submit bugs and feature requests to the GitLab-API-v4 GitHub
4426 issue tracker:
4427
4428 <https://github.com/bluefeet/GitLab-API-v4/issues>
4429
4431 Thanks to ZipRecruiter <https://www.ziprecruiter.com/> for encouraging
4432 their employees to contribute back to the open source ecosystem.
4433 Without their dedication to quality software development this
4434 distribution would not exist.
4435
4437 Aran Clary Deltac <aran@bluefeet.dev>
4438 Dotan Dimet <dotan@corky.net>
4439 Nigel Gregoire <nigelgregoire@gmail.com>
4440 trunov-ms <trunov.ms@gmail.com>
4441 Marek R. Sotola <Marek.R.Sotola@nasa.gov>
4442 Jose Joaquin Atria <jjatria@gmail.com>
4443 Dave Webb <github@d5ve.com>
4444 Simon Ruderich <simon@ruderich.org>
4445 royce55 <royce@ecs.vuw.ac.nz>
4446 gregor herrmann <gregoa@debian.org>
4447 Luc Didry <luc@framasoft.org>
4448 Kieren Diment <kieren.diment@staples.com.au>
4449 Dmitry Frolov <dmitry.frolov@gmail.com>
4450
4452 Copyright (C) 2014 Aran Clary Deltac
4453
4454 This program is free software: you can redistribute it and/or modify it
4455 under the terms of the GNU General Public License as published by the
4456 Free Software Foundation, either version 3 of the License, or (at your
4457 option) any later version.
4458
4459 This program is distributed in the hope that it will be useful, but
4460 WITHOUT ANY WARRANTY; without even the implied warranty of
4461 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
4462 General Public License for more details.
4463
4464 You should have received a copy of the GNU General Public License along
4465 with this program. If not, see <http://www.gnu.org/licenses/>.
4466
4467
4468
4469perl v5.28.2 2019-05-17 GitLab::API::v4(3pm)