File Coverage

blib/lib/GitLab/API/v4.pm
Criterion Covered Total %
statement 97 3619 2.6
branch 21 3876 0.5
condition 10 3672 0.2
subroutine 24 491 4.8
pod 470 471 99.7
total 622 12129 5.1


line stmt bran cond sub pod time code
1             package GitLab::API::v4;
2             our $VERSION = '0.27';
3              
4             =encoding utf8
5              
6             =head1 NAME
7              
8             GitLab::API::v4 - A complete GitLab API v4 client.
9              
10             =head1 SYNOPSIS
11              
12             use GitLab::API::v4;
13            
14             my $api = GitLab::API::v4->new(
15             url => $v4_api_url,
16             private_token => $token,
17             );
18            
19             my $branches = $api->branches( $project_id );
20              
21             =head1 DESCRIPTION
22              
23             This module provides a one-to-one interface with the GitLab
24             API v4. Much is not documented here as it would just be duplicating
25             GitLab's own L.
26              
27             Note that this distribution also includes the L command-line
28             interface (CLI).
29              
30             =head2 Upgrading
31              
32             If you are upgrading from L make sure you read:
33              
34             L
35              
36             Also, review the C file included in the distribution as it outlines
37             the changes made to convert the v3 module to v4:
38              
39             L
40              
41             Finally, be aware that many methods were added, removed, renamed, and/or altered.
42             If you want to review exactly what was changed you can use GitHub's compare tool:
43              
44             L
45              
46             Or clone the repo and run this command:
47              
48             C
49              
50             =head2 Credentials
51              
52             Authentication credentials may be defined by setting either the L
53             or L arguments.
54              
55             If no credentials are supplied then the client will be anonymous and greatly
56             limited in what it can do with the API.
57              
58             Extra care has been taken to hide the token arguments behind closures. This way,
59             if you dump your api object, your tokens won't accidentally leak into places you
60             don't want them to.
61              
62             =head2 Constants
63              
64             The GitLab API, in rare cases, uses a hard-coded value to represent a state.
65             To make life easier the L module exposes
66             these states as named variables.
67              
68             =head2 Exceptions
69              
70             The API methods will all throw a useful exception if
71             an unsuccessful response is received from the API. That is except for
72             C requests that return a C<404> response - these will return C
73             for methods that return a value.
74              
75             If you'd like to catch and handle these exceptions consider using
76             L.
77              
78             =head2 Logging
79              
80             This module uses L and produces some debug messages here
81             and there, but the most useful bits are the info messages produced
82             just before each API call.
83              
84             =head2 Project ID
85              
86             Note that many API calls require a C<$project_id>. This can be
87             specified as a numeric project C or, in many cases, maybe all cases,
88             as a C string. The GitLab documentation on
89             this point is vague.
90              
91             =cut
92              
93 1     1   1580 use Carp qw( croak );
  1         2  
  1         47  
94 1     1   387 use GitLab::API::v4::Paginator;
  1         3  
  1         30  
95 1     1   6 use GitLab::API::v4::RESTClient;
  1         1  
  1         22  
96 1     1   5 use Log::Any qw( $log );
  1         1  
  1         7  
97 1     1   223 use Types::Common::Numeric -types;
  1         2  
  1         8  
98 1     1   1163 use Types::Common::String -types;
  1         2  
  1         6  
99 1     1   1148 use Types::Standard -types;
  1         2  
  1         5  
100              
101 1     1   3593 use Moo;
  1         2  
  1         4  
102 1     1   351 use strictures 2;
  1         7  
  1         31  
103 1     1   156 use namespace::clean;
  1         3  
  1         5  
104              
105             sub BUILD {
106 2     2 0 12054 my ($self) = @_;
107              
108             # Ensure any token arguments get moved into their closure before we return
109             # the built object.
110 2         12 $self->access_token();
111 2         8 $self->private_token();
112              
113 2         13 $log->debugf( "An instance of %s has been created.", ref($self) );
114              
115 2         11 return;
116             }
117              
118             sub _call_rest_client {
119 11     11   25 my ($self, $verb, $path, $path_vars, $options) = @_;
120              
121 11         24 $options->{headers} = $self->_auth_headers();
122              
123 11         148 return $self->rest_client->request(
124             $verb, $path, $path_vars, $options,
125             );
126             }
127              
128             sub _auth_headers {
129 11     11   15 my ($self) = @_;
130 11         13 my $headers = {};
131              
132 11 50       24 $headers->{'authorization'} = 'Bearer ' . $self->access_token()
133             if defined $self->access_token();
134 11 50       23 $headers->{'private-token'} = $self->private_token()
135             if defined $self->private_token();
136 11 50       31 $headers->{'sudo'} = $self->sudo_user()
137             if defined $self->sudo_user();
138              
139 11         20 return $headers;
140             }
141              
142             sub _clone_args {
143 0     0   0 my ($self) = @_;
144              
145             return {
146 0 0       0 url => $self->url(),
    0          
147             retries => $self->retries(),
148             rest_client => $self->rest_client(),
149             (defined $self->access_token()) ? (access_token=>$self->access_token()) : (),
150             (defined $self->private_token()) ? (private_token=>$self->private_token()) : (),
151             };
152             }
153              
154             sub _clone {
155 0     0   0 my $self = shift;
156              
157 0         0 my $class = ref $self;
158             my $args = {
159 0         0 %{ $self->_clone_args() },
160 0         0 %{ $class->BUILDARGS( @_ ) },
  0         0  
161             };
162              
163 0         0 return $class->new( $args );
164             }
165              
166             # Little utility method that avoids any ambiguity in whether a closer is
167             # causing circular references. Don't ever pass it a ref.
168             sub _make_safe_closure {
169 4     4   8 my ($ret) = @_;
170 4     26   59 return sub{ $ret };
  26         274  
171             }
172              
173             =head1 REQUIRED ARGUMENTS
174              
175             =head2 url
176              
177             The URL to your v4 API endpoint. Typically this will be something
178             like C.
179              
180             =cut
181              
182             has url => (
183             is => 'ro',
184             isa => NonEmptySimpleStr,
185             required => 1,
186             );
187              
188             =head1 OPTIONAL ARGUMENTS
189              
190             =head2 access_token
191              
192             A GitLab API OAuth2 token. If set then L may not be set.
193              
194             See L.
195              
196             =cut
197              
198             has _access_token_arg => (
199             is => 'ro',
200             isa => NonEmptySimpleStr,
201             init_arg => 'access_token',
202             clearer => '_clear_access_token_arg',
203             );
204              
205             has _access_token_closure => (
206             is => 'lazy',
207             isa => CodeRef,
208             init_arg => undef,
209             builder => '_build_access_token_closure',
210             );
211             sub _build_access_token_closure {
212 2     2   21 my ($self) = @_;
213 2         12 my $token = $self->_access_token_arg();
214 2         31 $self->_clear_access_token_arg();
215 2         13 return _make_safe_closure( $token );
216             }
217              
218             sub access_token {
219 13     13 1 17 my ($self) = @_;
220 13         232 return $self->_access_token_closure->();
221             }
222              
223             =head2 private_token
224              
225             A GitLab API personal token. If set then L may not be set.
226              
227             See L.
228              
229             =cut
230              
231             has _private_token_arg => (
232             is => 'ro',
233             isa => NonEmptySimpleStr,
234             init_arg => 'private_token',
235             clearer => '_clear_private_token_arg',
236             );
237              
238             has _private_token_closure => (
239             is => 'lazy',
240             isa => CodeRef,
241             init_arg => undef,
242             builder => '_build_private_token_closure',
243             );
244             sub _build_private_token_closure {
245 2     2   21 my ($self) = @_;
246 2         6 my $token = $self->_private_token_arg();
247 2         31 $self->_clear_private_token_arg();
248 2         9 return _make_safe_closure( $token );
249             }
250              
251             sub private_token {
252 13     13 1 18 my ($self) = @_;
253 13         175 return $self->_private_token_closure->();
254             }
255              
256             =head2 retries
257              
258             The number of times the request should be retried in case it fails (5XX HTTP
259             response code). Defaults to C<0> (false), meaning that a failed request will
260             not be retried.
261              
262             =cut
263              
264             has retries => (
265             is => 'ro',
266             isa => PositiveOrZeroInt,
267             default => 0,
268             );
269              
270             =head2 sudo_user
271              
272             The user to execute API calls as. You may find it more useful to use the
273             L method instead.
274              
275             See L.
276              
277             =cut
278              
279             has sudo_user => (
280             is => 'ro',
281             isa => NonEmptySimpleStr,
282             );
283              
284             =head2 rest_client
285              
286             An instance of L (or whatever L
287             is set to). Typically you will not be setting this as it defaults to a new
288             instance and customization should not be necessary.
289              
290             =cut
291              
292             has rest_client => (
293             is => 'lazy',
294             isa => InstanceOf[ 'GitLab::API::v4::RESTClient' ],
295             );
296             sub _build_rest_client {
297 2     2   33 my ($self) = @_;
298              
299 2         31 return $self->rest_client_class->new(
300             base_url => $self->url(),
301             retries => $self->retries(),
302             );
303             }
304              
305             =head2 rest_client_class
306              
307             The class to use when constructing the L.
308             Defaults to L.
309              
310             =cut
311              
312             has rest_client_class => (
313             is => 'lazy',
314             isa => NonEmptySimpleStr,
315             );
316             sub _build_rest_client_class {
317 0     0   0 return 'GitLab::API::v4::RESTClient';
318             }
319              
320             =head1 UTILITY METHODS
321              
322             =head2 paginator
323              
324             my $paginator = $api->paginator( $method, @method_args );
325            
326             my $members = $api->paginator('group_members', $group_id);
327             while (my $member = $members->next()) {
328             ...
329             }
330            
331             my $users_pager = $api->paginator('users');
332             while (my $users = $users_pager->next_page()) {
333             ...
334             }
335            
336             my $all_open_issues = $api->paginator(
337             'issues',
338             $project_id,
339             { state=>'opened' },
340             )->all();
341              
342             Given a method who supports the C and C parameters,
343             and returns an array ref, this will return a L
344             object that will allow you to walk the records one page or one record
345             at a time.
346              
347             =cut
348              
349             sub paginator {
350 0     0 1 0 my ($self, $method, @args) = @_;
351              
352 0 0       0 my $params = (ref($args[-1]) eq 'HASH') ? pop(@args) : {};
353              
354 0         0 return GitLab::API::v4::Paginator->new(
355             api => $self,
356             method => $method,
357             args => \@args,
358             params => $params,
359             );
360             }
361              
362             =head2 sudo
363              
364             $api->sudo('fred')->create_issue(...);
365              
366             Returns a new instance of L with the L argument
367             set.
368              
369             See L.
370              
371             =cut
372              
373             sub sudo {
374 0     0 1 0 my ($self, $user) = @_;
375              
376 0         0 return $self->_clone(
377             sudo_user => $user,
378             );
379             }
380              
381             =head1 API METHODS
382              
383             =head2 Award Emoji
384              
385             See L.
386              
387             =over
388              
389             =item issue_award_emojis
390              
391             my $award_emojis = $api->issue_award_emojis(
392             $project_id,
393             $issue_iid,
394             \%params,
395             );
396              
397             Sends a C request to C and returns the decoded response content.
398              
399             =cut
400              
401             sub issue_award_emojis {
402 0     0 1 0 my $self = shift;
403 0 0 0     0 croak 'issue_award_emojis must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
404 0 0 0     0 croak 'The #1 argument ($project_id) to issue_award_emojis must be a scalar' if ref($_[0]) or (!defined $_[0]);
405 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_award_emojis must be a scalar' if ref($_[1]) or (!defined $_[1]);
406 0 0 0     0 croak 'The last argument (\%params) to issue_award_emojis must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
407 0 0       0 my $params = (@_ == 3) ? pop() : undef;
408 0         0 my $options = {};
409 0 0       0 $options->{query} = $params if defined $params;
410 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/award_emoji', [@_], $options );
411             }
412              
413             =item merge_request_award_emojis
414              
415             my $award_emojis = $api->merge_request_award_emojis(
416             $project_id,
417             $merge_request_iid,
418             \%params,
419             );
420              
421             Sends a C request to C and returns the decoded response content.
422              
423             =cut
424              
425             sub merge_request_award_emojis {
426 0     0 1 0 my $self = shift;
427 0 0 0     0 croak 'merge_request_award_emojis must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
428 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_award_emojis must be a scalar' if ref($_[0]) or (!defined $_[0]);
429 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_award_emojis must be a scalar' if ref($_[1]) or (!defined $_[1]);
430 0 0 0     0 croak 'The last argument (\%params) to merge_request_award_emojis must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
431 0 0       0 my $params = (@_ == 3) ? pop() : undef;
432 0         0 my $options = {};
433 0 0       0 $options->{query} = $params if defined $params;
434 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/award_emoji', [@_], $options );
435             }
436              
437             =item snippet_award_emojis
438              
439             my $award_emojis = $api->snippet_award_emojis(
440             $project_id,
441             $merge_request_id,
442             \%params,
443             );
444              
445             Sends a C request to C and returns the decoded response content.
446              
447             =cut
448              
449             sub snippet_award_emojis {
450 0     0 1 0 my $self = shift;
451 0 0 0     0 croak 'snippet_award_emojis must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
452 0 0 0     0 croak 'The #1 argument ($project_id) to snippet_award_emojis must be a scalar' if ref($_[0]) or (!defined $_[0]);
453 0 0 0     0 croak 'The #2 argument ($merge_request_id) to snippet_award_emojis must be a scalar' if ref($_[1]) or (!defined $_[1]);
454 0 0 0     0 croak 'The last argument (\%params) to snippet_award_emojis must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
455 0 0       0 my $params = (@_ == 3) ? pop() : undef;
456 0         0 my $options = {};
457 0 0       0 $options->{query} = $params if defined $params;
458 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_id/award_emoji', [@_], $options );
459             }
460              
461             =item issue_award_emoji
462              
463             my $award_emoji = $api->issue_award_emoji(
464             $project_id,
465             $issue_iid,
466             $award_id,
467             );
468              
469             Sends a C request to C and returns the decoded response content.
470              
471             =cut
472              
473             sub issue_award_emoji {
474 0     0 1 0 my $self = shift;
475 0 0       0 croak 'issue_award_emoji must be called with 3 arguments' if @_ != 3;
476 0 0 0     0 croak 'The #1 argument ($project_id) to issue_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
477 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
478 0 0 0     0 croak 'The #3 argument ($award_id) to issue_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
479 0         0 my $options = {};
480 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/award_emoji/:award_id', [@_], $options );
481             }
482              
483             =item merge_request_award_emoji
484              
485             my $award_emoji = $api->merge_request_award_emoji(
486             $project_id,
487             $merge_request_iid,
488             $award_id,
489             );
490              
491             Sends a C request to C and returns the decoded response content.
492              
493             =cut
494              
495             sub merge_request_award_emoji {
496 0     0 1 0 my $self = shift;
497 0 0       0 croak 'merge_request_award_emoji must be called with 3 arguments' if @_ != 3;
498 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
499 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
500 0 0 0     0 croak 'The #3 argument ($award_id) to merge_request_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
501 0         0 my $options = {};
502 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/award_emoji/:award_id', [@_], $options );
503             }
504              
505             =item snippet_award_emoji
506              
507             my $award_emoji = $api->snippet_award_emoji(
508             $project_id,
509             $snippet_id,
510             $award_id,
511             );
512              
513             Sends a C request to C and returns the decoded response content.
514              
515             =cut
516              
517             sub snippet_award_emoji {
518 0     0 1 0 my $self = shift;
519 0 0       0 croak 'snippet_award_emoji must be called with 3 arguments' if @_ != 3;
520 0 0 0     0 croak 'The #1 argument ($project_id) to snippet_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
521 0 0 0     0 croak 'The #2 argument ($snippet_id) to snippet_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
522 0 0 0     0 croak 'The #3 argument ($award_id) to snippet_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
523 0         0 my $options = {};
524 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/snippets/:snippet_id/award_emoji/:award_id', [@_], $options );
525             }
526              
527             =item create_issue_award_emoji
528              
529             my $award_emoji = $api->create_issue_award_emoji(
530             $project_id,
531             $issue_iid,
532             \%params,
533             );
534              
535             Sends a C request to C and returns the decoded response content.
536              
537             =cut
538              
539             sub create_issue_award_emoji {
540 0     0 1 0 my $self = shift;
541 0 0 0     0 croak 'create_issue_award_emoji must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
542 0 0 0     0 croak 'The #1 argument ($project_id) to create_issue_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
543 0 0 0     0 croak 'The #2 argument ($issue_iid) to create_issue_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
544 0 0 0     0 croak 'The last argument (\%params) to create_issue_award_emoji must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
545 0 0       0 my $params = (@_ == 3) ? pop() : undef;
546 0         0 my $options = {};
547 0 0       0 $options->{content} = $params if defined $params;
548 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/award_emoji', [@_], $options );
549             }
550              
551             =item create_merge_request_award_emoji
552              
553             my $award_emoji = $api->create_merge_request_award_emoji(
554             $project_id,
555             $merge_request_iid,
556             \%params,
557             );
558              
559             Sends a C request to C and returns the decoded response content.
560              
561             =cut
562              
563             sub create_merge_request_award_emoji {
564 0     0 1 0 my $self = shift;
565 0 0 0     0 croak 'create_merge_request_award_emoji must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
566 0 0 0     0 croak 'The #1 argument ($project_id) to create_merge_request_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
567 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to create_merge_request_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
568 0 0 0     0 croak 'The last argument (\%params) to create_merge_request_award_emoji must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
569 0 0       0 my $params = (@_ == 3) ? pop() : undef;
570 0         0 my $options = {};
571 0 0       0 $options->{content} = $params if defined $params;
572 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/award_emoji', [@_], $options );
573             }
574              
575             =item create_snippet_award_emoji
576              
577             my $award_emoji = $api->create_snippet_award_emoji(
578             $project_id,
579             $snippet_id,
580             );
581              
582             Sends a C request to C and returns the decoded response content.
583              
584             =cut
585              
586             sub create_snippet_award_emoji {
587 0     0 1 0 my $self = shift;
588 0 0       0 croak 'create_snippet_award_emoji must be called with 2 arguments' if @_ != 2;
589 0 0 0     0 croak 'The #1 argument ($project_id) to create_snippet_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
590 0 0 0     0 croak 'The #2 argument ($snippet_id) to create_snippet_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
591 0         0 my $options = {};
592 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/snippets/:snippet_id/award_emoji', [@_], $options );
593             }
594              
595             =item delete_issue_award_emoji
596              
597             my $award_emoji = $api->delete_issue_award_emoji(
598             $project_id,
599             $issue_id,
600             $award_id,
601             );
602              
603             Sends a C request to C and returns the decoded response content.
604              
605             =cut
606              
607             sub delete_issue_award_emoji {
608 0     0 1 0 my $self = shift;
609 0 0       0 croak 'delete_issue_award_emoji must be called with 3 arguments' if @_ != 3;
610 0 0 0     0 croak 'The #1 argument ($project_id) to delete_issue_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
611 0 0 0     0 croak 'The #2 argument ($issue_id) to delete_issue_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
612 0 0 0     0 croak 'The #3 argument ($award_id) to delete_issue_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
613 0         0 my $options = {};
614 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/issues/:issue_id/award_emoji/:award_id', [@_], $options );
615             }
616              
617             =item delete_merge_request_award_emoji
618              
619             my $award_emoji = $api->delete_merge_request_award_emoji(
620             $project_id,
621             $merge_request_id,
622             $award_id,
623             );
624              
625             Sends a C request to C and returns the decoded response content.
626              
627             =cut
628              
629             sub delete_merge_request_award_emoji {
630 0     0 1 0 my $self = shift;
631 0 0       0 croak 'delete_merge_request_award_emoji must be called with 3 arguments' if @_ != 3;
632 0 0 0     0 croak 'The #1 argument ($project_id) to delete_merge_request_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
633 0 0 0     0 croak 'The #2 argument ($merge_request_id) to delete_merge_request_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
634 0 0 0     0 croak 'The #3 argument ($award_id) to delete_merge_request_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
635 0         0 my $options = {};
636 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/merge_requests/:merge_request_id/award_emoji/:award_id', [@_], $options );
637             }
638              
639             =item delete_snippet_award_emoji
640              
641             my $award_emoji = $api->delete_snippet_award_emoji(
642             $project_id,
643             $snippet_id,
644             $award_id,
645             );
646              
647             Sends a C request to C and returns the decoded response content.
648              
649             =cut
650              
651             sub delete_snippet_award_emoji {
652 0     0 1 0 my $self = shift;
653 0 0       0 croak 'delete_snippet_award_emoji must be called with 3 arguments' if @_ != 3;
654 0 0 0     0 croak 'The #1 argument ($project_id) to delete_snippet_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
655 0 0 0     0 croak 'The #2 argument ($snippet_id) to delete_snippet_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
656 0 0 0     0 croak 'The #3 argument ($award_id) to delete_snippet_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
657 0         0 my $options = {};
658 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/snippets/:snippet_id/award_emoji/:award_id', [@_], $options );
659             }
660              
661             =item issue_note_award_emojis
662              
663             my $award_emojis = $api->issue_note_award_emojis(
664             $project_id,
665             $issue_iid,
666             $note_id,
667             );
668              
669             Sends a C request to C and returns the decoded response content.
670              
671             =cut
672              
673             sub issue_note_award_emojis {
674 0     0 1 0 my $self = shift;
675 0 0       0 croak 'issue_note_award_emojis must be called with 3 arguments' if @_ != 3;
676 0 0 0     0 croak 'The #1 argument ($project_id) to issue_note_award_emojis must be a scalar' if ref($_[0]) or (!defined $_[0]);
677 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_note_award_emojis must be a scalar' if ref($_[1]) or (!defined $_[1]);
678 0 0 0     0 croak 'The #3 argument ($note_id) to issue_note_award_emojis must be a scalar' if ref($_[2]) or (!defined $_[2]);
679 0         0 my $options = {};
680 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/notes/:note_id/award_emoji', [@_], $options );
681             }
682              
683             =item issue_note_award_emoji
684              
685             my $award_emoji = $api->issue_note_award_emoji(
686             $project_id,
687             $issue_iid,
688             $note_id,
689             $award_id,
690             );
691              
692             Sends a C request to C and returns the decoded response content.
693              
694             =cut
695              
696             sub issue_note_award_emoji {
697 0     0 1 0 my $self = shift;
698 0 0       0 croak 'issue_note_award_emoji must be called with 4 arguments' if @_ != 4;
699 0 0 0     0 croak 'The #1 argument ($project_id) to issue_note_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
700 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_note_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
701 0 0 0     0 croak 'The #3 argument ($note_id) to issue_note_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
702 0 0 0     0 croak 'The #4 argument ($award_id) to issue_note_award_emoji must be a scalar' if ref($_[3]) or (!defined $_[3]);
703 0         0 my $options = {};
704 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id', [@_], $options );
705             }
706              
707             =item create_issue_note_award_emoji
708              
709             my $award_emoji = $api->create_issue_note_award_emoji(
710             $project_id,
711             $issue_iid,
712             $note_id,
713             \%params,
714             );
715              
716             Sends a C request to C and returns the decoded response content.
717              
718             =cut
719              
720             sub create_issue_note_award_emoji {
721 0     0 1 0 my $self = shift;
722 0 0 0     0 croak 'create_issue_note_award_emoji must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
723 0 0 0     0 croak 'The #1 argument ($project_id) to create_issue_note_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
724 0 0 0     0 croak 'The #2 argument ($issue_iid) to create_issue_note_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
725 0 0 0     0 croak 'The #3 argument ($note_id) to create_issue_note_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
726 0 0 0     0 croak 'The last argument (\%params) to create_issue_note_award_emoji must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
727 0 0       0 my $params = (@_ == 4) ? pop() : undef;
728 0         0 my $options = {};
729 0 0       0 $options->{content} = $params if defined $params;
730 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/notes/:note_id/award_emoji', [@_], $options );
731             }
732              
733             =item delete_issue_note_award_emoji
734              
735             my $award_emoji = $api->delete_issue_note_award_emoji(
736             $project_id,
737             $issue_iid,
738             $note_id,
739             $award_id,
740             );
741              
742             Sends a C request to C and returns the decoded response content.
743              
744             =cut
745              
746             sub delete_issue_note_award_emoji {
747 0     0 1 0 my $self = shift;
748 0 0       0 croak 'delete_issue_note_award_emoji must be called with 4 arguments' if @_ != 4;
749 0 0 0     0 croak 'The #1 argument ($project_id) to delete_issue_note_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
750 0 0 0     0 croak 'The #2 argument ($issue_iid) to delete_issue_note_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
751 0 0 0     0 croak 'The #3 argument ($note_id) to delete_issue_note_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
752 0 0 0     0 croak 'The #4 argument ($award_id) to delete_issue_note_award_emoji must be a scalar' if ref($_[3]) or (!defined $_[3]);
753 0         0 my $options = {};
754 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id', [@_], $options );
755             }
756              
757             =item merge_request_note_award_emojis
758              
759             my $award_emojis = $api->merge_request_note_award_emojis(
760             $project_id,
761             $merge_request_iid,
762             $note_id,
763             );
764              
765             Sends a C request to C and returns the decoded response content.
766              
767             =cut
768              
769             sub merge_request_note_award_emojis {
770 0     0 1 0 my $self = shift;
771 0 0       0 croak 'merge_request_note_award_emojis must be called with 3 arguments' if @_ != 3;
772 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_note_award_emojis must be a scalar' if ref($_[0]) or (!defined $_[0]);
773 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_note_award_emojis must be a scalar' if ref($_[1]) or (!defined $_[1]);
774 0 0 0     0 croak 'The #3 argument ($note_id) to merge_request_note_award_emojis must be a scalar' if ref($_[2]) or (!defined $_[2]);
775 0         0 my $options = {};
776 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji', [@_], $options );
777             }
778              
779             =item merge_request_note_award_emoji
780              
781             my $award_emoji = $api->merge_request_note_award_emoji(
782             $project_id,
783             $merge_request_iid,
784             $note_id,
785             $award_id,
786             );
787              
788             Sends a C request to C and returns the decoded response content.
789              
790             =cut
791              
792             sub merge_request_note_award_emoji {
793 0     0 1 0 my $self = shift;
794 0 0       0 croak 'merge_request_note_award_emoji must be called with 4 arguments' if @_ != 4;
795 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_note_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
796 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_note_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
797 0 0 0     0 croak 'The #3 argument ($note_id) to merge_request_note_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
798 0 0 0     0 croak 'The #4 argument ($award_id) to merge_request_note_award_emoji must be a scalar' if ref($_[3]) or (!defined $_[3]);
799 0         0 my $options = {};
800 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji/:award_id', [@_], $options );
801             }
802              
803             =item create_merge_request_note_award_emoji
804              
805             my $award_emoji = $api->create_merge_request_note_award_emoji(
806             $project_id,
807             $merge_request_iid,
808             $note_id,
809             \%params,
810             );
811              
812             Sends a C request to C and returns the decoded response content.
813              
814             =cut
815              
816             sub create_merge_request_note_award_emoji {
817 0     0 1 0 my $self = shift;
818 0 0 0     0 croak 'create_merge_request_note_award_emoji must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
819 0 0 0     0 croak 'The #1 argument ($project_id) to create_merge_request_note_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
820 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to create_merge_request_note_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
821 0 0 0     0 croak 'The #3 argument ($note_id) to create_merge_request_note_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
822 0 0 0     0 croak 'The last argument (\%params) to create_merge_request_note_award_emoji must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
823 0 0       0 my $params = (@_ == 4) ? pop() : undef;
824 0         0 my $options = {};
825 0 0       0 $options->{content} = $params if defined $params;
826 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji', [@_], $options );
827             }
828              
829             =item delete_merge_request_note_award_emoji
830              
831             my $award_emoji = $api->delete_merge_request_note_award_emoji(
832             $project_id,
833             $merge_request_iid,
834             $note_id,
835             $award_id,
836             );
837              
838             Sends a C request to C and returns the decoded response content.
839              
840             =cut
841              
842             sub delete_merge_request_note_award_emoji {
843 0     0 1 0 my $self = shift;
844 0 0       0 croak 'delete_merge_request_note_award_emoji must be called with 4 arguments' if @_ != 4;
845 0 0 0     0 croak 'The #1 argument ($project_id) to delete_merge_request_note_award_emoji must be a scalar' if ref($_[0]) or (!defined $_[0]);
846 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to delete_merge_request_note_award_emoji must be a scalar' if ref($_[1]) or (!defined $_[1]);
847 0 0 0     0 croak 'The #3 argument ($note_id) to delete_merge_request_note_award_emoji must be a scalar' if ref($_[2]) or (!defined $_[2]);
848 0 0 0     0 croak 'The #4 argument ($award_id) to delete_merge_request_note_award_emoji must be a scalar' if ref($_[3]) or (!defined $_[3]);
849 0         0 my $options = {};
850 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id/award_emoji/:award_id', [@_], $options );
851             }
852              
853             =back
854              
855             =head2 Branches
856              
857             See L.
858              
859             =over
860              
861             =item branches
862              
863             my $branches = $api->branches(
864             $project_id,
865             \%params,
866             );
867              
868             Sends a C request to C and returns the decoded response content.
869              
870             =cut
871              
872             sub branches {
873 0     0 1 0 my $self = shift;
874 0 0 0     0 croak 'branches must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
875 0 0 0     0 croak 'The #1 argument ($project_id) to branches must be a scalar' if ref($_[0]) or (!defined $_[0]);
876 0 0 0     0 croak 'The last argument (\%params) to branches must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
877 0 0       0 my $params = (@_ == 2) ? pop() : undef;
878 0         0 my $options = {};
879 0 0       0 $options->{query} = $params if defined $params;
880 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/branches', [@_], $options );
881             }
882              
883             =item branch
884              
885             my $branch = $api->branch(
886             $project_id,
887             $branch_name,
888             );
889              
890             Sends a C request to C and returns the decoded response content.
891              
892             =cut
893              
894             sub branch {
895 0     0 1 0 my $self = shift;
896 0 0       0 croak 'branch must be called with 2 arguments' if @_ != 2;
897 0 0 0     0 croak 'The #1 argument ($project_id) to branch must be a scalar' if ref($_[0]) or (!defined $_[0]);
898 0 0 0     0 croak 'The #2 argument ($branch_name) to branch must be a scalar' if ref($_[1]) or (!defined $_[1]);
899 0         0 my $options = {};
900 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/branches/:branch_name', [@_], $options );
901             }
902              
903             =item create_branch
904              
905             my $branch = $api->create_branch(
906             $project_id,
907             \%params,
908             );
909              
910             Sends a C request to C and returns the decoded response content.
911              
912             =cut
913              
914             sub create_branch {
915 0     0 1 0 my $self = shift;
916 0 0 0     0 croak 'create_branch must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
917 0 0 0     0 croak 'The #1 argument ($project_id) to create_branch must be a scalar' if ref($_[0]) or (!defined $_[0]);
918 0 0 0     0 croak 'The last argument (\%params) to create_branch must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
919 0 0       0 my $params = (@_ == 2) ? pop() : undef;
920 0         0 my $options = {};
921 0 0       0 $options->{content} = $params if defined $params;
922 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/repository/branches', [@_], $options );
923             }
924              
925             =item delete_branch
926              
927             $api->delete_branch(
928             $project_id,
929             $branch_name,
930             );
931              
932             Sends a C request to C.
933              
934             =cut
935              
936             sub delete_branch {
937 0     0 1 0 my $self = shift;
938 0 0       0 croak 'delete_branch must be called with 2 arguments' if @_ != 2;
939 0 0 0     0 croak 'The #1 argument ($project_id) to delete_branch must be a scalar' if ref($_[0]) or (!defined $_[0]);
940 0 0 0     0 croak 'The #2 argument ($branch_name) to delete_branch must be a scalar' if ref($_[1]) or (!defined $_[1]);
941 0         0 my $options = {};
942 0         0 $options->{decode} = 0;
943 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/repository/branches/:branch_name', [@_], $options );
944 0         0 return;
945             }
946              
947             =item delete_merged_branches
948              
949             $api->delete_merged_branches(
950             $project_id,
951             );
952              
953             Sends a C request to C.
954              
955             =cut
956              
957             sub delete_merged_branches {
958 0     0 1 0 my $self = shift;
959 0 0       0 croak 'delete_merged_branches must be called with 1 arguments' if @_ != 1;
960 0 0 0     0 croak 'The #1 argument ($project_id) to delete_merged_branches must be a scalar' if ref($_[0]) or (!defined $_[0]);
961 0         0 my $options = {};
962 0         0 $options->{decode} = 0;
963 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/repository/merged_branches', [@_], $options );
964 0         0 return;
965             }
966              
967             =back
968              
969             =head2 Broadcast Messages
970              
971             See L.
972              
973             =over
974              
975             =item broadcast_messages
976              
977             my $messages = $api->broadcast_messages(
978             \%params,
979             );
980              
981             Sends a C request to C and returns the decoded response content.
982              
983             =cut
984              
985             sub broadcast_messages {
986 0     0 1 0 my $self = shift;
987 0 0 0     0 croak 'broadcast_messages must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
988 0 0 0     0 croak 'The last argument (\%params) to broadcast_messages must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
989 0 0       0 my $params = (@_ == 1) ? pop() : undef;
990 0         0 my $options = {};
991 0 0       0 $options->{query} = $params if defined $params;
992 0         0 return $self->_call_rest_client( 'GET', 'broadcast_messages', [@_], $options );
993             }
994              
995             =item broadcast_message
996              
997             my $message = $api->broadcast_message(
998             $message_id,
999             );
1000              
1001             Sends a C request to C and returns the decoded response content.
1002              
1003             =cut
1004              
1005             sub broadcast_message {
1006 0     0 1 0 my $self = shift;
1007 0 0       0 croak 'broadcast_message must be called with 1 arguments' if @_ != 1;
1008 0 0 0     0 croak 'The #1 argument ($message_id) to broadcast_message must be a scalar' if ref($_[0]) or (!defined $_[0]);
1009 0         0 my $options = {};
1010 0         0 return $self->_call_rest_client( 'GET', 'broadcast_messages/:message_id', [@_], $options );
1011             }
1012              
1013             =item create_broadcast_message
1014              
1015             my $message = $api->create_broadcast_message(
1016             \%params,
1017             );
1018              
1019             Sends a C request to C and returns the decoded response content.
1020              
1021             =cut
1022              
1023             sub create_broadcast_message {
1024 0     0 1 0 my $self = shift;
1025 0 0 0     0 croak 'create_broadcast_message must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
1026 0 0 0     0 croak 'The last argument (\%params) to create_broadcast_message must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
1027 0 0       0 my $params = (@_ == 1) ? pop() : undef;
1028 0         0 my $options = {};
1029 0 0       0 $options->{content} = $params if defined $params;
1030 0         0 return $self->_call_rest_client( 'POST', 'broadcast_messages', [@_], $options );
1031             }
1032              
1033             =item edit_broadcast_message
1034              
1035             my $message = $api->edit_broadcast_message(
1036             $message_id,
1037             \%params,
1038             );
1039              
1040             Sends a C request to C and returns the decoded response content.
1041              
1042             =cut
1043              
1044             sub edit_broadcast_message {
1045 0     0 1 0 my $self = shift;
1046 0 0 0     0 croak 'edit_broadcast_message must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1047 0 0 0     0 croak 'The #1 argument ($message_id) to edit_broadcast_message must be a scalar' if ref($_[0]) or (!defined $_[0]);
1048 0 0 0     0 croak 'The last argument (\%params) to edit_broadcast_message must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1049 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1050 0         0 my $options = {};
1051 0 0       0 $options->{content} = $params if defined $params;
1052 0         0 return $self->_call_rest_client( 'PUT', 'broadcast_messages/:message_id', [@_], $options );
1053             }
1054              
1055             =item delete_broadcast_message
1056              
1057             $api->delete_broadcast_message(
1058             $message_id,
1059             );
1060              
1061             Sends a C request to C.
1062              
1063             =cut
1064              
1065             sub delete_broadcast_message {
1066 0     0 1 0 my $self = shift;
1067 0 0       0 croak 'delete_broadcast_message must be called with 1 arguments' if @_ != 1;
1068 0 0 0     0 croak 'The #1 argument ($message_id) to delete_broadcast_message must be a scalar' if ref($_[0]) or (!defined $_[0]);
1069 0         0 my $options = {};
1070 0         0 $options->{decode} = 0;
1071 0         0 $self->_call_rest_client( 'DELETE', 'broadcast_messages/:message_id', [@_], $options );
1072 0         0 return;
1073             }
1074              
1075             =back
1076              
1077             =head2 Project-level Variables
1078              
1079             See L.
1080              
1081             =over
1082              
1083             =item project_variables
1084              
1085             my $variables = $api->project_variables(
1086             $project_id,
1087             \%params,
1088             );
1089              
1090             Sends a C request to C and returns the decoded response content.
1091              
1092             =cut
1093              
1094             sub project_variables {
1095 0     0 1 0 my $self = shift;
1096 0 0 0     0 croak 'project_variables must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1097 0 0 0     0 croak 'The #1 argument ($project_id) to project_variables must be a scalar' if ref($_[0]) or (!defined $_[0]);
1098 0 0 0     0 croak 'The last argument (\%params) to project_variables must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1099 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1100 0         0 my $options = {};
1101 0 0       0 $options->{query} = $params if defined $params;
1102 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/variables', [@_], $options );
1103             }
1104              
1105             =item project_variable
1106              
1107             my $variable = $api->project_variable(
1108             $project_id,
1109             $variable_key,
1110             );
1111              
1112             Sends a C request to C and returns the decoded response content.
1113              
1114             =cut
1115              
1116             sub project_variable {
1117 0     0 1 0 my $self = shift;
1118 0 0       0 croak 'project_variable must be called with 2 arguments' if @_ != 2;
1119 0 0 0     0 croak 'The #1 argument ($project_id) to project_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
1120 0 0 0     0 croak 'The #2 argument ($variable_key) to project_variable must be a scalar' if ref($_[1]) or (!defined $_[1]);
1121 0         0 my $options = {};
1122 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/variables/:variable_key', [@_], $options );
1123             }
1124              
1125             =item create_project_variable
1126              
1127             my $variable = $api->create_project_variable(
1128             $project_id,
1129             \%params,
1130             );
1131              
1132             Sends a C request to C and returns the decoded response content.
1133              
1134             =cut
1135              
1136             sub create_project_variable {
1137 0     0 1 0 my $self = shift;
1138 0 0 0     0 croak 'create_project_variable must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1139 0 0 0     0 croak 'The #1 argument ($project_id) to create_project_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
1140 0 0 0     0 croak 'The last argument (\%params) to create_project_variable must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1141 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1142 0         0 my $options = {};
1143 0 0       0 $options->{content} = $params if defined $params;
1144 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/variables', [@_], $options );
1145             }
1146              
1147             =item edit_project_variable
1148              
1149             my $variable = $api->edit_project_variable(
1150             $project_id,
1151             $variable_key,
1152             \%params,
1153             );
1154              
1155             Sends a C request to C and returns the decoded response content.
1156              
1157             =cut
1158              
1159             sub edit_project_variable {
1160 0     0 1 0 my $self = shift;
1161 0 0 0     0 croak 'edit_project_variable must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1162 0 0 0     0 croak 'The #1 argument ($project_id) to edit_project_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
1163 0 0 0     0 croak 'The #2 argument ($variable_key) to edit_project_variable must be a scalar' if ref($_[1]) or (!defined $_[1]);
1164 0 0 0     0 croak 'The last argument (\%params) to edit_project_variable must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1165 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1166 0         0 my $options = {};
1167 0 0       0 $options->{content} = $params if defined $params;
1168 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/variables/:variable_key', [@_], $options );
1169             }
1170              
1171             =item delete_project_variable
1172              
1173             $api->delete_project_variable(
1174             $project_id,
1175             $variable_key,
1176             );
1177              
1178             Sends a C request to C.
1179              
1180             =cut
1181              
1182             sub delete_project_variable {
1183 0     0 1 0 my $self = shift;
1184 0 0       0 croak 'delete_project_variable must be called with 2 arguments' if @_ != 2;
1185 0 0 0     0 croak 'The #1 argument ($project_id) to delete_project_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
1186 0 0 0     0 croak 'The #2 argument ($variable_key) to delete_project_variable must be a scalar' if ref($_[1]) or (!defined $_[1]);
1187 0         0 my $options = {};
1188 0         0 $options->{decode} = 0;
1189 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/variables/:variable_key', [@_], $options );
1190 0         0 return;
1191             }
1192              
1193             =back
1194              
1195             =head2 Group-level Variables
1196              
1197             See L.
1198              
1199             =over
1200              
1201             =item group_variables
1202              
1203             my $variables = $api->group_variables(
1204             $group_id,
1205             \%params,
1206             );
1207              
1208             Sends a C request to C and returns the decoded response content.
1209              
1210             =cut
1211              
1212             sub group_variables {
1213 0     0 1 0 my $self = shift;
1214 0 0 0     0 croak 'group_variables must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1215 0 0 0     0 croak 'The #1 argument ($group_id) to group_variables must be a scalar' if ref($_[0]) or (!defined $_[0]);
1216 0 0 0     0 croak 'The last argument (\%params) to group_variables must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1217 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1218 0         0 my $options = {};
1219 0 0       0 $options->{query} = $params if defined $params;
1220 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/variables', [@_], $options );
1221             }
1222              
1223             =item group_variable
1224              
1225             my $variable = $api->group_variable(
1226             $group_id,
1227             $variable_key,
1228             );
1229              
1230             Sends a C request to C and returns the decoded response content.
1231              
1232             =cut
1233              
1234             sub group_variable {
1235 0     0 1 0 my $self = shift;
1236 0 0       0 croak 'group_variable must be called with 2 arguments' if @_ != 2;
1237 0 0 0     0 croak 'The #1 argument ($group_id) to group_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
1238 0 0 0     0 croak 'The #2 argument ($variable_key) to group_variable must be a scalar' if ref($_[1]) or (!defined $_[1]);
1239 0         0 my $options = {};
1240 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/variables/:variable_key', [@_], $options );
1241             }
1242              
1243             =item create_group_variable
1244              
1245             my $variable = $api->create_group_variable(
1246             $group_id,
1247             \%params,
1248             );
1249              
1250             Sends a C request to C and returns the decoded response content.
1251              
1252             =cut
1253              
1254             sub create_group_variable {
1255 0     0 1 0 my $self = shift;
1256 0 0 0     0 croak 'create_group_variable must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1257 0 0 0     0 croak 'The #1 argument ($group_id) to create_group_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
1258 0 0 0     0 croak 'The last argument (\%params) to create_group_variable must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1259 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1260 0         0 my $options = {};
1261 0 0       0 $options->{content} = $params if defined $params;
1262 0         0 return $self->_call_rest_client( 'POST', 'groups/:group_id/variables', [@_], $options );
1263             }
1264              
1265             =item edit_group_variable
1266              
1267             my $variable = $api->edit_group_variable(
1268             $group_id,
1269             $variable_key,
1270             \%params,
1271             );
1272              
1273             Sends a C request to C and returns the decoded response content.
1274              
1275             =cut
1276              
1277             sub edit_group_variable {
1278 0     0 1 0 my $self = shift;
1279 0 0 0     0 croak 'edit_group_variable must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1280 0 0 0     0 croak 'The #1 argument ($group_id) to edit_group_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
1281 0 0 0     0 croak 'The #2 argument ($variable_key) to edit_group_variable must be a scalar' if ref($_[1]) or (!defined $_[1]);
1282 0 0 0     0 croak 'The last argument (\%params) to edit_group_variable must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1283 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1284 0         0 my $options = {};
1285 0 0       0 $options->{content} = $params if defined $params;
1286 0         0 return $self->_call_rest_client( 'PUT', 'groups/:group_id/variables/:variable_key', [@_], $options );
1287             }
1288              
1289             =item delete_group_variable
1290              
1291             $api->delete_group_variable(
1292             $group_id,
1293             $variable_key,
1294             );
1295              
1296             Sends a C request to C.
1297              
1298             =cut
1299              
1300             sub delete_group_variable {
1301 0     0 1 0 my $self = shift;
1302 0 0       0 croak 'delete_group_variable must be called with 2 arguments' if @_ != 2;
1303 0 0 0     0 croak 'The #1 argument ($group_id) to delete_group_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
1304 0 0 0     0 croak 'The #2 argument ($variable_key) to delete_group_variable must be a scalar' if ref($_[1]) or (!defined $_[1]);
1305 0         0 my $options = {};
1306 0         0 $options->{decode} = 0;
1307 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id/variables/:variable_key', [@_], $options );
1308 0         0 return;
1309             }
1310              
1311             =back
1312              
1313             =head2 Snippets
1314              
1315             See L.
1316              
1317             =over
1318              
1319             =item snippets
1320              
1321             my $snippets = $api->snippets();
1322              
1323             Sends a C request to C and returns the decoded response content.
1324              
1325             =cut
1326              
1327             sub snippets {
1328 0     0 1 0 my $self = shift;
1329 0 0       0 croak "The snippets method does not take any arguments" if @_;
1330 0         0 my $options = {};
1331 0         0 return $self->_call_rest_client( 'GET', 'snippets', [@_], $options );
1332             }
1333              
1334             =item snippet
1335              
1336             my $snippet = $api->snippet(
1337             $snippet_id,
1338             );
1339              
1340             Sends a C request to C and returns the decoded response content.
1341              
1342             =cut
1343              
1344             sub snippet {
1345 0     0 1 0 my $self = shift;
1346 0 0       0 croak 'snippet must be called with 1 arguments' if @_ != 1;
1347 0 0 0     0 croak 'The #1 argument ($snippet_id) to snippet must be a scalar' if ref($_[0]) or (!defined $_[0]);
1348 0         0 my $options = {};
1349 0         0 return $self->_call_rest_client( 'GET', 'snippets/:snippet_id', [@_], $options );
1350             }
1351              
1352             =item create_snippet
1353              
1354             my $snippet = $api->create_snippet(
1355             \%params,
1356             );
1357              
1358             Sends a C request to C and returns the decoded response content.
1359              
1360             =cut
1361              
1362             sub create_snippet {
1363 0     0 1 0 my $self = shift;
1364 0 0 0     0 croak 'create_snippet must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
1365 0 0 0     0 croak 'The last argument (\%params) to create_snippet must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
1366 0 0       0 my $params = (@_ == 1) ? pop() : undef;
1367 0         0 my $options = {};
1368 0 0       0 $options->{content} = $params if defined $params;
1369 0         0 return $self->_call_rest_client( 'POST', 'snippets', [@_], $options );
1370             }
1371              
1372             =item edit_snippet
1373              
1374             my $snippet = $api->edit_snippet(
1375             $snippet_id,
1376             \%params,
1377             );
1378              
1379             Sends a C request to C and returns the decoded response content.
1380              
1381             =cut
1382              
1383             sub edit_snippet {
1384 0     0 1 0 my $self = shift;
1385 0 0 0     0 croak 'edit_snippet must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1386 0 0 0     0 croak 'The #1 argument ($snippet_id) to edit_snippet must be a scalar' if ref($_[0]) or (!defined $_[0]);
1387 0 0 0     0 croak 'The last argument (\%params) to edit_snippet must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1388 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1389 0         0 my $options = {};
1390 0 0       0 $options->{content} = $params if defined $params;
1391 0         0 return $self->_call_rest_client( 'PUT', 'snippets/:snippet_id', [@_], $options );
1392             }
1393              
1394             =item delete_snippet
1395              
1396             $api->delete_snippet(
1397             $snippet_id,
1398             );
1399              
1400             Sends a C request to C.
1401              
1402             =cut
1403              
1404             sub delete_snippet {
1405 0     0 1 0 my $self = shift;
1406 0 0       0 croak 'delete_snippet must be called with 1 arguments' if @_ != 1;
1407 0 0 0     0 croak 'The #1 argument ($snippet_id) to delete_snippet must be a scalar' if ref($_[0]) or (!defined $_[0]);
1408 0         0 my $options = {};
1409 0         0 $options->{decode} = 0;
1410 0         0 $self->_call_rest_client( 'DELETE', 'snippets/:snippet_id', [@_], $options );
1411 0         0 return;
1412             }
1413              
1414             =item public_snippets
1415              
1416             my $snippets = $api->public_snippets(
1417             \%params,
1418             );
1419              
1420             Sends a C request to C and returns the decoded response content.
1421              
1422             =cut
1423              
1424             sub public_snippets {
1425 0     0 1 0 my $self = shift;
1426 0 0 0     0 croak 'public_snippets must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
1427 0 0 0     0 croak 'The last argument (\%params) to public_snippets must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
1428 0 0       0 my $params = (@_ == 1) ? pop() : undef;
1429 0         0 my $options = {};
1430 0 0       0 $options->{query} = $params if defined $params;
1431 0         0 return $self->_call_rest_client( 'GET', 'snippets/public', [@_], $options );
1432             }
1433              
1434             =item snippet_user_agent_detail
1435              
1436             my $user_agent = $api->snippet_user_agent_detail(
1437             $snippet_id,
1438             );
1439              
1440             Sends a C request to C and returns the decoded response content.
1441              
1442             =cut
1443              
1444             sub snippet_user_agent_detail {
1445 0     0 1 0 my $self = shift;
1446 0 0       0 croak 'snippet_user_agent_detail must be called with 1 arguments' if @_ != 1;
1447 0 0 0     0 croak 'The #1 argument ($snippet_id) to snippet_user_agent_detail must be a scalar' if ref($_[0]) or (!defined $_[0]);
1448 0         0 my $options = {};
1449 0         0 return $self->_call_rest_client( 'GET', 'snippets/:snippet_id/user_agent_detail', [@_], $options );
1450             }
1451              
1452             =back
1453              
1454             =head2 Commits
1455              
1456             See L.
1457              
1458             =over
1459              
1460             =item commits
1461              
1462             my $commits = $api->commits(
1463             $project_id,
1464             \%params,
1465             );
1466              
1467             Sends a C request to C and returns the decoded response content.
1468              
1469             =cut
1470              
1471             sub commits {
1472 0     0 1 0 my $self = shift;
1473 0 0 0     0 croak 'commits must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1474 0 0 0     0 croak 'The #1 argument ($project_id) to commits must be a scalar' if ref($_[0]) or (!defined $_[0]);
1475 0 0 0     0 croak 'The last argument (\%params) to commits must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1476 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1477 0         0 my $options = {};
1478 0 0       0 $options->{query} = $params if defined $params;
1479 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/commits', [@_], $options );
1480             }
1481              
1482             =item create_commit
1483              
1484             my $commit = $api->create_commit(
1485             $project_id,
1486             \%params,
1487             );
1488              
1489             Sends a C request to C and returns the decoded response content.
1490              
1491             =cut
1492              
1493             sub create_commit {
1494 0     0 1 0 my $self = shift;
1495 0 0 0     0 croak 'create_commit must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1496 0 0 0     0 croak 'The #1 argument ($project_id) to create_commit must be a scalar' if ref($_[0]) or (!defined $_[0]);
1497 0 0 0     0 croak 'The last argument (\%params) to create_commit must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1498 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1499 0         0 my $options = {};
1500 0 0       0 $options->{content} = $params if defined $params;
1501 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/repository/commits', [@_], $options );
1502             }
1503              
1504             =item commit
1505              
1506             my $commit = $api->commit(
1507             $project_id,
1508             $commit_sha,
1509             );
1510              
1511             Sends a C request to C and returns the decoded response content.
1512              
1513             =cut
1514              
1515             sub commit {
1516 0     0 1 0 my $self = shift;
1517 0 0       0 croak 'commit must be called with 2 arguments' if @_ != 2;
1518 0 0 0     0 croak 'The #1 argument ($project_id) to commit must be a scalar' if ref($_[0]) or (!defined $_[0]);
1519 0 0 0     0 croak 'The #2 argument ($commit_sha) to commit must be a scalar' if ref($_[1]) or (!defined $_[1]);
1520 0         0 my $options = {};
1521 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/commits/:commit_sha', [@_], $options );
1522             }
1523              
1524             =item commit_refs
1525              
1526             my $refs = $api->commit_refs(
1527             $project_id,
1528             $commit_sha,
1529             \%params,
1530             );
1531              
1532             Sends a C request to C and returns the decoded response content.
1533              
1534             =cut
1535              
1536             sub commit_refs {
1537 0     0 1 0 my $self = shift;
1538 0 0 0     0 croak 'commit_refs must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1539 0 0 0     0 croak 'The #1 argument ($project_id) to commit_refs must be a scalar' if ref($_[0]) or (!defined $_[0]);
1540 0 0 0     0 croak 'The #2 argument ($commit_sha) to commit_refs must be a scalar' if ref($_[1]) or (!defined $_[1]);
1541 0 0 0     0 croak 'The last argument (\%params) to commit_refs must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1542 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1543 0         0 my $options = {};
1544 0 0       0 $options->{query} = $params if defined $params;
1545 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/commits/:commit_sha/refs', [@_], $options );
1546             }
1547              
1548             =item cherry_pick_commit
1549              
1550             my $commit = $api->cherry_pick_commit(
1551             $project_id,
1552             $commit_sha,
1553             \%params,
1554             );
1555              
1556             Sends a C request to C and returns the decoded response content.
1557              
1558             =cut
1559              
1560             sub cherry_pick_commit {
1561 0     0 1 0 my $self = shift;
1562 0 0 0     0 croak 'cherry_pick_commit must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1563 0 0 0     0 croak 'The #1 argument ($project_id) to cherry_pick_commit must be a scalar' if ref($_[0]) or (!defined $_[0]);
1564 0 0 0     0 croak 'The #2 argument ($commit_sha) to cherry_pick_commit must be a scalar' if ref($_[1]) or (!defined $_[1]);
1565 0 0 0     0 croak 'The last argument (\%params) to cherry_pick_commit must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1566 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1567 0         0 my $options = {};
1568 0 0       0 $options->{content} = $params if defined $params;
1569 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/repository/commits/:commit_sha/cherry_pick', [@_], $options );
1570             }
1571              
1572             =item commit_diff
1573              
1574             my $diff = $api->commit_diff(
1575             $project_id,
1576             $commit_sha,
1577             \%params,
1578             );
1579              
1580             Sends a C request to C and returns the decoded response content.
1581              
1582             =cut
1583              
1584             sub commit_diff {
1585 0     0 1 0 my $self = shift;
1586 0 0 0     0 croak 'commit_diff must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1587 0 0 0     0 croak 'The #1 argument ($project_id) to commit_diff must be a scalar' if ref($_[0]) or (!defined $_[0]);
1588 0 0 0     0 croak 'The #2 argument ($commit_sha) to commit_diff must be a scalar' if ref($_[1]) or (!defined $_[1]);
1589 0 0 0     0 croak 'The last argument (\%params) to commit_diff must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1590 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1591 0         0 my $options = {};
1592 0 0       0 $options->{query} = $params if defined $params;
1593 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/commits/:commit_sha/diff', [@_], $options );
1594             }
1595              
1596             =item commit_comments
1597              
1598             my $comments = $api->commit_comments(
1599             $project_id,
1600             $commit_sha,
1601             \%params,
1602             );
1603              
1604             Sends a C request to C and returns the decoded response content.
1605              
1606             =cut
1607              
1608             sub commit_comments {
1609 0     0 1 0 my $self = shift;
1610 0 0 0     0 croak 'commit_comments must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1611 0 0 0     0 croak 'The #1 argument ($project_id) to commit_comments must be a scalar' if ref($_[0]) or (!defined $_[0]);
1612 0 0 0     0 croak 'The #2 argument ($commit_sha) to commit_comments must be a scalar' if ref($_[1]) or (!defined $_[1]);
1613 0 0 0     0 croak 'The last argument (\%params) to commit_comments must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1614 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1615 0         0 my $options = {};
1616 0 0       0 $options->{query} = $params if defined $params;
1617 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/commits/:commit_sha/comments', [@_], $options );
1618             }
1619              
1620             =item create_commit_comment
1621              
1622             $api->create_commit_comment(
1623             $project_id,
1624             $commit_sha,
1625             \%params,
1626             );
1627              
1628             Sends a C request to C.
1629              
1630             =cut
1631              
1632             sub create_commit_comment {
1633 0     0 1 0 my $self = shift;
1634 0 0 0     0 croak 'create_commit_comment must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1635 0 0 0     0 croak 'The #1 argument ($project_id) to create_commit_comment must be a scalar' if ref($_[0]) or (!defined $_[0]);
1636 0 0 0     0 croak 'The #2 argument ($commit_sha) to create_commit_comment must be a scalar' if ref($_[1]) or (!defined $_[1]);
1637 0 0 0     0 croak 'The last argument (\%params) to create_commit_comment must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1638 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1639 0         0 my $options = {};
1640 0         0 $options->{decode} = 0;
1641 0 0       0 $options->{content} = $params if defined $params;
1642 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/repository/commits/:commit_sha/comments', [@_], $options );
1643 0         0 return;
1644             }
1645              
1646             =item commit_statuses
1647              
1648             my $build_statuses = $api->commit_statuses(
1649             $project_id,
1650             $commit_sha,
1651             \%params,
1652             );
1653              
1654             Sends a C request to C and returns the decoded response content.
1655              
1656             =cut
1657              
1658             sub commit_statuses {
1659 0     0 1 0 my $self = shift;
1660 0 0 0     0 croak 'commit_statuses must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1661 0 0 0     0 croak 'The #1 argument ($project_id) to commit_statuses must be a scalar' if ref($_[0]) or (!defined $_[0]);
1662 0 0 0     0 croak 'The #2 argument ($commit_sha) to commit_statuses must be a scalar' if ref($_[1]) or (!defined $_[1]);
1663 0 0 0     0 croak 'The last argument (\%params) to commit_statuses must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1664 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1665 0         0 my $options = {};
1666 0 0       0 $options->{query} = $params if defined $params;
1667 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/commits/:commit_sha/statuses', [@_], $options );
1668             }
1669              
1670             =item create_commit_status
1671              
1672             my $build_status = $api->create_commit_status(
1673             $project_id,
1674             $commit_sha,
1675             \%params,
1676             );
1677              
1678             Sends a C request to C and returns the decoded response content.
1679              
1680             =cut
1681              
1682             sub create_commit_status {
1683 0     0 1 0 my $self = shift;
1684 0 0 0     0 croak 'create_commit_status must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1685 0 0 0     0 croak 'The #1 argument ($project_id) to create_commit_status must be a scalar' if ref($_[0]) or (!defined $_[0]);
1686 0 0 0     0 croak 'The #2 argument ($commit_sha) to create_commit_status must be a scalar' if ref($_[1]) or (!defined $_[1]);
1687 0 0 0     0 croak 'The last argument (\%params) to create_commit_status must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1688 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1689 0         0 my $options = {};
1690 0 0       0 $options->{content} = $params if defined $params;
1691 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/statuses/:commit_sha', [@_], $options );
1692             }
1693              
1694             =back
1695              
1696             =head2 Container Registry
1697              
1698             See L.
1699              
1700             =over
1701              
1702             =item registry_repositories_in_project
1703              
1704             my $registry_repositories = $api->registry_repositories_in_project(
1705             $project_id,
1706             \%params,
1707             );
1708              
1709             Sends a C request to C and returns the decoded response content.
1710              
1711             =cut
1712              
1713             sub registry_repositories_in_project {
1714 0     0 1 0 my $self = shift;
1715 0 0 0     0 croak 'registry_repositories_in_project must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1716 0 0 0     0 croak 'The #1 argument ($project_id) to registry_repositories_in_project must be a scalar' if ref($_[0]) or (!defined $_[0]);
1717 0 0 0     0 croak 'The last argument (\%params) to registry_repositories_in_project must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1718 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1719 0         0 my $options = {};
1720 0 0       0 $options->{query} = $params if defined $params;
1721 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/registry/repositories', [@_], $options );
1722             }
1723              
1724             =item registry_repositories_in_group
1725              
1726             my $registry_repositories = $api->registry_repositories_in_group(
1727             $group_id,
1728             \%params,
1729             );
1730              
1731             Sends a C request to C and returns the decoded response content.
1732              
1733             =cut
1734              
1735             sub registry_repositories_in_group {
1736 0     0 1 0 my $self = shift;
1737 0 0 0     0 croak 'registry_repositories_in_group must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
1738 0 0 0     0 croak 'The #1 argument ($group_id) to registry_repositories_in_group must be a scalar' if ref($_[0]) or (!defined $_[0]);
1739 0 0 0     0 croak 'The last argument (\%params) to registry_repositories_in_group must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
1740 0 0       0 my $params = (@_ == 2) ? pop() : undef;
1741 0         0 my $options = {};
1742 0 0       0 $options->{query} = $params if defined $params;
1743 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/registry/repositories', [@_], $options );
1744             }
1745              
1746             =item delete_registry_repository
1747              
1748             $api->delete_registry_repository(
1749             $project_id,
1750             $repository_id,
1751             );
1752              
1753             Sends a C request to C.
1754              
1755             =cut
1756              
1757             sub delete_registry_repository {
1758 0     0 1 0 my $self = shift;
1759 0 0       0 croak 'delete_registry_repository must be called with 2 arguments' if @_ != 2;
1760 0 0 0     0 croak 'The #1 argument ($project_id) to delete_registry_repository must be a scalar' if ref($_[0]) or (!defined $_[0]);
1761 0 0 0     0 croak 'The #2 argument ($repository_id) to delete_registry_repository must be a scalar' if ref($_[1]) or (!defined $_[1]);
1762 0         0 my $options = {};
1763 0         0 $options->{decode} = 0;
1764 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/registry/repositories/:repository_id', [@_], $options );
1765 0         0 return;
1766             }
1767              
1768             =item registry_repository_tags
1769              
1770             my $tags = $api->registry_repository_tags(
1771             $project_id,
1772             $repository_id,
1773             );
1774              
1775             Sends a C request to C and returns the decoded response content.
1776              
1777             =cut
1778              
1779             sub registry_repository_tags {
1780 0     0 1 0 my $self = shift;
1781 0 0       0 croak 'registry_repository_tags must be called with 2 arguments' if @_ != 2;
1782 0 0 0     0 croak 'The #1 argument ($project_id) to registry_repository_tags must be a scalar' if ref($_[0]) or (!defined $_[0]);
1783 0 0 0     0 croak 'The #2 argument ($repository_id) to registry_repository_tags must be a scalar' if ref($_[1]) or (!defined $_[1]);
1784 0         0 my $options = {};
1785 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/registry/repositories/:repository_id/tags', [@_], $options );
1786             }
1787              
1788             =item registry_repository_tag
1789              
1790             my $tag = $api->registry_repository_tag(
1791             $project_id,
1792             $repository_id,
1793             $tag_name,
1794             );
1795              
1796             Sends a C request to C and returns the decoded response content.
1797              
1798             =cut
1799              
1800             sub registry_repository_tag {
1801 0     0 1 0 my $self = shift;
1802 0 0       0 croak 'registry_repository_tag must be called with 3 arguments' if @_ != 3;
1803 0 0 0     0 croak 'The #1 argument ($project_id) to registry_repository_tag must be a scalar' if ref($_[0]) or (!defined $_[0]);
1804 0 0 0     0 croak 'The #2 argument ($repository_id) to registry_repository_tag must be a scalar' if ref($_[1]) or (!defined $_[1]);
1805 0 0 0     0 croak 'The #3 argument ($tag_name) to registry_repository_tag must be a scalar' if ref($_[2]) or (!defined $_[2]);
1806 0         0 my $options = {};
1807 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/registry/repositories/:repository_id/tags/:tag_name', [@_], $options );
1808             }
1809              
1810             =item delete_registry_repository_tag
1811              
1812             $api->delete_registry_repository_tag(
1813             $project_id,
1814             $repository_id,
1815             $tag_name,
1816             );
1817              
1818             Sends a C request to C.
1819              
1820             =cut
1821              
1822             sub delete_registry_repository_tag {
1823 0     0 1 0 my $self = shift;
1824 0 0       0 croak 'delete_registry_repository_tag must be called with 3 arguments' if @_ != 3;
1825 0 0 0     0 croak 'The #1 argument ($project_id) to delete_registry_repository_tag must be a scalar' if ref($_[0]) or (!defined $_[0]);
1826 0 0 0     0 croak 'The #2 argument ($repository_id) to delete_registry_repository_tag must be a scalar' if ref($_[1]) or (!defined $_[1]);
1827 0 0 0     0 croak 'The #3 argument ($tag_name) to delete_registry_repository_tag must be a scalar' if ref($_[2]) or (!defined $_[2]);
1828 0         0 my $options = {};
1829 0         0 $options->{decode} = 0;
1830 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/registry/repositories/:repository_id/tags/:tag_name', [@_], $options );
1831 0         0 return;
1832             }
1833              
1834             =item bulk_delete_registry_repository_tags
1835              
1836             $api->bulk_delete_registry_repository_tags(
1837             $project_id,
1838             $repository_id,
1839             \%params,
1840             );
1841              
1842             Sends a C request to C.
1843              
1844             =cut
1845              
1846             sub bulk_delete_registry_repository_tags {
1847 0     0 1 0 my $self = shift;
1848 0 0 0     0 croak 'bulk_delete_registry_repository_tags must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1849 0 0 0     0 croak 'The #1 argument ($project_id) to bulk_delete_registry_repository_tags must be a scalar' if ref($_[0]) or (!defined $_[0]);
1850 0 0 0     0 croak 'The #2 argument ($repository_id) to bulk_delete_registry_repository_tags must be a scalar' if ref($_[1]) or (!defined $_[1]);
1851 0 0 0     0 croak 'The last argument (\%params) to bulk_delete_registry_repository_tags must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
1852 0 0       0 my $params = (@_ == 3) ? pop() : undef;
1853 0         0 my $options = {};
1854 0         0 $options->{decode} = 0;
1855 0 0       0 $options->{content} = $params if defined $params;
1856 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/registry/repositories/:repository_id/tags', [@_], $options );
1857 0         0 return;
1858             }
1859              
1860             =back
1861              
1862             =head2 Custom Attributes
1863              
1864             See L.
1865              
1866             =over
1867              
1868             =item custom_user_attributes
1869              
1870             my $attributes = $api->custom_user_attributes(
1871             $user_id,
1872             );
1873              
1874             Sends a C request to C and returns the decoded response content.
1875              
1876             =cut
1877              
1878             sub custom_user_attributes {
1879 0     0 1 0 my $self = shift;
1880 0 0       0 croak 'custom_user_attributes must be called with 1 arguments' if @_ != 1;
1881 0 0 0     0 croak 'The #1 argument ($user_id) to custom_user_attributes must be a scalar' if ref($_[0]) or (!defined $_[0]);
1882 0         0 my $options = {};
1883 0         0 return $self->_call_rest_client( 'GET', 'users/:user_id/custom_attributes', [@_], $options );
1884             }
1885              
1886             =item custom_group_attributes
1887              
1888             my $attributes = $api->custom_group_attributes(
1889             $group_id,
1890             );
1891              
1892             Sends a C request to C and returns the decoded response content.
1893              
1894             =cut
1895              
1896             sub custom_group_attributes {
1897 0     0 1 0 my $self = shift;
1898 0 0       0 croak 'custom_group_attributes must be called with 1 arguments' if @_ != 1;
1899 0 0 0     0 croak 'The #1 argument ($group_id) to custom_group_attributes must be a scalar' if ref($_[0]) or (!defined $_[0]);
1900 0         0 my $options = {};
1901 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/custom_attributes', [@_], $options );
1902             }
1903              
1904             =item custom_project_attributes
1905              
1906             my $attributes = $api->custom_project_attributes(
1907             $project_id,
1908             );
1909              
1910             Sends a C request to C and returns the decoded response content.
1911              
1912             =cut
1913              
1914             sub custom_project_attributes {
1915 0     0 1 0 my $self = shift;
1916 0 0       0 croak 'custom_project_attributes must be called with 1 arguments' if @_ != 1;
1917 0 0 0     0 croak 'The #1 argument ($project_id) to custom_project_attributes must be a scalar' if ref($_[0]) or (!defined $_[0]);
1918 0         0 my $options = {};
1919 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/custom_attributes', [@_], $options );
1920             }
1921              
1922             =item custom_user_attribute
1923              
1924             my $attribute = $api->custom_user_attribute(
1925             $user_id,
1926             $attribute_key,
1927             );
1928              
1929             Sends a C request to C and returns the decoded response content.
1930              
1931             =cut
1932              
1933             sub custom_user_attribute {
1934 0     0 1 0 my $self = shift;
1935 0 0       0 croak 'custom_user_attribute must be called with 2 arguments' if @_ != 2;
1936 0 0 0     0 croak 'The #1 argument ($user_id) to custom_user_attribute must be a scalar' if ref($_[0]) or (!defined $_[0]);
1937 0 0 0     0 croak 'The #2 argument ($attribute_key) to custom_user_attribute must be a scalar' if ref($_[1]) or (!defined $_[1]);
1938 0         0 my $options = {};
1939 0         0 return $self->_call_rest_client( 'GET', 'users/:user_id/custom_attributes/:attribute_key', [@_], $options );
1940             }
1941              
1942             =item custom_group_attribute
1943              
1944             my $attribute = $api->custom_group_attribute(
1945             $group_id,
1946             $attribute_key,
1947             );
1948              
1949             Sends a C request to C and returns the decoded response content.
1950              
1951             =cut
1952              
1953             sub custom_group_attribute {
1954 0     0 1 0 my $self = shift;
1955 0 0       0 croak 'custom_group_attribute must be called with 2 arguments' if @_ != 2;
1956 0 0 0     0 croak 'The #1 argument ($group_id) to custom_group_attribute must be a scalar' if ref($_[0]) or (!defined $_[0]);
1957 0 0 0     0 croak 'The #2 argument ($attribute_key) to custom_group_attribute must be a scalar' if ref($_[1]) or (!defined $_[1]);
1958 0         0 my $options = {};
1959 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/custom_attributes/:attribute_key', [@_], $options );
1960             }
1961              
1962             =item custom_project_attribute
1963              
1964             my $attribute = $api->custom_project_attribute(
1965             $project_id,
1966             $attribute_key,
1967             );
1968              
1969             Sends a C request to C and returns the decoded response content.
1970              
1971             =cut
1972              
1973             sub custom_project_attribute {
1974 0     0 1 0 my $self = shift;
1975 0 0       0 croak 'custom_project_attribute must be called with 2 arguments' if @_ != 2;
1976 0 0 0     0 croak 'The #1 argument ($project_id) to custom_project_attribute must be a scalar' if ref($_[0]) or (!defined $_[0]);
1977 0 0 0     0 croak 'The #2 argument ($attribute_key) to custom_project_attribute must be a scalar' if ref($_[1]) or (!defined $_[1]);
1978 0         0 my $options = {};
1979 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/custom_attributes/:attribute_key', [@_], $options );
1980             }
1981              
1982             =item set_custom_user_attribute
1983              
1984             my $attribute = $api->set_custom_user_attribute(
1985             $user_id,
1986             $attribute_key,
1987             \%params,
1988             );
1989              
1990             Sends a C request to C and returns the decoded response content.
1991              
1992             =cut
1993              
1994             sub set_custom_user_attribute {
1995 0     0 1 0 my $self = shift;
1996 0 0 0     0 croak 'set_custom_user_attribute must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
1997 0 0 0     0 croak 'The #1 argument ($user_id) to set_custom_user_attribute must be a scalar' if ref($_[0]) or (!defined $_[0]);
1998 0 0 0     0 croak 'The #2 argument ($attribute_key) to set_custom_user_attribute must be a scalar' if ref($_[1]) or (!defined $_[1]);
1999 0 0 0     0 croak 'The last argument (\%params) to set_custom_user_attribute must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
2000 0 0       0 my $params = (@_ == 3) ? pop() : undef;
2001 0         0 my $options = {};
2002 0 0       0 $options->{content} = $params if defined $params;
2003 0         0 return $self->_call_rest_client( 'PUT', 'users/:user_id/custom_attributes/:attribute_key', [@_], $options );
2004             }
2005              
2006             =item set_custom_group_attribute
2007              
2008             my $attribute = $api->set_custom_group_attribute(
2009             $group_id,
2010             $attribute_key,
2011             \%params,
2012             );
2013              
2014             Sends a C request to C and returns the decoded response content.
2015              
2016             =cut
2017              
2018             sub set_custom_group_attribute {
2019 0     0 1 0 my $self = shift;
2020 0 0 0     0 croak 'set_custom_group_attribute must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
2021 0 0 0     0 croak 'The #1 argument ($group_id) to set_custom_group_attribute must be a scalar' if ref($_[0]) or (!defined $_[0]);
2022 0 0 0     0 croak 'The #2 argument ($attribute_key) to set_custom_group_attribute must be a scalar' if ref($_[1]) or (!defined $_[1]);
2023 0 0 0     0 croak 'The last argument (\%params) to set_custom_group_attribute must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
2024 0 0       0 my $params = (@_ == 3) ? pop() : undef;
2025 0         0 my $options = {};
2026 0 0       0 $options->{content} = $params if defined $params;
2027 0         0 return $self->_call_rest_client( 'PUT', 'groups/:group_id/custom_attributes/:attribute_key', [@_], $options );
2028             }
2029              
2030             =item set_custom_project_attribute
2031              
2032             my $attribute = $api->set_custom_project_attribute(
2033             $project_id,
2034             $attribute_key,
2035             \%params,
2036             );
2037              
2038             Sends a C request to C and returns the decoded response content.
2039              
2040             =cut
2041              
2042             sub set_custom_project_attribute {
2043 0     0 1 0 my $self = shift;
2044 0 0 0     0 croak 'set_custom_project_attribute must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
2045 0 0 0     0 croak 'The #1 argument ($project_id) to set_custom_project_attribute must be a scalar' if ref($_[0]) or (!defined $_[0]);
2046 0 0 0     0 croak 'The #2 argument ($attribute_key) to set_custom_project_attribute must be a scalar' if ref($_[1]) or (!defined $_[1]);
2047 0 0 0     0 croak 'The last argument (\%params) to set_custom_project_attribute must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
2048 0 0       0 my $params = (@_ == 3) ? pop() : undef;
2049 0         0 my $options = {};
2050 0 0       0 $options->{content} = $params if defined $params;
2051 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/custom_attributes/:attribute_key', [@_], $options );
2052             }
2053              
2054             =item delete_custom_user_attribute
2055              
2056             $api->delete_custom_user_attribute(
2057             $user_id,
2058             $attribute_key,
2059             );
2060              
2061             Sends a C request to C.
2062              
2063             =cut
2064              
2065             sub delete_custom_user_attribute {
2066 0     0 1 0 my $self = shift;
2067 0 0       0 croak 'delete_custom_user_attribute must be called with 2 arguments' if @_ != 2;
2068 0 0 0     0 croak 'The #1 argument ($user_id) to delete_custom_user_attribute must be a scalar' if ref($_[0]) or (!defined $_[0]);
2069 0 0 0     0 croak 'The #2 argument ($attribute_key) to delete_custom_user_attribute must be a scalar' if ref($_[1]) or (!defined $_[1]);
2070 0         0 my $options = {};
2071 0         0 $options->{decode} = 0;
2072 0         0 $self->_call_rest_client( 'DELETE', 'users/:user_id/custom_attributes/:attribute_key', [@_], $options );
2073 0         0 return;
2074             }
2075              
2076             =item delete_custom_group_attribute
2077              
2078             $api->delete_custom_group_attribute(
2079             $group_id,
2080             $attribute_key,
2081             );
2082              
2083             Sends a C request to C.
2084              
2085             =cut
2086              
2087             sub delete_custom_group_attribute {
2088 0     0 1 0 my $self = shift;
2089 0 0       0 croak 'delete_custom_group_attribute must be called with 2 arguments' if @_ != 2;
2090 0 0 0     0 croak 'The #1 argument ($group_id) to delete_custom_group_attribute must be a scalar' if ref($_[0]) or (!defined $_[0]);
2091 0 0 0     0 croak 'The #2 argument ($attribute_key) to delete_custom_group_attribute must be a scalar' if ref($_[1]) or (!defined $_[1]);
2092 0         0 my $options = {};
2093 0         0 $options->{decode} = 0;
2094 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id/custom_attributes/:attribute_key', [@_], $options );
2095 0         0 return;
2096             }
2097              
2098             =item delete_custom_project_attribute
2099              
2100             $api->delete_custom_project_attribute(
2101             $project_id,
2102             $attribute_key,
2103             );
2104              
2105             Sends a C request to C.
2106              
2107             =cut
2108              
2109             sub delete_custom_project_attribute {
2110 0     0 1 0 my $self = shift;
2111 0 0       0 croak 'delete_custom_project_attribute must be called with 2 arguments' if @_ != 2;
2112 0 0 0     0 croak 'The #1 argument ($project_id) to delete_custom_project_attribute must be a scalar' if ref($_[0]) or (!defined $_[0]);
2113 0 0 0     0 croak 'The #2 argument ($attribute_key) to delete_custom_project_attribute must be a scalar' if ref($_[1]) or (!defined $_[1]);
2114 0         0 my $options = {};
2115 0         0 $options->{decode} = 0;
2116 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/custom_attributes/:attribute_key', [@_], $options );
2117 0         0 return;
2118             }
2119              
2120             =back
2121              
2122             =head2 Deployments
2123              
2124             See L.
2125              
2126             =over
2127              
2128             =item deployments
2129              
2130             my $deployments = $api->deployments(
2131             $project_id,
2132             \%params,
2133             );
2134              
2135             Sends a C request to C and returns the decoded response content.
2136              
2137             =cut
2138              
2139             sub deployments {
2140 0     0 1 0 my $self = shift;
2141 0 0 0     0 croak 'deployments must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2142 0 0 0     0 croak 'The #1 argument ($project_id) to deployments must be a scalar' if ref($_[0]) or (!defined $_[0]);
2143 0 0 0     0 croak 'The last argument (\%params) to deployments must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2144 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2145 0         0 my $options = {};
2146 0 0       0 $options->{query} = $params if defined $params;
2147 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/deployments', [@_], $options );
2148             }
2149              
2150             =item deployment
2151              
2152             my $deployment = $api->deployment(
2153             $project_id,
2154             $deployment_id,
2155             );
2156              
2157             Sends a C request to C and returns the decoded response content.
2158              
2159             =cut
2160              
2161             sub deployment {
2162 0     0 1 0 my $self = shift;
2163 0 0       0 croak 'deployment must be called with 2 arguments' if @_ != 2;
2164 0 0 0     0 croak 'The #1 argument ($project_id) to deployment must be a scalar' if ref($_[0]) or (!defined $_[0]);
2165 0 0 0     0 croak 'The #2 argument ($deployment_id) to deployment must be a scalar' if ref($_[1]) or (!defined $_[1]);
2166 0         0 my $options = {};
2167 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/deployments/:deployment_id', [@_], $options );
2168             }
2169              
2170             =back
2171              
2172             =head2 Deploy Keys
2173              
2174             See L.
2175              
2176             =over
2177              
2178             =item all_deploy_keys
2179              
2180             my $keys = $api->all_deploy_keys(
2181             \%params,
2182             );
2183              
2184             Sends a C request to C and returns the decoded response content.
2185              
2186             =cut
2187              
2188             sub all_deploy_keys {
2189 0     0 1 0 my $self = shift;
2190 0 0 0     0 croak 'all_deploy_keys must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
2191 0 0 0     0 croak 'The last argument (\%params) to all_deploy_keys must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
2192 0 0       0 my $params = (@_ == 1) ? pop() : undef;
2193 0         0 my $options = {};
2194 0 0       0 $options->{query} = $params if defined $params;
2195 0         0 return $self->_call_rest_client( 'GET', 'deploy_keys', [@_], $options );
2196             }
2197              
2198             =item deploy_keys
2199              
2200             my $keys = $api->deploy_keys(
2201             $project_id,
2202             \%params,
2203             );
2204              
2205             Sends a C request to C and returns the decoded response content.
2206              
2207             =cut
2208              
2209             sub deploy_keys {
2210 0     0 1 0 my $self = shift;
2211 0 0 0     0 croak 'deploy_keys must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2212 0 0 0     0 croak 'The #1 argument ($project_id) to deploy_keys must be a scalar' if ref($_[0]) or (!defined $_[0]);
2213 0 0 0     0 croak 'The last argument (\%params) to deploy_keys must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2214 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2215 0         0 my $options = {};
2216 0 0       0 $options->{query} = $params if defined $params;
2217 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/deploy_keys', [@_], $options );
2218             }
2219              
2220             =item deploy_key
2221              
2222             my $key = $api->deploy_key(
2223             $project_id,
2224             $key_id,
2225             );
2226              
2227             Sends a C request to C and returns the decoded response content.
2228              
2229             =cut
2230              
2231             sub deploy_key {
2232 0     0 1 0 my $self = shift;
2233 0 0       0 croak 'deploy_key must be called with 2 arguments' if @_ != 2;
2234 0 0 0     0 croak 'The #1 argument ($project_id) to deploy_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
2235 0 0 0     0 croak 'The #2 argument ($key_id) to deploy_key must be a scalar' if ref($_[1]) or (!defined $_[1]);
2236 0         0 my $options = {};
2237 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/deploy_keys/:key_id', [@_], $options );
2238             }
2239              
2240             =item create_deploy_key
2241              
2242             my $key = $api->create_deploy_key(
2243             $project_id,
2244             \%params,
2245             );
2246              
2247             Sends a C request to C and returns the decoded response content.
2248              
2249             =cut
2250              
2251             sub create_deploy_key {
2252 0     0 1 0 my $self = shift;
2253 0 0 0     0 croak 'create_deploy_key must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2254 0 0 0     0 croak 'The #1 argument ($project_id) to create_deploy_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
2255 0 0 0     0 croak 'The last argument (\%params) to create_deploy_key must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2256 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2257 0         0 my $options = {};
2258 0 0       0 $options->{content} = $params if defined $params;
2259 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/deploy_keys', [@_], $options );
2260             }
2261              
2262             =item delete_deploy_key
2263              
2264             $api->delete_deploy_key(
2265             $project_id,
2266             $key_id,
2267             );
2268              
2269             Sends a C request to C.
2270              
2271             =cut
2272              
2273             sub delete_deploy_key {
2274 0     0 1 0 my $self = shift;
2275 0 0       0 croak 'delete_deploy_key must be called with 2 arguments' if @_ != 2;
2276 0 0 0     0 croak 'The #1 argument ($project_id) to delete_deploy_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
2277 0 0 0     0 croak 'The #2 argument ($key_id) to delete_deploy_key must be a scalar' if ref($_[1]) or (!defined $_[1]);
2278 0         0 my $options = {};
2279 0         0 $options->{decode} = 0;
2280 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/deploy_keys/:key_id', [@_], $options );
2281 0         0 return;
2282             }
2283              
2284             =item enable_deploy_key
2285              
2286             my $key = $api->enable_deploy_key(
2287             $project_id,
2288             $key_id,
2289             );
2290              
2291             Sends a C request to C and returns the decoded response content.
2292              
2293             =cut
2294              
2295             sub enable_deploy_key {
2296 0     0 1 0 my $self = shift;
2297 0 0       0 croak 'enable_deploy_key must be called with 2 arguments' if @_ != 2;
2298 0 0 0     0 croak 'The #1 argument ($project_id) to enable_deploy_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
2299 0 0 0     0 croak 'The #2 argument ($key_id) to enable_deploy_key must be a scalar' if ref($_[1]) or (!defined $_[1]);
2300 0         0 my $options = {};
2301 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/deploy_keys/:key_id/enable', [@_], $options );
2302             }
2303              
2304             =back
2305              
2306             =head2 Environments
2307              
2308             See L.
2309              
2310             =over
2311              
2312             =item environments
2313              
2314             my $environments = $api->environments(
2315             $project_id,
2316             \%params,
2317             );
2318              
2319             Sends a C request to C and returns the decoded response content.
2320              
2321             =cut
2322              
2323             sub environments {
2324 0     0 1 0 my $self = shift;
2325 0 0 0     0 croak 'environments must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2326 0 0 0     0 croak 'The #1 argument ($project_id) to environments must be a scalar' if ref($_[0]) or (!defined $_[0]);
2327 0 0 0     0 croak 'The last argument (\%params) to environments must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2328 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2329 0         0 my $options = {};
2330 0 0       0 $options->{query} = $params if defined $params;
2331 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/environments', [@_], $options );
2332             }
2333              
2334             =item create_environment
2335              
2336             my $environment = $api->create_environment(
2337             $project_id,
2338             \%params,
2339             );
2340              
2341             Sends a C request to C and returns the decoded response content.
2342              
2343             =cut
2344              
2345             sub create_environment {
2346 0     0 1 0 my $self = shift;
2347 0 0 0     0 croak 'create_environment must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2348 0 0 0     0 croak 'The #1 argument ($project_id) to create_environment must be a scalar' if ref($_[0]) or (!defined $_[0]);
2349 0 0 0     0 croak 'The last argument (\%params) to create_environment must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2350 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2351 0         0 my $options = {};
2352 0 0       0 $options->{content} = $params if defined $params;
2353 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/environments', [@_], $options );
2354             }
2355              
2356             =item edit_environment
2357              
2358             my $environment = $api->edit_environment(
2359             $project_id,
2360             $environments_id,
2361             \%params,
2362             );
2363              
2364             Sends a C request to C and returns the decoded response content.
2365              
2366             =cut
2367              
2368             sub edit_environment {
2369 0     0 1 0 my $self = shift;
2370 0 0 0     0 croak 'edit_environment must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
2371 0 0 0     0 croak 'The #1 argument ($project_id) to edit_environment must be a scalar' if ref($_[0]) or (!defined $_[0]);
2372 0 0 0     0 croak 'The #2 argument ($environments_id) to edit_environment must be a scalar' if ref($_[1]) or (!defined $_[1]);
2373 0 0 0     0 croak 'The last argument (\%params) to edit_environment must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
2374 0 0       0 my $params = (@_ == 3) ? pop() : undef;
2375 0         0 my $options = {};
2376 0 0       0 $options->{content} = $params if defined $params;
2377 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/environments/:environments_id', [@_], $options );
2378             }
2379              
2380             =item delete_environment
2381              
2382             $api->delete_environment(
2383             $project_id,
2384             $environment_id,
2385             );
2386              
2387             Sends a C request to C.
2388              
2389             =cut
2390              
2391             sub delete_environment {
2392 0     0 1 0 my $self = shift;
2393 0 0       0 croak 'delete_environment must be called with 2 arguments' if @_ != 2;
2394 0 0 0     0 croak 'The #1 argument ($project_id) to delete_environment must be a scalar' if ref($_[0]) or (!defined $_[0]);
2395 0 0 0     0 croak 'The #2 argument ($environment_id) to delete_environment must be a scalar' if ref($_[1]) or (!defined $_[1]);
2396 0         0 my $options = {};
2397 0         0 $options->{decode} = 0;
2398 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/environments/:environment_id', [@_], $options );
2399 0         0 return;
2400             }
2401              
2402             =item stop_environment
2403              
2404             my $environment = $api->stop_environment(
2405             $project_id,
2406             $environment_id,
2407             );
2408              
2409             Sends a C request to C and returns the decoded response content.
2410              
2411             =cut
2412              
2413             sub stop_environment {
2414 0     0 1 0 my $self = shift;
2415 0 0       0 croak 'stop_environment must be called with 2 arguments' if @_ != 2;
2416 0 0 0     0 croak 'The #1 argument ($project_id) to stop_environment must be a scalar' if ref($_[0]) or (!defined $_[0]);
2417 0 0 0     0 croak 'The #2 argument ($environment_id) to stop_environment must be a scalar' if ref($_[1]) or (!defined $_[1]);
2418 0         0 my $options = {};
2419 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/environments/:environment_id/stop', [@_], $options );
2420             }
2421              
2422             =back
2423              
2424             =head2 Events
2425              
2426             See L.
2427              
2428             =over
2429              
2430             =item all_events
2431              
2432             my $events = $api->all_events(
2433             \%params,
2434             );
2435              
2436             Sends a C request to C and returns the decoded response content.
2437              
2438             =cut
2439              
2440             sub all_events {
2441 0     0 1 0 my $self = shift;
2442 0 0 0     0 croak 'all_events must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
2443 0 0 0     0 croak 'The last argument (\%params) to all_events must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
2444 0 0       0 my $params = (@_ == 1) ? pop() : undef;
2445 0         0 my $options = {};
2446 0 0       0 $options->{query} = $params if defined $params;
2447 0         0 return $self->_call_rest_client( 'GET', 'events', [@_], $options );
2448             }
2449              
2450             =item user_events
2451              
2452             my $events = $api->user_events(
2453             $user_id,
2454             \%params,
2455             );
2456              
2457             Sends a C request to C and returns the decoded response content.
2458              
2459             =cut
2460              
2461             sub user_events {
2462 0     0 1 0 my $self = shift;
2463 0 0 0     0 croak 'user_events must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2464 0 0 0     0 croak 'The #1 argument ($user_id) to user_events must be a scalar' if ref($_[0]) or (!defined $_[0]);
2465 0 0 0     0 croak 'The last argument (\%params) to user_events must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2466 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2467 0         0 my $options = {};
2468 0 0       0 $options->{query} = $params if defined $params;
2469 0         0 return $self->_call_rest_client( 'GET', 'users/:user_id/events', [@_], $options );
2470             }
2471              
2472             =item project_events
2473              
2474             my $events = $api->project_events(
2475             $project_id,
2476             \%params,
2477             );
2478              
2479             Sends a C request to C and returns the decoded response content.
2480              
2481             =cut
2482              
2483             sub project_events {
2484 0     0 1 0 my $self = shift;
2485 0 0 0     0 croak 'project_events must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2486 0 0 0     0 croak 'The #1 argument ($project_id) to project_events must be a scalar' if ref($_[0]) or (!defined $_[0]);
2487 0 0 0     0 croak 'The last argument (\%params) to project_events must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2488 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2489 0         0 my $options = {};
2490 0 0       0 $options->{query} = $params if defined $params;
2491 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/events', [@_], $options );
2492             }
2493              
2494             =back
2495              
2496             =head2 Feature flags
2497              
2498             See L.
2499              
2500             =over
2501              
2502             =item features
2503              
2504             my $features = $api->features();
2505              
2506             Sends a C request to C and returns the decoded response content.
2507              
2508             =cut
2509              
2510             sub features {
2511 0     0 1 0 my $self = shift;
2512 0 0       0 croak "The features method does not take any arguments" if @_;
2513 0         0 my $options = {};
2514 0         0 return $self->_call_rest_client( 'GET', 'features', [@_], $options );
2515             }
2516              
2517             =item set_feature
2518              
2519             my $feature = $api->set_feature(
2520             $name,
2521             \%params,
2522             );
2523              
2524             Sends a C request to C and returns the decoded response content.
2525              
2526             =cut
2527              
2528             sub set_feature {
2529 0     0 1 0 my $self = shift;
2530 0 0 0     0 croak 'set_feature must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2531 0 0 0     0 croak 'The #1 argument ($name) to set_feature must be a scalar' if ref($_[0]) or (!defined $_[0]);
2532 0 0 0     0 croak 'The last argument (\%params) to set_feature must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2533 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2534 0         0 my $options = {};
2535 0 0       0 $options->{content} = $params if defined $params;
2536 0         0 return $self->_call_rest_client( 'POST', 'features/:name', [@_], $options );
2537             }
2538              
2539             =back
2540              
2541             =head2 Gitignores
2542              
2543             See L.
2544              
2545             =over
2546              
2547             =item gitignores_templates
2548              
2549             my $templates = $api->gitignores_templates(
2550             \%params,
2551             );
2552              
2553             Sends a C request to C and returns the decoded response content.
2554              
2555             =cut
2556              
2557             sub gitignores_templates {
2558 0     0 1 0 my $self = shift;
2559 0 0 0     0 croak 'gitignores_templates must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
2560 0 0 0     0 croak 'The last argument (\%params) to gitignores_templates must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
2561 0 0       0 my $params = (@_ == 1) ? pop() : undef;
2562 0         0 my $options = {};
2563 0 0       0 $options->{query} = $params if defined $params;
2564 0         0 return $self->_call_rest_client( 'GET', 'templates/gitignores', [@_], $options );
2565             }
2566              
2567             =item gitignores_template
2568              
2569             my $template = $api->gitignores_template(
2570             $template_key,
2571             );
2572              
2573             Sends a C request to C and returns the decoded response content.
2574              
2575             =cut
2576              
2577             sub gitignores_template {
2578 0     0 1 0 my $self = shift;
2579 0 0       0 croak 'gitignores_template must be called with 1 arguments' if @_ != 1;
2580 0 0 0     0 croak 'The #1 argument ($template_key) to gitignores_template must be a scalar' if ref($_[0]) or (!defined $_[0]);
2581 0         0 my $options = {};
2582 0         0 return $self->_call_rest_client( 'GET', 'templates/gitignores/:template_key', [@_], $options );
2583             }
2584              
2585             =back
2586              
2587             =head2 GitLab CI YMLs
2588              
2589             See L.
2590              
2591             =over
2592              
2593             =item gitlab_ci_ymls_templates
2594              
2595             my $templates = $api->gitlab_ci_ymls_templates(
2596             \%params,
2597             );
2598              
2599             Sends a C request to C and returns the decoded response content.
2600              
2601             =cut
2602              
2603             sub gitlab_ci_ymls_templates {
2604 0     0 1 0 my $self = shift;
2605 0 0 0     0 croak 'gitlab_ci_ymls_templates must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
2606 0 0 0     0 croak 'The last argument (\%params) to gitlab_ci_ymls_templates must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
2607 0 0       0 my $params = (@_ == 1) ? pop() : undef;
2608 0         0 my $options = {};
2609 0 0       0 $options->{query} = $params if defined $params;
2610 0         0 return $self->_call_rest_client( 'GET', 'templates/gitlab_ci_ymls', [@_], $options );
2611             }
2612              
2613             =item gitlab_ci_ymls_template
2614              
2615             my $template = $api->gitlab_ci_ymls_template(
2616             $template_key,
2617             );
2618              
2619             Sends a C request to C and returns the decoded response content.
2620              
2621             =cut
2622              
2623             sub gitlab_ci_ymls_template {
2624 0     0 1 0 my $self = shift;
2625 0 0       0 croak 'gitlab_ci_ymls_template must be called with 1 arguments' if @_ != 1;
2626 0 0 0     0 croak 'The #1 argument ($template_key) to gitlab_ci_ymls_template must be a scalar' if ref($_[0]) or (!defined $_[0]);
2627 0         0 my $options = {};
2628 0         0 return $self->_call_rest_client( 'GET', 'templates/gitlab_ci_ymls/:template_key', [@_], $options );
2629             }
2630              
2631             =back
2632              
2633             =head2 Groups
2634              
2635             See L.
2636              
2637             =over
2638              
2639             =item groups
2640              
2641             my $groups = $api->groups(
2642             \%params,
2643             );
2644              
2645             Sends a C request to C and returns the decoded response content.
2646              
2647             =cut
2648              
2649             sub groups {
2650 0     0 1 0 my $self = shift;
2651 0 0 0     0 croak 'groups must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
2652 0 0 0     0 croak 'The last argument (\%params) to groups must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
2653 0 0       0 my $params = (@_ == 1) ? pop() : undef;
2654 0         0 my $options = {};
2655 0 0       0 $options->{query} = $params if defined $params;
2656 0         0 return $self->_call_rest_client( 'GET', 'groups', [@_], $options );
2657             }
2658              
2659             =item group_subgroups
2660              
2661             my $subgroups = $api->group_subgroups(
2662             $group_id,
2663             \%params,
2664             );
2665              
2666             Sends a C request to C and returns the decoded response content.
2667              
2668             =cut
2669              
2670             sub group_subgroups {
2671 0     0 1 0 my $self = shift;
2672 0 0 0     0 croak 'group_subgroups must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2673 0 0 0     0 croak 'The #1 argument ($group_id) to group_subgroups must be a scalar' if ref($_[0]) or (!defined $_[0]);
2674 0 0 0     0 croak 'The last argument (\%params) to group_subgroups must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2675 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2676 0         0 my $options = {};
2677 0 0       0 $options->{query} = $params if defined $params;
2678 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/subgroups', [@_], $options );
2679             }
2680              
2681             =item group_projects
2682              
2683             my $projects = $api->group_projects(
2684             $group_id,
2685             \%params,
2686             );
2687              
2688             Sends a C request to C and returns the decoded response content.
2689              
2690             =cut
2691              
2692             sub group_projects {
2693 0     0 1 0 my $self = shift;
2694 0 0 0     0 croak 'group_projects must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2695 0 0 0     0 croak 'The #1 argument ($group_id) to group_projects must be a scalar' if ref($_[0]) or (!defined $_[0]);
2696 0 0 0     0 croak 'The last argument (\%params) to group_projects must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2697 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2698 0         0 my $options = {};
2699 0 0       0 $options->{query} = $params if defined $params;
2700 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/projects', [@_], $options );
2701             }
2702              
2703             =item group
2704              
2705             my $group = $api->group(
2706             $group_id,
2707             \%params,
2708             );
2709              
2710             Sends a C request to C and returns the decoded response content.
2711              
2712             =cut
2713              
2714             sub group {
2715 0     0 1 0 my $self = shift;
2716 0 0 0     0 croak 'group must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2717 0 0 0     0 croak 'The #1 argument ($group_id) to group must be a scalar' if ref($_[0]) or (!defined $_[0]);
2718 0 0 0     0 croak 'The last argument (\%params) to group must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2719 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2720 0         0 my $options = {};
2721 0 0       0 $options->{query} = $params if defined $params;
2722 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id', [@_], $options );
2723             }
2724              
2725             =item create_group
2726              
2727             $api->create_group(
2728             \%params,
2729             );
2730              
2731             Sends a C request to C.
2732              
2733             =cut
2734              
2735             sub create_group {
2736 0     0 1 0 my $self = shift;
2737 0 0 0     0 croak 'create_group must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
2738 0 0 0     0 croak 'The last argument (\%params) to create_group must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
2739 0 0       0 my $params = (@_ == 1) ? pop() : undef;
2740 0         0 my $options = {};
2741 0         0 $options->{decode} = 0;
2742 0 0       0 $options->{content} = $params if defined $params;
2743 0         0 $self->_call_rest_client( 'POST', 'groups', [@_], $options );
2744 0         0 return;
2745             }
2746              
2747             =item transfer_project_to_group
2748              
2749             $api->transfer_project_to_group(
2750             $group_id,
2751             $project_id,
2752             );
2753              
2754             Sends a C request to C.
2755              
2756             =cut
2757              
2758             sub transfer_project_to_group {
2759 0     0 1 0 my $self = shift;
2760 0 0       0 croak 'transfer_project_to_group must be called with 2 arguments' if @_ != 2;
2761 0 0 0     0 croak 'The #1 argument ($group_id) to transfer_project_to_group must be a scalar' if ref($_[0]) or (!defined $_[0]);
2762 0 0 0     0 croak 'The #2 argument ($project_id) to transfer_project_to_group must be a scalar' if ref($_[1]) or (!defined $_[1]);
2763 0         0 my $options = {};
2764 0         0 $options->{decode} = 0;
2765 0         0 $self->_call_rest_client( 'POST', 'groups/:group_id/projects/:project_id', [@_], $options );
2766 0         0 return;
2767             }
2768              
2769             =item edit_group
2770              
2771             my $group = $api->edit_group(
2772             $group_id,
2773             \%params,
2774             );
2775              
2776             Sends a C request to C and returns the decoded response content.
2777              
2778             =cut
2779              
2780             sub edit_group {
2781 0     0 1 0 my $self = shift;
2782 0 0 0     0 croak 'edit_group must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2783 0 0 0     0 croak 'The #1 argument ($group_id) to edit_group must be a scalar' if ref($_[0]) or (!defined $_[0]);
2784 0 0 0     0 croak 'The last argument (\%params) to edit_group must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2785 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2786 0         0 my $options = {};
2787 0 0       0 $options->{content} = $params if defined $params;
2788 0         0 return $self->_call_rest_client( 'PUT', 'groups/:group_id', [@_], $options );
2789             }
2790              
2791             =item delete_group
2792              
2793             $api->delete_group(
2794             $group_id,
2795             );
2796              
2797             Sends a C request to C.
2798              
2799             =cut
2800              
2801             sub delete_group {
2802 0     0 1 0 my $self = shift;
2803 0 0       0 croak 'delete_group must be called with 1 arguments' if @_ != 1;
2804 0 0 0     0 croak 'The #1 argument ($group_id) to delete_group must be a scalar' if ref($_[0]) or (!defined $_[0]);
2805 0         0 my $options = {};
2806 0         0 $options->{decode} = 0;
2807 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id', [@_], $options );
2808 0         0 return;
2809             }
2810              
2811             =item sync_group_with_ldap
2812              
2813             $api->sync_group_with_ldap(
2814             $group_id,
2815             );
2816              
2817             Sends a C request to C.
2818              
2819             =cut
2820              
2821             sub sync_group_with_ldap {
2822 0     0 1 0 my $self = shift;
2823 0 0       0 croak 'sync_group_with_ldap must be called with 1 arguments' if @_ != 1;
2824 0 0 0     0 croak 'The #1 argument ($group_id) to sync_group_with_ldap must be a scalar' if ref($_[0]) or (!defined $_[0]);
2825 0         0 my $options = {};
2826 0         0 $options->{decode} = 0;
2827 0         0 $self->_call_rest_client( 'POST', 'groups/:group_id/ldap_sync', [@_], $options );
2828 0         0 return;
2829             }
2830              
2831             =item create_ldap_group_link
2832              
2833             $api->create_ldap_group_link(
2834             $group_id,
2835             \%params,
2836             );
2837              
2838             Sends a C request to C.
2839              
2840             =cut
2841              
2842             sub create_ldap_group_link {
2843 0     0 1 0 my $self = shift;
2844 0 0 0     0 croak 'create_ldap_group_link must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2845 0 0 0     0 croak 'The #1 argument ($group_id) to create_ldap_group_link must be a scalar' if ref($_[0]) or (!defined $_[0]);
2846 0 0 0     0 croak 'The last argument (\%params) to create_ldap_group_link must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2847 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2848 0         0 my $options = {};
2849 0         0 $options->{decode} = 0;
2850 0 0       0 $options->{content} = $params if defined $params;
2851 0         0 $self->_call_rest_client( 'POST', 'groups/:group_id/ldap_group_links', [@_], $options );
2852 0         0 return;
2853             }
2854              
2855             =item delete_ldap_group_link
2856              
2857             $api->delete_ldap_group_link(
2858             $group_id,
2859             $cn,
2860             );
2861              
2862             Sends a C request to C.
2863              
2864             =cut
2865              
2866             sub delete_ldap_group_link {
2867 0     0 1 0 my $self = shift;
2868 0 0       0 croak 'delete_ldap_group_link must be called with 2 arguments' if @_ != 2;
2869 0 0 0     0 croak 'The #1 argument ($group_id) to delete_ldap_group_link must be a scalar' if ref($_[0]) or (!defined $_[0]);
2870 0 0 0     0 croak 'The #2 argument ($cn) to delete_ldap_group_link must be a scalar' if ref($_[1]) or (!defined $_[1]);
2871 0         0 my $options = {};
2872 0         0 $options->{decode} = 0;
2873 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id/ldap_group_links/:cn', [@_], $options );
2874 0         0 return;
2875             }
2876              
2877             =item delete_ldap_provider_group_link
2878              
2879             $api->delete_ldap_provider_group_link(
2880             $group_id,
2881             $provider,
2882             $cn,
2883             );
2884              
2885             Sends a C request to C.
2886              
2887             =cut
2888              
2889             sub delete_ldap_provider_group_link {
2890 0     0 1 0 my $self = shift;
2891 0 0       0 croak 'delete_ldap_provider_group_link must be called with 3 arguments' if @_ != 3;
2892 0 0 0     0 croak 'The #1 argument ($group_id) to delete_ldap_provider_group_link must be a scalar' if ref($_[0]) or (!defined $_[0]);
2893 0 0 0     0 croak 'The #2 argument ($provider) to delete_ldap_provider_group_link must be a scalar' if ref($_[1]) or (!defined $_[1]);
2894 0 0 0     0 croak 'The #3 argument ($cn) to delete_ldap_provider_group_link must be a scalar' if ref($_[2]) or (!defined $_[2]);
2895 0         0 my $options = {};
2896 0         0 $options->{decode} = 0;
2897 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id/ldap_group_links/:provider/:cn', [@_], $options );
2898 0         0 return;
2899             }
2900              
2901             =item share_group_with_group
2902              
2903             $api->share_group_with_group(
2904             $group_id,
2905             \%params,
2906             );
2907              
2908             Sends a C request to C.
2909              
2910             =cut
2911              
2912             sub share_group_with_group {
2913 0     0 1 0 my $self = shift;
2914 0 0 0     0 croak 'share_group_with_group must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2915 0 0 0     0 croak 'The #1 argument ($group_id) to share_group_with_group must be a scalar' if ref($_[0]) or (!defined $_[0]);
2916 0 0 0     0 croak 'The last argument (\%params) to share_group_with_group must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2917 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2918 0         0 my $options = {};
2919 0         0 $options->{decode} = 0;
2920 0 0       0 $options->{content} = $params if defined $params;
2921 0         0 $self->_call_rest_client( 'POST', 'groups/:group_id/share', [@_], $options );
2922 0         0 return;
2923             }
2924              
2925             =item unshare_group_with_group
2926              
2927             $api->unshare_group_with_group(
2928             $group_id,
2929             $shared_with_group_id,
2930             );
2931              
2932             Sends a C request to C.
2933              
2934             =cut
2935              
2936             sub unshare_group_with_group {
2937 0     0 1 0 my $self = shift;
2938 0 0       0 croak 'unshare_group_with_group must be called with 2 arguments' if @_ != 2;
2939 0 0 0     0 croak 'The #1 argument ($group_id) to unshare_group_with_group must be a scalar' if ref($_[0]) or (!defined $_[0]);
2940 0 0 0     0 croak 'The #2 argument ($shared_with_group_id) to unshare_group_with_group must be a scalar' if ref($_[1]) or (!defined $_[1]);
2941 0         0 my $options = {};
2942 0         0 $options->{decode} = 0;
2943 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id/share/:shared_with_group_id', [@_], $options );
2944 0         0 return;
2945             }
2946              
2947             =back
2948              
2949             =head2 Group access requests
2950              
2951             See L.
2952              
2953             =over
2954              
2955             =item group_access_requests
2956              
2957             my $requests = $api->group_access_requests(
2958             $group_id,
2959             \%params,
2960             );
2961              
2962             Sends a C request to C and returns the decoded response content.
2963              
2964             =cut
2965              
2966             sub group_access_requests {
2967 0     0 1 0 my $self = shift;
2968 0 0 0     0 croak 'group_access_requests must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
2969 0 0 0     0 croak 'The #1 argument ($group_id) to group_access_requests must be a scalar' if ref($_[0]) or (!defined $_[0]);
2970 0 0 0     0 croak 'The last argument (\%params) to group_access_requests must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
2971 0 0       0 my $params = (@_ == 2) ? pop() : undef;
2972 0         0 my $options = {};
2973 0 0       0 $options->{query} = $params if defined $params;
2974 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/access_requests', [@_], $options );
2975             }
2976              
2977             =item request_group_access
2978              
2979             my $request = $api->request_group_access(
2980             $group_id,
2981             );
2982              
2983             Sends a C request to C and returns the decoded response content.
2984              
2985             =cut
2986              
2987             sub request_group_access {
2988 0     0 1 0 my $self = shift;
2989 0 0       0 croak 'request_group_access must be called with 1 arguments' if @_ != 1;
2990 0 0 0     0 croak 'The #1 argument ($group_id) to request_group_access must be a scalar' if ref($_[0]) or (!defined $_[0]);
2991 0         0 my $options = {};
2992 0         0 return $self->_call_rest_client( 'POST', 'groups/:group_id/access_requests', [@_], $options );
2993             }
2994              
2995             =item approve_group_access
2996              
2997             my $request = $api->approve_group_access(
2998             $group_id,
2999             $user_id,
3000             );
3001              
3002             Sends a C request to C and returns the decoded response content.
3003              
3004             =cut
3005              
3006             sub approve_group_access {
3007 0     0 1 0 my $self = shift;
3008 0 0       0 croak 'approve_group_access must be called with 2 arguments' if @_ != 2;
3009 0 0 0     0 croak 'The #1 argument ($group_id) to approve_group_access must be a scalar' if ref($_[0]) or (!defined $_[0]);
3010 0 0 0     0 croak 'The #2 argument ($user_id) to approve_group_access must be a scalar' if ref($_[1]) or (!defined $_[1]);
3011 0         0 my $options = {};
3012 0         0 return $self->_call_rest_client( 'PUT', 'groups/:group_id/access_requests/:user_id/approve', [@_], $options );
3013             }
3014              
3015             =item deny_group_access
3016              
3017             $api->deny_group_access(
3018             $group_id,
3019             $user_id,
3020             );
3021              
3022             Sends a C request to C.
3023              
3024             =cut
3025              
3026             sub deny_group_access {
3027 0     0 1 0 my $self = shift;
3028 0 0       0 croak 'deny_group_access must be called with 2 arguments' if @_ != 2;
3029 0 0 0     0 croak 'The #1 argument ($group_id) to deny_group_access must be a scalar' if ref($_[0]) or (!defined $_[0]);
3030 0 0 0     0 croak 'The #2 argument ($user_id) to deny_group_access must be a scalar' if ref($_[1]) or (!defined $_[1]);
3031 0         0 my $options = {};
3032 0         0 $options->{decode} = 0;
3033 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id/access_requests/:user_id', [@_], $options );
3034 0         0 return;
3035             }
3036              
3037             =back
3038              
3039             =head2 Group badges
3040              
3041             See L.
3042              
3043             =over
3044              
3045             =item group_badges
3046              
3047             my $badges = $api->group_badges(
3048             $group_id,
3049             );
3050              
3051             Sends a C request to C and returns the decoded response content.
3052              
3053             =cut
3054              
3055             sub group_badges {
3056 0     0 1 0 my $self = shift;
3057 0 0       0 croak 'group_badges must be called with 1 arguments' if @_ != 1;
3058 0 0 0     0 croak 'The #1 argument ($group_id) to group_badges must be a scalar' if ref($_[0]) or (!defined $_[0]);
3059 0         0 my $options = {};
3060 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/badges', [@_], $options );
3061             }
3062              
3063             =item group_badge
3064              
3065             my $badge = $api->group_badge(
3066             $group_id,
3067             $badge_id,
3068             );
3069              
3070             Sends a C request to C and returns the decoded response content.
3071              
3072             =cut
3073              
3074             sub group_badge {
3075 0     0 1 0 my $self = shift;
3076 0 0       0 croak 'group_badge must be called with 2 arguments' if @_ != 2;
3077 0 0 0     0 croak 'The #1 argument ($group_id) to group_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
3078 0 0 0     0 croak 'The #2 argument ($badge_id) to group_badge must be a scalar' if ref($_[1]) or (!defined $_[1]);
3079 0         0 my $options = {};
3080 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/badges/:badge_id', [@_], $options );
3081             }
3082              
3083             =item create_group_badge
3084              
3085             my $badge = $api->create_group_badge(
3086             $group_id,
3087             \%params,
3088             );
3089              
3090             Sends a C request to C and returns the decoded response content.
3091              
3092             =cut
3093              
3094             sub create_group_badge {
3095 0     0 1 0 my $self = shift;
3096 0 0 0     0 croak 'create_group_badge must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
3097 0 0 0     0 croak 'The #1 argument ($group_id) to create_group_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
3098 0 0 0     0 croak 'The last argument (\%params) to create_group_badge must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
3099 0 0       0 my $params = (@_ == 2) ? pop() : undef;
3100 0         0 my $options = {};
3101 0 0       0 $options->{content} = $params if defined $params;
3102 0         0 return $self->_call_rest_client( 'POST', 'groups/:group_id/badges', [@_], $options );
3103             }
3104              
3105             =item edit_group_badge
3106              
3107             my $badge = $api->edit_group_badge(
3108             $group_id,
3109             $badge_id,
3110             \%params,
3111             );
3112              
3113             Sends a C request to C and returns the decoded response content.
3114              
3115             =cut
3116              
3117             sub edit_group_badge {
3118 0     0 1 0 my $self = shift;
3119 0 0 0     0 croak 'edit_group_badge must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
3120 0 0 0     0 croak 'The #1 argument ($group_id) to edit_group_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
3121 0 0 0     0 croak 'The #2 argument ($badge_id) to edit_group_badge must be a scalar' if ref($_[1]) or (!defined $_[1]);
3122 0 0 0     0 croak 'The last argument (\%params) to edit_group_badge must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
3123 0 0       0 my $params = (@_ == 3) ? pop() : undef;
3124 0         0 my $options = {};
3125 0 0       0 $options->{content} = $params if defined $params;
3126 0         0 return $self->_call_rest_client( 'PUT', 'groups/:group_id/badges/:badge_id', [@_], $options );
3127             }
3128              
3129             =item delete_group_badge
3130              
3131             $api->delete_group_badge(
3132             $group_id,
3133             $badge_id,
3134             );
3135              
3136             Sends a C request to C.
3137              
3138             =cut
3139              
3140             sub delete_group_badge {
3141 0     0 1 0 my $self = shift;
3142 0 0       0 croak 'delete_group_badge must be called with 2 arguments' if @_ != 2;
3143 0 0 0     0 croak 'The #1 argument ($group_id) to delete_group_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
3144 0 0 0     0 croak 'The #2 argument ($badge_id) to delete_group_badge must be a scalar' if ref($_[1]) or (!defined $_[1]);
3145 0         0 my $options = {};
3146 0         0 $options->{decode} = 0;
3147 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id/badges/:badge_id', [@_], $options );
3148 0         0 return;
3149             }
3150              
3151             =item preview_group_badge
3152              
3153             my $preview = $api->preview_group_badge(
3154             $group_id,
3155             \%params,
3156             );
3157              
3158             Sends a C request to C and returns the decoded response content.
3159              
3160             =cut
3161              
3162             sub preview_group_badge {
3163 0     0 1 0 my $self = shift;
3164 0 0 0     0 croak 'preview_group_badge must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
3165 0 0 0     0 croak 'The #1 argument ($group_id) to preview_group_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
3166 0 0 0     0 croak 'The last argument (\%params) to preview_group_badge must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
3167 0 0       0 my $params = (@_ == 2) ? pop() : undef;
3168 0         0 my $options = {};
3169 0 0       0 $options->{query} = $params if defined $params;
3170 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/badges/render', [@_], $options );
3171             }
3172              
3173             =back
3174              
3175             =head2 Group members
3176              
3177             See L.
3178              
3179             =over
3180              
3181             =item group_members
3182              
3183             my $members = $api->group_members(
3184             $group_id,
3185             \%params,
3186             );
3187              
3188             Sends a C request to C and returns the decoded response content.
3189              
3190             =cut
3191              
3192             sub group_members {
3193 0     0 1 0 my $self = shift;
3194 0 0 0     0 croak 'group_members must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
3195 0 0 0     0 croak 'The #1 argument ($group_id) to group_members must be a scalar' if ref($_[0]) or (!defined $_[0]);
3196 0 0 0     0 croak 'The last argument (\%params) to group_members must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
3197 0 0       0 my $params = (@_ == 2) ? pop() : undef;
3198 0         0 my $options = {};
3199 0 0       0 $options->{query} = $params if defined $params;
3200 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/members', [@_], $options );
3201             }
3202              
3203             =item all_group_members
3204              
3205             my $members = $api->all_group_members(
3206             $group_id,
3207             \%params,
3208             );
3209              
3210             Sends a C request to C and returns the decoded response content.
3211              
3212             =cut
3213              
3214             sub all_group_members {
3215 0     0 1 0 my $self = shift;
3216 0 0 0     0 croak 'all_group_members must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
3217 0 0 0     0 croak 'The #1 argument ($group_id) to all_group_members must be a scalar' if ref($_[0]) or (!defined $_[0]);
3218 0 0 0     0 croak 'The last argument (\%params) to all_group_members must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
3219 0 0       0 my $params = (@_ == 2) ? pop() : undef;
3220 0         0 my $options = {};
3221 0 0       0 $options->{query} = $params if defined $params;
3222 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/members/all', [@_], $options );
3223             }
3224              
3225             =item group_member
3226              
3227             my $member = $api->group_member(
3228             $project_id,
3229             $user_id,
3230             );
3231              
3232             Sends a C request to C and returns the decoded response content.
3233              
3234             =cut
3235              
3236             sub group_member {
3237 0     0 1 0 my $self = shift;
3238 0 0       0 croak 'group_member must be called with 2 arguments' if @_ != 2;
3239 0 0 0     0 croak 'The #1 argument ($project_id) to group_member must be a scalar' if ref($_[0]) or (!defined $_[0]);
3240 0 0 0     0 croak 'The #2 argument ($user_id) to group_member must be a scalar' if ref($_[1]) or (!defined $_[1]);
3241 0         0 my $options = {};
3242 0         0 return $self->_call_rest_client( 'GET', 'groups/:project_id/members/:user_id', [@_], $options );
3243             }
3244              
3245             =item add_group_member
3246              
3247             my $member = $api->add_group_member(
3248             $group_id,
3249             \%params,
3250             );
3251              
3252             Sends a C request to C and returns the decoded response content.
3253              
3254             =cut
3255              
3256             sub add_group_member {
3257 0     0 1 0 my $self = shift;
3258 0 0 0     0 croak 'add_group_member must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
3259 0 0 0     0 croak 'The #1 argument ($group_id) to add_group_member must be a scalar' if ref($_[0]) or (!defined $_[0]);
3260 0 0 0     0 croak 'The last argument (\%params) to add_group_member must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
3261 0 0       0 my $params = (@_ == 2) ? pop() : undef;
3262 0         0 my $options = {};
3263 0 0       0 $options->{content} = $params if defined $params;
3264 0         0 return $self->_call_rest_client( 'POST', 'groups/:group_id/members', [@_], $options );
3265             }
3266              
3267             =item update_group_member
3268              
3269             my $member = $api->update_group_member(
3270             $group_id,
3271             $user_id,
3272             \%params,
3273             );
3274              
3275             Sends a C request to C and returns the decoded response content.
3276              
3277             =cut
3278              
3279             sub update_group_member {
3280 0     0 1 0 my $self = shift;
3281 0 0 0     0 croak 'update_group_member must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
3282 0 0 0     0 croak 'The #1 argument ($group_id) to update_group_member must be a scalar' if ref($_[0]) or (!defined $_[0]);
3283 0 0 0     0 croak 'The #2 argument ($user_id) to update_group_member must be a scalar' if ref($_[1]) or (!defined $_[1]);
3284 0 0 0     0 croak 'The last argument (\%params) to update_group_member must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
3285 0 0       0 my $params = (@_ == 3) ? pop() : undef;
3286 0         0 my $options = {};
3287 0 0       0 $options->{content} = $params if defined $params;
3288 0         0 return $self->_call_rest_client( 'PUT', 'groups/:group_id/members/:user_id', [@_], $options );
3289             }
3290              
3291             =item remove_group_member
3292              
3293             $api->remove_group_member(
3294             $group_id,
3295             $user_id,
3296             );
3297              
3298             Sends a C request to C.
3299              
3300             =cut
3301              
3302             sub remove_group_member {
3303 0     0 1 0 my $self = shift;
3304 0 0       0 croak 'remove_group_member must be called with 2 arguments' if @_ != 2;
3305 0 0 0     0 croak 'The #1 argument ($group_id) to remove_group_member must be a scalar' if ref($_[0]) or (!defined $_[0]);
3306 0 0 0     0 croak 'The #2 argument ($user_id) to remove_group_member must be a scalar' if ref($_[1]) or (!defined $_[1]);
3307 0         0 my $options = {};
3308 0         0 $options->{decode} = 0;
3309 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id/members/:user_id', [@_], $options );
3310 0         0 return;
3311             }
3312              
3313             =back
3314              
3315             =head2 Issues
3316              
3317             See L.
3318              
3319             =over
3320              
3321             =item global_issues
3322              
3323             my $issues = $api->global_issues(
3324             \%params,
3325             );
3326              
3327             Sends a C request to C and returns the decoded response content.
3328              
3329             =cut
3330              
3331             sub global_issues {
3332 0     0 1 0 my $self = shift;
3333 0 0 0     0 croak 'global_issues must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
3334 0 0 0     0 croak 'The last argument (\%params) to global_issues must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
3335 0 0       0 my $params = (@_ == 1) ? pop() : undef;
3336 0         0 my $options = {};
3337 0 0       0 $options->{query} = $params if defined $params;
3338 0         0 return $self->_call_rest_client( 'GET', 'issues', [@_], $options );
3339             }
3340              
3341             =item group_issues
3342              
3343             my $issues = $api->group_issues(
3344             $group_id,
3345             \%params,
3346             );
3347              
3348             Sends a C request to C and returns the decoded response content.
3349              
3350             =cut
3351              
3352             sub group_issues {
3353 0     0 1 0 my $self = shift;
3354 0 0 0     0 croak 'group_issues must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
3355 0 0 0     0 croak 'The #1 argument ($group_id) to group_issues must be a scalar' if ref($_[0]) or (!defined $_[0]);
3356 0 0 0     0 croak 'The last argument (\%params) to group_issues must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
3357 0 0       0 my $params = (@_ == 2) ? pop() : undef;
3358 0         0 my $options = {};
3359 0 0       0 $options->{query} = $params if defined $params;
3360 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/issues', [@_], $options );
3361             }
3362              
3363             =item issues
3364              
3365             my $issues = $api->issues(
3366             $project_id,
3367             \%params,
3368             );
3369              
3370             Sends a C request to C and returns the decoded response content.
3371              
3372             =cut
3373              
3374             sub issues {
3375 0     0 1 0 my $self = shift;
3376 0 0 0     0 croak 'issues must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
3377 0 0 0     0 croak 'The #1 argument ($project_id) to issues must be a scalar' if ref($_[0]) or (!defined $_[0]);
3378 0 0 0     0 croak 'The last argument (\%params) to issues must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
3379 0 0       0 my $params = (@_ == 2) ? pop() : undef;
3380 0         0 my $options = {};
3381 0 0       0 $options->{query} = $params if defined $params;
3382 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues', [@_], $options );
3383             }
3384              
3385             =item issue
3386              
3387             my $issue = $api->issue(
3388             $project_id,
3389             $issue_iid,
3390             );
3391              
3392             Sends a C request to C and returns the decoded response content.
3393              
3394             =cut
3395              
3396             sub issue {
3397 0     0 1 0 my $self = shift;
3398 0 0       0 croak 'issue must be called with 2 arguments' if @_ != 2;
3399 0 0 0     0 croak 'The #1 argument ($project_id) to issue must be a scalar' if ref($_[0]) or (!defined $_[0]);
3400 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue must be a scalar' if ref($_[1]) or (!defined $_[1]);
3401 0         0 my $options = {};
3402 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid', [@_], $options );
3403             }
3404              
3405             =item create_issue
3406              
3407             my $issue = $api->create_issue(
3408             $project_id,
3409             \%params,
3410             );
3411              
3412             Sends a C request to C and returns the decoded response content.
3413              
3414             =cut
3415              
3416             sub create_issue {
3417 0     0 1 0 my $self = shift;
3418 0 0 0     0 croak 'create_issue must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
3419 0 0 0     0 croak 'The #1 argument ($project_id) to create_issue must be a scalar' if ref($_[0]) or (!defined $_[0]);
3420 0 0 0     0 croak 'The last argument (\%params) to create_issue must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
3421 0 0       0 my $params = (@_ == 2) ? pop() : undef;
3422 0         0 my $options = {};
3423 0 0       0 $options->{content} = $params if defined $params;
3424 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues', [@_], $options );
3425             }
3426              
3427             =item edit_issue
3428              
3429             my $issue = $api->edit_issue(
3430             $project_id,
3431             $issue_iid,
3432             \%params,
3433             );
3434              
3435             Sends a C request to C and returns the decoded response content.
3436              
3437             =cut
3438              
3439             sub edit_issue {
3440 0     0 1 0 my $self = shift;
3441 0 0 0     0 croak 'edit_issue must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
3442 0 0 0     0 croak 'The #1 argument ($project_id) to edit_issue must be a scalar' if ref($_[0]) or (!defined $_[0]);
3443 0 0 0     0 croak 'The #2 argument ($issue_iid) to edit_issue must be a scalar' if ref($_[1]) or (!defined $_[1]);
3444 0 0 0     0 croak 'The last argument (\%params) to edit_issue must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
3445 0 0       0 my $params = (@_ == 3) ? pop() : undef;
3446 0         0 my $options = {};
3447 0 0       0 $options->{content} = $params if defined $params;
3448 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/issues/:issue_iid', [@_], $options );
3449             }
3450              
3451             =item delete_issue
3452              
3453             $api->delete_issue(
3454             $project_id,
3455             $issue_iid,
3456             );
3457              
3458             Sends a C request to C.
3459              
3460             =cut
3461              
3462             sub delete_issue {
3463 0     0 1 0 my $self = shift;
3464 0 0       0 croak 'delete_issue must be called with 2 arguments' if @_ != 2;
3465 0 0 0     0 croak 'The #1 argument ($project_id) to delete_issue must be a scalar' if ref($_[0]) or (!defined $_[0]);
3466 0 0 0     0 croak 'The #2 argument ($issue_iid) to delete_issue must be a scalar' if ref($_[1]) or (!defined $_[1]);
3467 0         0 my $options = {};
3468 0         0 $options->{decode} = 0;
3469 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/issues/:issue_iid', [@_], $options );
3470 0         0 return;
3471             }
3472              
3473             =item move_issue
3474              
3475             my $issue = $api->move_issue(
3476             $project_id,
3477             $issue_iid,
3478             \%params,
3479             );
3480              
3481             Sends a C request to C and returns the decoded response content.
3482              
3483             =cut
3484              
3485             sub move_issue {
3486 0     0 1 0 my $self = shift;
3487 0 0 0     0 croak 'move_issue must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
3488 0 0 0     0 croak 'The #1 argument ($project_id) to move_issue must be a scalar' if ref($_[0]) or (!defined $_[0]);
3489 0 0 0     0 croak 'The #2 argument ($issue_iid) to move_issue must be a scalar' if ref($_[1]) or (!defined $_[1]);
3490 0 0 0     0 croak 'The last argument (\%params) to move_issue must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
3491 0 0       0 my $params = (@_ == 3) ? pop() : undef;
3492 0         0 my $options = {};
3493 0 0       0 $options->{content} = $params if defined $params;
3494 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/move', [@_], $options );
3495             }
3496              
3497             =item subscribe_to_issue
3498              
3499             my $issue = $api->subscribe_to_issue(
3500             $project_id,
3501             $issue_iid,
3502             );
3503              
3504             Sends a C request to C and returns the decoded response content.
3505              
3506             =cut
3507              
3508             sub subscribe_to_issue {
3509 0     0 1 0 my $self = shift;
3510 0 0       0 croak 'subscribe_to_issue must be called with 2 arguments' if @_ != 2;
3511 0 0 0     0 croak 'The #1 argument ($project_id) to subscribe_to_issue must be a scalar' if ref($_[0]) or (!defined $_[0]);
3512 0 0 0     0 croak 'The #2 argument ($issue_iid) to subscribe_to_issue must be a scalar' if ref($_[1]) or (!defined $_[1]);
3513 0         0 my $options = {};
3514 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/subscribe', [@_], $options );
3515             }
3516              
3517             =item unsubscribe_from_issue
3518              
3519             my $issue = $api->unsubscribe_from_issue(
3520             $project_id,
3521             $issue_iid,
3522             );
3523              
3524             Sends a C request to C and returns the decoded response content.
3525              
3526             =cut
3527              
3528             sub unsubscribe_from_issue {
3529 0     0 1 0 my $self = shift;
3530 0 0       0 croak 'unsubscribe_from_issue must be called with 2 arguments' if @_ != 2;
3531 0 0 0     0 croak 'The #1 argument ($project_id) to unsubscribe_from_issue must be a scalar' if ref($_[0]) or (!defined $_[0]);
3532 0 0 0     0 croak 'The #2 argument ($issue_iid) to unsubscribe_from_issue must be a scalar' if ref($_[1]) or (!defined $_[1]);
3533 0         0 my $options = {};
3534 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/unsubscribe', [@_], $options );
3535             }
3536              
3537             =item create_issue_todo
3538              
3539             my $todo = $api->create_issue_todo(
3540             $project_id,
3541             $issue_iid,
3542             );
3543              
3544             Sends a C request to C and returns the decoded response content.
3545              
3546             =cut
3547              
3548             sub create_issue_todo {
3549 0     0 1 0 my $self = shift;
3550 0 0       0 croak 'create_issue_todo must be called with 2 arguments' if @_ != 2;
3551 0 0 0     0 croak 'The #1 argument ($project_id) to create_issue_todo must be a scalar' if ref($_[0]) or (!defined $_[0]);
3552 0 0 0     0 croak 'The #2 argument ($issue_iid) to create_issue_todo must be a scalar' if ref($_[1]) or (!defined $_[1]);
3553 0         0 my $options = {};
3554 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/todo', [@_], $options );
3555             }
3556              
3557             =item set_issue_time_estimate
3558              
3559             my $tracking = $api->set_issue_time_estimate(
3560             $project_id,
3561             $issue_iid,
3562             \%params,
3563             );
3564              
3565             Sends a C request to C and returns the decoded response content.
3566              
3567             =cut
3568              
3569             sub set_issue_time_estimate {
3570 0     0 1 0 my $self = shift;
3571 0 0 0     0 croak 'set_issue_time_estimate must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
3572 0 0 0     0 croak 'The #1 argument ($project_id) to set_issue_time_estimate must be a scalar' if ref($_[0]) or (!defined $_[0]);
3573 0 0 0     0 croak 'The #2 argument ($issue_iid) to set_issue_time_estimate must be a scalar' if ref($_[1]) or (!defined $_[1]);
3574 0 0 0     0 croak 'The last argument (\%params) to set_issue_time_estimate must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
3575 0 0       0 my $params = (@_ == 3) ? pop() : undef;
3576 0         0 my $options = {};
3577 0 0       0 $options->{content} = $params if defined $params;
3578 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/time_estimate', [@_], $options );
3579             }
3580              
3581             =item reset_issue_time_estimate
3582              
3583             my $tracking = $api->reset_issue_time_estimate(
3584             $project_id,
3585             $issue_iid,
3586             );
3587              
3588             Sends a C request to C and returns the decoded response content.
3589              
3590             =cut
3591              
3592             sub reset_issue_time_estimate {
3593 0     0 1 0 my $self = shift;
3594 0 0       0 croak 'reset_issue_time_estimate must be called with 2 arguments' if @_ != 2;
3595 0 0 0     0 croak 'The #1 argument ($project_id) to reset_issue_time_estimate must be a scalar' if ref($_[0]) or (!defined $_[0]);
3596 0 0 0     0 croak 'The #2 argument ($issue_iid) to reset_issue_time_estimate must be a scalar' if ref($_[1]) or (!defined $_[1]);
3597 0         0 my $options = {};
3598 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/reset_time_estimate', [@_], $options );
3599             }
3600              
3601             =item add_issue_spent_time
3602              
3603             my $tracking = $api->add_issue_spent_time(
3604             $project_id,
3605             $issue_iid,
3606             \%params,
3607             );
3608              
3609             Sends a C request to C and returns the decoded response content.
3610              
3611             =cut
3612              
3613             sub add_issue_spent_time {
3614 0     0 1 0 my $self = shift;
3615 0 0 0     0 croak 'add_issue_spent_time must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
3616 0 0 0     0 croak 'The #1 argument ($project_id) to add_issue_spent_time must be a scalar' if ref($_[0]) or (!defined $_[0]);
3617 0 0 0     0 croak 'The #2 argument ($issue_iid) to add_issue_spent_time must be a scalar' if ref($_[1]) or (!defined $_[1]);
3618 0 0 0     0 croak 'The last argument (\%params) to add_issue_spent_time must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
3619 0 0       0 my $params = (@_ == 3) ? pop() : undef;
3620 0         0 my $options = {};
3621 0 0       0 $options->{content} = $params if defined $params;
3622 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/add_spent_time', [@_], $options );
3623             }
3624              
3625             =item reset_issue_spent_time
3626              
3627             my $tracking = $api->reset_issue_spent_time(
3628             $project_id,
3629             $issue_iid,
3630             );
3631              
3632             Sends a C request to C and returns the decoded response content.
3633              
3634             =cut
3635              
3636             sub reset_issue_spent_time {
3637 0     0 1 0 my $self = shift;
3638 0 0       0 croak 'reset_issue_spent_time must be called with 2 arguments' if @_ != 2;
3639 0 0 0     0 croak 'The #1 argument ($project_id) to reset_issue_spent_time must be a scalar' if ref($_[0]) or (!defined $_[0]);
3640 0 0 0     0 croak 'The #2 argument ($issue_iid) to reset_issue_spent_time must be a scalar' if ref($_[1]) or (!defined $_[1]);
3641 0         0 my $options = {};
3642 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/reset_spent_time', [@_], $options );
3643             }
3644              
3645             =item issue_time_stats
3646              
3647             my $tracking = $api->issue_time_stats(
3648             $project_id,
3649             $issue_iid,
3650             );
3651              
3652             Sends a C request to C and returns the decoded response content.
3653              
3654             =cut
3655              
3656             sub issue_time_stats {
3657 0     0 1 0 my $self = shift;
3658 0 0       0 croak 'issue_time_stats must be called with 2 arguments' if @_ != 2;
3659 0 0 0     0 croak 'The #1 argument ($project_id) to issue_time_stats must be a scalar' if ref($_[0]) or (!defined $_[0]);
3660 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_time_stats must be a scalar' if ref($_[1]) or (!defined $_[1]);
3661 0         0 my $options = {};
3662 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/time_stats', [@_], $options );
3663             }
3664              
3665             =item issue_closed_by
3666              
3667             my $merge_requests = $api->issue_closed_by(
3668             $project_id,
3669             $issue_iid,
3670             );
3671              
3672             Sends a C request to C and returns the decoded response content.
3673              
3674             =cut
3675              
3676             sub issue_closed_by {
3677 0     0 1 0 my $self = shift;
3678 0 0       0 croak 'issue_closed_by must be called with 2 arguments' if @_ != 2;
3679 0 0 0     0 croak 'The #1 argument ($project_id) to issue_closed_by must be a scalar' if ref($_[0]) or (!defined $_[0]);
3680 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_closed_by must be a scalar' if ref($_[1]) or (!defined $_[1]);
3681 0         0 my $options = {};
3682 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/closed_by', [@_], $options );
3683             }
3684              
3685             =item issue_user_agent_detail
3686              
3687             my $user_agent = $api->issue_user_agent_detail(
3688             $project_id,
3689             $issue_iid,
3690             );
3691              
3692             Sends a C request to C and returns the decoded response content.
3693              
3694             =cut
3695              
3696             sub issue_user_agent_detail {
3697 0     0 1 0 my $self = shift;
3698 0 0       0 croak 'issue_user_agent_detail must be called with 2 arguments' if @_ != 2;
3699 0 0 0     0 croak 'The #1 argument ($project_id) to issue_user_agent_detail must be a scalar' if ref($_[0]) or (!defined $_[0]);
3700 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_user_agent_detail must be a scalar' if ref($_[1]) or (!defined $_[1]);
3701 0         0 my $options = {};
3702 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/user_agent_detail', [@_], $options );
3703             }
3704              
3705             =back
3706              
3707             =head2 Issue Boards
3708              
3709             See L.
3710              
3711             =over
3712              
3713             =item project_boards
3714              
3715             my $boards = $api->project_boards(
3716             $project_id,
3717             \%params,
3718             );
3719              
3720             Sends a C request to C and returns the decoded response content.
3721              
3722             =cut
3723              
3724             sub project_boards {
3725 0     0 1 0 my $self = shift;
3726 0 0 0     0 croak 'project_boards must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
3727 0 0 0     0 croak 'The #1 argument ($project_id) to project_boards must be a scalar' if ref($_[0]) or (!defined $_[0]);
3728 0 0 0     0 croak 'The last argument (\%params) to project_boards must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
3729 0 0       0 my $params = (@_ == 2) ? pop() : undef;
3730 0         0 my $options = {};
3731 0 0       0 $options->{query} = $params if defined $params;
3732 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/boards', [@_], $options );
3733             }
3734              
3735             =item project_board_lists
3736              
3737             my $lists = $api->project_board_lists(
3738             $project_id,
3739             $board_id,
3740             \%params,
3741             );
3742              
3743             Sends a C request to C and returns the decoded response content.
3744              
3745             =cut
3746              
3747             sub project_board_lists {
3748 0     0 1 0 my $self = shift;
3749 0 0 0     0 croak 'project_board_lists must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
3750 0 0 0     0 croak 'The #1 argument ($project_id) to project_board_lists must be a scalar' if ref($_[0]) or (!defined $_[0]);
3751 0 0 0     0 croak 'The #2 argument ($board_id) to project_board_lists must be a scalar' if ref($_[1]) or (!defined $_[1]);
3752 0 0 0     0 croak 'The last argument (\%params) to project_board_lists must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
3753 0 0       0 my $params = (@_ == 3) ? pop() : undef;
3754 0         0 my $options = {};
3755 0 0       0 $options->{query} = $params if defined $params;
3756 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/boards/:board_id/lists', [@_], $options );
3757             }
3758              
3759             =item project_board_list
3760              
3761             my $list = $api->project_board_list(
3762             $project_id,
3763             $board_id,
3764             $list_id,
3765             );
3766              
3767             Sends a C request to C and returns the decoded response content.
3768              
3769             =cut
3770              
3771             sub project_board_list {
3772 0     0 1 0 my $self = shift;
3773 0 0       0 croak 'project_board_list must be called with 3 arguments' if @_ != 3;
3774 0 0 0     0 croak 'The #1 argument ($project_id) to project_board_list must be a scalar' if ref($_[0]) or (!defined $_[0]);
3775 0 0 0     0 croak 'The #2 argument ($board_id) to project_board_list must be a scalar' if ref($_[1]) or (!defined $_[1]);
3776 0 0 0     0 croak 'The #3 argument ($list_id) to project_board_list must be a scalar' if ref($_[2]) or (!defined $_[2]);
3777 0         0 my $options = {};
3778 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/boards/:board_id/lists/:list_id', [@_], $options );
3779             }
3780              
3781             =item create_project_board_list
3782              
3783             my $list = $api->create_project_board_list(
3784             $project_id,
3785             $board_id,
3786             \%params,
3787             );
3788              
3789             Sends a C request to C and returns the decoded response content.
3790              
3791             =cut
3792              
3793             sub create_project_board_list {
3794 0     0 1 0 my $self = shift;
3795 0 0 0     0 croak 'create_project_board_list must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
3796 0 0 0     0 croak 'The #1 argument ($project_id) to create_project_board_list must be a scalar' if ref($_[0]) or (!defined $_[0]);
3797 0 0 0     0 croak 'The #2 argument ($board_id) to create_project_board_list must be a scalar' if ref($_[1]) or (!defined $_[1]);
3798 0 0 0     0 croak 'The last argument (\%params) to create_project_board_list must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
3799 0 0       0 my $params = (@_ == 3) ? pop() : undef;
3800 0         0 my $options = {};
3801 0 0       0 $options->{content} = $params if defined $params;
3802 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/boards/:board_id/lists', [@_], $options );
3803             }
3804              
3805             =item edit_project_board_list
3806              
3807             my $list = $api->edit_project_board_list(
3808             $project_id,
3809             $board_id,
3810             $list_id,
3811             \%params,
3812             );
3813              
3814             Sends a C request to C and returns the decoded response content.
3815              
3816             =cut
3817              
3818             sub edit_project_board_list {
3819 0     0 1 0 my $self = shift;
3820 0 0 0     0 croak 'edit_project_board_list must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
3821 0 0 0     0 croak 'The #1 argument ($project_id) to edit_project_board_list must be a scalar' if ref($_[0]) or (!defined $_[0]);
3822 0 0 0     0 croak 'The #2 argument ($board_id) to edit_project_board_list must be a scalar' if ref($_[1]) or (!defined $_[1]);
3823 0 0 0     0 croak 'The #3 argument ($list_id) to edit_project_board_list must be a scalar' if ref($_[2]) or (!defined $_[2]);
3824 0 0 0     0 croak 'The last argument (\%params) to edit_project_board_list must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
3825 0 0       0 my $params = (@_ == 4) ? pop() : undef;
3826 0         0 my $options = {};
3827 0 0       0 $options->{content} = $params if defined $params;
3828 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/boards/:board_id/lists/:list_id', [@_], $options );
3829             }
3830              
3831             =item delete_project_board_list
3832              
3833             $api->delete_project_board_list(
3834             $project_id,
3835             $board_id,
3836             $list_id,
3837             );
3838              
3839             Sends a C request to C.
3840              
3841             =cut
3842              
3843             sub delete_project_board_list {
3844 0     0 1 0 my $self = shift;
3845 0 0       0 croak 'delete_project_board_list must be called with 3 arguments' if @_ != 3;
3846 0 0 0     0 croak 'The #1 argument ($project_id) to delete_project_board_list must be a scalar' if ref($_[0]) or (!defined $_[0]);
3847 0 0 0     0 croak 'The #2 argument ($board_id) to delete_project_board_list must be a scalar' if ref($_[1]) or (!defined $_[1]);
3848 0 0 0     0 croak 'The #3 argument ($list_id) to delete_project_board_list must be a scalar' if ref($_[2]) or (!defined $_[2]);
3849 0         0 my $options = {};
3850 0         0 $options->{decode} = 0;
3851 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/boards/:board_id/lists/:list_id', [@_], $options );
3852 0         0 return;
3853             }
3854              
3855             =back
3856              
3857             =head2 Group Issue Boards
3858              
3859             See L.
3860              
3861             =over
3862              
3863             =item group_boards
3864              
3865             my $boards = $api->group_boards(
3866             $group_id,
3867             );
3868              
3869             Sends a C request to C and returns the decoded response content.
3870              
3871             =cut
3872              
3873             sub group_boards {
3874 0     0 1 0 my $self = shift;
3875 0 0       0 croak 'group_boards must be called with 1 arguments' if @_ != 1;
3876 0 0 0     0 croak 'The #1 argument ($group_id) to group_boards must be a scalar' if ref($_[0]) or (!defined $_[0]);
3877 0         0 my $options = {};
3878 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/boards', [@_], $options );
3879             }
3880              
3881             =item group_board
3882              
3883             my $board = $api->group_board(
3884             $group_id,
3885             $board_id,
3886             );
3887              
3888             Sends a C request to C and returns the decoded response content.
3889              
3890             =cut
3891              
3892             sub group_board {
3893 0     0 1 0 my $self = shift;
3894 0 0       0 croak 'group_board must be called with 2 arguments' if @_ != 2;
3895 0 0 0     0 croak 'The #1 argument ($group_id) to group_board must be a scalar' if ref($_[0]) or (!defined $_[0]);
3896 0 0 0     0 croak 'The #2 argument ($board_id) to group_board must be a scalar' if ref($_[1]) or (!defined $_[1]);
3897 0         0 my $options = {};
3898 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/boards/:board_id', [@_], $options );
3899             }
3900              
3901             =item group_board_lists
3902              
3903             my $lists = $api->group_board_lists(
3904             $group_id,
3905             $board_id,
3906             );
3907              
3908             Sends a C request to C and returns the decoded response content.
3909              
3910             =cut
3911              
3912             sub group_board_lists {
3913 0     0 1 0 my $self = shift;
3914 0 0       0 croak 'group_board_lists must be called with 2 arguments' if @_ != 2;
3915 0 0 0     0 croak 'The #1 argument ($group_id) to group_board_lists must be a scalar' if ref($_[0]) or (!defined $_[0]);
3916 0 0 0     0 croak 'The #2 argument ($board_id) to group_board_lists must be a scalar' if ref($_[1]) or (!defined $_[1]);
3917 0         0 my $options = {};
3918 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/boards/:board_id/lists', [@_], $options );
3919             }
3920              
3921             =item group_board_list
3922              
3923             my $list = $api->group_board_list(
3924             $group_id,
3925             $board_id,
3926             $list_id,
3927             );
3928              
3929             Sends a C request to C and returns the decoded response content.
3930              
3931             =cut
3932              
3933             sub group_board_list {
3934 0     0 1 0 my $self = shift;
3935 0 0       0 croak 'group_board_list must be called with 3 arguments' if @_ != 3;
3936 0 0 0     0 croak 'The #1 argument ($group_id) to group_board_list must be a scalar' if ref($_[0]) or (!defined $_[0]);
3937 0 0 0     0 croak 'The #2 argument ($board_id) to group_board_list must be a scalar' if ref($_[1]) or (!defined $_[1]);
3938 0 0 0     0 croak 'The #3 argument ($list_id) to group_board_list must be a scalar' if ref($_[2]) or (!defined $_[2]);
3939 0         0 my $options = {};
3940 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/boards/:board_id/lists/:list_id', [@_], $options );
3941             }
3942              
3943             =item create_group_board_list
3944              
3945             my $list = $api->create_group_board_list(
3946             $group_id,
3947             $board_id,
3948             \%params,
3949             );
3950              
3951             Sends a C request to C and returns the decoded response content.
3952              
3953             =cut
3954              
3955             sub create_group_board_list {
3956 0     0 1 0 my $self = shift;
3957 0 0 0     0 croak 'create_group_board_list must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
3958 0 0 0     0 croak 'The #1 argument ($group_id) to create_group_board_list must be a scalar' if ref($_[0]) or (!defined $_[0]);
3959 0 0 0     0 croak 'The #2 argument ($board_id) to create_group_board_list must be a scalar' if ref($_[1]) or (!defined $_[1]);
3960 0 0 0     0 croak 'The last argument (\%params) to create_group_board_list must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
3961 0 0       0 my $params = (@_ == 3) ? pop() : undef;
3962 0         0 my $options = {};
3963 0 0       0 $options->{content} = $params if defined $params;
3964 0         0 return $self->_call_rest_client( 'POST', 'groups/:group_id/boards/:board_id/lists', [@_], $options );
3965             }
3966              
3967             =item edit_group_board_list
3968              
3969             my $list = $api->edit_group_board_list(
3970             $group_id,
3971             $board_id,
3972             $list_id,
3973             \%params,
3974             );
3975              
3976             Sends a C request to C and returns the decoded response content.
3977              
3978             =cut
3979              
3980             sub edit_group_board_list {
3981 0     0 1 0 my $self = shift;
3982 0 0 0     0 croak 'edit_group_board_list must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
3983 0 0 0     0 croak 'The #1 argument ($group_id) to edit_group_board_list must be a scalar' if ref($_[0]) or (!defined $_[0]);
3984 0 0 0     0 croak 'The #2 argument ($board_id) to edit_group_board_list must be a scalar' if ref($_[1]) or (!defined $_[1]);
3985 0 0 0     0 croak 'The #3 argument ($list_id) to edit_group_board_list must be a scalar' if ref($_[2]) or (!defined $_[2]);
3986 0 0 0     0 croak 'The last argument (\%params) to edit_group_board_list must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
3987 0 0       0 my $params = (@_ == 4) ? pop() : undef;
3988 0         0 my $options = {};
3989 0 0       0 $options->{content} = $params if defined $params;
3990 0         0 return $self->_call_rest_client( 'PUT', 'groups/:group_id/boards/:board_id/lists/:list_id', [@_], $options );
3991             }
3992              
3993             =item delete_group_board_list
3994              
3995             $api->delete_group_board_list(
3996             $group_id,
3997             $board_id,
3998             $list_id,
3999             );
4000              
4001             Sends a C request to C.
4002              
4003             =cut
4004              
4005             sub delete_group_board_list {
4006 0     0 1 0 my $self = shift;
4007 0 0       0 croak 'delete_group_board_list must be called with 3 arguments' if @_ != 3;
4008 0 0 0     0 croak 'The #1 argument ($group_id) to delete_group_board_list must be a scalar' if ref($_[0]) or (!defined $_[0]);
4009 0 0 0     0 croak 'The #2 argument ($board_id) to delete_group_board_list must be a scalar' if ref($_[1]) or (!defined $_[1]);
4010 0 0 0     0 croak 'The #3 argument ($list_id) to delete_group_board_list must be a scalar' if ref($_[2]) or (!defined $_[2]);
4011 0         0 my $options = {};
4012 0         0 $options->{decode} = 0;
4013 0         0 $self->_call_rest_client( 'DELETE', 'groups/:group_id/boards/:board_id/lists/:list_id', [@_], $options );
4014 0         0 return;
4015             }
4016              
4017             =back
4018              
4019             =head2 Jobs
4020              
4021             See L.
4022              
4023             =over
4024              
4025             =item jobs
4026              
4027             my $jobs = $api->jobs(
4028             $project_id,
4029             \%params,
4030             );
4031              
4032             Sends a C request to C and returns the decoded response content.
4033              
4034             =cut
4035              
4036             sub jobs {
4037 0     0 1 0 my $self = shift;
4038 0 0 0     0 croak 'jobs must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
4039 0 0 0     0 croak 'The #1 argument ($project_id) to jobs must be a scalar' if ref($_[0]) or (!defined $_[0]);
4040 0 0 0     0 croak 'The last argument (\%params) to jobs must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
4041 0 0       0 my $params = (@_ == 2) ? pop() : undef;
4042 0         0 my $options = {};
4043 0 0       0 $options->{query} = $params if defined $params;
4044 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/jobs', [@_], $options );
4045             }
4046              
4047             =item pipeline_jobs
4048              
4049             my $jobs = $api->pipeline_jobs(
4050             $project_id,
4051             $pipeline_id,
4052             \%params,
4053             );
4054              
4055             Sends a C request to C and returns the decoded response content.
4056              
4057             =cut
4058              
4059             sub pipeline_jobs {
4060 0     0 1 0 my $self = shift;
4061 0 0 0     0 croak 'pipeline_jobs must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
4062 0 0 0     0 croak 'The #1 argument ($project_id) to pipeline_jobs must be a scalar' if ref($_[0]) or (!defined $_[0]);
4063 0 0 0     0 croak 'The #2 argument ($pipeline_id) to pipeline_jobs must be a scalar' if ref($_[1]) or (!defined $_[1]);
4064 0 0 0     0 croak 'The last argument (\%params) to pipeline_jobs must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
4065 0 0       0 my $params = (@_ == 3) ? pop() : undef;
4066 0         0 my $options = {};
4067 0 0       0 $options->{query} = $params if defined $params;
4068 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/pipelines/:pipeline_id/jobs', [@_], $options );
4069             }
4070              
4071             =item job
4072              
4073             my $job = $api->job(
4074             $project_id,
4075             $job_id,
4076             );
4077              
4078             Sends a C request to C and returns the decoded response content.
4079              
4080             =cut
4081              
4082             sub job {
4083 0     0 1 0 my $self = shift;
4084 0 0       0 croak 'job must be called with 2 arguments' if @_ != 2;
4085 0 0 0     0 croak 'The #1 argument ($project_id) to job must be a scalar' if ref($_[0]) or (!defined $_[0]);
4086 0 0 0     0 croak 'The #2 argument ($job_id) to job must be a scalar' if ref($_[1]) or (!defined $_[1]);
4087 0         0 my $options = {};
4088 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/jobs/:job_id', [@_], $options );
4089             }
4090              
4091             =item job_artifacts
4092              
4093             my $artifacts = $api->job_artifacts(
4094             $project_id,
4095             $job_id,
4096             );
4097              
4098             Sends a C request to C and returns the decoded response content.
4099              
4100             =cut
4101              
4102             sub job_artifacts {
4103 0     0 1 0 my $self = shift;
4104 0 0       0 croak 'job_artifacts must be called with 2 arguments' if @_ != 2;
4105 0 0 0     0 croak 'The #1 argument ($project_id) to job_artifacts must be a scalar' if ref($_[0]) or (!defined $_[0]);
4106 0 0 0     0 croak 'The #2 argument ($job_id) to job_artifacts must be a scalar' if ref($_[1]) or (!defined $_[1]);
4107 0         0 my $options = {};
4108 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/jobs/:job_id/artifacts', [@_], $options );
4109             }
4110              
4111             =item job_artifacts_archive
4112              
4113             my $archive = $api->job_artifacts_archive(
4114             $project_id,
4115             $ref_name,
4116             \%params,
4117             );
4118              
4119             Sends a C request to C and returns the decoded response content.
4120              
4121             =cut
4122              
4123             sub job_artifacts_archive {
4124 0     0 1 0 my $self = shift;
4125 0 0 0     0 croak 'job_artifacts_archive must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
4126 0 0 0     0 croak 'The #1 argument ($project_id) to job_artifacts_archive must be a scalar' if ref($_[0]) or (!defined $_[0]);
4127 0 0 0     0 croak 'The #2 argument ($ref_name) to job_artifacts_archive must be a scalar' if ref($_[1]) or (!defined $_[1]);
4128 0 0 0     0 croak 'The last argument (\%params) to job_artifacts_archive must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
4129 0 0       0 my $params = (@_ == 3) ? pop() : undef;
4130 0         0 my $options = {};
4131 0 0       0 $options->{query} = $params if defined $params;
4132 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/jobs/artifacts/:ref_name/download', [@_], $options );
4133             }
4134              
4135             =item job_artifacts_file
4136              
4137             my $file = $api->job_artifacts_file(
4138             $project_id,
4139             $job_id,
4140             $artifact_path,
4141             );
4142              
4143             Sends a C request to C and returns the decoded response content.
4144              
4145             =cut
4146              
4147             sub job_artifacts_file {
4148 0     0 1 0 my $self = shift;
4149 0 0       0 croak 'job_artifacts_file must be called with 3 arguments' if @_ != 3;
4150 0 0 0     0 croak 'The #1 argument ($project_id) to job_artifacts_file must be a scalar' if ref($_[0]) or (!defined $_[0]);
4151 0 0 0     0 croak 'The #2 argument ($job_id) to job_artifacts_file must be a scalar' if ref($_[1]) or (!defined $_[1]);
4152 0 0 0     0 croak 'The #3 argument ($artifact_path) to job_artifacts_file must be a scalar' if ref($_[2]) or (!defined $_[2]);
4153 0         0 my $options = {};
4154 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/jobs/:job_id/artifacts/:artifact_path', [@_], $options );
4155             }
4156              
4157             =item job_trace_file
4158              
4159             my $file = $api->job_trace_file(
4160             $project_id,
4161             $job_id,
4162             );
4163              
4164             Sends a C request to C and returns the decoded response content.
4165              
4166             =cut
4167              
4168             sub job_trace_file {
4169 0     0 1 0 my $self = shift;
4170 0 0       0 croak 'job_trace_file must be called with 2 arguments' if @_ != 2;
4171 0 0 0     0 croak 'The #1 argument ($project_id) to job_trace_file must be a scalar' if ref($_[0]) or (!defined $_[0]);
4172 0 0 0     0 croak 'The #2 argument ($job_id) to job_trace_file must be a scalar' if ref($_[1]) or (!defined $_[1]);
4173 0         0 my $options = {};
4174 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/jobs/:job_id/trace', [@_], $options );
4175             }
4176              
4177             =item cancel_job
4178              
4179             my $job = $api->cancel_job(
4180             $project_id,
4181             $job_id,
4182             );
4183              
4184             Sends a C request to C and returns the decoded response content.
4185              
4186             =cut
4187              
4188             sub cancel_job {
4189 0     0 1 0 my $self = shift;
4190 0 0       0 croak 'cancel_job must be called with 2 arguments' if @_ != 2;
4191 0 0 0     0 croak 'The #1 argument ($project_id) to cancel_job must be a scalar' if ref($_[0]) or (!defined $_[0]);
4192 0 0 0     0 croak 'The #2 argument ($job_id) to cancel_job must be a scalar' if ref($_[1]) or (!defined $_[1]);
4193 0         0 my $options = {};
4194 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/jobs/:job_id/cancel', [@_], $options );
4195             }
4196              
4197             =item retry_job
4198              
4199             my $job = $api->retry_job(
4200             $project_id,
4201             $job_id,
4202             );
4203              
4204             Sends a C request to C and returns the decoded response content.
4205              
4206             =cut
4207              
4208             sub retry_job {
4209 0     0 1 0 my $self = shift;
4210 0 0       0 croak 'retry_job must be called with 2 arguments' if @_ != 2;
4211 0 0 0     0 croak 'The #1 argument ($project_id) to retry_job must be a scalar' if ref($_[0]) or (!defined $_[0]);
4212 0 0 0     0 croak 'The #2 argument ($job_id) to retry_job must be a scalar' if ref($_[1]) or (!defined $_[1]);
4213 0         0 my $options = {};
4214 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/jobs/:job_id/retry', [@_], $options );
4215             }
4216              
4217             =item erase_job
4218              
4219             my $job = $api->erase_job(
4220             $project_id,
4221             $job_id,
4222             );
4223              
4224             Sends a C request to C and returns the decoded response content.
4225              
4226             =cut
4227              
4228             sub erase_job {
4229 0     0 1 0 my $self = shift;
4230 0 0       0 croak 'erase_job must be called with 2 arguments' if @_ != 2;
4231 0 0 0     0 croak 'The #1 argument ($project_id) to erase_job must be a scalar' if ref($_[0]) or (!defined $_[0]);
4232 0 0 0     0 croak 'The #2 argument ($job_id) to erase_job must be a scalar' if ref($_[1]) or (!defined $_[1]);
4233 0         0 my $options = {};
4234 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/jobs/:job_id/erase', [@_], $options );
4235             }
4236              
4237             =item keep_job_artifacts
4238              
4239             my $job = $api->keep_job_artifacts(
4240             $project_id,
4241             $job_id,
4242             );
4243              
4244             Sends a C request to C and returns the decoded response content.
4245              
4246             =cut
4247              
4248             sub keep_job_artifacts {
4249 0     0 1 0 my $self = shift;
4250 0 0       0 croak 'keep_job_artifacts must be called with 2 arguments' if @_ != 2;
4251 0 0 0     0 croak 'The #1 argument ($project_id) to keep_job_artifacts must be a scalar' if ref($_[0]) or (!defined $_[0]);
4252 0 0 0     0 croak 'The #2 argument ($job_id) to keep_job_artifacts must be a scalar' if ref($_[1]) or (!defined $_[1]);
4253 0         0 my $options = {};
4254 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/jobs/:job_id/artifacts/keep', [@_], $options );
4255             }
4256              
4257             =item play_job
4258              
4259             my $job = $api->play_job(
4260             $project_id,
4261             $job_id,
4262             );
4263              
4264             Sends a C request to C and returns the decoded response content.
4265              
4266             =cut
4267              
4268             sub play_job {
4269 0     0 1 0 my $self = shift;
4270 0 0       0 croak 'play_job must be called with 2 arguments' if @_ != 2;
4271 0 0 0     0 croak 'The #1 argument ($project_id) to play_job must be a scalar' if ref($_[0]) or (!defined $_[0]);
4272 0 0 0     0 croak 'The #2 argument ($job_id) to play_job must be a scalar' if ref($_[1]) or (!defined $_[1]);
4273 0         0 my $options = {};
4274 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/jobs/:job_id/play', [@_], $options );
4275             }
4276              
4277             =back
4278              
4279             =head2 Keys
4280              
4281             See L.
4282              
4283             =over
4284              
4285             =item key
4286              
4287             my $key = $api->key(
4288             $key_id,
4289             );
4290              
4291             Sends a C request to C and returns the decoded response content.
4292              
4293             =cut
4294              
4295             sub key {
4296 0     0 1 0 my $self = shift;
4297 0 0       0 croak 'key must be called with 1 arguments' if @_ != 1;
4298 0 0 0     0 croak 'The #1 argument ($key_id) to key must be a scalar' if ref($_[0]) or (!defined $_[0]);
4299 0         0 my $options = {};
4300 0         0 return $self->_call_rest_client( 'GET', 'keys/:key_id', [@_], $options );
4301             }
4302              
4303             =back
4304              
4305             =head2 Labels
4306              
4307             See L.
4308              
4309             =over
4310              
4311             =item labels
4312              
4313             my $labels = $api->labels(
4314             $project_id,
4315             \%params,
4316             );
4317              
4318             Sends a C request to C and returns the decoded response content.
4319              
4320             =cut
4321              
4322             sub labels {
4323 0     0 1 0 my $self = shift;
4324 0 0 0     0 croak 'labels must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
4325 0 0 0     0 croak 'The #1 argument ($project_id) to labels must be a scalar' if ref($_[0]) or (!defined $_[0]);
4326 0 0 0     0 croak 'The last argument (\%params) to labels must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
4327 0 0       0 my $params = (@_ == 2) ? pop() : undef;
4328 0         0 my $options = {};
4329 0 0       0 $options->{query} = $params if defined $params;
4330 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/labels', [@_], $options );
4331             }
4332              
4333             =item create_label
4334              
4335             my $label = $api->create_label(
4336             $project_id,
4337             \%params,
4338             );
4339              
4340             Sends a C request to C and returns the decoded response content.
4341              
4342             =cut
4343              
4344             sub create_label {
4345 0     0 1 0 my $self = shift;
4346 0 0 0     0 croak 'create_label must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
4347 0 0 0     0 croak 'The #1 argument ($project_id) to create_label must be a scalar' if ref($_[0]) or (!defined $_[0]);
4348 0 0 0     0 croak 'The last argument (\%params) to create_label must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
4349 0 0       0 my $params = (@_ == 2) ? pop() : undef;
4350 0         0 my $options = {};
4351 0 0       0 $options->{content} = $params if defined $params;
4352 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/labels', [@_], $options );
4353             }
4354              
4355             =item delete_label
4356              
4357             $api->delete_label(
4358             $project_id,
4359             \%params,
4360             );
4361              
4362             Sends a C request to C.
4363              
4364             =cut
4365              
4366             sub delete_label {
4367 0     0 1 0 my $self = shift;
4368 0 0 0     0 croak 'delete_label must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
4369 0 0 0     0 croak 'The #1 argument ($project_id) to delete_label must be a scalar' if ref($_[0]) or (!defined $_[0]);
4370 0 0 0     0 croak 'The last argument (\%params) to delete_label must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
4371 0 0       0 my $params = (@_ == 2) ? pop() : undef;
4372 0         0 my $options = {};
4373 0         0 $options->{decode} = 0;
4374 0 0       0 $options->{content} = $params if defined $params;
4375 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/labels', [@_], $options );
4376 0         0 return;
4377             }
4378              
4379             =item edit_label
4380              
4381             my $label = $api->edit_label(
4382             $project_id,
4383             \%params,
4384             );
4385              
4386             Sends a C request to C and returns the decoded response content.
4387              
4388             =cut
4389              
4390             sub edit_label {
4391 0     0 1 0 my $self = shift;
4392 0 0 0     0 croak 'edit_label must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
4393 0 0 0     0 croak 'The #1 argument ($project_id) to edit_label must be a scalar' if ref($_[0]) or (!defined $_[0]);
4394 0 0 0     0 croak 'The last argument (\%params) to edit_label must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
4395 0 0       0 my $params = (@_ == 2) ? pop() : undef;
4396 0         0 my $options = {};
4397 0 0       0 $options->{content} = $params if defined $params;
4398 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/labels', [@_], $options );
4399             }
4400              
4401             =item subscribe_to_label
4402              
4403             my $label = $api->subscribe_to_label(
4404             $project_id,
4405             $label_id,
4406             );
4407              
4408             Sends a C request to C and returns the decoded response content.
4409              
4410             =cut
4411              
4412             sub subscribe_to_label {
4413 0     0 1 0 my $self = shift;
4414 0 0       0 croak 'subscribe_to_label must be called with 2 arguments' if @_ != 2;
4415 0 0 0     0 croak 'The #1 argument ($project_id) to subscribe_to_label must be a scalar' if ref($_[0]) or (!defined $_[0]);
4416 0 0 0     0 croak 'The #2 argument ($label_id) to subscribe_to_label must be a scalar' if ref($_[1]) or (!defined $_[1]);
4417 0         0 my $options = {};
4418 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/labels/:label_id/subscribe', [@_], $options );
4419             }
4420              
4421             =item unsubscribe_from_label
4422              
4423             $api->unsubscribe_from_label(
4424             $project_id,
4425             $label_id,
4426             );
4427              
4428             Sends a C request to C.
4429              
4430             =cut
4431              
4432             sub unsubscribe_from_label {
4433 0     0 1 0 my $self = shift;
4434 0 0       0 croak 'unsubscribe_from_label must be called with 2 arguments' if @_ != 2;
4435 0 0 0     0 croak 'The #1 argument ($project_id) to unsubscribe_from_label must be a scalar' if ref($_[0]) or (!defined $_[0]);
4436 0 0 0     0 croak 'The #2 argument ($label_id) to unsubscribe_from_label must be a scalar' if ref($_[1]) or (!defined $_[1]);
4437 0         0 my $options = {};
4438 0         0 $options->{decode} = 0;
4439 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/labels/:label_id/unsubscribe', [@_], $options );
4440 0         0 return;
4441             }
4442              
4443             =back
4444              
4445             =head2 Markdown
4446              
4447             See L.
4448              
4449             =over
4450              
4451             =item markdown
4452              
4453             my $html = $api->markdown(
4454             \%params,
4455             );
4456              
4457             Sends a C request to C and returns the decoded response content.
4458              
4459             =cut
4460              
4461             sub markdown {
4462 0     0 1 0 my $self = shift;
4463 0 0 0     0 croak 'markdown must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
4464 0 0 0     0 croak 'The last argument (\%params) to markdown must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
4465 0 0       0 my $params = (@_ == 1) ? pop() : undef;
4466 0         0 my $options = {};
4467 0 0       0 $options->{content} = $params if defined $params;
4468 0         0 return $self->_call_rest_client( 'POST', 'markdown', [@_], $options );
4469             }
4470              
4471             =back
4472              
4473             =head2 Merge requests
4474              
4475             See L.
4476              
4477             =over
4478              
4479             =item global_merge_requests
4480              
4481             my $merge_requests = $api->global_merge_requests(
4482             \%params,
4483             );
4484              
4485             Sends a C request to C and returns the decoded response content.
4486              
4487             =cut
4488              
4489             sub global_merge_requests {
4490 0     0 1 0 my $self = shift;
4491 0 0 0     0 croak 'global_merge_requests must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
4492 0 0 0     0 croak 'The last argument (\%params) to global_merge_requests must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
4493 0 0       0 my $params = (@_ == 1) ? pop() : undef;
4494 0         0 my $options = {};
4495 0 0       0 $options->{query} = $params if defined $params;
4496 0         0 return $self->_call_rest_client( 'GET', 'merge_requests', [@_], $options );
4497             }
4498              
4499             =item merge_requests
4500              
4501             my $merge_requests = $api->merge_requests(
4502             $project_id,
4503             \%params,
4504             );
4505              
4506             Sends a C request to C and returns the decoded response content.
4507              
4508             =cut
4509              
4510             sub merge_requests {
4511 0     0 1 0 my $self = shift;
4512 0 0 0     0 croak 'merge_requests must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
4513 0 0 0     0 croak 'The #1 argument ($project_id) to merge_requests must be a scalar' if ref($_[0]) or (!defined $_[0]);
4514 0 0 0     0 croak 'The last argument (\%params) to merge_requests must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
4515 0 0       0 my $params = (@_ == 2) ? pop() : undef;
4516 0         0 my $options = {};
4517 0 0       0 $options->{query} = $params if defined $params;
4518 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests', [@_], $options );
4519             }
4520              
4521             =item merge_request
4522              
4523             my $merge_request = $api->merge_request(
4524             $project_id,
4525             $merge_request_iid,
4526             );
4527              
4528             Sends a C request to C and returns the decoded response content.
4529              
4530             =cut
4531              
4532             sub merge_request {
4533 0     0 1 0 my $self = shift;
4534 0 0       0 croak 'merge_request must be called with 2 arguments' if @_ != 2;
4535 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request must be a scalar' if ref($_[0]) or (!defined $_[0]);
4536 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request must be a scalar' if ref($_[1]) or (!defined $_[1]);
4537 0         0 my $options = {};
4538 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid', [@_], $options );
4539             }
4540              
4541             =item merge_request_commits
4542              
4543             my $commits = $api->merge_request_commits(
4544             $project_id,
4545             $merge_request_iid,
4546             );
4547              
4548             Sends a C request to C and returns the decoded response content.
4549              
4550             =cut
4551              
4552             sub merge_request_commits {
4553 0     0 1 0 my $self = shift;
4554 0 0       0 croak 'merge_request_commits must be called with 2 arguments' if @_ != 2;
4555 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_commits must be a scalar' if ref($_[0]) or (!defined $_[0]);
4556 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_commits must be a scalar' if ref($_[1]) or (!defined $_[1]);
4557 0         0 my $options = {};
4558 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/commits', [@_], $options );
4559             }
4560              
4561             =item merge_request_with_changes
4562              
4563             my $merge_request = $api->merge_request_with_changes(
4564             $project_id,
4565             $merge_request_iid,
4566             );
4567              
4568             Sends a C request to C and returns the decoded response content.
4569              
4570             =cut
4571              
4572             sub merge_request_with_changes {
4573 0     0 1 0 my $self = shift;
4574 0 0       0 croak 'merge_request_with_changes must be called with 2 arguments' if @_ != 2;
4575 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_with_changes must be a scalar' if ref($_[0]) or (!defined $_[0]);
4576 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_with_changes must be a scalar' if ref($_[1]) or (!defined $_[1]);
4577 0         0 my $options = {};
4578 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/changes', [@_], $options );
4579             }
4580              
4581             =item create_merge_request
4582              
4583             my $merge_request = $api->create_merge_request(
4584             $project_id,
4585             \%params,
4586             );
4587              
4588             Sends a C request to C and returns the decoded response content.
4589              
4590             =cut
4591              
4592             sub create_merge_request {
4593 0     0 1 0 my $self = shift;
4594 0 0 0     0 croak 'create_merge_request must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
4595 0 0 0     0 croak 'The #1 argument ($project_id) to create_merge_request must be a scalar' if ref($_[0]) or (!defined $_[0]);
4596 0 0 0     0 croak 'The last argument (\%params) to create_merge_request must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
4597 0 0       0 my $params = (@_ == 2) ? pop() : undef;
4598 0         0 my $options = {};
4599 0 0       0 $options->{content} = $params if defined $params;
4600 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests', [@_], $options );
4601             }
4602              
4603             =item edit_merge_request
4604              
4605             my $merge_request = $api->edit_merge_request(
4606             $project_id,
4607             $merge_request_iid,
4608             \%params,
4609             );
4610              
4611             Sends a C request to C and returns the decoded response content.
4612              
4613             =cut
4614              
4615             sub edit_merge_request {
4616 0     0 1 0 my $self = shift;
4617 0 0 0     0 croak 'edit_merge_request must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
4618 0 0 0     0 croak 'The #1 argument ($project_id) to edit_merge_request must be a scalar' if ref($_[0]) or (!defined $_[0]);
4619 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to edit_merge_request must be a scalar' if ref($_[1]) or (!defined $_[1]);
4620 0 0 0     0 croak 'The last argument (\%params) to edit_merge_request must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
4621 0 0       0 my $params = (@_ == 3) ? pop() : undef;
4622 0         0 my $options = {};
4623 0 0       0 $options->{content} = $params if defined $params;
4624 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/merge_requests/:merge_request_iid', [@_], $options );
4625             }
4626              
4627             =item delete_merge_request
4628              
4629             $api->delete_merge_request(
4630             $project_id,
4631             $merge_request_iid,
4632             );
4633              
4634             Sends a C request to C.
4635              
4636             =cut
4637              
4638             sub delete_merge_request {
4639 0     0 1 0 my $self = shift;
4640 0 0       0 croak 'delete_merge_request must be called with 2 arguments' if @_ != 2;
4641 0 0 0     0 croak 'The #1 argument ($project_id) to delete_merge_request must be a scalar' if ref($_[0]) or (!defined $_[0]);
4642 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to delete_merge_request must be a scalar' if ref($_[1]) or (!defined $_[1]);
4643 0         0 my $options = {};
4644 0         0 $options->{decode} = 0;
4645 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/merge_requests/:merge_request_iid', [@_], $options );
4646 0         0 return;
4647             }
4648              
4649             =item accept_merge_request
4650              
4651             my $merge_request = $api->accept_merge_request(
4652             $project_id,
4653             $merge_request_iid,
4654             \%params,
4655             );
4656              
4657             Sends a C request to C and returns the decoded response content.
4658              
4659             =cut
4660              
4661             sub accept_merge_request {
4662 0     0 1 0 my $self = shift;
4663 0 0 0     0 croak 'accept_merge_request must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
4664 0 0 0     0 croak 'The #1 argument ($project_id) to accept_merge_request must be a scalar' if ref($_[0]) or (!defined $_[0]);
4665 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to accept_merge_request must be a scalar' if ref($_[1]) or (!defined $_[1]);
4666 0 0 0     0 croak 'The last argument (\%params) to accept_merge_request must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
4667 0 0       0 my $params = (@_ == 3) ? pop() : undef;
4668 0         0 my $options = {};
4669 0 0       0 $options->{content} = $params if defined $params;
4670 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/merge_requests/:merge_request_iid/merge', [@_], $options );
4671             }
4672              
4673             =item approve_merge_request
4674              
4675             my $merge_request = $api->approve_merge_request(
4676             $project_id,
4677             $merge_request_iid,
4678             \%params,
4679             );
4680              
4681             Sends a C request to C and returns the decoded response content.
4682              
4683             =cut
4684              
4685             sub approve_merge_request {
4686 0     0 1 0 my $self = shift;
4687 0 0 0     0 croak 'approve_merge_request must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
4688 0 0 0     0 croak 'The #1 argument ($project_id) to approve_merge_request must be a scalar' if ref($_[0]) or (!defined $_[0]);
4689 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to approve_merge_request must be a scalar' if ref($_[1]) or (!defined $_[1]);
4690 0 0 0     0 croak 'The last argument (\%params) to approve_merge_request must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
4691 0 0       0 my $params = (@_ == 3) ? pop() : undef;
4692 0         0 my $options = {};
4693 0 0       0 $options->{content} = $params if defined $params;
4694 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/approve', [@_], $options );
4695             }
4696              
4697             =item unapprove_merge_request
4698              
4699             my $merge_request = $api->unapprove_merge_request(
4700             $project_id,
4701             $merge_request_iid,
4702             \%params,
4703             );
4704              
4705             Sends a C request to C and returns the decoded response content.
4706              
4707             =cut
4708              
4709             sub unapprove_merge_request {
4710 0     0 1 0 my $self = shift;
4711 0 0 0     0 croak 'unapprove_merge_request must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
4712 0 0 0     0 croak 'The #1 argument ($project_id) to unapprove_merge_request must be a scalar' if ref($_[0]) or (!defined $_[0]);
4713 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to unapprove_merge_request must be a scalar' if ref($_[1]) or (!defined $_[1]);
4714 0 0 0     0 croak 'The last argument (\%params) to unapprove_merge_request must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
4715 0 0       0 my $params = (@_ == 3) ? pop() : undef;
4716 0         0 my $options = {};
4717 0 0       0 $options->{content} = $params if defined $params;
4718 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/unapprove', [@_], $options );
4719             }
4720              
4721             =item cancel_merge_when_pipeline_succeeds
4722              
4723             my $merge_request = $api->cancel_merge_when_pipeline_succeeds(
4724             $project_id,
4725             $merge_request_iid,
4726             );
4727              
4728             Sends a C request to C and returns the decoded response content.
4729              
4730             =cut
4731              
4732             sub cancel_merge_when_pipeline_succeeds {
4733 0     0 1 0 my $self = shift;
4734 0 0       0 croak 'cancel_merge_when_pipeline_succeeds must be called with 2 arguments' if @_ != 2;
4735 0 0 0     0 croak 'The #1 argument ($project_id) to cancel_merge_when_pipeline_succeeds must be a scalar' if ref($_[0]) or (!defined $_[0]);
4736 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to cancel_merge_when_pipeline_succeeds must be a scalar' if ref($_[1]) or (!defined $_[1]);
4737 0         0 my $options = {};
4738 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/merge_requests/:merge_request_iid/cancel_merge_when_pipeline_succeeds', [@_], $options );
4739             }
4740              
4741             =item merge_request_closes_issues
4742              
4743             my $issues = $api->merge_request_closes_issues(
4744             $project_id,
4745             $merge_request_iid,
4746             \%params,
4747             );
4748              
4749             Sends a C request to C and returns the decoded response content.
4750              
4751             =cut
4752              
4753             sub merge_request_closes_issues {
4754 0     0 1 0 my $self = shift;
4755 0 0 0     0 croak 'merge_request_closes_issues must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
4756 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_closes_issues must be a scalar' if ref($_[0]) or (!defined $_[0]);
4757 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_closes_issues must be a scalar' if ref($_[1]) or (!defined $_[1]);
4758 0 0 0     0 croak 'The last argument (\%params) to merge_request_closes_issues must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
4759 0 0       0 my $params = (@_ == 3) ? pop() : undef;
4760 0         0 my $options = {};
4761 0 0       0 $options->{query} = $params if defined $params;
4762 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/closes_issues', [@_], $options );
4763             }
4764              
4765             =item subscribe_to_merge_request
4766              
4767             my $merge_request = $api->subscribe_to_merge_request(
4768             $project_id,
4769             $merge_request_iid,
4770             );
4771              
4772             Sends a C request to C and returns the decoded response content.
4773              
4774             =cut
4775              
4776             sub subscribe_to_merge_request {
4777 0     0 1 0 my $self = shift;
4778 0 0       0 croak 'subscribe_to_merge_request must be called with 2 arguments' if @_ != 2;
4779 0 0 0     0 croak 'The #1 argument ($project_id) to subscribe_to_merge_request must be a scalar' if ref($_[0]) or (!defined $_[0]);
4780 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to subscribe_to_merge_request must be a scalar' if ref($_[1]) or (!defined $_[1]);
4781 0         0 my $options = {};
4782 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/subscribe', [@_], $options );
4783             }
4784              
4785             =item unsubscribe_from_merge_request
4786              
4787             my $merge_request = $api->unsubscribe_from_merge_request(
4788             $project_id,
4789             $merge_request_iid,
4790             );
4791              
4792             Sends a C request to C and returns the decoded response content.
4793              
4794             =cut
4795              
4796             sub unsubscribe_from_merge_request {
4797 0     0 1 0 my $self = shift;
4798 0 0       0 croak 'unsubscribe_from_merge_request must be called with 2 arguments' if @_ != 2;
4799 0 0 0     0 croak 'The #1 argument ($project_id) to unsubscribe_from_merge_request must be a scalar' if ref($_[0]) or (!defined $_[0]);
4800 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to unsubscribe_from_merge_request must be a scalar' if ref($_[1]) or (!defined $_[1]);
4801 0         0 my $options = {};
4802 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/unsubscribe', [@_], $options );
4803             }
4804              
4805             =item create_merge_request_todo
4806              
4807             my $todo = $api->create_merge_request_todo(
4808             $project_id,
4809             $merge_request_iid,
4810             );
4811              
4812             Sends a C request to C and returns the decoded response content.
4813              
4814             =cut
4815              
4816             sub create_merge_request_todo {
4817 0     0 1 0 my $self = shift;
4818 0 0       0 croak 'create_merge_request_todo must be called with 2 arguments' if @_ != 2;
4819 0 0 0     0 croak 'The #1 argument ($project_id) to create_merge_request_todo must be a scalar' if ref($_[0]) or (!defined $_[0]);
4820 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to create_merge_request_todo must be a scalar' if ref($_[1]) or (!defined $_[1]);
4821 0         0 my $options = {};
4822 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/todo', [@_], $options );
4823             }
4824              
4825             =item merge_request_diff_versions
4826              
4827             my $versions = $api->merge_request_diff_versions(
4828             $project_id,
4829             $merge_request_iid,
4830             );
4831              
4832             Sends a C request to C and returns the decoded response content.
4833              
4834             =cut
4835              
4836             sub merge_request_diff_versions {
4837 0     0 1 0 my $self = shift;
4838 0 0       0 croak 'merge_request_diff_versions must be called with 2 arguments' if @_ != 2;
4839 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_diff_versions must be a scalar' if ref($_[0]) or (!defined $_[0]);
4840 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_diff_versions must be a scalar' if ref($_[1]) or (!defined $_[1]);
4841 0         0 my $options = {};
4842 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/versions', [@_], $options );
4843             }
4844              
4845             =item merge_request_diff_version
4846              
4847             my $version = $api->merge_request_diff_version(
4848             $project_id,
4849             $merge_request_iid,
4850             $version_id,
4851             );
4852              
4853             Sends a C request to C and returns the decoded response content.
4854              
4855             =cut
4856              
4857             sub merge_request_diff_version {
4858 0     0 1 0 my $self = shift;
4859 0 0       0 croak 'merge_request_diff_version must be called with 3 arguments' if @_ != 3;
4860 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_diff_version must be a scalar' if ref($_[0]) or (!defined $_[0]);
4861 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_diff_version must be a scalar' if ref($_[1]) or (!defined $_[1]);
4862 0 0 0     0 croak 'The #3 argument ($version_id) to merge_request_diff_version must be a scalar' if ref($_[2]) or (!defined $_[2]);
4863 0         0 my $options = {};
4864 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/versions/:version_id', [@_], $options );
4865             }
4866              
4867             =item set_merge_request_time_estimate
4868              
4869             my $tracking = $api->set_merge_request_time_estimate(
4870             $project_id,
4871             $merge_request_iid,
4872             \%params,
4873             );
4874              
4875             Sends a C request to C and returns the decoded response content.
4876              
4877             =cut
4878              
4879             sub set_merge_request_time_estimate {
4880 0     0 1 0 my $self = shift;
4881 0 0 0     0 croak 'set_merge_request_time_estimate must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
4882 0 0 0     0 croak 'The #1 argument ($project_id) to set_merge_request_time_estimate must be a scalar' if ref($_[0]) or (!defined $_[0]);
4883 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to set_merge_request_time_estimate must be a scalar' if ref($_[1]) or (!defined $_[1]);
4884 0 0 0     0 croak 'The last argument (\%params) to set_merge_request_time_estimate must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
4885 0 0       0 my $params = (@_ == 3) ? pop() : undef;
4886 0         0 my $options = {};
4887 0 0       0 $options->{content} = $params if defined $params;
4888 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/time_estimate', [@_], $options );
4889             }
4890              
4891             =item reset_merge_request_time_estimate
4892              
4893             my $tracking = $api->reset_merge_request_time_estimate(
4894             $project_id,
4895             $merge_request_iid,
4896             );
4897              
4898             Sends a C request to C and returns the decoded response content.
4899              
4900             =cut
4901              
4902             sub reset_merge_request_time_estimate {
4903 0     0 1 0 my $self = shift;
4904 0 0       0 croak 'reset_merge_request_time_estimate must be called with 2 arguments' if @_ != 2;
4905 0 0 0     0 croak 'The #1 argument ($project_id) to reset_merge_request_time_estimate must be a scalar' if ref($_[0]) or (!defined $_[0]);
4906 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to reset_merge_request_time_estimate must be a scalar' if ref($_[1]) or (!defined $_[1]);
4907 0         0 my $options = {};
4908 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/reset_time_estimate', [@_], $options );
4909             }
4910              
4911             =item add_merge_request_spent_time
4912              
4913             my $tracking = $api->add_merge_request_spent_time(
4914             $project_id,
4915             $merge_request_iid,
4916             \%params,
4917             );
4918              
4919             Sends a C request to C and returns the decoded response content.
4920              
4921             =cut
4922              
4923             sub add_merge_request_spent_time {
4924 0     0 1 0 my $self = shift;
4925 0 0 0     0 croak 'add_merge_request_spent_time must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
4926 0 0 0     0 croak 'The #1 argument ($project_id) to add_merge_request_spent_time must be a scalar' if ref($_[0]) or (!defined $_[0]);
4927 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to add_merge_request_spent_time must be a scalar' if ref($_[1]) or (!defined $_[1]);
4928 0 0 0     0 croak 'The last argument (\%params) to add_merge_request_spent_time must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
4929 0 0       0 my $params = (@_ == 3) ? pop() : undef;
4930 0         0 my $options = {};
4931 0 0       0 $options->{content} = $params if defined $params;
4932 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/add_spent_time', [@_], $options );
4933             }
4934              
4935             =item reset_merge_request_spent_time
4936              
4937             my $tracking = $api->reset_merge_request_spent_time(
4938             $project_id,
4939             $merge_request_iid,
4940             );
4941              
4942             Sends a C request to C and returns the decoded response content.
4943              
4944             =cut
4945              
4946             sub reset_merge_request_spent_time {
4947 0     0 1 0 my $self = shift;
4948 0 0       0 croak 'reset_merge_request_spent_time must be called with 2 arguments' if @_ != 2;
4949 0 0 0     0 croak 'The #1 argument ($project_id) to reset_merge_request_spent_time must be a scalar' if ref($_[0]) or (!defined $_[0]);
4950 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to reset_merge_request_spent_time must be a scalar' if ref($_[1]) or (!defined $_[1]);
4951 0         0 my $options = {};
4952 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/reset_spent_time', [@_], $options );
4953             }
4954              
4955             =item merge_request_time_stats
4956              
4957             my $tracking = $api->merge_request_time_stats(
4958             $project_id,
4959             $merge_request_iid,
4960             );
4961              
4962             Sends a C request to C and returns the decoded response content.
4963              
4964             =cut
4965              
4966             sub merge_request_time_stats {
4967 0     0 1 0 my $self = shift;
4968 0 0       0 croak 'merge_request_time_stats must be called with 2 arguments' if @_ != 2;
4969 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_time_stats must be a scalar' if ref($_[0]) or (!defined $_[0]);
4970 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_time_stats must be a scalar' if ref($_[1]) or (!defined $_[1]);
4971 0         0 my $options = {};
4972 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/time_stats', [@_], $options );
4973             }
4974              
4975             =back
4976              
4977             =head2 Milestones
4978              
4979             See L.
4980              
4981             =over
4982              
4983             =item project_milestones
4984              
4985             my $milestones = $api->project_milestones(
4986             $project_id,
4987             \%params,
4988             );
4989              
4990             Sends a C request to C and returns the decoded response content.
4991              
4992             =cut
4993              
4994             sub project_milestones {
4995 0     0 1 0 my $self = shift;
4996 0 0 0     0 croak 'project_milestones must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
4997 0 0 0     0 croak 'The #1 argument ($project_id) to project_milestones must be a scalar' if ref($_[0]) or (!defined $_[0]);
4998 0 0 0     0 croak 'The last argument (\%params) to project_milestones must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
4999 0 0       0 my $params = (@_ == 2) ? pop() : undef;
5000 0         0 my $options = {};
5001 0 0       0 $options->{query} = $params if defined $params;
5002 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/milestones', [@_], $options );
5003             }
5004              
5005             =item project_milestone
5006              
5007             my $milestone = $api->project_milestone(
5008             $project_id,
5009             $milestone_id,
5010             );
5011              
5012             Sends a C request to C and returns the decoded response content.
5013              
5014             =cut
5015              
5016             sub project_milestone {
5017 0     0 1 0 my $self = shift;
5018 0 0       0 croak 'project_milestone must be called with 2 arguments' if @_ != 2;
5019 0 0 0     0 croak 'The #1 argument ($project_id) to project_milestone must be a scalar' if ref($_[0]) or (!defined $_[0]);
5020 0 0 0     0 croak 'The #2 argument ($milestone_id) to project_milestone must be a scalar' if ref($_[1]) or (!defined $_[1]);
5021 0         0 my $options = {};
5022 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/milestones/:milestone_id', [@_], $options );
5023             }
5024              
5025             =item create_project_milestone
5026              
5027             my $milestone = $api->create_project_milestone(
5028             $project_id,
5029             \%params,
5030             );
5031              
5032             Sends a C request to C and returns the decoded response content.
5033              
5034             =cut
5035              
5036             sub create_project_milestone {
5037 0     0 1 0 my $self = shift;
5038 0 0 0     0 croak 'create_project_milestone must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
5039 0 0 0     0 croak 'The #1 argument ($project_id) to create_project_milestone must be a scalar' if ref($_[0]) or (!defined $_[0]);
5040 0 0 0     0 croak 'The last argument (\%params) to create_project_milestone must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
5041 0 0       0 my $params = (@_ == 2) ? pop() : undef;
5042 0         0 my $options = {};
5043 0 0       0 $options->{content} = $params if defined $params;
5044 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/milestones', [@_], $options );
5045             }
5046              
5047             =item edit_project_milestone
5048              
5049             my $milestone = $api->edit_project_milestone(
5050             $project_id,
5051             $milestone_id,
5052             \%params,
5053             );
5054              
5055             Sends a C request to C and returns the decoded response content.
5056              
5057             =cut
5058              
5059             sub edit_project_milestone {
5060 0     0 1 0 my $self = shift;
5061 0 0 0     0 croak 'edit_project_milestone must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5062 0 0 0     0 croak 'The #1 argument ($project_id) to edit_project_milestone must be a scalar' if ref($_[0]) or (!defined $_[0]);
5063 0 0 0     0 croak 'The #2 argument ($milestone_id) to edit_project_milestone must be a scalar' if ref($_[1]) or (!defined $_[1]);
5064 0 0 0     0 croak 'The last argument (\%params) to edit_project_milestone must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5065 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5066 0         0 my $options = {};
5067 0 0       0 $options->{content} = $params if defined $params;
5068 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/milestones/:milestone_id', [@_], $options );
5069             }
5070              
5071             =item project_milestone_issues
5072              
5073             my $issues = $api->project_milestone_issues(
5074             $project_id,
5075             $milestone_id,
5076             \%params,
5077             );
5078              
5079             Sends a C request to C and returns the decoded response content.
5080              
5081             =cut
5082              
5083             sub project_milestone_issues {
5084 0     0 1 0 my $self = shift;
5085 0 0 0     0 croak 'project_milestone_issues must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5086 0 0 0     0 croak 'The #1 argument ($project_id) to project_milestone_issues must be a scalar' if ref($_[0]) or (!defined $_[0]);
5087 0 0 0     0 croak 'The #2 argument ($milestone_id) to project_milestone_issues must be a scalar' if ref($_[1]) or (!defined $_[1]);
5088 0 0 0     0 croak 'The last argument (\%params) to project_milestone_issues must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5089 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5090 0         0 my $options = {};
5091 0 0       0 $options->{query} = $params if defined $params;
5092 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/milestones/:milestone_id/issues', [@_], $options );
5093             }
5094              
5095             =item project_milestone_merge_requests
5096              
5097             my $merge_requests = $api->project_milestone_merge_requests(
5098             $project_id,
5099             $milestone_id,
5100             \%params,
5101             );
5102              
5103             Sends a C request to C and returns the decoded response content.
5104              
5105             =cut
5106              
5107             sub project_milestone_merge_requests {
5108 0     0 1 0 my $self = shift;
5109 0 0 0     0 croak 'project_milestone_merge_requests must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5110 0 0 0     0 croak 'The #1 argument ($project_id) to project_milestone_merge_requests must be a scalar' if ref($_[0]) or (!defined $_[0]);
5111 0 0 0     0 croak 'The #2 argument ($milestone_id) to project_milestone_merge_requests must be a scalar' if ref($_[1]) or (!defined $_[1]);
5112 0 0 0     0 croak 'The last argument (\%params) to project_milestone_merge_requests must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5113 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5114 0         0 my $options = {};
5115 0 0       0 $options->{query} = $params if defined $params;
5116 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/milestones/:milestone_id/merge_requests', [@_], $options );
5117             }
5118              
5119             =back
5120              
5121             =head2 Group milestones
5122              
5123             See L.
5124              
5125             =over
5126              
5127             =item group_milestones
5128              
5129             my $milestones = $api->group_milestones(
5130             $group_id,
5131             \%params,
5132             );
5133              
5134             Sends a C request to C and returns the decoded response content.
5135              
5136             =cut
5137              
5138             sub group_milestones {
5139 0     0 1 0 my $self = shift;
5140 0 0 0     0 croak 'group_milestones must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
5141 0 0 0     0 croak 'The #1 argument ($group_id) to group_milestones must be a scalar' if ref($_[0]) or (!defined $_[0]);
5142 0 0 0     0 croak 'The last argument (\%params) to group_milestones must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
5143 0 0       0 my $params = (@_ == 2) ? pop() : undef;
5144 0         0 my $options = {};
5145 0 0       0 $options->{query} = $params if defined $params;
5146 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/milestones', [@_], $options );
5147             }
5148              
5149             =item group_milestone
5150              
5151             my $milestone = $api->group_milestone(
5152             $group_id,
5153             $milestone_id,
5154             );
5155              
5156             Sends a C request to C and returns the decoded response content.
5157              
5158             =cut
5159              
5160             sub group_milestone {
5161 0     0 1 0 my $self = shift;
5162 0 0       0 croak 'group_milestone must be called with 2 arguments' if @_ != 2;
5163 0 0 0     0 croak 'The #1 argument ($group_id) to group_milestone must be a scalar' if ref($_[0]) or (!defined $_[0]);
5164 0 0 0     0 croak 'The #2 argument ($milestone_id) to group_milestone must be a scalar' if ref($_[1]) or (!defined $_[1]);
5165 0         0 my $options = {};
5166 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/milestones/:milestone_id', [@_], $options );
5167             }
5168              
5169             =item create_group_milestone
5170              
5171             my $milestone = $api->create_group_milestone(
5172             $group_id,
5173             \%params,
5174             );
5175              
5176             Sends a C request to C and returns the decoded response content.
5177              
5178             =cut
5179              
5180             sub create_group_milestone {
5181 0     0 1 0 my $self = shift;
5182 0 0 0     0 croak 'create_group_milestone must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
5183 0 0 0     0 croak 'The #1 argument ($group_id) to create_group_milestone must be a scalar' if ref($_[0]) or (!defined $_[0]);
5184 0 0 0     0 croak 'The last argument (\%params) to create_group_milestone must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
5185 0 0       0 my $params = (@_ == 2) ? pop() : undef;
5186 0         0 my $options = {};
5187 0 0       0 $options->{content} = $params if defined $params;
5188 0         0 return $self->_call_rest_client( 'POST', 'groups/:group_id/milestones', [@_], $options );
5189             }
5190              
5191             =item edit_group_milestone
5192              
5193             my $milestone = $api->edit_group_milestone(
5194             $group_id,
5195             $milestone_id,
5196             \%params,
5197             );
5198              
5199             Sends a C request to C and returns the decoded response content.
5200              
5201             =cut
5202              
5203             sub edit_group_milestone {
5204 0     0 1 0 my $self = shift;
5205 0 0 0     0 croak 'edit_group_milestone must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5206 0 0 0     0 croak 'The #1 argument ($group_id) to edit_group_milestone must be a scalar' if ref($_[0]) or (!defined $_[0]);
5207 0 0 0     0 croak 'The #2 argument ($milestone_id) to edit_group_milestone must be a scalar' if ref($_[1]) or (!defined $_[1]);
5208 0 0 0     0 croak 'The last argument (\%params) to edit_group_milestone must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5209 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5210 0         0 my $options = {};
5211 0 0       0 $options->{content} = $params if defined $params;
5212 0         0 return $self->_call_rest_client( 'PUT', 'groups/:group_id/milestones/:milestone_id', [@_], $options );
5213             }
5214              
5215             =item group_milestone_issues
5216              
5217             my $issues = $api->group_milestone_issues(
5218             $group_id,
5219             $milestone_id,
5220             \%params,
5221             );
5222              
5223             Sends a C request to C and returns the decoded response content.
5224              
5225             =cut
5226              
5227             sub group_milestone_issues {
5228 0     0 1 0 my $self = shift;
5229 0 0 0     0 croak 'group_milestone_issues must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5230 0 0 0     0 croak 'The #1 argument ($group_id) to group_milestone_issues must be a scalar' if ref($_[0]) or (!defined $_[0]);
5231 0 0 0     0 croak 'The #2 argument ($milestone_id) to group_milestone_issues must be a scalar' if ref($_[1]) or (!defined $_[1]);
5232 0 0 0     0 croak 'The last argument (\%params) to group_milestone_issues must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5233 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5234 0         0 my $options = {};
5235 0 0       0 $options->{query} = $params if defined $params;
5236 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/milestones/:milestone_id/issues', [@_], $options );
5237             }
5238              
5239             =item group_milestone_merge_requests
5240              
5241             my $merge_requests = $api->group_milestone_merge_requests(
5242             $group_id,
5243             $milestone_id,
5244             \%params,
5245             );
5246              
5247             Sends a C request to C and returns the decoded response content.
5248              
5249             =cut
5250              
5251             sub group_milestone_merge_requests {
5252 0     0 1 0 my $self = shift;
5253 0 0 0     0 croak 'group_milestone_merge_requests must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5254 0 0 0     0 croak 'The #1 argument ($group_id) to group_milestone_merge_requests must be a scalar' if ref($_[0]) or (!defined $_[0]);
5255 0 0 0     0 croak 'The #2 argument ($milestone_id) to group_milestone_merge_requests must be a scalar' if ref($_[1]) or (!defined $_[1]);
5256 0 0 0     0 croak 'The last argument (\%params) to group_milestone_merge_requests must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5257 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5258 0         0 my $options = {};
5259 0 0       0 $options->{query} = $params if defined $params;
5260 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/milestones/:milestone_id/merge_requests', [@_], $options );
5261             }
5262              
5263             =back
5264              
5265             =head2 Namespaces
5266              
5267             See L.
5268              
5269             =over
5270              
5271             =item namespaces
5272              
5273             my $namespaces = $api->namespaces(
5274             \%params,
5275             );
5276              
5277             Sends a C request to C and returns the decoded response content.
5278              
5279             =cut
5280              
5281             sub namespaces {
5282 0     0 1 0 my $self = shift;
5283 0 0 0     0 croak 'namespaces must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
5284 0 0 0     0 croak 'The last argument (\%params) to namespaces must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
5285 0 0       0 my $params = (@_ == 1) ? pop() : undef;
5286 0         0 my $options = {};
5287 0 0       0 $options->{query} = $params if defined $params;
5288 0         0 return $self->_call_rest_client( 'GET', 'namespaces', [@_], $options );
5289             }
5290              
5291             =item namespace
5292              
5293             my $namespace = $api->namespace(
5294             $namespace_id,
5295             );
5296              
5297             Sends a C request to C and returns the decoded response content.
5298              
5299             =cut
5300              
5301             sub namespace {
5302 0     0 1 0 my $self = shift;
5303 0 0       0 croak 'namespace must be called with 1 arguments' if @_ != 1;
5304 0 0 0     0 croak 'The #1 argument ($namespace_id) to namespace must be a scalar' if ref($_[0]) or (!defined $_[0]);
5305 0         0 my $options = {};
5306 0         0 return $self->_call_rest_client( 'GET', 'namespaces/:namespace_id', [@_], $options );
5307             }
5308              
5309             =back
5310              
5311             =head2 Notes
5312              
5313             See L.
5314              
5315             =over
5316              
5317             =item issue_notes
5318              
5319             my $notes = $api->issue_notes(
5320             $project_id,
5321             $issue_iid,
5322             \%params,
5323             );
5324              
5325             Sends a C request to C and returns the decoded response content.
5326              
5327             =cut
5328              
5329             sub issue_notes {
5330 0     0 1 0 my $self = shift;
5331 0 0 0     0 croak 'issue_notes must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5332 0 0 0     0 croak 'The #1 argument ($project_id) to issue_notes must be a scalar' if ref($_[0]) or (!defined $_[0]);
5333 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_notes must be a scalar' if ref($_[1]) or (!defined $_[1]);
5334 0 0 0     0 croak 'The last argument (\%params) to issue_notes must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5335 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5336 0         0 my $options = {};
5337 0 0       0 $options->{query} = $params if defined $params;
5338 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/notes', [@_], $options );
5339             }
5340              
5341             =item issue_note
5342              
5343             my $note = $api->issue_note(
5344             $project_id,
5345             $issue_iid,
5346             $note_id,
5347             );
5348              
5349             Sends a C request to C and returns the decoded response content.
5350              
5351             =cut
5352              
5353             sub issue_note {
5354 0     0 1 0 my $self = shift;
5355 0 0       0 croak 'issue_note must be called with 3 arguments' if @_ != 3;
5356 0 0 0     0 croak 'The #1 argument ($project_id) to issue_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5357 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5358 0 0 0     0 croak 'The #3 argument ($note_id) to issue_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5359 0         0 my $options = {};
5360 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/notes/:note_id', [@_], $options );
5361             }
5362              
5363             =item create_issue_note
5364              
5365             my $note = $api->create_issue_note(
5366             $project_id,
5367             $issue_iid,
5368             \%params,
5369             );
5370              
5371             Sends a C request to C and returns the decoded response content.
5372              
5373             =cut
5374              
5375             sub create_issue_note {
5376 0     0 1 0 my $self = shift;
5377 0 0 0     0 croak 'create_issue_note must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5378 0 0 0     0 croak 'The #1 argument ($project_id) to create_issue_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5379 0 0 0     0 croak 'The #2 argument ($issue_iid) to create_issue_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5380 0 0 0     0 croak 'The last argument (\%params) to create_issue_note must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5381 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5382 0         0 my $options = {};
5383 0 0       0 $options->{content} = $params if defined $params;
5384 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/notes', [@_], $options );
5385             }
5386              
5387             =item edit_issue_note
5388              
5389             $api->edit_issue_note(
5390             $project_id,
5391             $issue_iid,
5392             $note_id,
5393             \%params,
5394             );
5395              
5396             Sends a C request to C.
5397              
5398             =cut
5399              
5400             sub edit_issue_note {
5401 0     0 1 0 my $self = shift;
5402 0 0 0     0 croak 'edit_issue_note must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
5403 0 0 0     0 croak 'The #1 argument ($project_id) to edit_issue_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5404 0 0 0     0 croak 'The #2 argument ($issue_iid) to edit_issue_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5405 0 0 0     0 croak 'The #3 argument ($note_id) to edit_issue_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5406 0 0 0     0 croak 'The last argument (\%params) to edit_issue_note must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
5407 0 0       0 my $params = (@_ == 4) ? pop() : undef;
5408 0         0 my $options = {};
5409 0         0 $options->{decode} = 0;
5410 0 0       0 $options->{content} = $params if defined $params;
5411 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/issues/:issue_iid/notes/:note_id', [@_], $options );
5412 0         0 return;
5413             }
5414              
5415             =item delete_issue_note
5416              
5417             $api->delete_issue_note(
5418             $project_id,
5419             $issue_iid,
5420             $note_id,
5421             );
5422              
5423             Sends a C request to C.
5424              
5425             =cut
5426              
5427             sub delete_issue_note {
5428 0     0 1 0 my $self = shift;
5429 0 0       0 croak 'delete_issue_note must be called with 3 arguments' if @_ != 3;
5430 0 0 0     0 croak 'The #1 argument ($project_id) to delete_issue_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5431 0 0 0     0 croak 'The #2 argument ($issue_iid) to delete_issue_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5432 0 0 0     0 croak 'The #3 argument ($note_id) to delete_issue_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5433 0         0 my $options = {};
5434 0         0 $options->{decode} = 0;
5435 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/issues/:issue_iid/notes/:note_id', [@_], $options );
5436 0         0 return;
5437             }
5438              
5439             =item snippet_notes
5440              
5441             my $notes = $api->snippet_notes(
5442             $project_id,
5443             $snippet_id,
5444             \%params,
5445             );
5446              
5447             Sends a C request to C and returns the decoded response content.
5448              
5449             =cut
5450              
5451             sub snippet_notes {
5452 0     0 1 0 my $self = shift;
5453 0 0 0     0 croak 'snippet_notes must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5454 0 0 0     0 croak 'The #1 argument ($project_id) to snippet_notes must be a scalar' if ref($_[0]) or (!defined $_[0]);
5455 0 0 0     0 croak 'The #2 argument ($snippet_id) to snippet_notes must be a scalar' if ref($_[1]) or (!defined $_[1]);
5456 0 0 0     0 croak 'The last argument (\%params) to snippet_notes must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5457 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5458 0         0 my $options = {};
5459 0 0       0 $options->{query} = $params if defined $params;
5460 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/snippets/:snippet_id/notes', [@_], $options );
5461             }
5462              
5463             =item snippet_note
5464              
5465             my $note = $api->snippet_note(
5466             $project_id,
5467             $snippet_id,
5468             $note_id,
5469             );
5470              
5471             Sends a C request to C and returns the decoded response content.
5472              
5473             =cut
5474              
5475             sub snippet_note {
5476 0     0 1 0 my $self = shift;
5477 0 0       0 croak 'snippet_note must be called with 3 arguments' if @_ != 3;
5478 0 0 0     0 croak 'The #1 argument ($project_id) to snippet_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5479 0 0 0     0 croak 'The #2 argument ($snippet_id) to snippet_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5480 0 0 0     0 croak 'The #3 argument ($note_id) to snippet_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5481 0         0 my $options = {};
5482 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/snippets/:snippet_id/notes/:note_id', [@_], $options );
5483             }
5484              
5485             =item create_snippet_note
5486              
5487             my $note = $api->create_snippet_note(
5488             $project_id,
5489             $snippet_id,
5490             \%params,
5491             );
5492              
5493             Sends a C request to C and returns the decoded response content.
5494              
5495             =cut
5496              
5497             sub create_snippet_note {
5498 0     0 1 0 my $self = shift;
5499 0 0 0     0 croak 'create_snippet_note must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5500 0 0 0     0 croak 'The #1 argument ($project_id) to create_snippet_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5501 0 0 0     0 croak 'The #2 argument ($snippet_id) to create_snippet_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5502 0 0 0     0 croak 'The last argument (\%params) to create_snippet_note must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5503 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5504 0         0 my $options = {};
5505 0 0       0 $options->{content} = $params if defined $params;
5506 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/snippets/:snippet_id/notes', [@_], $options );
5507             }
5508              
5509             =item edit_snippet_note
5510              
5511             $api->edit_snippet_note(
5512             $project_id,
5513             $snippet_id,
5514             $note_id,
5515             \%params,
5516             );
5517              
5518             Sends a C request to C.
5519              
5520             =cut
5521              
5522             sub edit_snippet_note {
5523 0     0 1 0 my $self = shift;
5524 0 0 0     0 croak 'edit_snippet_note must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
5525 0 0 0     0 croak 'The #1 argument ($project_id) to edit_snippet_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5526 0 0 0     0 croak 'The #2 argument ($snippet_id) to edit_snippet_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5527 0 0 0     0 croak 'The #3 argument ($note_id) to edit_snippet_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5528 0 0 0     0 croak 'The last argument (\%params) to edit_snippet_note must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
5529 0 0       0 my $params = (@_ == 4) ? pop() : undef;
5530 0         0 my $options = {};
5531 0         0 $options->{decode} = 0;
5532 0 0       0 $options->{content} = $params if defined $params;
5533 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/snippets/:snippet_id/notes/:note_id', [@_], $options );
5534 0         0 return;
5535             }
5536              
5537             =item delete_snippet_note
5538              
5539             $api->delete_snippet_note(
5540             $project_id,
5541             $snippet_id,
5542             $note_id,
5543             );
5544              
5545             Sends a C request to C.
5546              
5547             =cut
5548              
5549             sub delete_snippet_note {
5550 0     0 1 0 my $self = shift;
5551 0 0       0 croak 'delete_snippet_note must be called with 3 arguments' if @_ != 3;
5552 0 0 0     0 croak 'The #1 argument ($project_id) to delete_snippet_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5553 0 0 0     0 croak 'The #2 argument ($snippet_id) to delete_snippet_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5554 0 0 0     0 croak 'The #3 argument ($note_id) to delete_snippet_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5555 0         0 my $options = {};
5556 0         0 $options->{decode} = 0;
5557 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/snippets/:snippet_id/notes/:note_id', [@_], $options );
5558 0         0 return;
5559             }
5560              
5561             =item merge_request_notes
5562              
5563             my $notes = $api->merge_request_notes(
5564             $project_id,
5565             $merge_request_iid,
5566             \%params,
5567             );
5568              
5569             Sends a C request to C and returns the decoded response content.
5570              
5571             =cut
5572              
5573             sub merge_request_notes {
5574 0     0 1 0 my $self = shift;
5575 0 0 0     0 croak 'merge_request_notes must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5576 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_notes must be a scalar' if ref($_[0]) or (!defined $_[0]);
5577 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_notes must be a scalar' if ref($_[1]) or (!defined $_[1]);
5578 0 0 0     0 croak 'The last argument (\%params) to merge_request_notes must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5579 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5580 0         0 my $options = {};
5581 0 0       0 $options->{query} = $params if defined $params;
5582 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/notes', [@_], $options );
5583             }
5584              
5585             =item merge_request_note
5586              
5587             my $note = $api->merge_request_note(
5588             $project_id,
5589             $merge_request_iid,
5590             $note_id,
5591             );
5592              
5593             Sends a C request to C and returns the decoded response content.
5594              
5595             =cut
5596              
5597             sub merge_request_note {
5598 0     0 1 0 my $self = shift;
5599 0 0       0 croak 'merge_request_note must be called with 3 arguments' if @_ != 3;
5600 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5601 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5602 0 0 0     0 croak 'The #3 argument ($note_id) to merge_request_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5603 0         0 my $options = {};
5604 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id', [@_], $options );
5605             }
5606              
5607             =item create_merge_request_note
5608              
5609             my $note = $api->create_merge_request_note(
5610             $project_id,
5611             $merge_request_iid,
5612             \%params,
5613             );
5614              
5615             Sends a C request to C and returns the decoded response content.
5616              
5617             =cut
5618              
5619             sub create_merge_request_note {
5620 0     0 1 0 my $self = shift;
5621 0 0 0     0 croak 'create_merge_request_note must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5622 0 0 0     0 croak 'The #1 argument ($project_id) to create_merge_request_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5623 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to create_merge_request_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5624 0 0 0     0 croak 'The last argument (\%params) to create_merge_request_note must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5625 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5626 0         0 my $options = {};
5627 0 0       0 $options->{content} = $params if defined $params;
5628 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/notes', [@_], $options );
5629             }
5630              
5631             =item edit_merge_request_note
5632              
5633             $api->edit_merge_request_note(
5634             $project_id,
5635             $merge_request_iid,
5636             $note_id,
5637             \%params,
5638             );
5639              
5640             Sends a C request to C.
5641              
5642             =cut
5643              
5644             sub edit_merge_request_note {
5645 0     0 1 0 my $self = shift;
5646 0 0 0     0 croak 'edit_merge_request_note must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
5647 0 0 0     0 croak 'The #1 argument ($project_id) to edit_merge_request_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5648 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to edit_merge_request_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5649 0 0 0     0 croak 'The #3 argument ($note_id) to edit_merge_request_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5650 0 0 0     0 croak 'The last argument (\%params) to edit_merge_request_note must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
5651 0 0       0 my $params = (@_ == 4) ? pop() : undef;
5652 0         0 my $options = {};
5653 0         0 $options->{decode} = 0;
5654 0 0       0 $options->{content} = $params if defined $params;
5655 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id', [@_], $options );
5656 0         0 return;
5657             }
5658              
5659             =item delete_merge_request_note
5660              
5661             $api->delete_merge_request_note(
5662             $project_id,
5663             $merge_request_iid,
5664             $note_id,
5665             );
5666              
5667             Sends a C request to C.
5668              
5669             =cut
5670              
5671             sub delete_merge_request_note {
5672 0     0 1 0 my $self = shift;
5673 0 0       0 croak 'delete_merge_request_note must be called with 3 arguments' if @_ != 3;
5674 0 0 0     0 croak 'The #1 argument ($project_id) to delete_merge_request_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5675 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to delete_merge_request_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5676 0 0 0     0 croak 'The #3 argument ($note_id) to delete_merge_request_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5677 0         0 my $options = {};
5678 0         0 $options->{decode} = 0;
5679 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/merge_requests/:merge_request_iid/notes/:note_id', [@_], $options );
5680 0         0 return;
5681             }
5682              
5683             =back
5684              
5685             =head2 Discussions
5686              
5687             See L.
5688              
5689             =over
5690              
5691             =item issue_discussions
5692              
5693             my $discussions = $api->issue_discussions(
5694             $project_id,
5695             $issue_iid,
5696             \%params,
5697             );
5698              
5699             Sends a C request to C and returns the decoded response content.
5700              
5701             =cut
5702              
5703             sub issue_discussions {
5704 0     0 1 0 my $self = shift;
5705 0 0 0     0 croak 'issue_discussions must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5706 0 0 0     0 croak 'The #1 argument ($project_id) to issue_discussions must be a scalar' if ref($_[0]) or (!defined $_[0]);
5707 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_discussions must be a scalar' if ref($_[1]) or (!defined $_[1]);
5708 0 0 0     0 croak 'The last argument (\%params) to issue_discussions must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5709 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5710 0         0 my $options = {};
5711 0 0       0 $options->{query} = $params if defined $params;
5712 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/discussions', [@_], $options );
5713             }
5714              
5715             =item issue_discussion
5716              
5717             my $discussion = $api->issue_discussion(
5718             $project_id,
5719             $issue_iid,
5720             $discussion_id,
5721             );
5722              
5723             Sends a C request to C and returns the decoded response content.
5724              
5725             =cut
5726              
5727             sub issue_discussion {
5728 0     0 1 0 my $self = shift;
5729 0 0       0 croak 'issue_discussion must be called with 3 arguments' if @_ != 3;
5730 0 0 0     0 croak 'The #1 argument ($project_id) to issue_discussion must be a scalar' if ref($_[0]) or (!defined $_[0]);
5731 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_discussion must be a scalar' if ref($_[1]) or (!defined $_[1]);
5732 0 0 0     0 croak 'The #3 argument ($discussion_id) to issue_discussion must be a scalar' if ref($_[2]) or (!defined $_[2]);
5733 0         0 my $options = {};
5734 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/discussions/:discussion_id', [@_], $options );
5735             }
5736              
5737             =item create_issue_discussion
5738              
5739             my $discussion = $api->create_issue_discussion(
5740             $project_id,
5741             $issue_iid,
5742             \%params,
5743             );
5744              
5745             Sends a C request to C and returns the decoded response content.
5746              
5747             =cut
5748              
5749             sub create_issue_discussion {
5750 0     0 1 0 my $self = shift;
5751 0 0 0     0 croak 'create_issue_discussion must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5752 0 0 0     0 croak 'The #1 argument ($project_id) to create_issue_discussion must be a scalar' if ref($_[0]) or (!defined $_[0]);
5753 0 0 0     0 croak 'The #2 argument ($issue_iid) to create_issue_discussion must be a scalar' if ref($_[1]) or (!defined $_[1]);
5754 0 0 0     0 croak 'The last argument (\%params) to create_issue_discussion must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5755 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5756 0         0 my $options = {};
5757 0 0       0 $options->{content} = $params if defined $params;
5758 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/discussions', [@_], $options );
5759             }
5760              
5761             =item create_issue_discussion_note
5762              
5763             $api->create_issue_discussion_note(
5764             $project_id,
5765             $issue_iid,
5766             $discussion_id,
5767             \%params,
5768             );
5769              
5770             Sends a C request to C.
5771              
5772             =cut
5773              
5774             sub create_issue_discussion_note {
5775 0     0 1 0 my $self = shift;
5776 0 0 0     0 croak 'create_issue_discussion_note must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
5777 0 0 0     0 croak 'The #1 argument ($project_id) to create_issue_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5778 0 0 0     0 croak 'The #2 argument ($issue_iid) to create_issue_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5779 0 0 0     0 croak 'The #3 argument ($discussion_id) to create_issue_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5780 0 0 0     0 croak 'The last argument (\%params) to create_issue_discussion_note must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
5781 0 0       0 my $params = (@_ == 4) ? pop() : undef;
5782 0         0 my $options = {};
5783 0         0 $options->{decode} = 0;
5784 0 0       0 $options->{content} = $params if defined $params;
5785 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/issues/:issue_iid/discussions/:discussion_id/notes', [@_], $options );
5786 0         0 return;
5787             }
5788              
5789             =item edit_issue_discussion_note
5790              
5791             $api->edit_issue_discussion_note(
5792             $project_id,
5793             $issue_iid,
5794             $discussion_id,
5795             $note_id,
5796             \%params,
5797             );
5798              
5799             Sends a C request to C.
5800              
5801             =cut
5802              
5803             sub edit_issue_discussion_note {
5804 0     0 1 0 my $self = shift;
5805 0 0 0     0 croak 'edit_issue_discussion_note must be called with 4 to 5 arguments' if @_ < 4 or @_ > 5;
5806 0 0 0     0 croak 'The #1 argument ($project_id) to edit_issue_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5807 0 0 0     0 croak 'The #2 argument ($issue_iid) to edit_issue_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5808 0 0 0     0 croak 'The #3 argument ($discussion_id) to edit_issue_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5809 0 0 0     0 croak 'The #4 argument ($note_id) to edit_issue_discussion_note must be a scalar' if ref($_[3]) or (!defined $_[3]);
5810 0 0 0     0 croak 'The last argument (\%params) to edit_issue_discussion_note must be a hash ref' if defined($_[4]) and ref($_[4]) ne 'HASH';
5811 0 0       0 my $params = (@_ == 5) ? pop() : undef;
5812 0         0 my $options = {};
5813 0         0 $options->{decode} = 0;
5814 0 0       0 $options->{content} = $params if defined $params;
5815 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/issues/:issue_iid/discussions/:discussion_id/notes/:note_id', [@_], $options );
5816 0         0 return;
5817             }
5818              
5819             =item delete_issue_discussion_note
5820              
5821             $api->delete_issue_discussion_note(
5822             $project_id,
5823             $issue_iid,
5824             $discussion_id,
5825             $note_id,
5826             );
5827              
5828             Sends a C request to C.
5829              
5830             =cut
5831              
5832             sub delete_issue_discussion_note {
5833 0     0 1 0 my $self = shift;
5834 0 0       0 croak 'delete_issue_discussion_note must be called with 4 arguments' if @_ != 4;
5835 0 0 0     0 croak 'The #1 argument ($project_id) to delete_issue_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5836 0 0 0     0 croak 'The #2 argument ($issue_iid) to delete_issue_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5837 0 0 0     0 croak 'The #3 argument ($discussion_id) to delete_issue_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5838 0 0 0     0 croak 'The #4 argument ($note_id) to delete_issue_discussion_note must be a scalar' if ref($_[3]) or (!defined $_[3]);
5839 0         0 my $options = {};
5840 0         0 $options->{decode} = 0;
5841 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/issues/:issue_iid/discussions/:discussion_id/notes/:note_id', [@_], $options );
5842 0         0 return;
5843             }
5844              
5845             =item project_snippet_discussions
5846              
5847             my $discussions = $api->project_snippet_discussions(
5848             $project_id,
5849             $snippet_id,
5850             \%params,
5851             );
5852              
5853             Sends a C request to C and returns the decoded response content.
5854              
5855             =cut
5856              
5857             sub project_snippet_discussions {
5858 0     0 1 0 my $self = shift;
5859 0 0 0     0 croak 'project_snippet_discussions must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5860 0 0 0     0 croak 'The #1 argument ($project_id) to project_snippet_discussions must be a scalar' if ref($_[0]) or (!defined $_[0]);
5861 0 0 0     0 croak 'The #2 argument ($snippet_id) to project_snippet_discussions must be a scalar' if ref($_[1]) or (!defined $_[1]);
5862 0 0 0     0 croak 'The last argument (\%params) to project_snippet_discussions must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5863 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5864 0         0 my $options = {};
5865 0 0       0 $options->{query} = $params if defined $params;
5866 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/snippets/:snippet_id/discussions', [@_], $options );
5867             }
5868              
5869             =item project_snippet_discussion
5870              
5871             my $discussion = $api->project_snippet_discussion(
5872             $project_id,
5873             $snippet_id,
5874             $discussion_id,
5875             );
5876              
5877             Sends a C request to C and returns the decoded response content.
5878              
5879             =cut
5880              
5881             sub project_snippet_discussion {
5882 0     0 1 0 my $self = shift;
5883 0 0       0 croak 'project_snippet_discussion must be called with 3 arguments' if @_ != 3;
5884 0 0 0     0 croak 'The #1 argument ($project_id) to project_snippet_discussion must be a scalar' if ref($_[0]) or (!defined $_[0]);
5885 0 0 0     0 croak 'The #2 argument ($snippet_id) to project_snippet_discussion must be a scalar' if ref($_[1]) or (!defined $_[1]);
5886 0 0 0     0 croak 'The #3 argument ($discussion_id) to project_snippet_discussion must be a scalar' if ref($_[2]) or (!defined $_[2]);
5887 0         0 my $options = {};
5888 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/snippets/:snippet_id/discussions/:discussion_id', [@_], $options );
5889             }
5890              
5891             =item create_project_snippet_discussion
5892              
5893             my $discussion = $api->create_project_snippet_discussion(
5894             $project_id,
5895             $snippet_id,
5896             \%params,
5897             );
5898              
5899             Sends a C request to C and returns the decoded response content.
5900              
5901             =cut
5902              
5903             sub create_project_snippet_discussion {
5904 0     0 1 0 my $self = shift;
5905 0 0 0     0 croak 'create_project_snippet_discussion must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
5906 0 0 0     0 croak 'The #1 argument ($project_id) to create_project_snippet_discussion must be a scalar' if ref($_[0]) or (!defined $_[0]);
5907 0 0 0     0 croak 'The #2 argument ($snippet_id) to create_project_snippet_discussion must be a scalar' if ref($_[1]) or (!defined $_[1]);
5908 0 0 0     0 croak 'The last argument (\%params) to create_project_snippet_discussion must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
5909 0 0       0 my $params = (@_ == 3) ? pop() : undef;
5910 0         0 my $options = {};
5911 0 0       0 $options->{content} = $params if defined $params;
5912 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/snippets/:snippet_id/discussions', [@_], $options );
5913             }
5914              
5915             =item create_project_snippet_discussion_note
5916              
5917             $api->create_project_snippet_discussion_note(
5918             $project_id,
5919             $snippet_id,
5920             $discussion_id,
5921             \%params,
5922             );
5923              
5924             Sends a C request to C.
5925              
5926             =cut
5927              
5928             sub create_project_snippet_discussion_note {
5929 0     0 1 0 my $self = shift;
5930 0 0 0     0 croak 'create_project_snippet_discussion_note must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
5931 0 0 0     0 croak 'The #1 argument ($project_id) to create_project_snippet_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5932 0 0 0     0 croak 'The #2 argument ($snippet_id) to create_project_snippet_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5933 0 0 0     0 croak 'The #3 argument ($discussion_id) to create_project_snippet_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5934 0 0 0     0 croak 'The last argument (\%params) to create_project_snippet_discussion_note must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
5935 0 0       0 my $params = (@_ == 4) ? pop() : undef;
5936 0         0 my $options = {};
5937 0         0 $options->{decode} = 0;
5938 0 0       0 $options->{content} = $params if defined $params;
5939 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/snippets/:snippet_id/discussions/:discussion_id/notes', [@_], $options );
5940 0         0 return;
5941             }
5942              
5943             =item edit_project_snippet_discussion_note
5944              
5945             $api->edit_project_snippet_discussion_note(
5946             $project_id,
5947             $snippet_id,
5948             $discussion_id,
5949             $note_id,
5950             \%params,
5951             );
5952              
5953             Sends a C request to C.
5954              
5955             =cut
5956              
5957             sub edit_project_snippet_discussion_note {
5958 0     0 1 0 my $self = shift;
5959 0 0 0     0 croak 'edit_project_snippet_discussion_note must be called with 4 to 5 arguments' if @_ < 4 or @_ > 5;
5960 0 0 0     0 croak 'The #1 argument ($project_id) to edit_project_snippet_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5961 0 0 0     0 croak 'The #2 argument ($snippet_id) to edit_project_snippet_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5962 0 0 0     0 croak 'The #3 argument ($discussion_id) to edit_project_snippet_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5963 0 0 0     0 croak 'The #4 argument ($note_id) to edit_project_snippet_discussion_note must be a scalar' if ref($_[3]) or (!defined $_[3]);
5964 0 0 0     0 croak 'The last argument (\%params) to edit_project_snippet_discussion_note must be a hash ref' if defined($_[4]) and ref($_[4]) ne 'HASH';
5965 0 0       0 my $params = (@_ == 5) ? pop() : undef;
5966 0         0 my $options = {};
5967 0         0 $options->{decode} = 0;
5968 0 0       0 $options->{content} = $params if defined $params;
5969 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/snippets/:snippet_id/discussions/:discussion_id/notes/:note_id', [@_], $options );
5970 0         0 return;
5971             }
5972              
5973             =item delete_project_snippet_discussion_note
5974              
5975             $api->delete_project_snippet_discussion_note(
5976             $project_id,
5977             $snippet_id,
5978             $discussion_id,
5979             $note_id,
5980             );
5981              
5982             Sends a C request to C.
5983              
5984             =cut
5985              
5986             sub delete_project_snippet_discussion_note {
5987 0     0 1 0 my $self = shift;
5988 0 0       0 croak 'delete_project_snippet_discussion_note must be called with 4 arguments' if @_ != 4;
5989 0 0 0     0 croak 'The #1 argument ($project_id) to delete_project_snippet_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
5990 0 0 0     0 croak 'The #2 argument ($snippet_id) to delete_project_snippet_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
5991 0 0 0     0 croak 'The #3 argument ($discussion_id) to delete_project_snippet_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
5992 0 0 0     0 croak 'The #4 argument ($note_id) to delete_project_snippet_discussion_note must be a scalar' if ref($_[3]) or (!defined $_[3]);
5993 0         0 my $options = {};
5994 0         0 $options->{decode} = 0;
5995 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/snippets/:snippet_id/discussions/:discussion_id/notes/:note_id', [@_], $options );
5996 0         0 return;
5997             }
5998              
5999             =item merge_request_discussions
6000              
6001             my $discussions = $api->merge_request_discussions(
6002             $project_id,
6003             $merge_request_iid,
6004             \%params,
6005             );
6006              
6007             Sends a C request to C and returns the decoded response content.
6008              
6009             =cut
6010              
6011             sub merge_request_discussions {
6012 0     0 1 0 my $self = shift;
6013 0 0 0     0 croak 'merge_request_discussions must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
6014 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_discussions must be a scalar' if ref($_[0]) or (!defined $_[0]);
6015 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_discussions must be a scalar' if ref($_[1]) or (!defined $_[1]);
6016 0 0 0     0 croak 'The last argument (\%params) to merge_request_discussions must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
6017 0 0       0 my $params = (@_ == 3) ? pop() : undef;
6018 0         0 my $options = {};
6019 0 0       0 $options->{query} = $params if defined $params;
6020 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/discussions', [@_], $options );
6021             }
6022              
6023             =item merge_request_discussion
6024              
6025             my $discussion = $api->merge_request_discussion(
6026             $project_id,
6027             $merge_request_iid,
6028             $discussion_id,
6029             );
6030              
6031             Sends a C request to C and returns the decoded response content.
6032              
6033             =cut
6034              
6035             sub merge_request_discussion {
6036 0     0 1 0 my $self = shift;
6037 0 0       0 croak 'merge_request_discussion must be called with 3 arguments' if @_ != 3;
6038 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_discussion must be a scalar' if ref($_[0]) or (!defined $_[0]);
6039 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_discussion must be a scalar' if ref($_[1]) or (!defined $_[1]);
6040 0 0 0     0 croak 'The #3 argument ($discussion_id) to merge_request_discussion must be a scalar' if ref($_[2]) or (!defined $_[2]);
6041 0         0 my $options = {};
6042 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id', [@_], $options );
6043             }
6044              
6045             =item create_merge_request_discussion
6046              
6047             my $discussion = $api->create_merge_request_discussion(
6048             $project_id,
6049             $merge_request_iid,
6050             \%params,
6051             );
6052              
6053             Sends a C request to C and returns the decoded response content.
6054              
6055             =cut
6056              
6057             sub create_merge_request_discussion {
6058 0     0 1 0 my $self = shift;
6059 0 0 0     0 croak 'create_merge_request_discussion must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
6060 0 0 0     0 croak 'The #1 argument ($project_id) to create_merge_request_discussion must be a scalar' if ref($_[0]) or (!defined $_[0]);
6061 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to create_merge_request_discussion must be a scalar' if ref($_[1]) or (!defined $_[1]);
6062 0 0 0     0 croak 'The last argument (\%params) to create_merge_request_discussion must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
6063 0 0       0 my $params = (@_ == 3) ? pop() : undef;
6064 0         0 my $options = {};
6065 0 0       0 $options->{content} = $params if defined $params;
6066 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/discussions', [@_], $options );
6067             }
6068              
6069             =item resolve_merge_request_discussion
6070              
6071             $api->resolve_merge_request_discussion(
6072             $project_id,
6073             $merge_request_iid,
6074             $discussion_id,
6075             \%params,
6076             );
6077              
6078             Sends a C request to C.
6079              
6080             =cut
6081              
6082             sub resolve_merge_request_discussion {
6083 0     0 1 0 my $self = shift;
6084 0 0 0     0 croak 'resolve_merge_request_discussion must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
6085 0 0 0     0 croak 'The #1 argument ($project_id) to resolve_merge_request_discussion must be a scalar' if ref($_[0]) or (!defined $_[0]);
6086 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to resolve_merge_request_discussion must be a scalar' if ref($_[1]) or (!defined $_[1]);
6087 0 0 0     0 croak 'The #3 argument ($discussion_id) to resolve_merge_request_discussion must be a scalar' if ref($_[2]) or (!defined $_[2]);
6088 0 0 0     0 croak 'The last argument (\%params) to resolve_merge_request_discussion must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
6089 0 0       0 my $params = (@_ == 4) ? pop() : undef;
6090 0         0 my $options = {};
6091 0         0 $options->{decode} = 0;
6092 0 0       0 $options->{content} = $params if defined $params;
6093 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id', [@_], $options );
6094 0         0 return;
6095             }
6096              
6097             =item create_merge_request_discussion_note
6098              
6099             $api->create_merge_request_discussion_note(
6100             $project_id,
6101             $merge_request_iid,
6102             $discussion_id,
6103             \%params,
6104             );
6105              
6106             Sends a C request to C.
6107              
6108             =cut
6109              
6110             sub create_merge_request_discussion_note {
6111 0     0 1 0 my $self = shift;
6112 0 0 0     0 croak 'create_merge_request_discussion_note must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
6113 0 0 0     0 croak 'The #1 argument ($project_id) to create_merge_request_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
6114 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to create_merge_request_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
6115 0 0 0     0 croak 'The #3 argument ($discussion_id) to create_merge_request_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
6116 0 0 0     0 croak 'The last argument (\%params) to create_merge_request_discussion_note must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
6117 0 0       0 my $params = (@_ == 4) ? pop() : undef;
6118 0         0 my $options = {};
6119 0         0 $options->{decode} = 0;
6120 0 0       0 $options->{content} = $params if defined $params;
6121 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes', [@_], $options );
6122 0         0 return;
6123             }
6124              
6125             =item edit_merge_request_discussion_note
6126              
6127             $api->edit_merge_request_discussion_note(
6128             $project_id,
6129             $merge_request_iid,
6130             $discussion_id,
6131             $note_id,
6132             \%params,
6133             );
6134              
6135             Sends a C request to C.
6136              
6137             =cut
6138              
6139             sub edit_merge_request_discussion_note {
6140 0     0 1 0 my $self = shift;
6141 0 0 0     0 croak 'edit_merge_request_discussion_note must be called with 4 to 5 arguments' if @_ < 4 or @_ > 5;
6142 0 0 0     0 croak 'The #1 argument ($project_id) to edit_merge_request_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
6143 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to edit_merge_request_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
6144 0 0 0     0 croak 'The #3 argument ($discussion_id) to edit_merge_request_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
6145 0 0 0     0 croak 'The #4 argument ($note_id) to edit_merge_request_discussion_note must be a scalar' if ref($_[3]) or (!defined $_[3]);
6146 0 0 0     0 croak 'The last argument (\%params) to edit_merge_request_discussion_note must be a hash ref' if defined($_[4]) and ref($_[4]) ne 'HASH';
6147 0 0       0 my $params = (@_ == 5) ? pop() : undef;
6148 0         0 my $options = {};
6149 0         0 $options->{decode} = 0;
6150 0 0       0 $options->{content} = $params if defined $params;
6151 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes/:note_id', [@_], $options );
6152 0         0 return;
6153             }
6154              
6155             =item delete_merge_request_discussion_note
6156              
6157             $api->delete_merge_request_discussion_note(
6158             $project_id,
6159             $merge_request_iid,
6160             $discussion_id,
6161             $note_id,
6162             );
6163              
6164             Sends a C request to C.
6165              
6166             =cut
6167              
6168             sub delete_merge_request_discussion_note {
6169 0     0 1 0 my $self = shift;
6170 0 0       0 croak 'delete_merge_request_discussion_note must be called with 4 arguments' if @_ != 4;
6171 0 0 0     0 croak 'The #1 argument ($project_id) to delete_merge_request_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
6172 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to delete_merge_request_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
6173 0 0 0     0 croak 'The #3 argument ($discussion_id) to delete_merge_request_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
6174 0 0 0     0 croak 'The #4 argument ($note_id) to delete_merge_request_discussion_note must be a scalar' if ref($_[3]) or (!defined $_[3]);
6175 0         0 my $options = {};
6176 0         0 $options->{decode} = 0;
6177 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/merge_requests/:merge_request_iid/discussions/:discussion_id/notes/:note_id', [@_], $options );
6178 0         0 return;
6179             }
6180              
6181             =item commit_discussions
6182              
6183             my $discussions = $api->commit_discussions(
6184             $project_id,
6185             $commit_id,
6186             \%params,
6187             );
6188              
6189             Sends a C request to C and returns the decoded response content.
6190              
6191             =cut
6192              
6193             sub commit_discussions {
6194 0     0 1 0 my $self = shift;
6195 0 0 0     0 croak 'commit_discussions must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
6196 0 0 0     0 croak 'The #1 argument ($project_id) to commit_discussions must be a scalar' if ref($_[0]) or (!defined $_[0]);
6197 0 0 0     0 croak 'The #2 argument ($commit_id) to commit_discussions must be a scalar' if ref($_[1]) or (!defined $_[1]);
6198 0 0 0     0 croak 'The last argument (\%params) to commit_discussions must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
6199 0 0       0 my $params = (@_ == 3) ? pop() : undef;
6200 0         0 my $options = {};
6201 0 0       0 $options->{query} = $params if defined $params;
6202 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/commits/:commit_id/discussions', [@_], $options );
6203             }
6204              
6205             =item commit_discussion
6206              
6207             my $discussion = $api->commit_discussion(
6208             $project_id,
6209             $commit_id,
6210             $discussion_id,
6211             );
6212              
6213             Sends a C request to C and returns the decoded response content.
6214              
6215             =cut
6216              
6217             sub commit_discussion {
6218 0     0 1 0 my $self = shift;
6219 0 0       0 croak 'commit_discussion must be called with 3 arguments' if @_ != 3;
6220 0 0 0     0 croak 'The #1 argument ($project_id) to commit_discussion must be a scalar' if ref($_[0]) or (!defined $_[0]);
6221 0 0 0     0 croak 'The #2 argument ($commit_id) to commit_discussion must be a scalar' if ref($_[1]) or (!defined $_[1]);
6222 0 0 0     0 croak 'The #3 argument ($discussion_id) to commit_discussion must be a scalar' if ref($_[2]) or (!defined $_[2]);
6223 0         0 my $options = {};
6224 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/commits/:commit_id/discussions/:discussion_id', [@_], $options );
6225             }
6226              
6227             =item create_commit_discussion
6228              
6229             my $discussion = $api->create_commit_discussion(
6230             $project_id,
6231             $commit_id,
6232             \%params,
6233             );
6234              
6235             Sends a C request to C and returns the decoded response content.
6236              
6237             =cut
6238              
6239             sub create_commit_discussion {
6240 0     0 1 0 my $self = shift;
6241 0 0 0     0 croak 'create_commit_discussion must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
6242 0 0 0     0 croak 'The #1 argument ($project_id) to create_commit_discussion must be a scalar' if ref($_[0]) or (!defined $_[0]);
6243 0 0 0     0 croak 'The #2 argument ($commit_id) to create_commit_discussion must be a scalar' if ref($_[1]) or (!defined $_[1]);
6244 0 0 0     0 croak 'The last argument (\%params) to create_commit_discussion must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
6245 0 0       0 my $params = (@_ == 3) ? pop() : undef;
6246 0         0 my $options = {};
6247 0 0       0 $options->{content} = $params if defined $params;
6248 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/commits/:commit_id/discussions', [@_], $options );
6249             }
6250              
6251             =item create_commit_discussion_note
6252              
6253             $api->create_commit_discussion_note(
6254             $project_id,
6255             $commit_id,
6256             $discussion_id,
6257             \%params,
6258             );
6259              
6260             Sends a C request to C.
6261              
6262             =cut
6263              
6264             sub create_commit_discussion_note {
6265 0     0 1 0 my $self = shift;
6266 0 0 0     0 croak 'create_commit_discussion_note must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
6267 0 0 0     0 croak 'The #1 argument ($project_id) to create_commit_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
6268 0 0 0     0 croak 'The #2 argument ($commit_id) to create_commit_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
6269 0 0 0     0 croak 'The #3 argument ($discussion_id) to create_commit_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
6270 0 0 0     0 croak 'The last argument (\%params) to create_commit_discussion_note must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
6271 0 0       0 my $params = (@_ == 4) ? pop() : undef;
6272 0         0 my $options = {};
6273 0         0 $options->{decode} = 0;
6274 0 0       0 $options->{content} = $params if defined $params;
6275 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/commits/:commit_id/discussions/:discussion_id/notes', [@_], $options );
6276 0         0 return;
6277             }
6278              
6279             =item edit_commit_discussion_note
6280              
6281             $api->edit_commit_discussion_note(
6282             $project_id,
6283             $commit_id,
6284             $discussion_id,
6285             $note_id,
6286             \%params,
6287             );
6288              
6289             Sends a C request to C.
6290              
6291             =cut
6292              
6293             sub edit_commit_discussion_note {
6294 0     0 1 0 my $self = shift;
6295 0 0 0     0 croak 'edit_commit_discussion_note must be called with 4 to 5 arguments' if @_ < 4 or @_ > 5;
6296 0 0 0     0 croak 'The #1 argument ($project_id) to edit_commit_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
6297 0 0 0     0 croak 'The #2 argument ($commit_id) to edit_commit_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
6298 0 0 0     0 croak 'The #3 argument ($discussion_id) to edit_commit_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
6299 0 0 0     0 croak 'The #4 argument ($note_id) to edit_commit_discussion_note must be a scalar' if ref($_[3]) or (!defined $_[3]);
6300 0 0 0     0 croak 'The last argument (\%params) to edit_commit_discussion_note must be a hash ref' if defined($_[4]) and ref($_[4]) ne 'HASH';
6301 0 0       0 my $params = (@_ == 5) ? pop() : undef;
6302 0         0 my $options = {};
6303 0         0 $options->{decode} = 0;
6304 0 0       0 $options->{content} = $params if defined $params;
6305 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/commits/:commit_id/discussions/:discussion_id/notes/:note_id', [@_], $options );
6306 0         0 return;
6307             }
6308              
6309             =item delete_commit_discussion_note
6310              
6311             $api->delete_commit_discussion_note(
6312             $project_id,
6313             $commit_id,
6314             $discussion_id,
6315             $note_id,
6316             );
6317              
6318             Sends a C request to C.
6319              
6320             =cut
6321              
6322             sub delete_commit_discussion_note {
6323 0     0 1 0 my $self = shift;
6324 0 0       0 croak 'delete_commit_discussion_note must be called with 4 arguments' if @_ != 4;
6325 0 0 0     0 croak 'The #1 argument ($project_id) to delete_commit_discussion_note must be a scalar' if ref($_[0]) or (!defined $_[0]);
6326 0 0 0     0 croak 'The #2 argument ($commit_id) to delete_commit_discussion_note must be a scalar' if ref($_[1]) or (!defined $_[1]);
6327 0 0 0     0 croak 'The #3 argument ($discussion_id) to delete_commit_discussion_note must be a scalar' if ref($_[2]) or (!defined $_[2]);
6328 0 0 0     0 croak 'The #4 argument ($note_id) to delete_commit_discussion_note must be a scalar' if ref($_[3]) or (!defined $_[3]);
6329 0         0 my $options = {};
6330 0         0 $options->{decode} = 0;
6331 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/commits/:commit_id/discussions/:discussion_id/notes/:note_id', [@_], $options );
6332 0         0 return;
6333             }
6334              
6335             =back
6336              
6337             =head2 Resource label events
6338              
6339             See L.
6340              
6341             =over
6342              
6343             =item issue_resource_label_events
6344              
6345             my $events = $api->issue_resource_label_events(
6346             $project_id,
6347             $issue_iid,
6348             );
6349              
6350             Sends a C request to C and returns the decoded response content.
6351              
6352             =cut
6353              
6354             sub issue_resource_label_events {
6355 0     0 1 0 my $self = shift;
6356 0 0       0 croak 'issue_resource_label_events must be called with 2 arguments' if @_ != 2;
6357 0 0 0     0 croak 'The #1 argument ($project_id) to issue_resource_label_events must be a scalar' if ref($_[0]) or (!defined $_[0]);
6358 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_resource_label_events must be a scalar' if ref($_[1]) or (!defined $_[1]);
6359 0         0 my $options = {};
6360 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/resource_label_events', [@_], $options );
6361             }
6362              
6363             =item issue_resource_label_event
6364              
6365             my $event = $api->issue_resource_label_event(
6366             $project_id,
6367             $issue_iid,
6368             $resource_label_event_id,
6369             );
6370              
6371             Sends a C request to C and returns the decoded response content.
6372              
6373             =cut
6374              
6375             sub issue_resource_label_event {
6376 0     0 1 0 my $self = shift;
6377 0 0       0 croak 'issue_resource_label_event must be called with 3 arguments' if @_ != 3;
6378 0 0 0     0 croak 'The #1 argument ($project_id) to issue_resource_label_event must be a scalar' if ref($_[0]) or (!defined $_[0]);
6379 0 0 0     0 croak 'The #2 argument ($issue_iid) to issue_resource_label_event must be a scalar' if ref($_[1]) or (!defined $_[1]);
6380 0 0 0     0 croak 'The #3 argument ($resource_label_event_id) to issue_resource_label_event must be a scalar' if ref($_[2]) or (!defined $_[2]);
6381 0         0 my $options = {};
6382 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/issues/:issue_iid/resource_label_events/:resource_label_event_id', [@_], $options );
6383             }
6384              
6385             =item merge_request_resource_label_events
6386              
6387             my $events = $api->merge_request_resource_label_events(
6388             $project_id,
6389             $merge_request_iid,
6390             );
6391              
6392             Sends a C request to C and returns the decoded response content.
6393              
6394             =cut
6395              
6396             sub merge_request_resource_label_events {
6397 0     0 1 0 my $self = shift;
6398 0 0       0 croak 'merge_request_resource_label_events must be called with 2 arguments' if @_ != 2;
6399 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_resource_label_events must be a scalar' if ref($_[0]) or (!defined $_[0]);
6400 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_resource_label_events must be a scalar' if ref($_[1]) or (!defined $_[1]);
6401 0         0 my $options = {};
6402 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/resource_label_events', [@_], $options );
6403             }
6404              
6405             =item merge_request_resource_label_event
6406              
6407             my $event = $api->merge_request_resource_label_event(
6408             $project_id,
6409             $merge_request_iid,
6410             $resource_label_event_id,
6411             );
6412              
6413             Sends a C request to C and returns the decoded response content.
6414              
6415             =cut
6416              
6417             sub merge_request_resource_label_event {
6418 0     0 1 0 my $self = shift;
6419 0 0       0 croak 'merge_request_resource_label_event must be called with 3 arguments' if @_ != 3;
6420 0 0 0     0 croak 'The #1 argument ($project_id) to merge_request_resource_label_event must be a scalar' if ref($_[0]) or (!defined $_[0]);
6421 0 0 0     0 croak 'The #2 argument ($merge_request_iid) to merge_request_resource_label_event must be a scalar' if ref($_[1]) or (!defined $_[1]);
6422 0 0 0     0 croak 'The #3 argument ($resource_label_event_id) to merge_request_resource_label_event must be a scalar' if ref($_[2]) or (!defined $_[2]);
6423 0         0 my $options = {};
6424 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/merge_requests/:merge_request_iid/resource_label_events/:resource_label_event_id', [@_], $options );
6425             }
6426              
6427             =back
6428              
6429             =head2 Notification settings
6430              
6431             See L.
6432              
6433             =over
6434              
6435             =item global_notification_settings
6436              
6437             my $settings = $api->global_notification_settings();
6438              
6439             Sends a C request to C and returns the decoded response content.
6440              
6441             =cut
6442              
6443             sub global_notification_settings {
6444 0     0 1 0 my $self = shift;
6445 0 0       0 croak "The global_notification_settings method does not take any arguments" if @_;
6446 0         0 my $options = {};
6447 0         0 return $self->_call_rest_client( 'GET', 'notification_settings', [@_], $options );
6448             }
6449              
6450             =item set_global_notification_settings
6451              
6452             my $settings = $api->set_global_notification_settings(
6453             \%params,
6454             );
6455              
6456             Sends a C request to C and returns the decoded response content.
6457              
6458             =cut
6459              
6460             sub set_global_notification_settings {
6461 0     0 1 0 my $self = shift;
6462 0 0 0     0 croak 'set_global_notification_settings must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
6463 0 0 0     0 croak 'The last argument (\%params) to set_global_notification_settings must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
6464 0 0       0 my $params = (@_ == 1) ? pop() : undef;
6465 0         0 my $options = {};
6466 0 0       0 $options->{content} = $params if defined $params;
6467 0         0 return $self->_call_rest_client( 'PUT', 'notification_settings', [@_], $options );
6468             }
6469              
6470             =item group_notification_settings
6471              
6472             my $settings = $api->group_notification_settings(
6473             $group_id,
6474             );
6475              
6476             Sends a C request to C and returns the decoded response content.
6477              
6478             =cut
6479              
6480             sub group_notification_settings {
6481 0     0 1 0 my $self = shift;
6482 0 0       0 croak 'group_notification_settings must be called with 1 arguments' if @_ != 1;
6483 0 0 0     0 croak 'The #1 argument ($group_id) to group_notification_settings must be a scalar' if ref($_[0]) or (!defined $_[0]);
6484 0         0 my $options = {};
6485 0         0 return $self->_call_rest_client( 'GET', 'groups/:group_id/notification_settings', [@_], $options );
6486             }
6487              
6488             =item project_notification_settings
6489              
6490             my $settings = $api->project_notification_settings(
6491             $project_id,
6492             );
6493              
6494             Sends a C request to C and returns the decoded response content.
6495              
6496             =cut
6497              
6498             sub project_notification_settings {
6499 0     0 1 0 my $self = shift;
6500 0 0       0 croak 'project_notification_settings must be called with 1 arguments' if @_ != 1;
6501 0 0 0     0 croak 'The #1 argument ($project_id) to project_notification_settings must be a scalar' if ref($_[0]) or (!defined $_[0]);
6502 0         0 my $options = {};
6503 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/notification_settings', [@_], $options );
6504             }
6505              
6506             =item set_group_notification_settings
6507              
6508             my $settings = $api->set_group_notification_settings(
6509             $group_id,
6510             \%params,
6511             );
6512              
6513             Sends a C request to C and returns the decoded response content.
6514              
6515             =cut
6516              
6517             sub set_group_notification_settings {
6518 0     0 1 0 my $self = shift;
6519 0 0 0     0 croak 'set_group_notification_settings must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
6520 0 0 0     0 croak 'The #1 argument ($group_id) to set_group_notification_settings must be a scalar' if ref($_[0]) or (!defined $_[0]);
6521 0 0 0     0 croak 'The last argument (\%params) to set_group_notification_settings must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
6522 0 0       0 my $params = (@_ == 2) ? pop() : undef;
6523 0         0 my $options = {};
6524 0 0       0 $options->{content} = $params if defined $params;
6525 0         0 return $self->_call_rest_client( 'PUT', 'groups/:group_id/notification_settings', [@_], $options );
6526             }
6527              
6528             =item set_project_notification_settings
6529              
6530             my $settings = $api->set_project_notification_settings(
6531             $project_id,
6532             \%params,
6533             );
6534              
6535             Sends a C request to C and returns the decoded response content.
6536              
6537             =cut
6538              
6539             sub set_project_notification_settings {
6540 0     0 1 0 my $self = shift;
6541 0 0 0     0 croak 'set_project_notification_settings must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
6542 0 0 0     0 croak 'The #1 argument ($project_id) to set_project_notification_settings must be a scalar' if ref($_[0]) or (!defined $_[0]);
6543 0 0 0     0 croak 'The last argument (\%params) to set_project_notification_settings must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
6544 0 0       0 my $params = (@_ == 2) ? pop() : undef;
6545 0         0 my $options = {};
6546 0 0       0 $options->{content} = $params if defined $params;
6547 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/notification_settings', [@_], $options );
6548             }
6549              
6550             =back
6551              
6552             =head2 Licenses
6553              
6554             See L.
6555              
6556             =over
6557              
6558             =item license_templates
6559              
6560             my $templates = $api->license_templates(
6561             \%params,
6562             );
6563              
6564             Sends a C request to C and returns the decoded response content.
6565              
6566             =cut
6567              
6568             sub license_templates {
6569 0     0 1 0 my $self = shift;
6570 0 0 0     0 croak 'license_templates must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
6571 0 0 0     0 croak 'The last argument (\%params) to license_templates must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
6572 0 0       0 my $params = (@_ == 1) ? pop() : undef;
6573 0         0 my $options = {};
6574 0 0       0 $options->{query} = $params if defined $params;
6575 0         0 return $self->_call_rest_client( 'GET', 'templates/licenses', [@_], $options );
6576             }
6577              
6578             =item license_template
6579              
6580             my $template = $api->license_template(
6581             $template_key,
6582             \%params,
6583             );
6584              
6585             Sends a C request to C and returns the decoded response content.
6586              
6587             =cut
6588              
6589             sub license_template {
6590 0     0 1 0 my $self = shift;
6591 0 0 0     0 croak 'license_template must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
6592 0 0 0     0 croak 'The #1 argument ($template_key) to license_template must be a scalar' if ref($_[0]) or (!defined $_[0]);
6593 0 0 0     0 croak 'The last argument (\%params) to license_template must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
6594 0 0       0 my $params = (@_ == 2) ? pop() : undef;
6595 0         0 my $options = {};
6596 0 0       0 $options->{query} = $params if defined $params;
6597 0         0 return $self->_call_rest_client( 'GET', 'templates/licenses/:template_key', [@_], $options );
6598             }
6599              
6600             =back
6601              
6602             =head2 Pages domains
6603              
6604             See L.
6605              
6606             =over
6607              
6608             =item global_pages_domains
6609              
6610             my $domains = $api->global_pages_domains(
6611             \%params,
6612             );
6613              
6614             Sends a C request to C and returns the decoded response content.
6615              
6616             =cut
6617              
6618             sub global_pages_domains {
6619 0     0 1 0 my $self = shift;
6620 0 0 0     0 croak 'global_pages_domains must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
6621 0 0 0     0 croak 'The last argument (\%params) to global_pages_domains must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
6622 0 0       0 my $params = (@_ == 1) ? pop() : undef;
6623 0         0 my $options = {};
6624 0 0       0 $options->{query} = $params if defined $params;
6625 0         0 return $self->_call_rest_client( 'GET', 'pages/domains', [@_], $options );
6626             }
6627              
6628             =item pages_domains
6629              
6630             my $domains = $api->pages_domains(
6631             $project_id,
6632             \%params,
6633             );
6634              
6635             Sends a C request to C and returns the decoded response content.
6636              
6637             =cut
6638              
6639             sub pages_domains {
6640 0     0 1 0 my $self = shift;
6641 0 0 0     0 croak 'pages_domains must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
6642 0 0 0     0 croak 'The #1 argument ($project_id) to pages_domains must be a scalar' if ref($_[0]) or (!defined $_[0]);
6643 0 0 0     0 croak 'The last argument (\%params) to pages_domains must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
6644 0 0       0 my $params = (@_ == 2) ? pop() : undef;
6645 0         0 my $options = {};
6646 0 0       0 $options->{query} = $params if defined $params;
6647 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/pages/domains', [@_], $options );
6648             }
6649              
6650             =item pages_domain
6651              
6652             my $domain = $api->pages_domain(
6653             $project_id,
6654             $domain,
6655             );
6656              
6657             Sends a C request to C and returns the decoded response content.
6658              
6659             =cut
6660              
6661             sub pages_domain {
6662 0     0 1 0 my $self = shift;
6663 0 0       0 croak 'pages_domain must be called with 2 arguments' if @_ != 2;
6664 0 0 0     0 croak 'The #1 argument ($project_id) to pages_domain must be a scalar' if ref($_[0]) or (!defined $_[0]);
6665 0 0 0     0 croak 'The #2 argument ($domain) to pages_domain must be a scalar' if ref($_[1]) or (!defined $_[1]);
6666 0         0 my $options = {};
6667 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/pages/domains/:domain', [@_], $options );
6668             }
6669              
6670             =item create_pages_domain
6671              
6672             my $domain = $api->create_pages_domain(
6673             $project_id,
6674             \%params,
6675             );
6676              
6677             Sends a C request to C and returns the decoded response content.
6678              
6679             =cut
6680              
6681             sub create_pages_domain {
6682 0     0 1 0 my $self = shift;
6683 0 0 0     0 croak 'create_pages_domain must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
6684 0 0 0     0 croak 'The #1 argument ($project_id) to create_pages_domain must be a scalar' if ref($_[0]) or (!defined $_[0]);
6685 0 0 0     0 croak 'The last argument (\%params) to create_pages_domain must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
6686 0 0       0 my $params = (@_ == 2) ? pop() : undef;
6687 0         0 my $options = {};
6688 0 0       0 $options->{content} = $params if defined $params;
6689 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/pages/domains', [@_], $options );
6690             }
6691              
6692             =item edit_pages_domain
6693              
6694             my $domain = $api->edit_pages_domain(
6695             $project_id,
6696             $domain,
6697             \%params,
6698             );
6699              
6700             Sends a C request to C and returns the decoded response content.
6701              
6702             =cut
6703              
6704             sub edit_pages_domain {
6705 0     0 1 0 my $self = shift;
6706 0 0 0     0 croak 'edit_pages_domain must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
6707 0 0 0     0 croak 'The #1 argument ($project_id) to edit_pages_domain must be a scalar' if ref($_[0]) or (!defined $_[0]);
6708 0 0 0     0 croak 'The #2 argument ($domain) to edit_pages_domain must be a scalar' if ref($_[1]) or (!defined $_[1]);
6709 0 0 0     0 croak 'The last argument (\%params) to edit_pages_domain must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
6710 0 0       0 my $params = (@_ == 3) ? pop() : undef;
6711 0         0 my $options = {};
6712 0 0       0 $options->{content} = $params if defined $params;
6713 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/pages/domains/:domain', [@_], $options );
6714             }
6715              
6716             =item delete_pages_domain
6717              
6718             $api->delete_pages_domain(
6719             $project_id,
6720             $domain,
6721             );
6722              
6723             Sends a C request to C.
6724              
6725             =cut
6726              
6727             sub delete_pages_domain {
6728 0     0 1 0 my $self = shift;
6729 0 0       0 croak 'delete_pages_domain must be called with 2 arguments' if @_ != 2;
6730 0 0 0     0 croak 'The #1 argument ($project_id) to delete_pages_domain must be a scalar' if ref($_[0]) or (!defined $_[0]);
6731 0 0 0     0 croak 'The #2 argument ($domain) to delete_pages_domain must be a scalar' if ref($_[1]) or (!defined $_[1]);
6732 0         0 my $options = {};
6733 0         0 $options->{decode} = 0;
6734 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/pages/domains/:domain', [@_], $options );
6735 0         0 return;
6736             }
6737              
6738             =back
6739              
6740             =head2 Pipelines
6741              
6742             See L.
6743              
6744             =over
6745              
6746             =item pipelines
6747              
6748             my $pipelines = $api->pipelines(
6749             $project_id,
6750             \%params,
6751             );
6752              
6753             Sends a C request to C and returns the decoded response content.
6754              
6755             =cut
6756              
6757             sub pipelines {
6758 0     0 1 0 my $self = shift;
6759 0 0 0     0 croak 'pipelines must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
6760 0 0 0     0 croak 'The #1 argument ($project_id) to pipelines must be a scalar' if ref($_[0]) or (!defined $_[0]);
6761 0 0 0     0 croak 'The last argument (\%params) to pipelines must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
6762 0 0       0 my $params = (@_ == 2) ? pop() : undef;
6763 0         0 my $options = {};
6764 0 0       0 $options->{query} = $params if defined $params;
6765 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/pipelines', [@_], $options );
6766             }
6767              
6768             =item pipeline
6769              
6770             my $pipeline = $api->pipeline(
6771             $project_id,
6772             $pipeline_id,
6773             );
6774              
6775             Sends a C request to C and returns the decoded response content.
6776              
6777             =cut
6778              
6779             sub pipeline {
6780 0     0 1 0 my $self = shift;
6781 0 0       0 croak 'pipeline must be called with 2 arguments' if @_ != 2;
6782 0 0 0     0 croak 'The #1 argument ($project_id) to pipeline must be a scalar' if ref($_[0]) or (!defined $_[0]);
6783 0 0 0     0 croak 'The #2 argument ($pipeline_id) to pipeline must be a scalar' if ref($_[1]) or (!defined $_[1]);
6784 0         0 my $options = {};
6785 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/pipelines/:pipeline_id', [@_], $options );
6786             }
6787              
6788             =item create_pipeline
6789              
6790             my $pipeline = $api->create_pipeline(
6791             $project_id,
6792             \%params,
6793             );
6794              
6795             Sends a C request to C and returns the decoded response content.
6796              
6797             Git ref (branch or tag) name must be specified in the C field of the
6798             C<%params> hash. It's also possible to pass variables to a pipeline in
6799             the C field like in the following example:
6800              
6801             my $pipeline = $api->create_pipeline(
6802             $project_id,
6803             {
6804             'ref' => 'master',
6805             variables => [
6806             { 'key' => 'VARIABLE1', 'value' => 'VALUE1' },
6807             { 'key' => 'VARIABLE2', 'value' => 'VALUE2' },
6808             ],
6809             },
6810             );
6811              
6812             =cut
6813              
6814             sub create_pipeline {
6815 0     0 1 0 my $self = shift;
6816 0 0 0     0 croak 'create_pipeline must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
6817 0 0 0     0 croak 'The #1 argument ($project_id) to create_pipeline must be a scalar' if ref($_[0]) or (!defined $_[0]);
6818 0 0 0     0 croak 'The last argument (\%params) to create_pipeline must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
6819 0 0       0 my $params = (@_ == 2) ? pop() : undef;
6820 0         0 my $options = {};
6821 0 0       0 $options->{content} = $params if defined $params;
6822 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/pipeline', [@_], $options );
6823             }
6824              
6825             =item retry_pipeline_jobs
6826              
6827             my $pipeline = $api->retry_pipeline_jobs(
6828             $project_id,
6829             $pipeline_id,
6830             );
6831              
6832             Sends a C request to C and returns the decoded response content.
6833              
6834             =cut
6835              
6836             sub retry_pipeline_jobs {
6837 0     0 1 0 my $self = shift;
6838 0 0       0 croak 'retry_pipeline_jobs must be called with 2 arguments' if @_ != 2;
6839 0 0 0     0 croak 'The #1 argument ($project_id) to retry_pipeline_jobs must be a scalar' if ref($_[0]) or (!defined $_[0]);
6840 0 0 0     0 croak 'The #2 argument ($pipeline_id) to retry_pipeline_jobs must be a scalar' if ref($_[1]) or (!defined $_[1]);
6841 0         0 my $options = {};
6842 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/pipelines/:pipeline_id/retry', [@_], $options );
6843             }
6844              
6845             =item cancel_pipeline_jobs
6846              
6847             my $pipeline = $api->cancel_pipeline_jobs(
6848             $project_id,
6849             $pipeline_id,
6850             );
6851              
6852             Sends a C request to C and returns the decoded response content.
6853              
6854             =cut
6855              
6856             sub cancel_pipeline_jobs {
6857 0     0 1 0 my $self = shift;
6858 0 0       0 croak 'cancel_pipeline_jobs must be called with 2 arguments' if @_ != 2;
6859 0 0 0     0 croak 'The #1 argument ($project_id) to cancel_pipeline_jobs must be a scalar' if ref($_[0]) or (!defined $_[0]);
6860 0 0 0     0 croak 'The #2 argument ($pipeline_id) to cancel_pipeline_jobs must be a scalar' if ref($_[1]) or (!defined $_[1]);
6861 0         0 my $options = {};
6862 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/pipelines/:pipeline_id/cancel', [@_], $options );
6863             }
6864              
6865             =item delete_pipeline
6866              
6867             $api->delete_pipeline(
6868             $project_id,
6869             $pipeline_id,
6870             );
6871              
6872             Sends a C request to C.
6873              
6874             =cut
6875              
6876             sub delete_pipeline {
6877 0     0 1 0 my $self = shift;
6878 0 0       0 croak 'delete_pipeline must be called with 2 arguments' if @_ != 2;
6879 0 0 0     0 croak 'The #1 argument ($project_id) to delete_pipeline must be a scalar' if ref($_[0]) or (!defined $_[0]);
6880 0 0 0     0 croak 'The #2 argument ($pipeline_id) to delete_pipeline must be a scalar' if ref($_[1]) or (!defined $_[1]);
6881 0         0 my $options = {};
6882 0         0 $options->{decode} = 0;
6883 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/pipelines/:pipeline_id', [@_], $options );
6884 0         0 return;
6885             }
6886              
6887             =back
6888              
6889             =head2 Pipeline triggers
6890              
6891             See L.
6892              
6893             =over
6894              
6895             =item triggers
6896              
6897             my $triggers = $api->triggers(
6898             $project_id,
6899             \%params,
6900             );
6901              
6902             Sends a C request to C and returns the decoded response content.
6903              
6904             =cut
6905              
6906             sub triggers {
6907 0     0 1 0 my $self = shift;
6908 0 0 0     0 croak 'triggers must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
6909 0 0 0     0 croak 'The #1 argument ($project_id) to triggers must be a scalar' if ref($_[0]) or (!defined $_[0]);
6910 0 0 0     0 croak 'The last argument (\%params) to triggers must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
6911 0 0       0 my $params = (@_ == 2) ? pop() : undef;
6912 0         0 my $options = {};
6913 0 0       0 $options->{query} = $params if defined $params;
6914 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/triggers', [@_], $options );
6915             }
6916              
6917             =item trigger
6918              
6919             my $trigger = $api->trigger(
6920             $project_id,
6921             $trigger_id,
6922             );
6923              
6924             Sends a C request to C and returns the decoded response content.
6925              
6926             =cut
6927              
6928             sub trigger {
6929 0     0 1 0 my $self = shift;
6930 0 0       0 croak 'trigger must be called with 2 arguments' if @_ != 2;
6931 0 0 0     0 croak 'The #1 argument ($project_id) to trigger must be a scalar' if ref($_[0]) or (!defined $_[0]);
6932 0 0 0     0 croak 'The #2 argument ($trigger_id) to trigger must be a scalar' if ref($_[1]) or (!defined $_[1]);
6933 0         0 my $options = {};
6934 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/triggers/:trigger_id', [@_], $options );
6935             }
6936              
6937             =item create_trigger
6938              
6939             my $trigger = $api->create_trigger(
6940             $project_id,
6941             \%params,
6942             );
6943              
6944             Sends a C request to C and returns the decoded response content.
6945              
6946             =cut
6947              
6948             sub create_trigger {
6949 0     0 1 0 my $self = shift;
6950 0 0 0     0 croak 'create_trigger must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
6951 0 0 0     0 croak 'The #1 argument ($project_id) to create_trigger must be a scalar' if ref($_[0]) or (!defined $_[0]);
6952 0 0 0     0 croak 'The last argument (\%params) to create_trigger must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
6953 0 0       0 my $params = (@_ == 2) ? pop() : undef;
6954 0         0 my $options = {};
6955 0 0       0 $options->{content} = $params if defined $params;
6956 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/triggers', [@_], $options );
6957             }
6958              
6959             =item edit_trigger
6960              
6961             my $trigger = $api->edit_trigger(
6962             $project_id,
6963             $trigger_id,
6964             \%params,
6965             );
6966              
6967             Sends a C request to C and returns the decoded response content.
6968              
6969             =cut
6970              
6971             sub edit_trigger {
6972 0     0 1 0 my $self = shift;
6973 0 0 0     0 croak 'edit_trigger must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
6974 0 0 0     0 croak 'The #1 argument ($project_id) to edit_trigger must be a scalar' if ref($_[0]) or (!defined $_[0]);
6975 0 0 0     0 croak 'The #2 argument ($trigger_id) to edit_trigger must be a scalar' if ref($_[1]) or (!defined $_[1]);
6976 0 0 0     0 croak 'The last argument (\%params) to edit_trigger must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
6977 0 0       0 my $params = (@_ == 3) ? pop() : undef;
6978 0         0 my $options = {};
6979 0 0       0 $options->{content} = $params if defined $params;
6980 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/triggers/:trigger_id', [@_], $options );
6981             }
6982              
6983             =item take_ownership_of_trigger
6984              
6985             my $trigger = $api->take_ownership_of_trigger(
6986             $project_id,
6987             $trigger_id,
6988             );
6989              
6990             Sends a C request to C and returns the decoded response content.
6991              
6992             =cut
6993              
6994             sub take_ownership_of_trigger {
6995 0     0 1 0 my $self = shift;
6996 0 0       0 croak 'take_ownership_of_trigger must be called with 2 arguments' if @_ != 2;
6997 0 0 0     0 croak 'The #1 argument ($project_id) to take_ownership_of_trigger must be a scalar' if ref($_[0]) or (!defined $_[0]);
6998 0 0 0     0 croak 'The #2 argument ($trigger_id) to take_ownership_of_trigger must be a scalar' if ref($_[1]) or (!defined $_[1]);
6999 0         0 my $options = {};
7000 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/triggers/:trigger_id/take_ownership', [@_], $options );
7001             }
7002              
7003             =item delete_trigger
7004              
7005             $api->delete_trigger(
7006             $project_id,
7007             $trigger_id,
7008             );
7009              
7010             Sends a C request to C.
7011              
7012             =cut
7013              
7014             sub delete_trigger {
7015 0     0 1 0 my $self = shift;
7016 0 0       0 croak 'delete_trigger must be called with 2 arguments' if @_ != 2;
7017 0 0 0     0 croak 'The #1 argument ($project_id) to delete_trigger must be a scalar' if ref($_[0]) or (!defined $_[0]);
7018 0 0 0     0 croak 'The #2 argument ($trigger_id) to delete_trigger must be a scalar' if ref($_[1]) or (!defined $_[1]);
7019 0         0 my $options = {};
7020 0         0 $options->{decode} = 0;
7021 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/triggers/:trigger_id', [@_], $options );
7022 0         0 return;
7023             }
7024              
7025             =item trigger_pipeline
7026              
7027             my $pipeline = $api->trigger_pipeline(
7028             $project_id,
7029             \%params,
7030             );
7031              
7032             Sends a C request to C and returns the decoded response content.
7033              
7034             The API authentication token (L or L
7035             parameters in a constructor) is not needed when using this method, however
7036             You must pass trigger token (generated at the trigger creation) as C
7037             field and git ref name as C field in the C<%params> hash. You can also
7038             pass variables to be set in a pipeline in the C field. Example:
7039              
7040             my $pipeline = $api->trigger_pipeline(
7041             $project_id,
7042             {
7043             token => 'd69dba9162ab6ac72fa0993496286ada',
7044             'ref' => 'master',
7045             variables => {
7046             variable1 => 'value1',
7047             variable2 => 'value2',
7048             },
7049             },
7050             );
7051              
7052             Read more at L.
7053              
7054             =cut
7055              
7056             sub trigger_pipeline {
7057 0     0 1 0 my $self = shift;
7058 0 0 0     0 croak 'trigger_pipeline must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7059 0 0 0     0 croak 'The #1 argument ($project_id) to trigger_pipeline must be a scalar' if ref($_[0]) or (!defined $_[0]);
7060 0 0 0     0 croak 'The last argument (\%params) to trigger_pipeline must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7061 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7062 0         0 my $options = {};
7063 0 0       0 $options->{content} = $params if defined $params;
7064 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/trigger/pipeline', [@_], $options );
7065             }
7066              
7067             =back
7068              
7069             =head2 Pipeline schedules
7070              
7071             See L.
7072              
7073             =over
7074              
7075             =item pipeline_schedules
7076              
7077             my $schedules = $api->pipeline_schedules(
7078             $project_id,
7079             \%params,
7080             );
7081              
7082             Sends a C request to C and returns the decoded response content.
7083              
7084             =cut
7085              
7086             sub pipeline_schedules {
7087 0     0 1 0 my $self = shift;
7088 0 0 0     0 croak 'pipeline_schedules must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7089 0 0 0     0 croak 'The #1 argument ($project_id) to pipeline_schedules must be a scalar' if ref($_[0]) or (!defined $_[0]);
7090 0 0 0     0 croak 'The last argument (\%params) to pipeline_schedules must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7091 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7092 0         0 my $options = {};
7093 0 0       0 $options->{query} = $params if defined $params;
7094 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/pipeline_schedules', [@_], $options );
7095             }
7096              
7097             =item pipeline_schedule
7098              
7099             my $schedule = $api->pipeline_schedule(
7100             $project_id,
7101             $pipeline_schedule_id,
7102             );
7103              
7104             Sends a C request to C and returns the decoded response content.
7105              
7106             =cut
7107              
7108             sub pipeline_schedule {
7109 0     0 1 0 my $self = shift;
7110 0 0       0 croak 'pipeline_schedule must be called with 2 arguments' if @_ != 2;
7111 0 0 0     0 croak 'The #1 argument ($project_id) to pipeline_schedule must be a scalar' if ref($_[0]) or (!defined $_[0]);
7112 0 0 0     0 croak 'The #2 argument ($pipeline_schedule_id) to pipeline_schedule must be a scalar' if ref($_[1]) or (!defined $_[1]);
7113 0         0 my $options = {};
7114 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/pipeline_schedules/:pipeline_schedule_id', [@_], $options );
7115             }
7116              
7117             =item create_pipeline_schedule
7118              
7119             my $schedule = $api->create_pipeline_schedule(
7120             $project_id,
7121             \%params,
7122             );
7123              
7124             Sends a C request to C and returns the decoded response content.
7125              
7126             =cut
7127              
7128             sub create_pipeline_schedule {
7129 0     0 1 0 my $self = shift;
7130 0 0 0     0 croak 'create_pipeline_schedule must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7131 0 0 0     0 croak 'The #1 argument ($project_id) to create_pipeline_schedule must be a scalar' if ref($_[0]) or (!defined $_[0]);
7132 0 0 0     0 croak 'The last argument (\%params) to create_pipeline_schedule must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7133 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7134 0         0 my $options = {};
7135 0 0       0 $options->{content} = $params if defined $params;
7136 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/pipeline_schedules', [@_], $options );
7137             }
7138              
7139             =item edit_pipeline_schedule
7140              
7141             my $schedule = $api->edit_pipeline_schedule(
7142             $project_id,
7143             $pipeline_schedule_id,
7144             \%params,
7145             );
7146              
7147             Sends a C request to C and returns the decoded response content.
7148              
7149             =cut
7150              
7151             sub edit_pipeline_schedule {
7152 0     0 1 0 my $self = shift;
7153 0 0 0     0 croak 'edit_pipeline_schedule must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
7154 0 0 0     0 croak 'The #1 argument ($project_id) to edit_pipeline_schedule must be a scalar' if ref($_[0]) or (!defined $_[0]);
7155 0 0 0     0 croak 'The #2 argument ($pipeline_schedule_id) to edit_pipeline_schedule must be a scalar' if ref($_[1]) or (!defined $_[1]);
7156 0 0 0     0 croak 'The last argument (\%params) to edit_pipeline_schedule must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
7157 0 0       0 my $params = (@_ == 3) ? pop() : undef;
7158 0         0 my $options = {};
7159 0 0       0 $options->{content} = $params if defined $params;
7160 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/pipeline_schedules/:pipeline_schedule_id', [@_], $options );
7161             }
7162              
7163             =item take_ownership_of_pipeline_schedule
7164              
7165             my $schedule = $api->take_ownership_of_pipeline_schedule(
7166             $project_id,
7167             $pipeline_schedule_id,
7168             );
7169              
7170             Sends a C request to C and returns the decoded response content.
7171              
7172             =cut
7173              
7174             sub take_ownership_of_pipeline_schedule {
7175 0     0 1 0 my $self = shift;
7176 0 0       0 croak 'take_ownership_of_pipeline_schedule must be called with 2 arguments' if @_ != 2;
7177 0 0 0     0 croak 'The #1 argument ($project_id) to take_ownership_of_pipeline_schedule must be a scalar' if ref($_[0]) or (!defined $_[0]);
7178 0 0 0     0 croak 'The #2 argument ($pipeline_schedule_id) to take_ownership_of_pipeline_schedule must be a scalar' if ref($_[1]) or (!defined $_[1]);
7179 0         0 my $options = {};
7180 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/pipeline_schedules/:pipeline_schedule_id/take_ownership', [@_], $options );
7181             }
7182              
7183             =item run_pipeline_schedule
7184              
7185             my $variable = $api->run_pipeline_schedule(
7186             $project_id,
7187             $pipeline_schedule_id,
7188             );
7189              
7190             Sends a C request to C and returns the decoded response content.
7191              
7192             =cut
7193              
7194             sub run_pipeline_schedule {
7195 0     0 1 0 my $self = shift;
7196 0 0       0 croak 'run_pipeline_schedule must be called with 2 arguments' if @_ != 2;
7197 0 0 0     0 croak 'The #1 argument ($project_id) to run_pipeline_schedule must be a scalar' if ref($_[0]) or (!defined $_[0]);
7198 0 0 0     0 croak 'The #2 argument ($pipeline_schedule_id) to run_pipeline_schedule must be a scalar' if ref($_[1]) or (!defined $_[1]);
7199 0         0 my $options = {};
7200 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/pipeline_schedules/:pipeline_schedule_id/play', [@_], $options );
7201             }
7202              
7203             =item delete_pipeline_schedule
7204              
7205             my $schedule = $api->delete_pipeline_schedule(
7206             $project_id,
7207             $pipeline_schedule_id,
7208             );
7209              
7210             Sends a C request to C and returns the decoded response content.
7211              
7212             =cut
7213              
7214             sub delete_pipeline_schedule {
7215 0     0 1 0 my $self = shift;
7216 0 0       0 croak 'delete_pipeline_schedule must be called with 2 arguments' if @_ != 2;
7217 0 0 0     0 croak 'The #1 argument ($project_id) to delete_pipeline_schedule must be a scalar' if ref($_[0]) or (!defined $_[0]);
7218 0 0 0     0 croak 'The #2 argument ($pipeline_schedule_id) to delete_pipeline_schedule must be a scalar' if ref($_[1]) or (!defined $_[1]);
7219 0         0 my $options = {};
7220 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/pipeline_schedules/:pipeline_schedule_id', [@_], $options );
7221             }
7222              
7223             =item create_pipeline_schedule_variable
7224              
7225             my $variable = $api->create_pipeline_schedule_variable(
7226             $project_id,
7227             $pipeline_schedule_id,
7228             \%params,
7229             );
7230              
7231             Sends a C request to C and returns the decoded response content.
7232              
7233             =cut
7234              
7235             sub create_pipeline_schedule_variable {
7236 0     0 1 0 my $self = shift;
7237 0 0 0     0 croak 'create_pipeline_schedule_variable must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
7238 0 0 0     0 croak 'The #1 argument ($project_id) to create_pipeline_schedule_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
7239 0 0 0     0 croak 'The #2 argument ($pipeline_schedule_id) to create_pipeline_schedule_variable must be a scalar' if ref($_[1]) or (!defined $_[1]);
7240 0 0 0     0 croak 'The last argument (\%params) to create_pipeline_schedule_variable must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
7241 0 0       0 my $params = (@_ == 3) ? pop() : undef;
7242 0         0 my $options = {};
7243 0 0       0 $options->{content} = $params if defined $params;
7244 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/pipeline_schedules/:pipeline_schedule_id/variables', [@_], $options );
7245             }
7246              
7247             =item edit_pipeline_schedule_variable
7248              
7249             my $variable = $api->edit_pipeline_schedule_variable(
7250             $project_id,
7251             $pipeline_schedule_id,
7252             $variable_key,
7253             \%params,
7254             );
7255              
7256             Sends a C request to C and returns the decoded response content.
7257              
7258             =cut
7259              
7260             sub edit_pipeline_schedule_variable {
7261 0     0 1 0 my $self = shift;
7262 0 0 0     0 croak 'edit_pipeline_schedule_variable must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
7263 0 0 0     0 croak 'The #1 argument ($project_id) to edit_pipeline_schedule_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
7264 0 0 0     0 croak 'The #2 argument ($pipeline_schedule_id) to edit_pipeline_schedule_variable must be a scalar' if ref($_[1]) or (!defined $_[1]);
7265 0 0 0     0 croak 'The #3 argument ($variable_key) to edit_pipeline_schedule_variable must be a scalar' if ref($_[2]) or (!defined $_[2]);
7266 0 0 0     0 croak 'The last argument (\%params) to edit_pipeline_schedule_variable must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
7267 0 0       0 my $params = (@_ == 4) ? pop() : undef;
7268 0         0 my $options = {};
7269 0 0       0 $options->{content} = $params if defined $params;
7270 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/pipeline_schedules/:pipeline_schedule_id/variables/:variable_key', [@_], $options );
7271             }
7272              
7273             =item delete_pipeline_schedule_variable
7274              
7275             my $variable = $api->delete_pipeline_schedule_variable(
7276             $project_id,
7277             $pipeline_schedule_id,
7278             $variable_key,
7279             );
7280              
7281             Sends a C request to C and returns the decoded response content.
7282              
7283             =cut
7284              
7285             sub delete_pipeline_schedule_variable {
7286 0     0 1 0 my $self = shift;
7287 0 0       0 croak 'delete_pipeline_schedule_variable must be called with 3 arguments' if @_ != 3;
7288 0 0 0     0 croak 'The #1 argument ($project_id) to delete_pipeline_schedule_variable must be a scalar' if ref($_[0]) or (!defined $_[0]);
7289 0 0 0     0 croak 'The #2 argument ($pipeline_schedule_id) to delete_pipeline_schedule_variable must be a scalar' if ref($_[1]) or (!defined $_[1]);
7290 0 0 0     0 croak 'The #3 argument ($variable_key) to delete_pipeline_schedule_variable must be a scalar' if ref($_[2]) or (!defined $_[2]);
7291 0         0 my $options = {};
7292 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/pipeline_schedules/:pipeline_schedule_id/variables/:variable_key', [@_], $options );
7293             }
7294              
7295             =back
7296              
7297             =head2 Projects
7298              
7299             See L.
7300              
7301             =over
7302              
7303             =item projects
7304              
7305             my $projects = $api->projects(
7306             \%params,
7307             );
7308              
7309             Sends a C request to C and returns the decoded response content.
7310              
7311             =cut
7312              
7313             sub projects {
7314 0     0 1 0 my $self = shift;
7315 0 0 0     0 croak 'projects must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
7316 0 0 0     0 croak 'The last argument (\%params) to projects must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
7317 0 0       0 my $params = (@_ == 1) ? pop() : undef;
7318 0         0 my $options = {};
7319 0 0       0 $options->{query} = $params if defined $params;
7320 0         0 return $self->_call_rest_client( 'GET', 'projects', [@_], $options );
7321             }
7322              
7323             =item user_projects
7324              
7325             my $projects = $api->user_projects(
7326             $user_id,
7327             \%params,
7328             );
7329              
7330             Sends a C request to C and returns the decoded response content.
7331              
7332             =cut
7333              
7334             sub user_projects {
7335 0     0 1 0 my $self = shift;
7336 0 0 0     0 croak 'user_projects must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7337 0 0 0     0 croak 'The #1 argument ($user_id) to user_projects must be a scalar' if ref($_[0]) or (!defined $_[0]);
7338 0 0 0     0 croak 'The last argument (\%params) to user_projects must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7339 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7340 0         0 my $options = {};
7341 0 0       0 $options->{query} = $params if defined $params;
7342 0         0 return $self->_call_rest_client( 'GET', 'users/:user_id/projects', [@_], $options );
7343             }
7344              
7345             =item project
7346              
7347             my $project = $api->project(
7348             $project_id,
7349             \%params,
7350             );
7351              
7352             Sends a C request to C and returns the decoded response content.
7353              
7354             =cut
7355              
7356             sub project {
7357 0     0 1 0 my $self = shift;
7358 0 0 0     0 croak 'project must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7359 0 0 0     0 croak 'The #1 argument ($project_id) to project must be a scalar' if ref($_[0]) or (!defined $_[0]);
7360 0 0 0     0 croak 'The last argument (\%params) to project must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7361 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7362 0         0 my $options = {};
7363 0 0       0 $options->{query} = $params if defined $params;
7364 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id', [@_], $options );
7365             }
7366              
7367             =item project_users
7368              
7369             my $users = $api->project_users(
7370             $project_id,
7371             \%params,
7372             );
7373              
7374             Sends a C request to C and returns the decoded response content.
7375              
7376             =cut
7377              
7378             sub project_users {
7379 0     0 1 0 my $self = shift;
7380 0 0 0     0 croak 'project_users must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7381 0 0 0     0 croak 'The #1 argument ($project_id) to project_users must be a scalar' if ref($_[0]) or (!defined $_[0]);
7382 0 0 0     0 croak 'The last argument (\%params) to project_users must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7383 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7384 0         0 my $options = {};
7385 0 0       0 $options->{query} = $params if defined $params;
7386 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/users', [@_], $options );
7387             }
7388              
7389             =item create_project
7390              
7391             my $project = $api->create_project(
7392             \%params,
7393             );
7394              
7395             Sends a C request to C and returns the decoded response content.
7396              
7397             =cut
7398              
7399             sub create_project {
7400 0     0 1 0 my $self = shift;
7401 0 0 0     0 croak 'create_project must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
7402 0 0 0     0 croak 'The last argument (\%params) to create_project must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
7403 0 0       0 my $params = (@_ == 1) ? pop() : undef;
7404 0         0 my $options = {};
7405 0 0       0 $options->{content} = $params if defined $params;
7406 0         0 return $self->_call_rest_client( 'POST', 'projects', [@_], $options );
7407             }
7408              
7409             =item create_project_for_user
7410              
7411             $api->create_project_for_user(
7412             $user_id,
7413             \%params,
7414             );
7415              
7416             Sends a C request to C.
7417              
7418             =cut
7419              
7420             sub create_project_for_user {
7421 0     0 1 0 my $self = shift;
7422 0 0 0     0 croak 'create_project_for_user must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7423 0 0 0     0 croak 'The #1 argument ($user_id) to create_project_for_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
7424 0 0 0     0 croak 'The last argument (\%params) to create_project_for_user must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7425 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7426 0         0 my $options = {};
7427 0         0 $options->{decode} = 0;
7428 0 0       0 $options->{content} = $params if defined $params;
7429 0         0 $self->_call_rest_client( 'POST', 'projects/user/:user_id', [@_], $options );
7430 0         0 return;
7431             }
7432              
7433             =item edit_project
7434              
7435             $api->edit_project(
7436             $project_id,
7437             \%params,
7438             );
7439              
7440             Sends a C request to C.
7441              
7442             =cut
7443              
7444             sub edit_project {
7445 0     0 1 0 my $self = shift;
7446 0 0 0     0 croak 'edit_project must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7447 0 0 0     0 croak 'The #1 argument ($project_id) to edit_project must be a scalar' if ref($_[0]) or (!defined $_[0]);
7448 0 0 0     0 croak 'The last argument (\%params) to edit_project must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7449 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7450 0         0 my $options = {};
7451 0         0 $options->{decode} = 0;
7452 0 0       0 $options->{content} = $params if defined $params;
7453 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id', [@_], $options );
7454 0         0 return;
7455             }
7456              
7457             =item fork_project
7458              
7459             $api->fork_project(
7460             $project_id,
7461             \%params,
7462             );
7463              
7464             Sends a C request to C.
7465              
7466             =cut
7467              
7468             sub fork_project {
7469 0     0 1 0 my $self = shift;
7470 0 0 0     0 croak 'fork_project must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7471 0 0 0     0 croak 'The #1 argument ($project_id) to fork_project must be a scalar' if ref($_[0]) or (!defined $_[0]);
7472 0 0 0     0 croak 'The last argument (\%params) to fork_project must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7473 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7474 0         0 my $options = {};
7475 0         0 $options->{decode} = 0;
7476 0 0       0 $options->{content} = $params if defined $params;
7477 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/fork', [@_], $options );
7478 0         0 return;
7479             }
7480              
7481             =item project_forks
7482              
7483             my $forks = $api->project_forks(
7484             $project_id,
7485             \%params,
7486             );
7487              
7488             Sends a C request to C and returns the decoded response content.
7489              
7490             =cut
7491              
7492             sub project_forks {
7493 0     0 1 0 my $self = shift;
7494 0 0 0     0 croak 'project_forks must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7495 0 0 0     0 croak 'The #1 argument ($project_id) to project_forks must be a scalar' if ref($_[0]) or (!defined $_[0]);
7496 0 0 0     0 croak 'The last argument (\%params) to project_forks must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7497 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7498 0         0 my $options = {};
7499 0 0       0 $options->{query} = $params if defined $params;
7500 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/forks', [@_], $options );
7501             }
7502              
7503             =item start_project
7504              
7505             my $project = $api->start_project(
7506             $project_id,
7507             );
7508              
7509             Sends a C request to C and returns the decoded response content.
7510              
7511             =cut
7512              
7513             sub start_project {
7514 0     0 1 0 my $self = shift;
7515 0 0       0 croak 'start_project must be called with 1 arguments' if @_ != 1;
7516 0 0 0     0 croak 'The #1 argument ($project_id) to start_project must be a scalar' if ref($_[0]) or (!defined $_[0]);
7517 0         0 my $options = {};
7518 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/star', [@_], $options );
7519             }
7520              
7521             =item unstar_project
7522              
7523             my $project = $api->unstar_project(
7524             $project_id,
7525             );
7526              
7527             Sends a C request to C and returns the decoded response content.
7528              
7529             =cut
7530              
7531             sub unstar_project {
7532 0     0 1 0 my $self = shift;
7533 0 0       0 croak 'unstar_project must be called with 1 arguments' if @_ != 1;
7534 0 0 0     0 croak 'The #1 argument ($project_id) to unstar_project must be a scalar' if ref($_[0]) or (!defined $_[0]);
7535 0         0 my $options = {};
7536 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/unstar', [@_], $options );
7537             }
7538              
7539             =item project_languages
7540              
7541             my $languages = $api->project_languages(
7542             $project_id,
7543             );
7544              
7545             Sends a C request to C and returns the decoded response content.
7546              
7547             =cut
7548              
7549             sub project_languages {
7550 0     0 1 0 my $self = shift;
7551 0 0       0 croak 'project_languages must be called with 1 arguments' if @_ != 1;
7552 0 0 0     0 croak 'The #1 argument ($project_id) to project_languages must be a scalar' if ref($_[0]) or (!defined $_[0]);
7553 0         0 my $options = {};
7554 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/languages', [@_], $options );
7555             }
7556              
7557             =item archive_project
7558              
7559             my $project = $api->archive_project(
7560             $project_id,
7561             );
7562              
7563             Sends a C request to C and returns the decoded response content.
7564              
7565             =cut
7566              
7567             sub archive_project {
7568 0     0 1 0 my $self = shift;
7569 0 0       0 croak 'archive_project must be called with 1 arguments' if @_ != 1;
7570 0 0 0     0 croak 'The #1 argument ($project_id) to archive_project must be a scalar' if ref($_[0]) or (!defined $_[0]);
7571 0         0 my $options = {};
7572 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/archive', [@_], $options );
7573             }
7574              
7575             =item unarchive_project
7576              
7577             my $project = $api->unarchive_project(
7578             $project_id,
7579             );
7580              
7581             Sends a C request to C and returns the decoded response content.
7582              
7583             =cut
7584              
7585             sub unarchive_project {
7586 0     0 1 0 my $self = shift;
7587 0 0       0 croak 'unarchive_project must be called with 1 arguments' if @_ != 1;
7588 0 0 0     0 croak 'The #1 argument ($project_id) to unarchive_project must be a scalar' if ref($_[0]) or (!defined $_[0]);
7589 0         0 my $options = {};
7590 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/unarchive', [@_], $options );
7591             }
7592              
7593             =item delete_project
7594              
7595             $api->delete_project(
7596             $project_id,
7597             );
7598              
7599             Sends a C request to C.
7600              
7601             =cut
7602              
7603             sub delete_project {
7604 0     0 1 0 my $self = shift;
7605 0 0       0 croak 'delete_project must be called with 1 arguments' if @_ != 1;
7606 0 0 0     0 croak 'The #1 argument ($project_id) to delete_project must be a scalar' if ref($_[0]) or (!defined $_[0]);
7607 0         0 my $options = {};
7608 0         0 $options->{decode} = 0;
7609 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id', [@_], $options );
7610 0         0 return;
7611             }
7612              
7613             =item upload_file_to_project
7614              
7615             my $upload = $api->upload_file_to_project(
7616             $project_id,
7617             \%params,
7618             );
7619              
7620             Sends a C request to C and returns the decoded response content.
7621              
7622             The C parameter must point to a readable file on the local filesystem.
7623             =cut
7624              
7625             sub upload_file_to_project {
7626 0     0 1 0 my $self = shift;
7627 0 0 0     0 croak 'upload_file_to_project must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7628 0 0 0     0 croak 'The #1 argument ($project_id) to upload_file_to_project must be a scalar' if ref($_[0]) or (!defined $_[0]);
7629 0 0 0     0 croak 'The last argument (\%params) to upload_file_to_project must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7630 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7631 0         0 my $options = {};
7632 0 0       0 $options->{content} = $params if defined $params;
7633 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/uploads', [@_], $options );
7634             }
7635              
7636             =item share_project_with_group
7637              
7638             $api->share_project_with_group(
7639             $project_id,
7640             \%params,
7641             );
7642              
7643             Sends a C request to C.
7644              
7645             =cut
7646              
7647             sub share_project_with_group {
7648 0     0 1 0 my $self = shift;
7649 0 0 0     0 croak 'share_project_with_group must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7650 0 0 0     0 croak 'The #1 argument ($project_id) to share_project_with_group must be a scalar' if ref($_[0]) or (!defined $_[0]);
7651 0 0 0     0 croak 'The last argument (\%params) to share_project_with_group must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7652 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7653 0         0 my $options = {};
7654 0         0 $options->{decode} = 0;
7655 0 0       0 $options->{content} = $params if defined $params;
7656 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/share', [@_], $options );
7657 0         0 return;
7658             }
7659              
7660             =item unshare_project_with_group
7661              
7662             $api->unshare_project_with_group(
7663             $project_id,
7664             $group_id,
7665             );
7666              
7667             Sends a C request to C.
7668              
7669             =cut
7670              
7671             sub unshare_project_with_group {
7672 0     0 1 0 my $self = shift;
7673 0 0       0 croak 'unshare_project_with_group must be called with 2 arguments' if @_ != 2;
7674 0 0 0     0 croak 'The #1 argument ($project_id) to unshare_project_with_group must be a scalar' if ref($_[0]) or (!defined $_[0]);
7675 0 0 0     0 croak 'The #2 argument ($group_id) to unshare_project_with_group must be a scalar' if ref($_[1]) or (!defined $_[1]);
7676 0         0 my $options = {};
7677 0         0 $options->{decode} = 0;
7678 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/share/:group_id', [@_], $options );
7679 0         0 return;
7680             }
7681              
7682             =item project_hooks
7683              
7684             my $hooks = $api->project_hooks(
7685             $project_id,
7686             );
7687              
7688             Sends a C request to C and returns the decoded response content.
7689              
7690             =cut
7691              
7692             sub project_hooks {
7693 0     0 1 0 my $self = shift;
7694 0 0       0 croak 'project_hooks must be called with 1 arguments' if @_ != 1;
7695 0 0 0     0 croak 'The #1 argument ($project_id) to project_hooks must be a scalar' if ref($_[0]) or (!defined $_[0]);
7696 0         0 my $options = {};
7697 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/hooks', [@_], $options );
7698             }
7699              
7700             =item project_hook
7701              
7702             my $hook = $api->project_hook(
7703             $project_id,
7704             $hook_id,
7705             );
7706              
7707             Sends a C request to C and returns the decoded response content.
7708              
7709             =cut
7710              
7711             sub project_hook {
7712 0     0 1 0 my $self = shift;
7713 0 0       0 croak 'project_hook must be called with 2 arguments' if @_ != 2;
7714 0 0 0     0 croak 'The #1 argument ($project_id) to project_hook must be a scalar' if ref($_[0]) or (!defined $_[0]);
7715 0 0 0     0 croak 'The #2 argument ($hook_id) to project_hook must be a scalar' if ref($_[1]) or (!defined $_[1]);
7716 0         0 my $options = {};
7717 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/hooks/:hook_id', [@_], $options );
7718             }
7719              
7720             =item create_project_hook
7721              
7722             my $hook = $api->create_project_hook(
7723             $project_id,
7724             \%params,
7725             );
7726              
7727             Sends a C request to C and returns the decoded response content.
7728              
7729             =cut
7730              
7731             sub create_project_hook {
7732 0     0 1 0 my $self = shift;
7733 0 0 0     0 croak 'create_project_hook must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7734 0 0 0     0 croak 'The #1 argument ($project_id) to create_project_hook must be a scalar' if ref($_[0]) or (!defined $_[0]);
7735 0 0 0     0 croak 'The last argument (\%params) to create_project_hook must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7736 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7737 0         0 my $options = {};
7738 0 0       0 $options->{content} = $params if defined $params;
7739 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/hooks', [@_], $options );
7740             }
7741              
7742             =item edit_project_hook
7743              
7744             my $hook = $api->edit_project_hook(
7745             $project_id,
7746             $hook_id,
7747             \%params,
7748             );
7749              
7750             Sends a C request to C and returns the decoded response content.
7751              
7752             =cut
7753              
7754             sub edit_project_hook {
7755 0     0 1 0 my $self = shift;
7756 0 0 0     0 croak 'edit_project_hook must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
7757 0 0 0     0 croak 'The #1 argument ($project_id) to edit_project_hook must be a scalar' if ref($_[0]) or (!defined $_[0]);
7758 0 0 0     0 croak 'The #2 argument ($hook_id) to edit_project_hook must be a scalar' if ref($_[1]) or (!defined $_[1]);
7759 0 0 0     0 croak 'The last argument (\%params) to edit_project_hook must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
7760 0 0       0 my $params = (@_ == 3) ? pop() : undef;
7761 0         0 my $options = {};
7762 0 0       0 $options->{content} = $params if defined $params;
7763 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/hooks/:hook_id', [@_], $options );
7764             }
7765              
7766             =item delete_project_hook
7767              
7768             $api->delete_project_hook(
7769             $project_id,
7770             $hook_id,
7771             );
7772              
7773             Sends a C request to C.
7774              
7775             =cut
7776              
7777             sub delete_project_hook {
7778 0     0 1 0 my $self = shift;
7779 0 0       0 croak 'delete_project_hook must be called with 2 arguments' if @_ != 2;
7780 0 0 0     0 croak 'The #1 argument ($project_id) to delete_project_hook must be a scalar' if ref($_[0]) or (!defined $_[0]);
7781 0 0 0     0 croak 'The #2 argument ($hook_id) to delete_project_hook must be a scalar' if ref($_[1]) or (!defined $_[1]);
7782 0         0 my $options = {};
7783 0         0 $options->{decode} = 0;
7784 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/hooks/:hook_id', [@_], $options );
7785 0         0 return;
7786             }
7787              
7788             =item set_project_fork
7789              
7790             $api->set_project_fork(
7791             $project_id,
7792             $from_project_id,
7793             );
7794              
7795             Sends a C request to C.
7796              
7797             =cut
7798              
7799             sub set_project_fork {
7800 0     0 1 0 my $self = shift;
7801 0 0       0 croak 'set_project_fork must be called with 2 arguments' if @_ != 2;
7802 0 0 0     0 croak 'The #1 argument ($project_id) to set_project_fork must be a scalar' if ref($_[0]) or (!defined $_[0]);
7803 0 0 0     0 croak 'The #2 argument ($from_project_id) to set_project_fork must be a scalar' if ref($_[1]) or (!defined $_[1]);
7804 0         0 my $options = {};
7805 0         0 $options->{decode} = 0;
7806 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/fork/:from_project_id', [@_], $options );
7807 0         0 return;
7808             }
7809              
7810             =item clear_project_fork
7811              
7812             $api->clear_project_fork(
7813             $project_id,
7814             );
7815              
7816             Sends a C request to C.
7817              
7818             =cut
7819              
7820             sub clear_project_fork {
7821 0     0 1 0 my $self = shift;
7822 0 0       0 croak 'clear_project_fork must be called with 1 arguments' if @_ != 1;
7823 0 0 0     0 croak 'The #1 argument ($project_id) to clear_project_fork must be a scalar' if ref($_[0]) or (!defined $_[0]);
7824 0         0 my $options = {};
7825 0         0 $options->{decode} = 0;
7826 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/fork', [@_], $options );
7827 0         0 return;
7828             }
7829              
7830             =item start_housekeeping
7831              
7832             $api->start_housekeeping(
7833             $project_id,
7834             );
7835              
7836             Sends a C request to C.
7837              
7838             =cut
7839              
7840             sub start_housekeeping {
7841 0     0 1 0 my $self = shift;
7842 0 0       0 croak 'start_housekeeping must be called with 1 arguments' if @_ != 1;
7843 0 0 0     0 croak 'The #1 argument ($project_id) to start_housekeeping must be a scalar' if ref($_[0]) or (!defined $_[0]);
7844 0         0 my $options = {};
7845 0         0 $options->{decode} = 0;
7846 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/housekeeping', [@_], $options );
7847 0         0 return;
7848             }
7849              
7850             =item transfer_project_to_namespace
7851              
7852             $api->transfer_project_to_namespace(
7853             $project_id,
7854             \%params,
7855             );
7856              
7857             Sends a C request to C.
7858              
7859             =cut
7860              
7861             sub transfer_project_to_namespace {
7862 0     0 1 0 my $self = shift;
7863 0 0 0     0 croak 'transfer_project_to_namespace must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7864 0 0 0     0 croak 'The #1 argument ($project_id) to transfer_project_to_namespace must be a scalar' if ref($_[0]) or (!defined $_[0]);
7865 0 0 0     0 croak 'The last argument (\%params) to transfer_project_to_namespace must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7866 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7867 0         0 my $options = {};
7868 0         0 $options->{decode} = 0;
7869 0 0       0 $options->{content} = $params if defined $params;
7870 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/transfer', [@_], $options );
7871 0         0 return;
7872             }
7873              
7874             =back
7875              
7876             =head2 Project access requests
7877              
7878             See L.
7879              
7880             =over
7881              
7882             =item project_access_requests
7883              
7884             my $requests = $api->project_access_requests(
7885             $project_id,
7886             \%params,
7887             );
7888              
7889             Sends a C request to C and returns the decoded response content.
7890              
7891             =cut
7892              
7893             sub project_access_requests {
7894 0     0 1 0 my $self = shift;
7895 0 0 0     0 croak 'project_access_requests must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
7896 0 0 0     0 croak 'The #1 argument ($project_id) to project_access_requests must be a scalar' if ref($_[0]) or (!defined $_[0]);
7897 0 0 0     0 croak 'The last argument (\%params) to project_access_requests must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
7898 0 0       0 my $params = (@_ == 2) ? pop() : undef;
7899 0         0 my $options = {};
7900 0 0       0 $options->{query} = $params if defined $params;
7901 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/access_requests', [@_], $options );
7902             }
7903              
7904             =item request_project_access
7905              
7906             my $request = $api->request_project_access(
7907             $project_id,
7908             );
7909              
7910             Sends a C request to C and returns the decoded response content.
7911              
7912             =cut
7913              
7914             sub request_project_access {
7915 0     0 1 0 my $self = shift;
7916 0 0       0 croak 'request_project_access must be called with 1 arguments' if @_ != 1;
7917 0 0 0     0 croak 'The #1 argument ($project_id) to request_project_access must be a scalar' if ref($_[0]) or (!defined $_[0]);
7918 0         0 my $options = {};
7919 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/access_requests', [@_], $options );
7920             }
7921              
7922             =item approve_project_access
7923              
7924             my $request = $api->approve_project_access(
7925             $project_id,
7926             $user_id,
7927             );
7928              
7929             Sends a C request to C and returns the decoded response content.
7930              
7931             =cut
7932              
7933             sub approve_project_access {
7934 0     0 1 0 my $self = shift;
7935 0 0       0 croak 'approve_project_access must be called with 2 arguments' if @_ != 2;
7936 0 0 0     0 croak 'The #1 argument ($project_id) to approve_project_access must be a scalar' if ref($_[0]) or (!defined $_[0]);
7937 0 0 0     0 croak 'The #2 argument ($user_id) to approve_project_access must be a scalar' if ref($_[1]) or (!defined $_[1]);
7938 0         0 my $options = {};
7939 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/access_requests/:user_id/approve', [@_], $options );
7940             }
7941              
7942             =item deny_project_access
7943              
7944             $api->deny_project_access(
7945             $project_id,
7946             $user_id,
7947             );
7948              
7949             Sends a C request to C.
7950              
7951             =cut
7952              
7953             sub deny_project_access {
7954 0     0 1 0 my $self = shift;
7955 0 0       0 croak 'deny_project_access must be called with 2 arguments' if @_ != 2;
7956 0 0 0     0 croak 'The #1 argument ($project_id) to deny_project_access must be a scalar' if ref($_[0]) or (!defined $_[0]);
7957 0 0 0     0 croak 'The #2 argument ($user_id) to deny_project_access must be a scalar' if ref($_[1]) or (!defined $_[1]);
7958 0         0 my $options = {};
7959 0         0 $options->{decode} = 0;
7960 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/access_requests/:user_id', [@_], $options );
7961 0         0 return;
7962             }
7963              
7964             =back
7965              
7966             =head2 Project badges
7967              
7968             See L.
7969              
7970             =over
7971              
7972             =item project_badges
7973              
7974             my $badges = $api->project_badges(
7975             $project_id,
7976             );
7977              
7978             Sends a C request to C and returns the decoded response content.
7979              
7980             =cut
7981              
7982             sub project_badges {
7983 0     0 1 0 my $self = shift;
7984 0 0       0 croak 'project_badges must be called with 1 arguments' if @_ != 1;
7985 0 0 0     0 croak 'The #1 argument ($project_id) to project_badges must be a scalar' if ref($_[0]) or (!defined $_[0]);
7986 0         0 my $options = {};
7987 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/badges', [@_], $options );
7988             }
7989              
7990             =item project_badge
7991              
7992             my $badge = $api->project_badge(
7993             $project_id,
7994             $badge_id,
7995             );
7996              
7997             Sends a C request to C and returns the decoded response content.
7998              
7999             =cut
8000              
8001             sub project_badge {
8002 0     0 1 0 my $self = shift;
8003 0 0       0 croak 'project_badge must be called with 2 arguments' if @_ != 2;
8004 0 0 0     0 croak 'The #1 argument ($project_id) to project_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
8005 0 0 0     0 croak 'The #2 argument ($badge_id) to project_badge must be a scalar' if ref($_[1]) or (!defined $_[1]);
8006 0         0 my $options = {};
8007 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/badges/:badge_id', [@_], $options );
8008             }
8009              
8010             =item create_project_badge
8011              
8012             my $badge = $api->create_project_badge(
8013             $project_id,
8014             \%params,
8015             );
8016              
8017             Sends a C request to C and returns the decoded response content.
8018              
8019             =cut
8020              
8021             sub create_project_badge {
8022 0     0 1 0 my $self = shift;
8023 0 0 0     0 croak 'create_project_badge must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8024 0 0 0     0 croak 'The #1 argument ($project_id) to create_project_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
8025 0 0 0     0 croak 'The last argument (\%params) to create_project_badge must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8026 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8027 0         0 my $options = {};
8028 0 0       0 $options->{content} = $params if defined $params;
8029 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/badges', [@_], $options );
8030             }
8031              
8032             =item edit_project_badge
8033              
8034             my $badge = $api->edit_project_badge(
8035             $project_id,
8036             $badge_id,
8037             \%params,
8038             );
8039              
8040             Sends a C request to C and returns the decoded response content.
8041              
8042             =cut
8043              
8044             sub edit_project_badge {
8045 0     0 1 0 my $self = shift;
8046 0 0 0     0 croak 'edit_project_badge must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
8047 0 0 0     0 croak 'The #1 argument ($project_id) to edit_project_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
8048 0 0 0     0 croak 'The #2 argument ($badge_id) to edit_project_badge must be a scalar' if ref($_[1]) or (!defined $_[1]);
8049 0 0 0     0 croak 'The last argument (\%params) to edit_project_badge must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
8050 0 0       0 my $params = (@_ == 3) ? pop() : undef;
8051 0         0 my $options = {};
8052 0 0       0 $options->{content} = $params if defined $params;
8053 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/badges/:badge_id', [@_], $options );
8054             }
8055              
8056             =item delete_project_badge
8057              
8058             $api->delete_project_badge(
8059             $project_id,
8060             $badge_id,
8061             );
8062              
8063             Sends a C request to C.
8064              
8065             =cut
8066              
8067             sub delete_project_badge {
8068 0     0 1 0 my $self = shift;
8069 0 0       0 croak 'delete_project_badge must be called with 2 arguments' if @_ != 2;
8070 0 0 0     0 croak 'The #1 argument ($project_id) to delete_project_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
8071 0 0 0     0 croak 'The #2 argument ($badge_id) to delete_project_badge must be a scalar' if ref($_[1]) or (!defined $_[1]);
8072 0         0 my $options = {};
8073 0         0 $options->{decode} = 0;
8074 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/badges/:badge_id', [@_], $options );
8075 0         0 return;
8076             }
8077              
8078             =item preview_project_badge
8079              
8080             my $preview = $api->preview_project_badge(
8081             $project_id,
8082             \%params,
8083             );
8084              
8085             Sends a C request to C and returns the decoded response content.
8086              
8087             =cut
8088              
8089             sub preview_project_badge {
8090 0     0 1 0 my $self = shift;
8091 0 0 0     0 croak 'preview_project_badge must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8092 0 0 0     0 croak 'The #1 argument ($project_id) to preview_project_badge must be a scalar' if ref($_[0]) or (!defined $_[0]);
8093 0 0 0     0 croak 'The last argument (\%params) to preview_project_badge must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8094 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8095 0         0 my $options = {};
8096 0 0       0 $options->{query} = $params if defined $params;
8097 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/badges/render', [@_], $options );
8098             }
8099              
8100             =back
8101              
8102             =head2 Project import/export
8103              
8104             See L.
8105              
8106             =over
8107              
8108             =item schedule_project_export
8109              
8110             $api->schedule_project_export(
8111             $project_id,
8112             \%params,
8113             );
8114              
8115             Sends a C request to C.
8116              
8117             =cut
8118              
8119             sub schedule_project_export {
8120 0     0 1 0 my $self = shift;
8121 0 0 0     0 croak 'schedule_project_export must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8122 0 0 0     0 croak 'The #1 argument ($project_id) to schedule_project_export must be a scalar' if ref($_[0]) or (!defined $_[0]);
8123 0 0 0     0 croak 'The last argument (\%params) to schedule_project_export must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8124 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8125 0         0 my $options = {};
8126 0         0 $options->{decode} = 0;
8127 0 0       0 $options->{content} = $params if defined $params;
8128 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/export', [@_], $options );
8129 0         0 return;
8130             }
8131              
8132             =item project_export_status
8133              
8134             my $status = $api->project_export_status(
8135             $project_id,
8136             );
8137              
8138             Sends a C request to C and returns the decoded response content.
8139              
8140             =cut
8141              
8142             sub project_export_status {
8143 0     0 1 0 my $self = shift;
8144 0 0       0 croak 'project_export_status must be called with 1 arguments' if @_ != 1;
8145 0 0 0     0 croak 'The #1 argument ($project_id) to project_export_status must be a scalar' if ref($_[0]) or (!defined $_[0]);
8146 0         0 my $options = {};
8147 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/export', [@_], $options );
8148             }
8149              
8150             =item download_project_export
8151              
8152             my $download = $api->download_project_export(
8153             $project_id,
8154             );
8155              
8156             Sends a C request to C and returns the decoded response content.
8157              
8158             =cut
8159              
8160             sub download_project_export {
8161 0     0 1 0 my $self = shift;
8162 0 0       0 croak 'download_project_export must be called with 1 arguments' if @_ != 1;
8163 0 0 0     0 croak 'The #1 argument ($project_id) to download_project_export must be a scalar' if ref($_[0]) or (!defined $_[0]);
8164 0         0 my $options = {};
8165 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/export/download', [@_], $options );
8166             }
8167              
8168             =item schedule_project_import
8169              
8170             $api->schedule_project_import(
8171             \%params,
8172             );
8173              
8174             Sends a C request to C.
8175              
8176             =cut
8177              
8178             sub schedule_project_import {
8179 0     0 1 0 my $self = shift;
8180 0 0 0     0 croak 'schedule_project_import must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
8181 0 0 0     0 croak 'The last argument (\%params) to schedule_project_import must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
8182 0 0       0 my $params = (@_ == 1) ? pop() : undef;
8183 0         0 my $options = {};
8184 0         0 $options->{decode} = 0;
8185 0 0       0 $options->{content} = $params if defined $params;
8186 0         0 $self->_call_rest_client( 'POST', 'projects/import', [@_], $options );
8187 0         0 return;
8188             }
8189              
8190             =item project_import_status
8191              
8192             my $status = $api->project_import_status(
8193             $project_id,
8194             );
8195              
8196             Sends a C request to C and returns the decoded response content.
8197              
8198             =cut
8199              
8200             sub project_import_status {
8201 0     0 1 0 my $self = shift;
8202 0 0       0 croak 'project_import_status must be called with 1 arguments' if @_ != 1;
8203 0 0 0     0 croak 'The #1 argument ($project_id) to project_import_status must be a scalar' if ref($_[0]) or (!defined $_[0]);
8204 0         0 my $options = {};
8205 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/import', [@_], $options );
8206             }
8207              
8208             =back
8209              
8210             =head2 Project members
8211              
8212             See L.
8213              
8214             =over
8215              
8216             =item project_members
8217              
8218             my $members = $api->project_members(
8219             $project_id,
8220             \%params,
8221             );
8222              
8223             Sends a C request to C and returns the decoded response content.
8224              
8225             =cut
8226              
8227             sub project_members {
8228 0     0 1 0 my $self = shift;
8229 0 0 0     0 croak 'project_members must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8230 0 0 0     0 croak 'The #1 argument ($project_id) to project_members must be a scalar' if ref($_[0]) or (!defined $_[0]);
8231 0 0 0     0 croak 'The last argument (\%params) to project_members must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8232 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8233 0         0 my $options = {};
8234 0 0       0 $options->{query} = $params if defined $params;
8235 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/members', [@_], $options );
8236             }
8237              
8238             =item all_project_members
8239              
8240             my $members = $api->all_project_members(
8241             $project_id,
8242             \%params,
8243             );
8244              
8245             Sends a C request to C and returns the decoded response content.
8246              
8247             =cut
8248              
8249             sub all_project_members {
8250 0     0 1 0 my $self = shift;
8251 0 0 0     0 croak 'all_project_members must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8252 0 0 0     0 croak 'The #1 argument ($project_id) to all_project_members must be a scalar' if ref($_[0]) or (!defined $_[0]);
8253 0 0 0     0 croak 'The last argument (\%params) to all_project_members must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8254 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8255 0         0 my $options = {};
8256 0 0       0 $options->{query} = $params if defined $params;
8257 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/members/all', [@_], $options );
8258             }
8259              
8260             =item project_member
8261              
8262             my $member = $api->project_member(
8263             $project_id,
8264             $user_id,
8265             );
8266              
8267             Sends a C request to C and returns the decoded response content.
8268              
8269             =cut
8270              
8271             sub project_member {
8272 0     0 1 0 my $self = shift;
8273 0 0       0 croak 'project_member must be called with 2 arguments' if @_ != 2;
8274 0 0 0     0 croak 'The #1 argument ($project_id) to project_member must be a scalar' if ref($_[0]) or (!defined $_[0]);
8275 0 0 0     0 croak 'The #2 argument ($user_id) to project_member must be a scalar' if ref($_[1]) or (!defined $_[1]);
8276 0         0 my $options = {};
8277 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/members/:user_id', [@_], $options );
8278             }
8279              
8280             =item add_project_member
8281              
8282             my $member = $api->add_project_member(
8283             $project_id,
8284             \%params,
8285             );
8286              
8287             Sends a C request to C and returns the decoded response content.
8288              
8289             =cut
8290              
8291             sub add_project_member {
8292 0     0 1 0 my $self = shift;
8293 0 0 0     0 croak 'add_project_member must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8294 0 0 0     0 croak 'The #1 argument ($project_id) to add_project_member must be a scalar' if ref($_[0]) or (!defined $_[0]);
8295 0 0 0     0 croak 'The last argument (\%params) to add_project_member must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8296 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8297 0         0 my $options = {};
8298 0 0       0 $options->{content} = $params if defined $params;
8299 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/members', [@_], $options );
8300             }
8301              
8302             =item update_project_member
8303              
8304             my $member = $api->update_project_member(
8305             $project_id,
8306             $user_id,
8307             \%params,
8308             );
8309              
8310             Sends a C request to C and returns the decoded response content.
8311              
8312             =cut
8313              
8314             sub update_project_member {
8315 0     0 1 0 my $self = shift;
8316 0 0 0     0 croak 'update_project_member must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
8317 0 0 0     0 croak 'The #1 argument ($project_id) to update_project_member must be a scalar' if ref($_[0]) or (!defined $_[0]);
8318 0 0 0     0 croak 'The #2 argument ($user_id) to update_project_member must be a scalar' if ref($_[1]) or (!defined $_[1]);
8319 0 0 0     0 croak 'The last argument (\%params) to update_project_member must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
8320 0 0       0 my $params = (@_ == 3) ? pop() : undef;
8321 0         0 my $options = {};
8322 0 0       0 $options->{content} = $params if defined $params;
8323 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/members/:user_id', [@_], $options );
8324             }
8325              
8326             =item remove_project_member
8327              
8328             $api->remove_project_member(
8329             $project_id,
8330             $user_id,
8331             );
8332              
8333             Sends a C request to C.
8334              
8335             =cut
8336              
8337             sub remove_project_member {
8338 0     0 1 0 my $self = shift;
8339 0 0       0 croak 'remove_project_member must be called with 2 arguments' if @_ != 2;
8340 0 0 0     0 croak 'The #1 argument ($project_id) to remove_project_member must be a scalar' if ref($_[0]) or (!defined $_[0]);
8341 0 0 0     0 croak 'The #2 argument ($user_id) to remove_project_member must be a scalar' if ref($_[1]) or (!defined $_[1]);
8342 0         0 my $options = {};
8343 0         0 $options->{decode} = 0;
8344 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/members/:user_id', [@_], $options );
8345 0         0 return;
8346             }
8347              
8348             =back
8349              
8350             =head2 Project snippets
8351              
8352             See L.
8353              
8354             =over
8355              
8356             =item project_snippets
8357              
8358             my $snippets = $api->project_snippets(
8359             $project_id,
8360             \%params,
8361             );
8362              
8363             Sends a C request to C and returns the decoded response content.
8364              
8365             =cut
8366              
8367             sub project_snippets {
8368 0     0 1 0 my $self = shift;
8369 0 0 0     0 croak 'project_snippets must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8370 0 0 0     0 croak 'The #1 argument ($project_id) to project_snippets must be a scalar' if ref($_[0]) or (!defined $_[0]);
8371 0 0 0     0 croak 'The last argument (\%params) to project_snippets must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8372 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8373 0         0 my $options = {};
8374 0 0       0 $options->{query} = $params if defined $params;
8375 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/snippets', [@_], $options );
8376             }
8377              
8378             =item project_snippet
8379              
8380             my $snippet = $api->project_snippet(
8381             $project_id,
8382             $snippet_id,
8383             );
8384              
8385             Sends a C request to C and returns the decoded response content.
8386              
8387             =cut
8388              
8389             sub project_snippet {
8390 0     0 1 0 my $self = shift;
8391 0 0       0 croak 'project_snippet must be called with 2 arguments' if @_ != 2;
8392 0 0 0     0 croak 'The #1 argument ($project_id) to project_snippet must be a scalar' if ref($_[0]) or (!defined $_[0]);
8393 0 0 0     0 croak 'The #2 argument ($snippet_id) to project_snippet must be a scalar' if ref($_[1]) or (!defined $_[1]);
8394 0         0 my $options = {};
8395 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/snippets/:snippet_id', [@_], $options );
8396             }
8397              
8398             =item create_project_snippet
8399              
8400             $api->create_project_snippet(
8401             $project_id,
8402             \%params,
8403             );
8404              
8405             Sends a C request to C.
8406              
8407             =cut
8408              
8409             sub create_project_snippet {
8410 0     0 1 0 my $self = shift;
8411 0 0 0     0 croak 'create_project_snippet must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8412 0 0 0     0 croak 'The #1 argument ($project_id) to create_project_snippet must be a scalar' if ref($_[0]) or (!defined $_[0]);
8413 0 0 0     0 croak 'The last argument (\%params) to create_project_snippet must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8414 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8415 0         0 my $options = {};
8416 0         0 $options->{decode} = 0;
8417 0 0       0 $options->{content} = $params if defined $params;
8418 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/snippets', [@_], $options );
8419 0         0 return;
8420             }
8421              
8422             =item edit_project_snippet
8423              
8424             $api->edit_project_snippet(
8425             $project_id,
8426             $snippet_id,
8427             \%params,
8428             );
8429              
8430             Sends a C request to C.
8431              
8432             =cut
8433              
8434             sub edit_project_snippet {
8435 0     0 1 0 my $self = shift;
8436 0 0 0     0 croak 'edit_project_snippet must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
8437 0 0 0     0 croak 'The #1 argument ($project_id) to edit_project_snippet must be a scalar' if ref($_[0]) or (!defined $_[0]);
8438 0 0 0     0 croak 'The #2 argument ($snippet_id) to edit_project_snippet must be a scalar' if ref($_[1]) or (!defined $_[1]);
8439 0 0 0     0 croak 'The last argument (\%params) to edit_project_snippet must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
8440 0 0       0 my $params = (@_ == 3) ? pop() : undef;
8441 0         0 my $options = {};
8442 0         0 $options->{decode} = 0;
8443 0 0       0 $options->{content} = $params if defined $params;
8444 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/snippets/:snippet_id', [@_], $options );
8445 0         0 return;
8446             }
8447              
8448             =item delete_project_snippet
8449              
8450             $api->delete_project_snippet(
8451             $project_id,
8452             $snippet_id,
8453             );
8454              
8455             Sends a C request to C.
8456              
8457             =cut
8458              
8459             sub delete_project_snippet {
8460 0     0 1 0 my $self = shift;
8461 0 0       0 croak 'delete_project_snippet must be called with 2 arguments' if @_ != 2;
8462 0 0 0     0 croak 'The #1 argument ($project_id) to delete_project_snippet must be a scalar' if ref($_[0]) or (!defined $_[0]);
8463 0 0 0     0 croak 'The #2 argument ($snippet_id) to delete_project_snippet must be a scalar' if ref($_[1]) or (!defined $_[1]);
8464 0         0 my $options = {};
8465 0         0 $options->{decode} = 0;
8466 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/snippets/:snippet_id', [@_], $options );
8467 0         0 return;
8468             }
8469              
8470             =item project_snippet_content
8471              
8472             my $content = $api->project_snippet_content(
8473             $project_id,
8474             $snippet_id,
8475             );
8476              
8477             Sends a C request to C and returns the decoded response content.
8478              
8479             =cut
8480              
8481             sub project_snippet_content {
8482 0     0 1 0 my $self = shift;
8483 0 0       0 croak 'project_snippet_content must be called with 2 arguments' if @_ != 2;
8484 0 0 0     0 croak 'The #1 argument ($project_id) to project_snippet_content must be a scalar' if ref($_[0]) or (!defined $_[0]);
8485 0 0 0     0 croak 'The #2 argument ($snippet_id) to project_snippet_content must be a scalar' if ref($_[1]) or (!defined $_[1]);
8486 0         0 my $options = {};
8487 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/snippets/:snippet_id/raw', [@_], $options );
8488             }
8489              
8490             =item project_snippet_user_agent_detail
8491              
8492             my $user_agent = $api->project_snippet_user_agent_detail(
8493             $project_id,
8494             $snippet_id,
8495             );
8496              
8497             Sends a C request to C and returns the decoded response content.
8498              
8499             =cut
8500              
8501             sub project_snippet_user_agent_detail {
8502 0     0 1 0 my $self = shift;
8503 0 0       0 croak 'project_snippet_user_agent_detail must be called with 2 arguments' if @_ != 2;
8504 0 0 0     0 croak 'The #1 argument ($project_id) to project_snippet_user_agent_detail must be a scalar' if ref($_[0]) or (!defined $_[0]);
8505 0 0 0     0 croak 'The #2 argument ($snippet_id) to project_snippet_user_agent_detail must be a scalar' if ref($_[1]) or (!defined $_[1]);
8506 0         0 my $options = {};
8507 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/snippets/:snippet_id/user_agent_detail', [@_], $options );
8508             }
8509              
8510             =back
8511              
8512             =head2 Protected branches
8513              
8514             See L.
8515              
8516             =over
8517              
8518             =item protected_branches
8519              
8520             my $branches = $api->protected_branches(
8521             $project_id,
8522             \%params,
8523             );
8524              
8525             Sends a C request to C and returns the decoded response content.
8526              
8527             =cut
8528              
8529             sub protected_branches {
8530 0     0 1 0 my $self = shift;
8531 0 0 0     0 croak 'protected_branches must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8532 0 0 0     0 croak 'The #1 argument ($project_id) to protected_branches must be a scalar' if ref($_[0]) or (!defined $_[0]);
8533 0 0 0     0 croak 'The last argument (\%params) to protected_branches must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8534 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8535 0         0 my $options = {};
8536 0 0       0 $options->{query} = $params if defined $params;
8537 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/protected_branches', [@_], $options );
8538             }
8539              
8540             =item protected_branch
8541              
8542             my $branch = $api->protected_branch(
8543             $project_id,
8544             $branch_name,
8545             );
8546              
8547             Sends a C request to C and returns the decoded response content.
8548              
8549             =cut
8550              
8551             sub protected_branch {
8552 0     0 1 0 my $self = shift;
8553 0 0       0 croak 'protected_branch must be called with 2 arguments' if @_ != 2;
8554 0 0 0     0 croak 'The #1 argument ($project_id) to protected_branch must be a scalar' if ref($_[0]) or (!defined $_[0]);
8555 0 0 0     0 croak 'The #2 argument ($branch_name) to protected_branch must be a scalar' if ref($_[1]) or (!defined $_[1]);
8556 0         0 my $options = {};
8557 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/protected_branches/:branch_name', [@_], $options );
8558             }
8559              
8560             =item protect_branch
8561              
8562             my $branch = $api->protect_branch(
8563             $project_id,
8564             \%params,
8565             );
8566              
8567             Sends a C request to C and returns the decoded response content.
8568              
8569             =cut
8570              
8571             sub protect_branch {
8572 0     0 1 0 my $self = shift;
8573 0 0 0     0 croak 'protect_branch must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8574 0 0 0     0 croak 'The #1 argument ($project_id) to protect_branch must be a scalar' if ref($_[0]) or (!defined $_[0]);
8575 0 0 0     0 croak 'The last argument (\%params) to protect_branch must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8576 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8577 0         0 my $options = {};
8578 0 0       0 $options->{content} = $params if defined $params;
8579 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/protected_branches', [@_], $options );
8580             }
8581              
8582             =item unprotect_branch
8583              
8584             $api->unprotect_branch(
8585             $project_id,
8586             $branch_name,
8587             );
8588              
8589             Sends a C request to C.
8590              
8591             =cut
8592              
8593             sub unprotect_branch {
8594 0     0 1 0 my $self = shift;
8595 0 0       0 croak 'unprotect_branch must be called with 2 arguments' if @_ != 2;
8596 0 0 0     0 croak 'The #1 argument ($project_id) to unprotect_branch must be a scalar' if ref($_[0]) or (!defined $_[0]);
8597 0 0 0     0 croak 'The #2 argument ($branch_name) to unprotect_branch must be a scalar' if ref($_[1]) or (!defined $_[1]);
8598 0         0 my $options = {};
8599 0         0 $options->{decode} = 0;
8600 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/protected_branches/:branch_name', [@_], $options );
8601 0         0 return;
8602             }
8603              
8604             =back
8605              
8606             =head2 Protected tags
8607              
8608             See L.
8609              
8610             =over
8611              
8612             =item protected_tags
8613              
8614             my $tags = $api->protected_tags(
8615             $project_id,
8616             \%params,
8617             );
8618              
8619             Sends a C request to C and returns the decoded response content.
8620              
8621             =cut
8622              
8623             sub protected_tags {
8624 0     0 1 0 my $self = shift;
8625 0 0 0     0 croak 'protected_tags must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8626 0 0 0     0 croak 'The #1 argument ($project_id) to protected_tags must be a scalar' if ref($_[0]) or (!defined $_[0]);
8627 0 0 0     0 croak 'The last argument (\%params) to protected_tags must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8628 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8629 0         0 my $options = {};
8630 0 0       0 $options->{query} = $params if defined $params;
8631 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/protected_tags', [@_], $options );
8632             }
8633              
8634             =item protected_tag
8635              
8636             my $tag = $api->protected_tag(
8637             $project_id,
8638             $tag_name,
8639             );
8640              
8641             Sends a C request to C and returns the decoded response content.
8642              
8643             =cut
8644              
8645             sub protected_tag {
8646 0     0 1 0 my $self = shift;
8647 0 0       0 croak 'protected_tag must be called with 2 arguments' if @_ != 2;
8648 0 0 0     0 croak 'The #1 argument ($project_id) to protected_tag must be a scalar' if ref($_[0]) or (!defined $_[0]);
8649 0 0 0     0 croak 'The #2 argument ($tag_name) to protected_tag must be a scalar' if ref($_[1]) or (!defined $_[1]);
8650 0         0 my $options = {};
8651 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/protected_tags/:tag_name', [@_], $options );
8652             }
8653              
8654             =item protect_tag
8655              
8656             my $tag = $api->protect_tag(
8657             $project_id,
8658             \%params,
8659             );
8660              
8661             Sends a C request to C and returns the decoded response content.
8662              
8663             =cut
8664              
8665             sub protect_tag {
8666 0     0 1 0 my $self = shift;
8667 0 0 0     0 croak 'protect_tag must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8668 0 0 0     0 croak 'The #1 argument ($project_id) to protect_tag must be a scalar' if ref($_[0]) or (!defined $_[0]);
8669 0 0 0     0 croak 'The last argument (\%params) to protect_tag must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8670 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8671 0         0 my $options = {};
8672 0 0       0 $options->{content} = $params if defined $params;
8673 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/protected_tags', [@_], $options );
8674             }
8675              
8676             =item unprotect_tag
8677              
8678             $api->unprotect_tag(
8679             $project_id,
8680             $tag_name,
8681             );
8682              
8683             Sends a C request to C.
8684              
8685             =cut
8686              
8687             sub unprotect_tag {
8688 0     0 1 0 my $self = shift;
8689 0 0       0 croak 'unprotect_tag must be called with 2 arguments' if @_ != 2;
8690 0 0 0     0 croak 'The #1 argument ($project_id) to unprotect_tag must be a scalar' if ref($_[0]) or (!defined $_[0]);
8691 0 0 0     0 croak 'The #2 argument ($tag_name) to unprotect_tag must be a scalar' if ref($_[1]) or (!defined $_[1]);
8692 0         0 my $options = {};
8693 0         0 $options->{decode} = 0;
8694 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/protected_tags/:tag_name', [@_], $options );
8695 0         0 return;
8696             }
8697              
8698             =back
8699              
8700             =head2 Releases
8701              
8702             See L.
8703              
8704             =over
8705              
8706             =item releases
8707              
8708             my $releases = $api->releases(
8709             $project_id,
8710             \%params,
8711             );
8712              
8713             Sends a C request to C and returns the decoded response content.
8714              
8715             =cut
8716              
8717             sub releases {
8718 0     0 1 0 my $self = shift;
8719 0 0 0     0 croak 'releases must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8720 0 0 0     0 croak 'The #1 argument ($project_id) to releases must be a scalar' if ref($_[0]) or (!defined $_[0]);
8721 0 0 0     0 croak 'The last argument (\%params) to releases must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8722 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8723 0         0 my $options = {};
8724 0 0       0 $options->{query} = $params if defined $params;
8725 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/releases', [@_], $options );
8726             }
8727              
8728             =item release
8729              
8730             my $release = $api->release(
8731             $project_id,
8732             $tag_name,
8733             );
8734              
8735             Sends a C request to C and returns the decoded response content.
8736              
8737             =cut
8738              
8739             sub release {
8740 0     0 1 0 my $self = shift;
8741 0 0       0 croak 'release must be called with 2 arguments' if @_ != 2;
8742 0 0 0     0 croak 'The #1 argument ($project_id) to release must be a scalar' if ref($_[0]) or (!defined $_[0]);
8743 0 0 0     0 croak 'The #2 argument ($tag_name) to release must be a scalar' if ref($_[1]) or (!defined $_[1]);
8744 0         0 my $options = {};
8745 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/releases/:tag_name', [@_], $options );
8746             }
8747              
8748             =item create_release
8749              
8750             my $release = $api->create_release(
8751             $project_id,
8752             \%params,
8753             );
8754              
8755             Sends a C request to C and returns the decoded response content.
8756              
8757             =cut
8758              
8759             sub create_release {
8760 0     0 1 0 my $self = shift;
8761 0 0 0     0 croak 'create_release must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8762 0 0 0     0 croak 'The #1 argument ($project_id) to create_release must be a scalar' if ref($_[0]) or (!defined $_[0]);
8763 0 0 0     0 croak 'The last argument (\%params) to create_release must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8764 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8765 0         0 my $options = {};
8766 0 0       0 $options->{content} = $params if defined $params;
8767 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/releases', [@_], $options );
8768             }
8769              
8770             =item update_release
8771              
8772             my $release = $api->update_release(
8773             $project_id,
8774             $tag_name,
8775             \%params,
8776             );
8777              
8778             Sends a C request to C and returns the decoded response content.
8779              
8780             =cut
8781              
8782             sub update_release {
8783 0     0 1 0 my $self = shift;
8784 0 0 0     0 croak 'update_release must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
8785 0 0 0     0 croak 'The #1 argument ($project_id) to update_release must be a scalar' if ref($_[0]) or (!defined $_[0]);
8786 0 0 0     0 croak 'The #2 argument ($tag_name) to update_release must be a scalar' if ref($_[1]) or (!defined $_[1]);
8787 0 0 0     0 croak 'The last argument (\%params) to update_release must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
8788 0 0       0 my $params = (@_ == 3) ? pop() : undef;
8789 0         0 my $options = {};
8790 0 0       0 $options->{content} = $params if defined $params;
8791 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/releases/:tag_name', [@_], $options );
8792             }
8793              
8794             =item delete_release
8795              
8796             my $release = $api->delete_release(
8797             $project_id,
8798             $tag_name,
8799             );
8800              
8801             Sends a C request to C and returns the decoded response content.
8802              
8803             =cut
8804              
8805             sub delete_release {
8806 0     0 1 0 my $self = shift;
8807 0 0       0 croak 'delete_release must be called with 2 arguments' if @_ != 2;
8808 0 0 0     0 croak 'The #1 argument ($project_id) to delete_release must be a scalar' if ref($_[0]) or (!defined $_[0]);
8809 0 0 0     0 croak 'The #2 argument ($tag_name) to delete_release must be a scalar' if ref($_[1]) or (!defined $_[1]);
8810 0         0 my $options = {};
8811 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/releases/:tag_name', [@_], $options );
8812             }
8813              
8814             =back
8815              
8816             =head2 Release Links
8817              
8818             See L.
8819              
8820             =over
8821              
8822             =item release_links
8823              
8824             my $links = $api->release_links(
8825             $project_id,
8826             $tag_name,
8827             \%params,
8828             );
8829              
8830             Sends a C request to C and returns the decoded response content.
8831              
8832             =cut
8833              
8834             sub release_links {
8835 0     0 1 0 my $self = shift;
8836 0 0 0     0 croak 'release_links must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
8837 0 0 0     0 croak 'The #1 argument ($project_id) to release_links must be a scalar' if ref($_[0]) or (!defined $_[0]);
8838 0 0 0     0 croak 'The #2 argument ($tag_name) to release_links must be a scalar' if ref($_[1]) or (!defined $_[1]);
8839 0 0 0     0 croak 'The last argument (\%params) to release_links must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
8840 0 0       0 my $params = (@_ == 3) ? pop() : undef;
8841 0         0 my $options = {};
8842 0 0       0 $options->{query} = $params if defined $params;
8843 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/releases/:tag_name/assets/links', [@_], $options );
8844             }
8845              
8846             =item release_link
8847              
8848             my $link = $api->release_link(
8849             $project_id,
8850             $tag_name,
8851             $link_id,
8852             );
8853              
8854             Sends a C request to C and returns the decoded response content.
8855              
8856             =cut
8857              
8858             sub release_link {
8859 0     0 1 0 my $self = shift;
8860 0 0       0 croak 'release_link must be called with 3 arguments' if @_ != 3;
8861 0 0 0     0 croak 'The #1 argument ($project_id) to release_link must be a scalar' if ref($_[0]) or (!defined $_[0]);
8862 0 0 0     0 croak 'The #2 argument ($tag_name) to release_link must be a scalar' if ref($_[1]) or (!defined $_[1]);
8863 0 0 0     0 croak 'The #3 argument ($link_id) to release_link must be a scalar' if ref($_[2]) or (!defined $_[2]);
8864 0         0 my $options = {};
8865 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/releases/:tag_name/assets/links/:link_id', [@_], $options );
8866             }
8867              
8868             =item create_release_link
8869              
8870             my $link = $api->create_release_link(
8871             $project_id,
8872             $tag_name,
8873             \%params,
8874             );
8875              
8876             Sends a C request to C and returns the decoded response content.
8877              
8878             =cut
8879              
8880             sub create_release_link {
8881 0     0 1 0 my $self = shift;
8882 0 0 0     0 croak 'create_release_link must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
8883 0 0 0     0 croak 'The #1 argument ($project_id) to create_release_link must be a scalar' if ref($_[0]) or (!defined $_[0]);
8884 0 0 0     0 croak 'The #2 argument ($tag_name) to create_release_link must be a scalar' if ref($_[1]) or (!defined $_[1]);
8885 0 0 0     0 croak 'The last argument (\%params) to create_release_link must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
8886 0 0       0 my $params = (@_ == 3) ? pop() : undef;
8887 0         0 my $options = {};
8888 0 0       0 $options->{content} = $params if defined $params;
8889 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/releases/:tag_name/assets/links', [@_], $options );
8890             }
8891              
8892             =item update_release_link
8893              
8894             my $link = $api->update_release_link(
8895             $project_id,
8896             $tag_name,
8897             $link_id,
8898             \%params,
8899             );
8900              
8901             Sends a C request to C and returns the decoded response content.
8902              
8903             =cut
8904              
8905             sub update_release_link {
8906 0     0 1 0 my $self = shift;
8907 0 0 0     0 croak 'update_release_link must be called with 3 to 4 arguments' if @_ < 3 or @_ > 4;
8908 0 0 0     0 croak 'The #1 argument ($project_id) to update_release_link must be a scalar' if ref($_[0]) or (!defined $_[0]);
8909 0 0 0     0 croak 'The #2 argument ($tag_name) to update_release_link must be a scalar' if ref($_[1]) or (!defined $_[1]);
8910 0 0 0     0 croak 'The #3 argument ($link_id) to update_release_link must be a scalar' if ref($_[2]) or (!defined $_[2]);
8911 0 0 0     0 croak 'The last argument (\%params) to update_release_link must be a hash ref' if defined($_[3]) and ref($_[3]) ne 'HASH';
8912 0 0       0 my $params = (@_ == 4) ? pop() : undef;
8913 0         0 my $options = {};
8914 0 0       0 $options->{content} = $params if defined $params;
8915 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/releases/:tag_name/assets/links/:link_id', [@_], $options );
8916             }
8917              
8918             =item delete_release_link
8919              
8920             my $link = $api->delete_release_link(
8921             $project_id,
8922             $tag_name,
8923             $link_id,
8924             );
8925              
8926             Sends a C request to C and returns the decoded response content.
8927              
8928             =cut
8929              
8930             sub delete_release_link {
8931 0     0 1 0 my $self = shift;
8932 0 0       0 croak 'delete_release_link must be called with 3 arguments' if @_ != 3;
8933 0 0 0     0 croak 'The #1 argument ($project_id) to delete_release_link must be a scalar' if ref($_[0]) or (!defined $_[0]);
8934 0 0 0     0 croak 'The #2 argument ($tag_name) to delete_release_link must be a scalar' if ref($_[1]) or (!defined $_[1]);
8935 0 0 0     0 croak 'The #3 argument ($link_id) to delete_release_link must be a scalar' if ref($_[2]) or (!defined $_[2]);
8936 0         0 my $options = {};
8937 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/releases/:tag_name/assets/links/:link_id', [@_], $options );
8938             }
8939              
8940             =back
8941              
8942             =head2 Remote Mirrors
8943              
8944             See L.
8945              
8946             =over
8947              
8948             =item remote_mirrors
8949              
8950             my $mirrors = $api->remote_mirrors(
8951             $project_id,
8952             );
8953              
8954             Sends a C request to C and returns the decoded response content.
8955              
8956             =cut
8957              
8958             sub remote_mirrors {
8959 0     0 1 0 my $self = shift;
8960 0 0       0 croak 'remote_mirrors must be called with 1 arguments' if @_ != 1;
8961 0 0 0     0 croak 'The #1 argument ($project_id) to remote_mirrors must be a scalar' if ref($_[0]) or (!defined $_[0]);
8962 0         0 my $options = {};
8963 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/remote_mirrors', [@_], $options );
8964             }
8965              
8966             =item create_remote_mirror
8967              
8968             my $mirror = $api->create_remote_mirror(
8969             $project_id,
8970             \%params,
8971             );
8972              
8973             Sends a C request to C and returns the decoded response content.
8974              
8975             =cut
8976              
8977             sub create_remote_mirror {
8978 0     0 1 0 my $self = shift;
8979 0 0 0     0 croak 'create_remote_mirror must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
8980 0 0 0     0 croak 'The #1 argument ($project_id) to create_remote_mirror must be a scalar' if ref($_[0]) or (!defined $_[0]);
8981 0 0 0     0 croak 'The last argument (\%params) to create_remote_mirror must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
8982 0 0       0 my $params = (@_ == 2) ? pop() : undef;
8983 0         0 my $options = {};
8984 0 0       0 $options->{content} = $params if defined $params;
8985 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/remote_mirrors', [@_], $options );
8986             }
8987              
8988             =item edit_remote_mirror
8989              
8990             my $mirror = $api->edit_remote_mirror(
8991             $project_id,
8992             $mirror_id,
8993             \%params,
8994             );
8995              
8996             Sends a C request to C and returns the decoded response content.
8997              
8998             =cut
8999              
9000             sub edit_remote_mirror {
9001 0     0 1 0 my $self = shift;
9002 0 0 0     0 croak 'edit_remote_mirror must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
9003 0 0 0     0 croak 'The #1 argument ($project_id) to edit_remote_mirror must be a scalar' if ref($_[0]) or (!defined $_[0]);
9004 0 0 0     0 croak 'The #2 argument ($mirror_id) to edit_remote_mirror must be a scalar' if ref($_[1]) or (!defined $_[1]);
9005 0 0 0     0 croak 'The last argument (\%params) to edit_remote_mirror must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
9006 0 0       0 my $params = (@_ == 3) ? pop() : undef;
9007 0         0 my $options = {};
9008 0 0       0 $options->{content} = $params if defined $params;
9009 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/remote_mirrors/:mirror_id', [@_], $options );
9010             }
9011              
9012             =back
9013              
9014             =head2 Repositories
9015              
9016             See L.
9017              
9018             =over
9019              
9020             =item tree
9021              
9022             my $tree = $api->tree(
9023             $project_id,
9024             \%params,
9025             );
9026              
9027             Sends a C request to C and returns the decoded response content.
9028              
9029             =cut
9030              
9031             sub tree {
9032 0     0 1 0 my $self = shift;
9033 0 0 0     0 croak 'tree must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9034 0 0 0     0 croak 'The #1 argument ($project_id) to tree must be a scalar' if ref($_[0]) or (!defined $_[0]);
9035 0 0 0     0 croak 'The last argument (\%params) to tree must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9036 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9037 0         0 my $options = {};
9038 0 0       0 $options->{query} = $params if defined $params;
9039 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/tree', [@_], $options );
9040             }
9041              
9042             =item blob
9043              
9044             my $blob = $api->blob(
9045             $project_id,
9046             $sha,
9047             );
9048              
9049             Sends a C request to C and returns the decoded response content.
9050              
9051             =cut
9052              
9053             sub blob {
9054 0     0 1 0 my $self = shift;
9055 0 0       0 croak 'blob must be called with 2 arguments' if @_ != 2;
9056 0 0 0     0 croak 'The #1 argument ($project_id) to blob must be a scalar' if ref($_[0]) or (!defined $_[0]);
9057 0 0 0     0 croak 'The #2 argument ($sha) to blob must be a scalar' if ref($_[1]) or (!defined $_[1]);
9058 0         0 my $options = {};
9059 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/blobs/:sha', [@_], $options );
9060             }
9061              
9062             =item raw_blob
9063              
9064             my $raw_blob = $api->raw_blob(
9065             $project_id,
9066             $sha,
9067             );
9068              
9069             Sends a C request to C and returns the decoded response content.
9070              
9071             =cut
9072              
9073             sub raw_blob {
9074 0     0 1 0 my $self = shift;
9075 0 0       0 croak 'raw_blob must be called with 2 arguments' if @_ != 2;
9076 0 0 0     0 croak 'The #1 argument ($project_id) to raw_blob must be a scalar' if ref($_[0]) or (!defined $_[0]);
9077 0 0 0     0 croak 'The #2 argument ($sha) to raw_blob must be a scalar' if ref($_[1]) or (!defined $_[1]);
9078 0         0 my $options = {};
9079 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/blobs/:sha/raw', [@_], $options );
9080             }
9081              
9082             =item archive
9083              
9084             my $archive = $api->archive(
9085             $project_id,
9086             \%params,
9087             );
9088              
9089             Sends a C request to C and returns the raw response content.
9090              
9091             =cut
9092              
9093             sub archive {
9094 0     0 1 0 my $self = shift;
9095 0 0 0     0 croak 'archive must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9096 0 0 0     0 croak 'The #1 argument ($project_id) to archive must be a scalar' if ref($_[0]) or (!defined $_[0]);
9097 0 0 0     0 croak 'The last argument (\%params) to archive must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9098 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9099 0         0 my $options = {};
9100 0         0 $options->{decode} = 0;
9101 0 0       0 $options->{query} = $params if defined $params;
9102 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/archive', [@_], $options );
9103             }
9104              
9105             =item compare
9106              
9107             my $comparison = $api->compare(
9108             $project_id,
9109             \%params,
9110             );
9111              
9112             Sends a C request to C and returns the decoded response content.
9113              
9114             =cut
9115              
9116             sub compare {
9117 0     0 1 0 my $self = shift;
9118 0 0 0     0 croak 'compare must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9119 0 0 0     0 croak 'The #1 argument ($project_id) to compare must be a scalar' if ref($_[0]) or (!defined $_[0]);
9120 0 0 0     0 croak 'The last argument (\%params) to compare must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9121 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9122 0         0 my $options = {};
9123 0 0       0 $options->{query} = $params if defined $params;
9124 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/compare', [@_], $options );
9125             }
9126              
9127             =item contributors
9128              
9129             my $contributors = $api->contributors(
9130             $project_id,
9131             \%params,
9132             );
9133              
9134             Sends a C request to C and returns the decoded response content.
9135              
9136             =cut
9137              
9138             sub contributors {
9139 0     0 1 0 my $self = shift;
9140 0 0 0     0 croak 'contributors must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9141 0 0 0     0 croak 'The #1 argument ($project_id) to contributors must be a scalar' if ref($_[0]) or (!defined $_[0]);
9142 0 0 0     0 croak 'The last argument (\%params) to contributors must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9143 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9144 0         0 my $options = {};
9145 0 0       0 $options->{query} = $params if defined $params;
9146 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/contributors', [@_], $options );
9147             }
9148              
9149             =back
9150              
9151             =head2 Repository files
9152              
9153             See L.
9154              
9155             =over
9156              
9157             =item file
9158              
9159             my $file = $api->file(
9160             $project_id,
9161             $file_path,
9162             \%params,
9163             );
9164              
9165             Sends a C request to C and returns the decoded response content.
9166              
9167             =cut
9168              
9169             sub file {
9170 0     0 1 0 my $self = shift;
9171 0 0 0     0 croak 'file must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
9172 0 0 0     0 croak 'The #1 argument ($project_id) to file must be a scalar' if ref($_[0]) or (!defined $_[0]);
9173 0 0 0     0 croak 'The #2 argument ($file_path) to file must be a scalar' if ref($_[1]) or (!defined $_[1]);
9174 0 0 0     0 croak 'The last argument (\%params) to file must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
9175 0 0       0 my $params = (@_ == 3) ? pop() : undef;
9176 0         0 my $options = {};
9177 0 0       0 $options->{query} = $params if defined $params;
9178 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/files/:file_path', [@_], $options );
9179             }
9180              
9181             =item raw_file
9182              
9183             my $content = $api->raw_file(
9184             $project_id,
9185             $file_path,
9186             \%params,
9187             );
9188              
9189             Sends a C request to C and returns the raw response content.
9190              
9191             =cut
9192              
9193             sub raw_file {
9194 0     0 1 0 my $self = shift;
9195 0 0 0     0 croak 'raw_file must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
9196 0 0 0     0 croak 'The #1 argument ($project_id) to raw_file must be a scalar' if ref($_[0]) or (!defined $_[0]);
9197 0 0 0     0 croak 'The #2 argument ($file_path) to raw_file must be a scalar' if ref($_[1]) or (!defined $_[1]);
9198 0 0 0     0 croak 'The last argument (\%params) to raw_file must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
9199 0 0       0 my $params = (@_ == 3) ? pop() : undef;
9200 0         0 my $options = {};
9201 0         0 $options->{decode} = 0;
9202 0 0       0 $options->{query} = $params if defined $params;
9203 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/files/:file_path/raw', [@_], $options );
9204             }
9205              
9206             =item create_file
9207              
9208             $api->create_file(
9209             $project_id,
9210             $file_path,
9211             \%params,
9212             );
9213              
9214             Sends a C request to C.
9215              
9216             =cut
9217              
9218             sub create_file {
9219 0     0 1 0 my $self = shift;
9220 0 0 0     0 croak 'create_file must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
9221 0 0 0     0 croak 'The #1 argument ($project_id) to create_file must be a scalar' if ref($_[0]) or (!defined $_[0]);
9222 0 0 0     0 croak 'The #2 argument ($file_path) to create_file must be a scalar' if ref($_[1]) or (!defined $_[1]);
9223 0 0 0     0 croak 'The last argument (\%params) to create_file must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
9224 0 0       0 my $params = (@_ == 3) ? pop() : undef;
9225 0         0 my $options = {};
9226 0         0 $options->{decode} = 0;
9227 0 0       0 $options->{content} = $params if defined $params;
9228 0         0 $self->_call_rest_client( 'POST', 'projects/:project_id/repository/files/:file_path', [@_], $options );
9229 0         0 return;
9230             }
9231              
9232             =item edit_file
9233              
9234             $api->edit_file(
9235             $project_id,
9236             $file_path,
9237             \%params,
9238             );
9239              
9240             Sends a C request to C.
9241              
9242             =cut
9243              
9244             sub edit_file {
9245 0     0 1 0 my $self = shift;
9246 0 0 0     0 croak 'edit_file must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
9247 0 0 0     0 croak 'The #1 argument ($project_id) to edit_file must be a scalar' if ref($_[0]) or (!defined $_[0]);
9248 0 0 0     0 croak 'The #2 argument ($file_path) to edit_file must be a scalar' if ref($_[1]) or (!defined $_[1]);
9249 0 0 0     0 croak 'The last argument (\%params) to edit_file must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
9250 0 0       0 my $params = (@_ == 3) ? pop() : undef;
9251 0         0 my $options = {};
9252 0         0 $options->{decode} = 0;
9253 0 0       0 $options->{content} = $params if defined $params;
9254 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/repository/files/:file_path', [@_], $options );
9255 0         0 return;
9256             }
9257              
9258             =item delete_file
9259              
9260             $api->delete_file(
9261             $project_id,
9262             $file_path,
9263             \%params,
9264             );
9265              
9266             Sends a C request to C.
9267              
9268             =cut
9269              
9270             sub delete_file {
9271 0     0 1 0 my $self = shift;
9272 0 0 0     0 croak 'delete_file must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
9273 0 0 0     0 croak 'The #1 argument ($project_id) to delete_file must be a scalar' if ref($_[0]) or (!defined $_[0]);
9274 0 0 0     0 croak 'The #2 argument ($file_path) to delete_file must be a scalar' if ref($_[1]) or (!defined $_[1]);
9275 0 0 0     0 croak 'The last argument (\%params) to delete_file must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
9276 0 0       0 my $params = (@_ == 3) ? pop() : undef;
9277 0         0 my $options = {};
9278 0         0 $options->{decode} = 0;
9279 0 0       0 $options->{content} = $params if defined $params;
9280 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/repository/files/:file_path', [@_], $options );
9281 0         0 return;
9282             }
9283              
9284             =back
9285              
9286             =head2 Runners
9287              
9288             See L.
9289              
9290             =over
9291              
9292             =item runners
9293              
9294             my $runners = $api->runners(
9295             \%params,
9296             );
9297              
9298             Sends a C request to C and returns the decoded response content.
9299              
9300             =cut
9301              
9302             sub runners {
9303 0     0 1 0 my $self = shift;
9304 0 0 0     0 croak 'runners must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
9305 0 0 0     0 croak 'The last argument (\%params) to runners must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
9306 0 0       0 my $params = (@_ == 1) ? pop() : undef;
9307 0         0 my $options = {};
9308 0 0       0 $options->{query} = $params if defined $params;
9309 0         0 return $self->_call_rest_client( 'GET', 'runners', [@_], $options );
9310             }
9311              
9312             =item all_runners
9313              
9314             my $runners = $api->all_runners(
9315             \%params,
9316             );
9317              
9318             Sends a C request to C and returns the decoded response content.
9319              
9320             =cut
9321              
9322             sub all_runners {
9323 0     0 1 0 my $self = shift;
9324 0 0 0     0 croak 'all_runners must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
9325 0 0 0     0 croak 'The last argument (\%params) to all_runners must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
9326 0 0       0 my $params = (@_ == 1) ? pop() : undef;
9327 0         0 my $options = {};
9328 0 0       0 $options->{query} = $params if defined $params;
9329 0         0 return $self->_call_rest_client( 'GET', 'runners/all', [@_], $options );
9330             }
9331              
9332             =item runner
9333              
9334             my $runner = $api->runner(
9335             $runner_id,
9336             );
9337              
9338             Sends a C request to C and returns the decoded response content.
9339              
9340             =cut
9341              
9342             sub runner {
9343 0     0 1 0 my $self = shift;
9344 0 0       0 croak 'runner must be called with 1 arguments' if @_ != 1;
9345 0 0 0     0 croak 'The #1 argument ($runner_id) to runner must be a scalar' if ref($_[0]) or (!defined $_[0]);
9346 0         0 my $options = {};
9347 0         0 return $self->_call_rest_client( 'GET', 'runners/:runner_id', [@_], $options );
9348             }
9349              
9350             =item update_runner
9351              
9352             my $runner = $api->update_runner(
9353             $runner_id,
9354             \%params,
9355             );
9356              
9357             Sends a C request to C and returns the decoded response content.
9358              
9359             =cut
9360              
9361             sub update_runner {
9362 0     0 1 0 my $self = shift;
9363 0 0 0     0 croak 'update_runner must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9364 0 0 0     0 croak 'The #1 argument ($runner_id) to update_runner must be a scalar' if ref($_[0]) or (!defined $_[0]);
9365 0 0 0     0 croak 'The last argument (\%params) to update_runner must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9366 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9367 0         0 my $options = {};
9368 0 0       0 $options->{content} = $params if defined $params;
9369 0         0 return $self->_call_rest_client( 'PUT', 'runners/:runner_id', [@_], $options );
9370             }
9371              
9372             =item delete_runner
9373              
9374             $api->delete_runner(
9375             $runner_id,
9376             );
9377              
9378             Sends a C request to C.
9379              
9380             =cut
9381              
9382             sub delete_runner {
9383 0     0 1 0 my $self = shift;
9384 0 0       0 croak 'delete_runner must be called with 1 arguments' if @_ != 1;
9385 0 0 0     0 croak 'The #1 argument ($runner_id) to delete_runner must be a scalar' if ref($_[0]) or (!defined $_[0]);
9386 0         0 my $options = {};
9387 0         0 $options->{decode} = 0;
9388 0         0 $self->_call_rest_client( 'DELETE', 'runners/:runner_id', [@_], $options );
9389 0         0 return;
9390             }
9391              
9392             =item runner_jobs
9393              
9394             my $jobs = $api->runner_jobs(
9395             $runner_id,
9396             \%params,
9397             );
9398              
9399             Sends a C request to C and returns the decoded response content.
9400              
9401             =cut
9402              
9403             sub runner_jobs {
9404 0     0 1 0 my $self = shift;
9405 0 0 0     0 croak 'runner_jobs must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9406 0 0 0     0 croak 'The #1 argument ($runner_id) to runner_jobs must be a scalar' if ref($_[0]) or (!defined $_[0]);
9407 0 0 0     0 croak 'The last argument (\%params) to runner_jobs must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9408 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9409 0         0 my $options = {};
9410 0 0       0 $options->{query} = $params if defined $params;
9411 0         0 return $self->_call_rest_client( 'GET', 'runners/:runner_id/jobs', [@_], $options );
9412             }
9413              
9414             =item project_runners
9415              
9416             my $runners = $api->project_runners(
9417             $project_id,
9418             \%params,
9419             );
9420              
9421             Sends a C request to C and returns the decoded response content.
9422              
9423             =cut
9424              
9425             sub project_runners {
9426 0     0 1 0 my $self = shift;
9427 0 0 0     0 croak 'project_runners must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9428 0 0 0     0 croak 'The #1 argument ($project_id) to project_runners must be a scalar' if ref($_[0]) or (!defined $_[0]);
9429 0 0 0     0 croak 'The last argument (\%params) to project_runners must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9430 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9431 0         0 my $options = {};
9432 0 0       0 $options->{query} = $params if defined $params;
9433 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/runners', [@_], $options );
9434             }
9435              
9436             =item enable_project_runner
9437              
9438             my $runner = $api->enable_project_runner(
9439             $project_id,
9440             \%params,
9441             );
9442              
9443             Sends a C request to C and returns the decoded response content.
9444              
9445             =cut
9446              
9447             sub enable_project_runner {
9448 0     0 1 0 my $self = shift;
9449 0 0 0     0 croak 'enable_project_runner must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9450 0 0 0     0 croak 'The #1 argument ($project_id) to enable_project_runner must be a scalar' if ref($_[0]) or (!defined $_[0]);
9451 0 0 0     0 croak 'The last argument (\%params) to enable_project_runner must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9452 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9453 0         0 my $options = {};
9454 0 0       0 $options->{content} = $params if defined $params;
9455 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/runners', [@_], $options );
9456             }
9457              
9458             =item disable_project_runner
9459              
9460             my $runner = $api->disable_project_runner(
9461             $project_id,
9462             $runner_id,
9463             );
9464              
9465             Sends a C request to C and returns the decoded response content.
9466              
9467             =cut
9468              
9469             sub disable_project_runner {
9470 0     0 1 0 my $self = shift;
9471 0 0       0 croak 'disable_project_runner must be called with 2 arguments' if @_ != 2;
9472 0 0 0     0 croak 'The #1 argument ($project_id) to disable_project_runner must be a scalar' if ref($_[0]) or (!defined $_[0]);
9473 0 0 0     0 croak 'The #2 argument ($runner_id) to disable_project_runner must be a scalar' if ref($_[1]) or (!defined $_[1]);
9474 0         0 my $options = {};
9475 0         0 return $self->_call_rest_client( 'DELETE', 'projects/:project_id/runners/:runner_id', [@_], $options );
9476             }
9477              
9478             =back
9479              
9480             =head2 Search
9481              
9482             See L.
9483              
9484             =over
9485              
9486             =item search
9487              
9488             my $results = $api->search(
9489             \%params,
9490             );
9491              
9492             Sends a C request to C and returns the decoded response content.
9493              
9494             =cut
9495              
9496             sub search {
9497 0     0 1 0 my $self = shift;
9498 0 0 0     0 croak 'search must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
9499 0 0 0     0 croak 'The last argument (\%params) to search must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
9500 0 0       0 my $params = (@_ == 1) ? pop() : undef;
9501 0         0 my $options = {};
9502 0 0       0 $options->{query} = $params if defined $params;
9503 0         0 return $self->_call_rest_client( 'GET', 'search', [@_], $options );
9504             }
9505              
9506             =back
9507              
9508             =head2 Services
9509              
9510             See L.
9511              
9512             =over
9513              
9514             =item project_service
9515              
9516             my $service = $api->project_service(
9517             $project_id,
9518             $service_name,
9519             );
9520              
9521             Sends a C request to C and returns the decoded response content.
9522              
9523             =cut
9524              
9525             sub project_service {
9526 0     0 1 0 my $self = shift;
9527 0 0       0 croak 'project_service must be called with 2 arguments' if @_ != 2;
9528 0 0 0     0 croak 'The #1 argument ($project_id) to project_service must be a scalar' if ref($_[0]) or (!defined $_[0]);
9529 0 0 0     0 croak 'The #2 argument ($service_name) to project_service must be a scalar' if ref($_[1]) or (!defined $_[1]);
9530 0         0 my $options = {};
9531 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/services/:service_name', [@_], $options );
9532             }
9533              
9534             =item edit_project_service
9535              
9536             $api->edit_project_service(
9537             $project_id,
9538             $service_name,
9539             \%params,
9540             );
9541              
9542             Sends a C request to C.
9543              
9544             =cut
9545              
9546             sub edit_project_service {
9547 0     0 1 0 my $self = shift;
9548 0 0 0     0 croak 'edit_project_service must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
9549 0 0 0     0 croak 'The #1 argument ($project_id) to edit_project_service must be a scalar' if ref($_[0]) or (!defined $_[0]);
9550 0 0 0     0 croak 'The #2 argument ($service_name) to edit_project_service must be a scalar' if ref($_[1]) or (!defined $_[1]);
9551 0 0 0     0 croak 'The last argument (\%params) to edit_project_service must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
9552 0 0       0 my $params = (@_ == 3) ? pop() : undef;
9553 0         0 my $options = {};
9554 0         0 $options->{decode} = 0;
9555 0 0       0 $options->{content} = $params if defined $params;
9556 0         0 $self->_call_rest_client( 'PUT', 'projects/:project_id/services/:service_name', [@_], $options );
9557 0         0 return;
9558             }
9559              
9560             =item delete_project_service
9561              
9562             $api->delete_project_service(
9563             $project_id,
9564             $service_name,
9565             );
9566              
9567             Sends a C request to C.
9568              
9569             =cut
9570              
9571             sub delete_project_service {
9572 0     0 1 0 my $self = shift;
9573 0 0       0 croak 'delete_project_service must be called with 2 arguments' if @_ != 2;
9574 0 0 0     0 croak 'The #1 argument ($project_id) to delete_project_service must be a scalar' if ref($_[0]) or (!defined $_[0]);
9575 0 0 0     0 croak 'The #2 argument ($service_name) to delete_project_service must be a scalar' if ref($_[1]) or (!defined $_[1]);
9576 0         0 my $options = {};
9577 0         0 $options->{decode} = 0;
9578 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/services/:service_name', [@_], $options );
9579 0         0 return;
9580             }
9581              
9582             =back
9583              
9584             =head2 Application settings
9585              
9586             See L.
9587              
9588             =over
9589              
9590             =item settings
9591              
9592             my $settings = $api->settings();
9593              
9594             Sends a C request to C and returns the decoded response content.
9595              
9596             =cut
9597              
9598             sub settings {
9599 0     0 1 0 my $self = shift;
9600 0 0       0 croak "The settings method does not take any arguments" if @_;
9601 0         0 my $options = {};
9602 0         0 return $self->_call_rest_client( 'GET', 'application/settings', [@_], $options );
9603             }
9604              
9605             =item update_settings
9606              
9607             my $settings = $api->update_settings(
9608             \%params,
9609             );
9610              
9611             Sends a C request to C and returns the decoded response content.
9612              
9613             =cut
9614              
9615             sub update_settings {
9616 0     0 1 0 my $self = shift;
9617 0 0 0     0 croak 'update_settings must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
9618 0 0 0     0 croak 'The last argument (\%params) to update_settings must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
9619 0 0       0 my $params = (@_ == 1) ? pop() : undef;
9620 0         0 my $options = {};
9621 0 0       0 $options->{content} = $params if defined $params;
9622 0         0 return $self->_call_rest_client( 'PUT', 'application/settings', [@_], $options );
9623             }
9624              
9625             =back
9626              
9627             =head2 Application statistics
9628              
9629             See L.
9630              
9631             =over
9632              
9633             =item statistics
9634              
9635             my $statistics = $api->statistics();
9636              
9637             Sends a C request to C and returns the decoded response content.
9638              
9639             =cut
9640              
9641             sub statistics {
9642 0     0 1 0 my $self = shift;
9643 0 0       0 croak "The statistics method does not take any arguments" if @_;
9644 0         0 my $options = {};
9645 0         0 return $self->_call_rest_client( 'GET', 'application/statistics', [@_], $options );
9646             }
9647              
9648             =back
9649              
9650             =head2 Sidekiq Metrics
9651              
9652             See L.
9653              
9654             =over
9655              
9656             =item queue_metrics
9657              
9658             my $metrics = $api->queue_metrics();
9659              
9660             Sends a C request to C and returns the decoded response content.
9661              
9662             =cut
9663              
9664             sub queue_metrics {
9665 0     0 1 0 my $self = shift;
9666 0 0       0 croak "The queue_metrics method does not take any arguments" if @_;
9667 0         0 my $options = {};
9668 0         0 return $self->_call_rest_client( 'GET', 'sidekiq/queue_metrics', [@_], $options );
9669             }
9670              
9671             =item process_metrics
9672              
9673             my $metrics = $api->process_metrics();
9674              
9675             Sends a C request to C and returns the decoded response content.
9676              
9677             =cut
9678              
9679             sub process_metrics {
9680 0     0 1 0 my $self = shift;
9681 0 0       0 croak "The process_metrics method does not take any arguments" if @_;
9682 0         0 my $options = {};
9683 0         0 return $self->_call_rest_client( 'GET', 'sidekiq/process_metrics', [@_], $options );
9684             }
9685              
9686             =item job_stats
9687              
9688             my $stats = $api->job_stats();
9689              
9690             Sends a C request to C and returns the decoded response content.
9691              
9692             =cut
9693              
9694             sub job_stats {
9695 0     0 1 0 my $self = shift;
9696 0 0       0 croak "The job_stats method does not take any arguments" if @_;
9697 0         0 my $options = {};
9698 0         0 return $self->_call_rest_client( 'GET', 'sidekiq/job_stats', [@_], $options );
9699             }
9700              
9701             =item compound_metrics
9702              
9703             my $metrics = $api->compound_metrics();
9704              
9705             Sends a C request to C and returns the decoded response content.
9706              
9707             =cut
9708              
9709             sub compound_metrics {
9710 0     0 1 0 my $self = shift;
9711 0 0       0 croak "The compound_metrics method does not take any arguments" if @_;
9712 0         0 my $options = {};
9713 0         0 return $self->_call_rest_client( 'GET', 'sidekiq/compound_metrics', [@_], $options );
9714             }
9715              
9716             =back
9717              
9718             =head2 System hooks
9719              
9720             See L.
9721              
9722             =over
9723              
9724             =item hooks
9725              
9726             my $hooks = $api->hooks(
9727             \%params,
9728             );
9729              
9730             Sends a C request to C and returns the decoded response content.
9731              
9732             =cut
9733              
9734             sub hooks {
9735 0     0 1 0 my $self = shift;
9736 0 0 0     0 croak 'hooks must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
9737 0 0 0     0 croak 'The last argument (\%params) to hooks must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
9738 0 0       0 my $params = (@_ == 1) ? pop() : undef;
9739 0         0 my $options = {};
9740 0 0       0 $options->{query} = $params if defined $params;
9741 0         0 return $self->_call_rest_client( 'GET', 'hooks', [@_], $options );
9742             }
9743              
9744             =item create_hook
9745              
9746             $api->create_hook(
9747             \%params,
9748             );
9749              
9750             Sends a C request to C.
9751              
9752             =cut
9753              
9754             sub create_hook {
9755 0     0 1 0 my $self = shift;
9756 0 0 0     0 croak 'create_hook must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
9757 0 0 0     0 croak 'The last argument (\%params) to create_hook must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
9758 0 0       0 my $params = (@_ == 1) ? pop() : undef;
9759 0         0 my $options = {};
9760 0         0 $options->{decode} = 0;
9761 0 0       0 $options->{content} = $params if defined $params;
9762 0         0 $self->_call_rest_client( 'POST', 'hooks', [@_], $options );
9763 0         0 return;
9764             }
9765              
9766             =item test_hook
9767              
9768             my $hook = $api->test_hook(
9769             $hook_id,
9770             );
9771              
9772             Sends a C request to C and returns the decoded response content.
9773              
9774             =cut
9775              
9776             sub test_hook {
9777 0     0 1 0 my $self = shift;
9778 0 0       0 croak 'test_hook must be called with 1 arguments' if @_ != 1;
9779 0 0 0     0 croak 'The #1 argument ($hook_id) to test_hook must be a scalar' if ref($_[0]) or (!defined $_[0]);
9780 0         0 my $options = {};
9781 0         0 return $self->_call_rest_client( 'GET', 'hooks/:hook_id', [@_], $options );
9782             }
9783              
9784             =item delete_hook
9785              
9786             $api->delete_hook(
9787             $hook_id,
9788             );
9789              
9790             Sends a C request to C.
9791              
9792             =cut
9793              
9794             sub delete_hook {
9795 0     0 1 0 my $self = shift;
9796 0 0       0 croak 'delete_hook must be called with 1 arguments' if @_ != 1;
9797 0 0 0     0 croak 'The #1 argument ($hook_id) to delete_hook must be a scalar' if ref($_[0]) or (!defined $_[0]);
9798 0         0 my $options = {};
9799 0         0 $options->{decode} = 0;
9800 0         0 $self->_call_rest_client( 'DELETE', 'hooks/:hook_id', [@_], $options );
9801 0         0 return;
9802             }
9803              
9804             =back
9805              
9806             =head2 Tags
9807              
9808             See L.
9809              
9810             =over
9811              
9812             =item tags
9813              
9814             my $tags = $api->tags(
9815             $project_id,
9816             \%params,
9817             );
9818              
9819             Sends a C request to C and returns the decoded response content.
9820              
9821             =cut
9822              
9823             sub tags {
9824 0     0 1 0 my $self = shift;
9825 0 0 0     0 croak 'tags must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9826 0 0 0     0 croak 'The #1 argument ($project_id) to tags must be a scalar' if ref($_[0]) or (!defined $_[0]);
9827 0 0 0     0 croak 'The last argument (\%params) to tags must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9828 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9829 0         0 my $options = {};
9830 0 0       0 $options->{query} = $params if defined $params;
9831 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/tags', [@_], $options );
9832             }
9833              
9834             =item tag
9835              
9836             my $tag = $api->tag(
9837             $project_id,
9838             $tag_name,
9839             );
9840              
9841             Sends a C request to C and returns the decoded response content.
9842              
9843             =cut
9844              
9845             sub tag {
9846 0     0 1 0 my $self = shift;
9847 0 0       0 croak 'tag must be called with 2 arguments' if @_ != 2;
9848 0 0 0     0 croak 'The #1 argument ($project_id) to tag must be a scalar' if ref($_[0]) or (!defined $_[0]);
9849 0 0 0     0 croak 'The #2 argument ($tag_name) to tag must be a scalar' if ref($_[1]) or (!defined $_[1]);
9850 0         0 my $options = {};
9851 0         0 return $self->_call_rest_client( 'GET', 'projects/:project_id/repository/tags/:tag_name', [@_], $options );
9852             }
9853              
9854             =item create_tag
9855              
9856             my $tag = $api->create_tag(
9857             $project_id,
9858             \%params,
9859             );
9860              
9861             Sends a C request to C and returns the decoded response content.
9862              
9863             =cut
9864              
9865             sub create_tag {
9866 0     0 1 0 my $self = shift;
9867 0 0 0     0 croak 'create_tag must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
9868 0 0 0     0 croak 'The #1 argument ($project_id) to create_tag must be a scalar' if ref($_[0]) or (!defined $_[0]);
9869 0 0 0     0 croak 'The last argument (\%params) to create_tag must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
9870 0 0       0 my $params = (@_ == 2) ? pop() : undef;
9871 0         0 my $options = {};
9872 0 0       0 $options->{content} = $params if defined $params;
9873 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/repository/tags', [@_], $options );
9874             }
9875              
9876             =item delete_tag
9877              
9878             $api->delete_tag(
9879             $project_id,
9880             $tag_name,
9881             );
9882              
9883             Sends a C request to C.
9884              
9885             =cut
9886              
9887             sub delete_tag {
9888 0     0 1 0 my $self = shift;
9889 0 0       0 croak 'delete_tag must be called with 2 arguments' if @_ != 2;
9890 0 0 0     0 croak 'The #1 argument ($project_id) to delete_tag must be a scalar' if ref($_[0]) or (!defined $_[0]);
9891 0 0 0     0 croak 'The #2 argument ($tag_name) to delete_tag must be a scalar' if ref($_[1]) or (!defined $_[1]);
9892 0         0 my $options = {};
9893 0         0 $options->{decode} = 0;
9894 0         0 $self->_call_rest_client( 'DELETE', 'projects/:project_id/repository/tags/:tag_name', [@_], $options );
9895 0         0 return;
9896             }
9897              
9898             =item create_tag_release
9899              
9900             my $release = $api->create_tag_release(
9901             $project_id,
9902             $tag_name,
9903             \%params,
9904             );
9905              
9906             Sends a C request to C and returns the decoded response content.
9907              
9908             =cut
9909              
9910             sub create_tag_release {
9911 0     0 1 0 my $self = shift;
9912 0 0 0     0 croak 'create_tag_release must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
9913 0 0 0     0 croak 'The #1 argument ($project_id) to create_tag_release must be a scalar' if ref($_[0]) or (!defined $_[0]);
9914 0 0 0     0 croak 'The #2 argument ($tag_name) to create_tag_release must be a scalar' if ref($_[1]) or (!defined $_[1]);
9915 0 0 0     0 croak 'The last argument (\%params) to create_tag_release must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
9916 0 0       0 my $params = (@_ == 3) ? pop() : undef;
9917 0         0 my $options = {};
9918 0 0       0 $options->{content} = $params if defined $params;
9919 0         0 return $self->_call_rest_client( 'POST', 'projects/:project_id/repository/tags/:tag_name/release', [@_], $options );
9920             }
9921              
9922             =item update_tag_release
9923              
9924             my $release = $api->update_tag_release(
9925             $project_id,
9926             $tag_name,
9927             \%params,
9928             );
9929              
9930             Sends a C request to C and returns the decoded response content.
9931              
9932             =cut
9933              
9934             sub update_tag_release {
9935 0     0 1 0 my $self = shift;
9936 0 0 0     0 croak 'update_tag_release must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
9937 0 0 0     0 croak 'The #1 argument ($project_id) to update_tag_release must be a scalar' if ref($_[0]) or (!defined $_[0]);
9938 0 0 0     0 croak 'The #2 argument ($tag_name) to update_tag_release must be a scalar' if ref($_[1]) or (!defined $_[1]);
9939 0 0 0     0 croak 'The last argument (\%params) to update_tag_release must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
9940 0 0       0 my $params = (@_ == 3) ? pop() : undef;
9941 0         0 my $options = {};
9942 0 0       0 $options->{content} = $params if defined $params;
9943 0         0 return $self->_call_rest_client( 'PUT', 'projects/:project_id/repository/tags/:tag_name/release', [@_], $options );
9944             }
9945              
9946             =back
9947              
9948             =head2 Todos
9949              
9950             See L.
9951              
9952             =over
9953              
9954             =item todos
9955              
9956             my $todos = $api->todos(
9957             \%params,
9958             );
9959              
9960             Sends a C request to C and returns the decoded response content.
9961              
9962             =cut
9963              
9964             sub todos {
9965 0     0 1 0 my $self = shift;
9966 0 0 0     0 croak 'todos must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
9967 0 0 0     0 croak 'The last argument (\%params) to todos must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
9968 0 0       0 my $params = (@_ == 1) ? pop() : undef;
9969 0         0 my $options = {};
9970 0 0       0 $options->{query} = $params if defined $params;
9971 0         0 return $self->_call_rest_client( 'GET', 'todos', [@_], $options );
9972             }
9973              
9974             =item mark_todo_done
9975              
9976             my $todo = $api->mark_todo_done(
9977             $todo_id,
9978             );
9979              
9980             Sends a C request to C and returns the decoded response content.
9981              
9982             =cut
9983              
9984             sub mark_todo_done {
9985 0     0 1 0 my $self = shift;
9986 0 0       0 croak 'mark_todo_done must be called with 1 arguments' if @_ != 1;
9987 0 0 0     0 croak 'The #1 argument ($todo_id) to mark_todo_done must be a scalar' if ref($_[0]) or (!defined $_[0]);
9988 0         0 my $options = {};
9989 0         0 return $self->_call_rest_client( 'POST', 'todos/:todo_id/mark_as_done', [@_], $options );
9990             }
9991              
9992             =item mark_all_todos_done
9993              
9994             $api->mark_all_todos_done();
9995              
9996             Sends a C request to C.
9997              
9998             =cut
9999              
10000             sub mark_all_todos_done {
10001 0     0 1 0 my $self = shift;
10002 0 0       0 croak "The mark_all_todos_done method does not take any arguments" if @_;
10003 0         0 my $options = {};
10004 0         0 $options->{decode} = 0;
10005 0         0 $self->_call_rest_client( 'POST', 'todos/mark_as_done', [@_], $options );
10006 0         0 return;
10007             }
10008              
10009             =back
10010              
10011             =head2 Users
10012              
10013             See L.
10014              
10015             =over
10016              
10017             =item users
10018              
10019             my $users = $api->users(
10020             \%params,
10021             );
10022              
10023             Sends a C request to C and returns the decoded response content.
10024              
10025             =cut
10026              
10027             sub users {
10028 6     6 1 905 my $self = shift;
10029 6 50 33     29 croak 'users must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10030 6 50 33     15 croak 'The last argument (\%params) to users must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10031 6 50       11 my $params = (@_ == 1) ? pop() : undef;
10032 6         9 my $options = {};
10033 6 50       12 $options->{query} = $params if defined $params;
10034 6         16 return $self->_call_rest_client( 'GET', 'users', [@_], $options );
10035             }
10036              
10037             =item user
10038              
10039             my $user = $api->user(
10040             $user_id,
10041             );
10042              
10043             Sends a C request to C and returns the decoded response content.
10044              
10045             =cut
10046              
10047             sub user {
10048 0     0 1 0 my $self = shift;
10049 0 0       0 croak 'user must be called with 1 arguments' if @_ != 1;
10050 0 0 0     0 croak 'The #1 argument ($user_id) to user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10051 0         0 my $options = {};
10052 0         0 return $self->_call_rest_client( 'GET', 'users/:user_id', [@_], $options );
10053             }
10054              
10055             =item create_user
10056              
10057             $api->create_user(
10058             \%params,
10059             );
10060              
10061             Sends a C request to C.
10062              
10063             =cut
10064              
10065             sub create_user {
10066 3     3 1 1579 my $self = shift;
10067 3 50 33     14 croak 'create_user must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10068 3 50 33     12 croak 'The last argument (\%params) to create_user must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10069 3 50       8 my $params = (@_ == 1) ? pop() : undef;
10070 3         4 my $options = {};
10071 3         6 $options->{decode} = 0;
10072 3 50       8 $options->{content} = $params if defined $params;
10073 3         10 $self->_call_rest_client( 'POST', 'users', [@_], $options );
10074 3         11 return;
10075             }
10076              
10077             =item edit_user
10078              
10079             $api->edit_user(
10080             $user_id,
10081             \%params,
10082             );
10083              
10084             Sends a C request to C.
10085              
10086             =cut
10087              
10088             sub edit_user {
10089 1     1 1 1141 my $self = shift;
10090 1 50 33     8 croak 'edit_user must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10091 1 50 33     7 croak 'The #1 argument ($user_id) to edit_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10092 1 50 33     5 croak 'The last argument (\%params) to edit_user must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10093 1 50       4 my $params = (@_ == 2) ? pop() : undef;
10094 1         1 my $options = {};
10095 1         3 $options->{decode} = 0;
10096 1 50       3 $options->{content} = $params if defined $params;
10097 1         4 $self->_call_rest_client( 'PUT', 'users/:user_id', [@_], $options );
10098 1         4 return;
10099             }
10100              
10101             =item delete_user
10102              
10103             $api->delete_user(
10104             $user_id,
10105             \%params,
10106             );
10107              
10108             Sends a C request to C.
10109              
10110             =cut
10111              
10112             sub delete_user {
10113 1     1 1 1209 my $self = shift;
10114 1 50 33     7 croak 'delete_user must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10115 1 50 33     5 croak 'The #1 argument ($user_id) to delete_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10116 1 50 33     13 croak 'The last argument (\%params) to delete_user must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10117 1 50       5 my $params = (@_ == 2) ? pop() : undef;
10118 1         2 my $options = {};
10119 1         2 $options->{decode} = 0;
10120 1 50       4 $options->{content} = $params if defined $params;
10121 1         5 $self->_call_rest_client( 'DELETE', 'users/:user_id', [@_], $options );
10122 1         3 return;
10123             }
10124              
10125             =item current_user
10126              
10127             my $user = $api->current_user();
10128              
10129             Sends a C request to C and returns the decoded response content.
10130              
10131             =cut
10132              
10133             sub current_user {
10134 0     0 1   my $self = shift;
10135 0 0         croak "The current_user method does not take any arguments" if @_;
10136 0           my $options = {};
10137 0           return $self->_call_rest_client( 'GET', 'user', [@_], $options );
10138             }
10139              
10140             =item current_user_ssh_keys
10141              
10142             my $keys = $api->current_user_ssh_keys(
10143             \%params,
10144             );
10145              
10146             Sends a C request to C and returns the decoded response content.
10147              
10148             =cut
10149              
10150             sub current_user_ssh_keys {
10151 0     0 1   my $self = shift;
10152 0 0 0       croak 'current_user_ssh_keys must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10153 0 0 0       croak 'The last argument (\%params) to current_user_ssh_keys must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10154 0 0         my $params = (@_ == 1) ? pop() : undef;
10155 0           my $options = {};
10156 0 0         $options->{query} = $params if defined $params;
10157 0           return $self->_call_rest_client( 'GET', 'user/keys', [@_], $options );
10158             }
10159              
10160             =item user_ssh_keys
10161              
10162             my $keys = $api->user_ssh_keys(
10163             $user_id,
10164             \%params,
10165             );
10166              
10167             Sends a C request to C and returns the decoded response content.
10168              
10169             =cut
10170              
10171             sub user_ssh_keys {
10172 0     0 1   my $self = shift;
10173 0 0 0       croak 'user_ssh_keys must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10174 0 0 0       croak 'The #1 argument ($user_id) to user_ssh_keys must be a scalar' if ref($_[0]) or (!defined $_[0]);
10175 0 0 0       croak 'The last argument (\%params) to user_ssh_keys must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10176 0 0         my $params = (@_ == 2) ? pop() : undef;
10177 0           my $options = {};
10178 0 0         $options->{query} = $params if defined $params;
10179 0           return $self->_call_rest_client( 'GET', 'users/:user_id/keys', [@_], $options );
10180             }
10181              
10182             =item user_ssh_key
10183              
10184             my $key = $api->user_ssh_key(
10185             $key_id,
10186             );
10187              
10188             Sends a C request to C and returns the decoded response content.
10189              
10190             =cut
10191              
10192             sub user_ssh_key {
10193 0     0 1   my $self = shift;
10194 0 0         croak 'user_ssh_key must be called with 1 arguments' if @_ != 1;
10195 0 0 0       croak 'The #1 argument ($key_id) to user_ssh_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
10196 0           my $options = {};
10197 0           return $self->_call_rest_client( 'GET', 'user/keys/:key_id', [@_], $options );
10198             }
10199              
10200             =item create_current_user_ssh_key
10201              
10202             $api->create_current_user_ssh_key(
10203             \%params,
10204             );
10205              
10206             Sends a C request to C.
10207              
10208             =cut
10209              
10210             sub create_current_user_ssh_key {
10211 0     0 1   my $self = shift;
10212 0 0 0       croak 'create_current_user_ssh_key must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10213 0 0 0       croak 'The last argument (\%params) to create_current_user_ssh_key must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10214 0 0         my $params = (@_ == 1) ? pop() : undef;
10215 0           my $options = {};
10216 0           $options->{decode} = 0;
10217 0 0         $options->{content} = $params if defined $params;
10218 0           $self->_call_rest_client( 'POST', 'user/keys', [@_], $options );
10219 0           return;
10220             }
10221              
10222             =item create_user_ssh_key
10223              
10224             $api->create_user_ssh_key(
10225             $user_id,
10226             \%params,
10227             );
10228              
10229             Sends a C request to C.
10230              
10231             =cut
10232              
10233             sub create_user_ssh_key {
10234 0     0 1   my $self = shift;
10235 0 0 0       croak 'create_user_ssh_key must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10236 0 0 0       croak 'The #1 argument ($user_id) to create_user_ssh_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
10237 0 0 0       croak 'The last argument (\%params) to create_user_ssh_key must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10238 0 0         my $params = (@_ == 2) ? pop() : undef;
10239 0           my $options = {};
10240 0           $options->{decode} = 0;
10241 0 0         $options->{content} = $params if defined $params;
10242 0           $self->_call_rest_client( 'POST', 'users/:user_id/keys', [@_], $options );
10243 0           return;
10244             }
10245              
10246             =item delete_current_user_ssh_key
10247              
10248             $api->delete_current_user_ssh_key(
10249             $key_id,
10250             );
10251              
10252             Sends a C request to C.
10253              
10254             =cut
10255              
10256             sub delete_current_user_ssh_key {
10257 0     0 1   my $self = shift;
10258 0 0         croak 'delete_current_user_ssh_key must be called with 1 arguments' if @_ != 1;
10259 0 0 0       croak 'The #1 argument ($key_id) to delete_current_user_ssh_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
10260 0           my $options = {};
10261 0           $options->{decode} = 0;
10262 0           $self->_call_rest_client( 'DELETE', 'user/keys/:key_id', [@_], $options );
10263 0           return;
10264             }
10265              
10266             =item delete_user_ssh_key
10267              
10268             $api->delete_user_ssh_key(
10269             $user_id,
10270             $key_id,
10271             );
10272              
10273             Sends a C request to C.
10274              
10275             =cut
10276              
10277             sub delete_user_ssh_key {
10278 0     0 1   my $self = shift;
10279 0 0         croak 'delete_user_ssh_key must be called with 2 arguments' if @_ != 2;
10280 0 0 0       croak 'The #1 argument ($user_id) to delete_user_ssh_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
10281 0 0 0       croak 'The #2 argument ($key_id) to delete_user_ssh_key must be a scalar' if ref($_[1]) or (!defined $_[1]);
10282 0           my $options = {};
10283 0           $options->{decode} = 0;
10284 0           $self->_call_rest_client( 'DELETE', 'users/:user_id/keys/:key_id', [@_], $options );
10285 0           return;
10286             }
10287              
10288             =item current_user_gpg_keys
10289              
10290             my $keys = $api->current_user_gpg_keys(
10291             \%params,
10292             );
10293              
10294             Sends a C request to C and returns the decoded response content.
10295              
10296             =cut
10297              
10298             sub current_user_gpg_keys {
10299 0     0 1   my $self = shift;
10300 0 0 0       croak 'current_user_gpg_keys must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10301 0 0 0       croak 'The last argument (\%params) to current_user_gpg_keys must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10302 0 0         my $params = (@_ == 1) ? pop() : undef;
10303 0           my $options = {};
10304 0 0         $options->{query} = $params if defined $params;
10305 0           return $self->_call_rest_client( 'GET', 'user/gpg_keys', [@_], $options );
10306             }
10307              
10308             =item current_user_gpg_key
10309              
10310             my $key = $api->current_user_gpg_key(
10311             $key_id,
10312             );
10313              
10314             Sends a C request to C and returns the decoded response content.
10315              
10316             =cut
10317              
10318             sub current_user_gpg_key {
10319 0     0 1   my $self = shift;
10320 0 0         croak 'current_user_gpg_key must be called with 1 arguments' if @_ != 1;
10321 0 0 0       croak 'The #1 argument ($key_id) to current_user_gpg_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
10322 0           my $options = {};
10323 0           return $self->_call_rest_client( 'GET', 'user/gpg_keys/:key_id', [@_], $options );
10324             }
10325              
10326             =item create_current_user_gpg_key
10327              
10328             $api->create_current_user_gpg_key(
10329             \%params,
10330             );
10331              
10332             Sends a C request to C.
10333              
10334             =cut
10335              
10336             sub create_current_user_gpg_key {
10337 0     0 1   my $self = shift;
10338 0 0 0       croak 'create_current_user_gpg_key must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10339 0 0 0       croak 'The last argument (\%params) to create_current_user_gpg_key must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10340 0 0         my $params = (@_ == 1) ? pop() : undef;
10341 0           my $options = {};
10342 0           $options->{decode} = 0;
10343 0 0         $options->{content} = $params if defined $params;
10344 0           $self->_call_rest_client( 'POST', 'user/gpg_keys', [@_], $options );
10345 0           return;
10346             }
10347              
10348             =item delete_current_user_gpg_key
10349              
10350             $api->delete_current_user_gpg_key(
10351             $key_id,
10352             );
10353              
10354             Sends a C request to C.
10355              
10356             =cut
10357              
10358             sub delete_current_user_gpg_key {
10359 0     0 1   my $self = shift;
10360 0 0         croak 'delete_current_user_gpg_key must be called with 1 arguments' if @_ != 1;
10361 0 0 0       croak 'The #1 argument ($key_id) to delete_current_user_gpg_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
10362 0           my $options = {};
10363 0           $options->{decode} = 0;
10364 0           $self->_call_rest_client( 'DELETE', 'user/gpg_keys/:key_id', [@_], $options );
10365 0           return;
10366             }
10367              
10368             =item user_gpg_keys
10369              
10370             my $keys = $api->user_gpg_keys(
10371             $user_id,
10372             \%params,
10373             );
10374              
10375             Sends a C request to C and returns the decoded response content.
10376              
10377             =cut
10378              
10379             sub user_gpg_keys {
10380 0     0 1   my $self = shift;
10381 0 0 0       croak 'user_gpg_keys must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10382 0 0 0       croak 'The #1 argument ($user_id) to user_gpg_keys must be a scalar' if ref($_[0]) or (!defined $_[0]);
10383 0 0 0       croak 'The last argument (\%params) to user_gpg_keys must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10384 0 0         my $params = (@_ == 2) ? pop() : undef;
10385 0           my $options = {};
10386 0 0         $options->{query} = $params if defined $params;
10387 0           return $self->_call_rest_client( 'GET', 'users/:user_id/gpg_keys', [@_], $options );
10388             }
10389              
10390             =item user_gpg_key
10391              
10392             my $key = $api->user_gpg_key(
10393             $user_id,
10394             $key_id,
10395             );
10396              
10397             Sends a C request to C and returns the decoded response content.
10398              
10399             =cut
10400              
10401             sub user_gpg_key {
10402 0     0 1   my $self = shift;
10403 0 0         croak 'user_gpg_key must be called with 2 arguments' if @_ != 2;
10404 0 0 0       croak 'The #1 argument ($user_id) to user_gpg_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
10405 0 0 0       croak 'The #2 argument ($key_id) to user_gpg_key must be a scalar' if ref($_[1]) or (!defined $_[1]);
10406 0           my $options = {};
10407 0           return $self->_call_rest_client( 'GET', 'users/:user_id/gpg_keys/:key_id', [@_], $options );
10408             }
10409              
10410             =item create_user_gpg_key
10411              
10412             my $keys = $api->create_user_gpg_key(
10413             $user_id,
10414             \%params,
10415             );
10416              
10417             Sends a C request to C and returns the decoded response content.
10418              
10419             =cut
10420              
10421             sub create_user_gpg_key {
10422 0     0 1   my $self = shift;
10423 0 0 0       croak 'create_user_gpg_key must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10424 0 0 0       croak 'The #1 argument ($user_id) to create_user_gpg_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
10425 0 0 0       croak 'The last argument (\%params) to create_user_gpg_key must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10426 0 0         my $params = (@_ == 2) ? pop() : undef;
10427 0           my $options = {};
10428 0 0         $options->{content} = $params if defined $params;
10429 0           return $self->_call_rest_client( 'POST', 'users/:user_id/gpg_keys', [@_], $options );
10430             }
10431              
10432             =item delete_user_gpg_key
10433              
10434             $api->delete_user_gpg_key(
10435             $user_id,
10436             $key_id,
10437             );
10438              
10439             Sends a C request to C.
10440              
10441             =cut
10442              
10443             sub delete_user_gpg_key {
10444 0     0 1   my $self = shift;
10445 0 0         croak 'delete_user_gpg_key must be called with 2 arguments' if @_ != 2;
10446 0 0 0       croak 'The #1 argument ($user_id) to delete_user_gpg_key must be a scalar' if ref($_[0]) or (!defined $_[0]);
10447 0 0 0       croak 'The #2 argument ($key_id) to delete_user_gpg_key must be a scalar' if ref($_[1]) or (!defined $_[1]);
10448 0           my $options = {};
10449 0           $options->{decode} = 0;
10450 0           $self->_call_rest_client( 'DELETE', 'users/:user_id/gpg_keys/:key_id', [@_], $options );
10451 0           return;
10452             }
10453              
10454             =item current_user_emails
10455              
10456             my $emails = $api->current_user_emails(
10457             \%params,
10458             );
10459              
10460             Sends a C request to C and returns the decoded response content.
10461              
10462             =cut
10463              
10464             sub current_user_emails {
10465 0     0 1   my $self = shift;
10466 0 0 0       croak 'current_user_emails must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10467 0 0 0       croak 'The last argument (\%params) to current_user_emails must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10468 0 0         my $params = (@_ == 1) ? pop() : undef;
10469 0           my $options = {};
10470 0 0         $options->{query} = $params if defined $params;
10471 0           return $self->_call_rest_client( 'GET', 'user/emails', [@_], $options );
10472             }
10473              
10474             =item user_emails
10475              
10476             my $emails = $api->user_emails(
10477             $user_id,
10478             \%params,
10479             );
10480              
10481             Sends a C request to C and returns the decoded response content.
10482              
10483             =cut
10484              
10485             sub user_emails {
10486 0     0 1   my $self = shift;
10487 0 0 0       croak 'user_emails must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10488 0 0 0       croak 'The #1 argument ($user_id) to user_emails must be a scalar' if ref($_[0]) or (!defined $_[0]);
10489 0 0 0       croak 'The last argument (\%params) to user_emails must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10490 0 0         my $params = (@_ == 2) ? pop() : undef;
10491 0           my $options = {};
10492 0 0         $options->{query} = $params if defined $params;
10493 0           return $self->_call_rest_client( 'GET', 'users/:user_id/emails', [@_], $options );
10494             }
10495              
10496             =item current_user_email
10497              
10498             my $email = $api->current_user_email(
10499             $email_id,
10500             );
10501              
10502             Sends a C request to C and returns the decoded response content.
10503              
10504             =cut
10505              
10506             sub current_user_email {
10507 0     0 1   my $self = shift;
10508 0 0         croak 'current_user_email must be called with 1 arguments' if @_ != 1;
10509 0 0 0       croak 'The #1 argument ($email_id) to current_user_email must be a scalar' if ref($_[0]) or (!defined $_[0]);
10510 0           my $options = {};
10511 0           return $self->_call_rest_client( 'GET', 'user/emails/:email_id', [@_], $options );
10512             }
10513              
10514             =item create_current_user_email
10515              
10516             my $email = $api->create_current_user_email(
10517             \%params,
10518             );
10519              
10520             Sends a C request to C and returns the decoded response content.
10521              
10522             =cut
10523              
10524             sub create_current_user_email {
10525 0     0 1   my $self = shift;
10526 0 0 0       croak 'create_current_user_email must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10527 0 0 0       croak 'The last argument (\%params) to create_current_user_email must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10528 0 0         my $params = (@_ == 1) ? pop() : undef;
10529 0           my $options = {};
10530 0 0         $options->{content} = $params if defined $params;
10531 0           return $self->_call_rest_client( 'POST', 'user/emails', [@_], $options );
10532             }
10533              
10534             =item create_user_email
10535              
10536             my $email = $api->create_user_email(
10537             $user_id,
10538             \%params,
10539             );
10540              
10541             Sends a C request to C and returns the decoded response content.
10542              
10543             =cut
10544              
10545             sub create_user_email {
10546 0     0 1   my $self = shift;
10547 0 0 0       croak 'create_user_email must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10548 0 0 0       croak 'The #1 argument ($user_id) to create_user_email must be a scalar' if ref($_[0]) or (!defined $_[0]);
10549 0 0 0       croak 'The last argument (\%params) to create_user_email must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10550 0 0         my $params = (@_ == 2) ? pop() : undef;
10551 0           my $options = {};
10552 0 0         $options->{content} = $params if defined $params;
10553 0           return $self->_call_rest_client( 'POST', 'users/:user_id/emails', [@_], $options );
10554             }
10555              
10556             =item delete_current_user_email
10557              
10558             $api->delete_current_user_email(
10559             $email_id,
10560             );
10561              
10562             Sends a C request to C.
10563              
10564             =cut
10565              
10566             sub delete_current_user_email {
10567 0     0 1   my $self = shift;
10568 0 0         croak 'delete_current_user_email must be called with 1 arguments' if @_ != 1;
10569 0 0 0       croak 'The #1 argument ($email_id) to delete_current_user_email must be a scalar' if ref($_[0]) or (!defined $_[0]);
10570 0           my $options = {};
10571 0           $options->{decode} = 0;
10572 0           $self->_call_rest_client( 'DELETE', 'user/emails/:email_id', [@_], $options );
10573 0           return;
10574             }
10575              
10576             =item delete_user_email
10577              
10578             $api->delete_user_email(
10579             $user_id,
10580             $email_id,
10581             );
10582              
10583             Sends a C request to C.
10584              
10585             =cut
10586              
10587             sub delete_user_email {
10588 0     0 1   my $self = shift;
10589 0 0         croak 'delete_user_email must be called with 2 arguments' if @_ != 2;
10590 0 0 0       croak 'The #1 argument ($user_id) to delete_user_email must be a scalar' if ref($_[0]) or (!defined $_[0]);
10591 0 0 0       croak 'The #2 argument ($email_id) to delete_user_email must be a scalar' if ref($_[1]) or (!defined $_[1]);
10592 0           my $options = {};
10593 0           $options->{decode} = 0;
10594 0           $self->_call_rest_client( 'DELETE', 'users/:user_id/emails/:email_id', [@_], $options );
10595 0           return;
10596             }
10597              
10598             =item block_user
10599              
10600             my $success = $api->block_user(
10601             $user_id,
10602             );
10603              
10604             Sends a C request to C and returns the decoded response content.
10605              
10606             =cut
10607              
10608             sub block_user {
10609 0     0 1   my $self = shift;
10610 0 0         croak 'block_user must be called with 1 arguments' if @_ != 1;
10611 0 0 0       croak 'The #1 argument ($user_id) to block_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10612 0           my $options = {};
10613 0           return $self->_call_rest_client( 'POST', 'users/:user_id/block', [@_], $options );
10614             }
10615              
10616             =item unblock_user
10617              
10618             my $success = $api->unblock_user(
10619             $user_id,
10620             );
10621              
10622             Sends a C request to C and returns the decoded response content.
10623              
10624             =cut
10625              
10626             sub unblock_user {
10627 0     0 1   my $self = shift;
10628 0 0         croak 'unblock_user must be called with 1 arguments' if @_ != 1;
10629 0 0 0       croak 'The #1 argument ($user_id) to unblock_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10630 0           my $options = {};
10631 0           return $self->_call_rest_client( 'POST', 'users/:user_id/unblock', [@_], $options );
10632             }
10633              
10634             =item approve_user
10635              
10636             $api->approve_user(
10637             $user_id,
10638             );
10639              
10640             Sends a C request to C.
10641              
10642             =cut
10643              
10644             sub approve_user {
10645 0     0 1   my $self = shift;
10646 0 0         croak 'approve_user must be called with 1 arguments' if @_ != 1;
10647 0 0 0       croak 'The #1 argument ($user_id) to approve_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10648 0           my $options = {};
10649 0           $options->{decode} = 0;
10650 0           $self->_call_rest_client( 'POST', 'users/:user_id/approve', [@_], $options );
10651 0           return;
10652             }
10653              
10654             =item reject_user
10655              
10656             $api->reject_user(
10657             $user_id,
10658             );
10659              
10660             Sends a C request to C.
10661              
10662             =cut
10663              
10664             sub reject_user {
10665 0     0 1   my $self = shift;
10666 0 0         croak 'reject_user must be called with 1 arguments' if @_ != 1;
10667 0 0 0       croak 'The #1 argument ($user_id) to reject_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10668 0           my $options = {};
10669 0           $options->{decode} = 0;
10670 0           $self->_call_rest_client( 'POST', 'users/:user_id/reject', [@_], $options );
10671 0           return;
10672             }
10673              
10674             =item activate_user
10675              
10676             $api->activate_user(
10677             $user_id,
10678             );
10679              
10680             Sends a C request to C.
10681              
10682             =cut
10683              
10684             sub activate_user {
10685 0     0 1   my $self = shift;
10686 0 0         croak 'activate_user must be called with 1 arguments' if @_ != 1;
10687 0 0 0       croak 'The #1 argument ($user_id) to activate_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10688 0           my $options = {};
10689 0           $options->{decode} = 0;
10690 0           $self->_call_rest_client( 'POST', 'users/:user_id/activate', [@_], $options );
10691 0           return;
10692             }
10693              
10694             =item deactivate_user
10695              
10696             $api->deactivate_user(
10697             $user_id,
10698             );
10699              
10700             Sends a C request to C.
10701              
10702             =cut
10703              
10704             sub deactivate_user {
10705 0     0 1   my $self = shift;
10706 0 0         croak 'deactivate_user must be called with 1 arguments' if @_ != 1;
10707 0 0 0       croak 'The #1 argument ($user_id) to deactivate_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10708 0           my $options = {};
10709 0           $options->{decode} = 0;
10710 0           $self->_call_rest_client( 'POST', 'users/:user_id/deactivate', [@_], $options );
10711 0           return;
10712             }
10713              
10714             =item ban_user
10715              
10716             $api->ban_user(
10717             $user_id,
10718             );
10719              
10720             Sends a C request to C.
10721              
10722             =cut
10723              
10724             sub ban_user {
10725 0     0 1   my $self = shift;
10726 0 0         croak 'ban_user must be called with 1 arguments' if @_ != 1;
10727 0 0 0       croak 'The #1 argument ($user_id) to ban_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10728 0           my $options = {};
10729 0           $options->{decode} = 0;
10730 0           $self->_call_rest_client( 'POST', 'users/:user_id/ban', [@_], $options );
10731 0           return;
10732             }
10733              
10734             =item unban_user
10735              
10736             $api->unban_user(
10737             $user_id,
10738             );
10739              
10740             Sends a C request to C.
10741              
10742             =cut
10743              
10744             sub unban_user {
10745 0     0 1   my $self = shift;
10746 0 0         croak 'unban_user must be called with 1 arguments' if @_ != 1;
10747 0 0 0       croak 'The #1 argument ($user_id) to unban_user must be a scalar' if ref($_[0]) or (!defined $_[0]);
10748 0           my $options = {};
10749 0           $options->{decode} = 0;
10750 0           $self->_call_rest_client( 'POST', 'users/:user_id/unban', [@_], $options );
10751 0           return;
10752             }
10753              
10754             =item user_impersonation_tokens
10755              
10756             my $tokens = $api->user_impersonation_tokens(
10757             $user_id,
10758             \%params,
10759             );
10760              
10761             Sends a C request to C and returns the decoded response content.
10762              
10763             =cut
10764              
10765             sub user_impersonation_tokens {
10766 0     0 1   my $self = shift;
10767 0 0 0       croak 'user_impersonation_tokens must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10768 0 0 0       croak 'The #1 argument ($user_id) to user_impersonation_tokens must be a scalar' if ref($_[0]) or (!defined $_[0]);
10769 0 0 0       croak 'The last argument (\%params) to user_impersonation_tokens must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10770 0 0         my $params = (@_ == 2) ? pop() : undef;
10771 0           my $options = {};
10772 0 0         $options->{query} = $params if defined $params;
10773 0           return $self->_call_rest_client( 'GET', 'users/:user_id/impersonation_tokens', [@_], $options );
10774             }
10775              
10776             =item user_impersonation_token
10777              
10778             my $token = $api->user_impersonation_token(
10779             $user_id,
10780             $impersonation_token_id,
10781             );
10782              
10783             Sends a C request to C and returns the decoded response content.
10784              
10785             =cut
10786              
10787             sub user_impersonation_token {
10788 0     0 1   my $self = shift;
10789 0 0         croak 'user_impersonation_token must be called with 2 arguments' if @_ != 2;
10790 0 0 0       croak 'The #1 argument ($user_id) to user_impersonation_token must be a scalar' if ref($_[0]) or (!defined $_[0]);
10791 0 0 0       croak 'The #2 argument ($impersonation_token_id) to user_impersonation_token must be a scalar' if ref($_[1]) or (!defined $_[1]);
10792 0           my $options = {};
10793 0           return $self->_call_rest_client( 'GET', 'users/:user_id/impersonation_tokens/:impersonation_token_id', [@_], $options );
10794             }
10795              
10796             =item create_user_impersonation_token
10797              
10798             my $token = $api->create_user_impersonation_token(
10799             $user_id,
10800             \%params,
10801             );
10802              
10803             Sends a C request to C and returns the decoded response content.
10804              
10805             =cut
10806              
10807             sub create_user_impersonation_token {
10808 0     0 1   my $self = shift;
10809 0 0 0       croak 'create_user_impersonation_token must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10810 0 0 0       croak 'The #1 argument ($user_id) to create_user_impersonation_token must be a scalar' if ref($_[0]) or (!defined $_[0]);
10811 0 0 0       croak 'The last argument (\%params) to create_user_impersonation_token must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10812 0 0         my $params = (@_ == 2) ? pop() : undef;
10813 0           my $options = {};
10814 0 0         $options->{content} = $params if defined $params;
10815 0           return $self->_call_rest_client( 'POST', 'users/:user_id/impersonation_tokens', [@_], $options );
10816             }
10817              
10818             =item delete_user_impersonation_token
10819              
10820             $api->delete_user_impersonation_token(
10821             $user_id,
10822             $impersonation_token_id,
10823             );
10824              
10825             Sends a C request to C.
10826              
10827             =cut
10828              
10829             sub delete_user_impersonation_token {
10830 0     0 1   my $self = shift;
10831 0 0         croak 'delete_user_impersonation_token must be called with 2 arguments' if @_ != 2;
10832 0 0 0       croak 'The #1 argument ($user_id) to delete_user_impersonation_token must be a scalar' if ref($_[0]) or (!defined $_[0]);
10833 0 0 0       croak 'The #2 argument ($impersonation_token_id) to delete_user_impersonation_token must be a scalar' if ref($_[1]) or (!defined $_[1]);
10834 0           my $options = {};
10835 0           $options->{decode} = 0;
10836 0           $self->_call_rest_client( 'DELETE', 'users/:user_id/impersonation_tokens/:impersonation_token_id', [@_], $options );
10837 0           return;
10838             }
10839              
10840             =item all_user_activities
10841              
10842             my $activities = $api->all_user_activities(
10843             \%params,
10844             );
10845              
10846             Sends a C request to C and returns the decoded response content.
10847              
10848             =cut
10849              
10850             sub all_user_activities {
10851 0     0 1   my $self = shift;
10852 0 0 0       croak 'all_user_activities must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10853 0 0 0       croak 'The last argument (\%params) to all_user_activities must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10854 0 0         my $params = (@_ == 1) ? pop() : undef;
10855 0           my $options = {};
10856 0 0         $options->{query} = $params if defined $params;
10857 0           return $self->_call_rest_client( 'GET', 'user/activities', [@_], $options );
10858             }
10859              
10860             =item user_memberships
10861              
10862             my $memberships = $api->user_memberships(
10863             $user_id,
10864             \%params,
10865             );
10866              
10867             Sends a C request to C and returns the decoded response content.
10868              
10869             =cut
10870              
10871             sub user_memberships {
10872 0     0 1   my $self = shift;
10873 0 0 0       croak 'user_memberships must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10874 0 0 0       croak 'The #1 argument ($user_id) to user_memberships must be a scalar' if ref($_[0]) or (!defined $_[0]);
10875 0 0 0       croak 'The last argument (\%params) to user_memberships must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10876 0 0         my $params = (@_ == 2) ? pop() : undef;
10877 0           my $options = {};
10878 0 0         $options->{query} = $params if defined $params;
10879 0           return $self->_call_rest_client( 'GET', 'users/:user_id/memberships', [@_], $options );
10880             }
10881              
10882             =back
10883              
10884             =head2 Validate the .gitlab-ci.yml
10885              
10886             See L.
10887              
10888             =over
10889              
10890             =item lint
10891              
10892             my $result = $api->lint(
10893             \%params,
10894             );
10895              
10896             Sends a C request to C and returns the decoded response content.
10897              
10898             =cut
10899              
10900             sub lint {
10901 0     0 1   my $self = shift;
10902 0 0 0       croak 'lint must be called with 0 to 1 arguments' if @_ < 0 or @_ > 1;
10903 0 0 0       croak 'The last argument (\%params) to lint must be a hash ref' if defined($_[0]) and ref($_[0]) ne 'HASH';
10904 0 0         my $params = (@_ == 1) ? pop() : undef;
10905 0           my $options = {};
10906 0 0         $options->{content} = $params if defined $params;
10907 0           return $self->_call_rest_client( 'POST', 'lint', [@_], $options );
10908             }
10909              
10910             =back
10911              
10912             =head2 Version
10913              
10914             See L.
10915              
10916             =over
10917              
10918             =item version
10919              
10920             my $version = $api->version();
10921              
10922             Sends a C request to C and returns the decoded response content.
10923              
10924             =cut
10925              
10926             sub version {
10927 0     0 1   my $self = shift;
10928 0 0         croak "The version method does not take any arguments" if @_;
10929 0           my $options = {};
10930 0           return $self->_call_rest_client( 'GET', 'version', [@_], $options );
10931             }
10932              
10933             =back
10934              
10935             =head2 Wikis
10936              
10937             See L.
10938              
10939             =over
10940              
10941             =item wiki_pages
10942              
10943             my $pages = $api->wiki_pages(
10944             $project_id,
10945             \%params,
10946             );
10947              
10948             Sends a C request to C and returns the decoded response content.
10949              
10950             =cut
10951              
10952             sub wiki_pages {
10953 0     0 1   my $self = shift;
10954 0 0 0       croak 'wiki_pages must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10955 0 0 0       croak 'The #1 argument ($project_id) to wiki_pages must be a scalar' if ref($_[0]) or (!defined $_[0]);
10956 0 0 0       croak 'The last argument (\%params) to wiki_pages must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10957 0 0         my $params = (@_ == 2) ? pop() : undef;
10958 0           my $options = {};
10959 0 0         $options->{query} = $params if defined $params;
10960 0           return $self->_call_rest_client( 'GET', 'projects/:project_id/wikis', [@_], $options );
10961             }
10962              
10963             =item wiki_page
10964              
10965             my $pages = $api->wiki_page(
10966             $project_id,
10967             $slug,
10968             );
10969              
10970             Sends a C request to C and returns the decoded response content.
10971              
10972             =cut
10973              
10974             sub wiki_page {
10975 0     0 1   my $self = shift;
10976 0 0         croak 'wiki_page must be called with 2 arguments' if @_ != 2;
10977 0 0 0       croak 'The #1 argument ($project_id) to wiki_page must be a scalar' if ref($_[0]) or (!defined $_[0]);
10978 0 0 0       croak 'The #2 argument ($slug) to wiki_page must be a scalar' if ref($_[1]) or (!defined $_[1]);
10979 0           my $options = {};
10980 0           return $self->_call_rest_client( 'GET', 'projects/:project_id/wikis/:slug', [@_], $options );
10981             }
10982              
10983             =item create_wiki_page
10984              
10985             my $page = $api->create_wiki_page(
10986             $project_id,
10987             \%params,
10988             );
10989              
10990             Sends a C request to C and returns the decoded response content.
10991              
10992             =cut
10993              
10994             sub create_wiki_page {
10995 0     0 1   my $self = shift;
10996 0 0 0       croak 'create_wiki_page must be called with 1 to 2 arguments' if @_ < 1 or @_ > 2;
10997 0 0 0       croak 'The #1 argument ($project_id) to create_wiki_page must be a scalar' if ref($_[0]) or (!defined $_[0]);
10998 0 0 0       croak 'The last argument (\%params) to create_wiki_page must be a hash ref' if defined($_[1]) and ref($_[1]) ne 'HASH';
10999 0 0         my $params = (@_ == 2) ? pop() : undef;
11000 0           my $options = {};
11001 0 0         $options->{content} = $params if defined $params;
11002 0           return $self->_call_rest_client( 'POST', 'projects/:project_id/wikis', [@_], $options );
11003             }
11004              
11005             =item edit_wiki_page
11006              
11007             my $page = $api->edit_wiki_page(
11008             $project_id,
11009             $slug,
11010             \%params,
11011             );
11012              
11013             Sends a C request to C and returns the decoded response content.
11014              
11015             =cut
11016              
11017             sub edit_wiki_page {
11018 0     0 1   my $self = shift;
11019 0 0 0       croak 'edit_wiki_page must be called with 2 to 3 arguments' if @_ < 2 or @_ > 3;
11020 0 0 0       croak 'The #1 argument ($project_id) to edit_wiki_page must be a scalar' if ref($_[0]) or (!defined $_[0]);
11021 0 0 0       croak 'The #2 argument ($slug) to edit_wiki_page must be a scalar' if ref($_[1]) or (!defined $_[1]);
11022 0 0 0       croak 'The last argument (\%params) to edit_wiki_page must be a hash ref' if defined($_[2]) and ref($_[2]) ne 'HASH';
11023 0 0         my $params = (@_ == 3) ? pop() : undef;
11024 0           my $options = {};
11025 0 0         $options->{content} = $params if defined $params;
11026 0           return $self->_call_rest_client( 'PUT', 'projects/:project_id/wikis/:slug', [@_], $options );
11027             }
11028              
11029             =item delete_wiki_page
11030              
11031             $api->delete_wiki_page(
11032             $project_id,
11033             $slug,
11034             );
11035              
11036             Sends a C request to C.
11037              
11038             =cut
11039              
11040             sub delete_wiki_page {
11041 0     0 1   my $self = shift;
11042 0 0         croak 'delete_wiki_page must be called with 2 arguments' if @_ != 2;
11043 0 0 0       croak 'The #1 argument ($project_id) to delete_wiki_page must be a scalar' if ref($_[0]) or (!defined $_[0]);
11044 0 0 0       croak 'The #2 argument ($slug) to delete_wiki_page must be a scalar' if ref($_[1]) or (!defined $_[1]);
11045 0           my $options = {};
11046 0           $options->{decode} = 0;
11047 0           $self->_call_rest_client( 'DELETE', 'projects/:project_id/wikis/:slug', [@_], $options );
11048 0           return;
11049             }
11050              
11051             =back
11052              
11053             =cut
11054              
11055             1;
11056             __END__