=head1 NAME

 Imgur::API::Endpoint::Gallery

=head1 DESCRIPTION

 Access to the imgur Gallery API Endpoint. 

 See: https://api.imgur.com/endpoints/gallery

=cut

=head1 METHODS
 
=head2 get

 Returns the images in the gallery. For example the main gallery is https://api.imgur.com/3/gallery/hot/viral/0.json

B<Parameters>

=item *
 C<window> I<optional>

 Change the date range of the request if the section is "top", day | week | month | year | all, defaults to day

=item *
 C<page> I<optional>

 integer - the data paging number

=item *
 C<section> I<optional>

 hot | top | user - defaults to hot

=item *
 C<showViral> I<optional>

 true | false - Show or hide viral images from the 'user' section. Defaults to true

=item *
 C<sort> I<optional>

 viral | top | time | rising (only available with user section) - defaults to viral

=cut

=head2 memeSubgallery

 View images for memes subgallery

B<Parameters>

=item *
 C<sort> I<optional>

 viral | time | top - defaults to viral

=item *
 C<page> I<optional>

 integer - the data paging number

=item *
 C<window> I<optional>

 Change the date range of the request if the sort is "top", day | week | month | year | all, defaults to week

=cut

=head2 memeSubgalleryImage

 View a single image in the memes gallery

B<Parameters>

=item *
 C<image_id> I<required>

 The ID for the image.

=cut

=head2 subreddit

 View gallery images for a subreddit

B<Parameters>

=item *
 C<page> I<optional>

 integer - the data paging number

=item *
 C<window> I<optional>

 Change the date range of the request if the sort is "top", day | week | month | year | all, defaults to week

=item *
 C<subreddit> I<required>

 pics - A valid subreddit name

=item *
 C<sort> I<optional>

 time | top - defaults to time

=cut

=head2 subredditImage

 View a single image in the subreddit

B<Parameters>

=item *
 C<subreddit> I<required>

 pics - A valid subreddit name

=item *
 C<image_id> I<required>

 The ID for the image.

=cut

=head2 tag

 View images for a gallery tag

B<Parameters>

=item *
 C<window> I<optional>

 Change the date range of the request if the sort is "top", day | week | month | year | all, defaults to week

=item *
 C<page> I<optional>

 integer - the data paging number

=item *
 C<sort> I<optional>

 viral | time | top - defaults to viral

=item *
 C<t_name> I<required>

 The name of the tag.

=cut

=head2 tagImage

 View a single image in a gallery tag

B<Parameters>

=item *
 C<t_name> I<required>

 The name of the tag.

=item *
 C<image_id> I<required>

 The ID for the image.

=cut

=head2 itemTags

 View tags for a gallery item

B<Parameters>

=item *
 C<id> I<required>

 ID of the gallery item

=item *
 C<gallery> I<required>

 Gallery

=cut

=head2 tagVote

 Vote for a tag, 'up' or 'down' vote. Send the same value again to undo a vote.

B<Parameters>

=item *
 C<t_name> I<required>

 Name of the tag (implicitly created, if doesn't exist)

=item *
 C<vote> I<required>

 'up' or 'down'

=item *
 C<gallery> I<required>

 Gallery

=item *
 C<id> I<required>

 ID of the gallery item

=cut

=head2 updateGalleryTags

 Update the tags for a post in the gallery

B<Parameters>

=item *
 C<tags> I<required>

 The name of the tags you wish to associate with a post. Can be passed as tags[]=funny&tags[]=cat or tags=funny,cat/td>
                    

=item *
 C<gallery> I<required>

 Gallery

=item *
 C<id> I<required>

 ID of the gallery item

=cut

=head2 search

 Search the gallery with a given query string.

B<Parameters>

=item *
 C<sort> I<optional>

 time | viral | top - defaults to time

=item *
 C<page> I<optional>

 integer - the data paging number

=item *
 C<window> I<optional>

 Change the date range of the request if the sort is 'top', day | week | month | year | all, defaults to all.

=cut

=head2 random

 Returns a random set of gallery images.

B<Parameters>

=item *
 C<page> I<optional>

 A page of random gallery images, from 0-50. Pages are regenerated every hour.

=cut

=head2 toGallery

 Share an Album or Image to the Gallery.

B<Parameters>

=item *
 C<gallery> I<required>

 Gallery

=item *
 C<tags[]> I<optional>

 The name of the tags you wish to associate with a post. Can be passed as tags[]=funny&tags[]=cat or tags=funny,cat

=item *
 C<mature> I<optional>

 If the post is mature, set this value to 1.

=item *
 C<title> I<required>

 The title of the image. This is required.

=item *
 C<topic> I<optional>

 Topic name

=item *
 C<terms> I<optional>

 If the user has not accepted our terms yet, this endpoint will return an error. To by-pass the terms in general simply set this value to 1.

=cut

=head2 fromGallery

 Remove an image from the gallery. You must be logged in as the owner of the item to do this action.

B<Parameters>

=item *
 C<gallery> I<required>

 Gallery

=cut

=head2 album

 Get additional information about an album in the gallery.

B<Parameters>

=item *
 C<gallery> I<required>

 Gallery

=cut

=head2 image

 Get additional information about an image in the gallery.

B<Parameters>

=item *
 C<gallery> I<required>

 Gallery

=cut

=head2 reporting

 Report an Image in the gallery

B<Parameters>

=item *
 C<reason> I<optional>

 An integer representing the reason for the report
                            Value
                                    Description
                                1
                                    Doesn't belong on Imgur
                                2
                                    Spam
                                3
                                    Abusive
                                4
                                    Mature content not marked as mature
                                5
                                    Pornography
                                

=item *
 C<2> I<required>

 

=item *
 C<5> I<required>

 

=item *
 C<4> I<required>

 

=item *
 C<3> I<required>

 

=item *
 C<1> I<required>

 

=cut

=head2 votes

 Get the vote information about an image

B<Parameters>

=item *
 C<gallery> I<required>

 Gallery

=cut

=head2 voting

 Vote for an image, 'up' or 'down' vote. Send 'veto' to undo a vote.

B<Parameters>

=item *
 C<gallery> I<required>

 Gallery

=item *
 C<vote> I<required>

 Vote

=cut

=head2 comments

 Comment on an image in the gallery.

B<Parameters>

=item *
 C<gallery> I<required>

 Gallery

=item *
 C<sort> I<optional>

 best | top | new - defaults to best 

=cut

=head2 comment

 Information about a specific comment. This action also allows any of the additional actions provided in the Comment Endpoint.

B<Parameters>

=item *
 C<comment> I<required>

 Comment

=item *
 C<gallery> I<required>

 Gallery

=cut

=head2 commentCreation

 Create a comment for an image.

B<Parameters>

=item *
 C<comment> I<required>

 The text of the comment.

=item *
 C<gallery> I<required>

 Gallery

=cut

=head2 commentReply

 Reply to a comment that has been created for an image.

B<Parameters>

=item *
 C<commentReply> I<required>

 CommentReply

=item *
 C<comment> I<required>

 The text you want to use as the reply.

=item *
 C<gallery> I<required>

 Gallery

=cut

=head2 commentIds

 List all of the IDs for the comments on an image.

B<Parameters>

=item *
 C<gallery> I<required>

 Gallery

=cut

=head2 commentCount

 The number of comments on an Image.

B<Parameters>

=item *
 C<gallery> I<required>

 Gallery

=cut


