Provided by: libpithub-perl_0.01040-1_all
NAME
Pithub::Issues - Github v3 Issues API
VERSION
version 0.01040
METHODS
assignees Provides access to Pithub::Issues::Assignees. comments Provides access to Pithub::Issues::Comments. create • Create an issue POST /repos/:user/:repo/issues Parameters: • user: mandatory string • repo: mandatory string • data: mandatory hashref, having following keys: • title: mandatory string • body: optional string • assignee: optional string - Login for the user that this issue should be assigned to. • milestone: optional number - Milestone to associate this issue with. • labels: optional arrayref of strings - Labels to associate with this issue. Examples: my $i = Pithub::Issues->new; my $result = $i->create( user => 'plu', repo => 'Pithub', data => { assignee => 'octocat', body => "I'm having a problem with this.", labels => [ 'Label1', 'Label2' ], milestone => 1, title => 'Found a bug' } ); Response: Status: 201 Created { "url": "https://api.github.com/repos/octocat/Hello-World/issues/1", "html_url": "https://github.com/octocat/Hello-World/issues/1", "number": 1347, "state": "open", "title": "Found a bug", "body": "I'm having a problem with this.", "user": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "labels": [ { "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", "name": "bug", "color": "f29513" } ], "assignee": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "milestone": { "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", "number": 1, "state": "open", "title": "v1.0", "description": "", "creator": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "open_issues": 4, "closed_issues": 8, "created_at": "2011-04-10T20:09:31Z", "due_on": null }, "comments": 0, "pull_request": { "html_url": "https://github.com/octocat/Hello-World/issues/1", "diff_url": "https://github.com/octocat/Hello-World/issues/1.diff", "patch_url": "https://github.com/octocat/Hello-World/issues/1.patch" }, "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z" } events Provides access to Pithub::Issues::Events. get • Get a single issue GET /repos/:user/:repo/issues/:id Parameters: • user: mandatory string • repo: mandatory string • issue_id: mandatory integer Examples: my $i = Pithub::Issues->new; my $result = $i->get( user => 'plu', repo => 'Pithub', issue_id => 1, ); Response: Status: 200 OK { "url": "https://api.github.com/repos/octocat/Hello-World/issues/1", "html_url": "https://github.com/octocat/Hello-World/issues/1", "number": 1347, "state": "open", "title": "Found a bug", "body": "I'm having a problem with this.", "user": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "labels": [ { "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", "name": "bug", "color": "f29513" } ], "assignee": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "milestone": { "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", "number": 1, "state": "open", "title": "v1.0", "description": "", "creator": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "open_issues": 4, "closed_issues": 8, "created_at": "2011-04-10T20:09:31Z", "due_on": null }, "comments": 0, "pull_request": { "html_url": "https://github.com/octocat/Hello-World/issues/1", "diff_url": "https://github.com/octocat/Hello-World/issues/1.diff", "patch_url": "https://github.com/octocat/Hello-World/issues/1.patch" }, "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z" } labels Provides access to Pithub::Issues::Labels. list • List the issues of the authenticated user GET /issues This API call can be influenced via the "params" hashref with following parameters: • filter: one of the following: • assigned: Issues assigned to you (default) • created: Issues created by you • mentioned: Issues mentioning you • subscribed: Issues you're subscribed to updates for • state: one of the following: • open (default) • closed • labels: String list of comma separated Label names. Example: "bug,ui,@high" • sort: one of the following: • created (default) • updated • comments • direction: one of the following: • asc • desc (default) • since: optional string of a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ Examples: my $i = Pithub::Issues->new; my $result = $i->list( params => { filter => 'assigned', state => 'open', labels => 'bug', sort => 'updated', direction => 'asc', } ); Response: Status: 200 OK [ { "url": "https://api.github.com/repos/octocat/Hello-World/issues/1", "html_url": "https://github.com/octocat/Hello-World/issues/1", "number": 1347, "state": "open", "title": "Found a bug", "body": "I'm having a problem with this.", "user": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "labels": [ { "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", "name": "bug", "color": "f29513" } ], "assignee": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "milestone": { "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", "number": 1, "state": "open", "title": "v1.0", "description": "", "creator": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "open_issues": 4, "closed_issues": 8, "created_at": "2011-04-10T20:09:31Z", "due_on": null }, "comments": 0, "pull_request": { "html_url": "https://github.com/octocat/Hello-World/issues/1", "diff_url": "https://github.com/octocat/Hello-World/issues/1.diff", "patch_url": "https://github.com/octocat/Hello-World/issues/1.patch" }, "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z" } ] • List issues for a repository GET /repos/:user/:repo/issues Parameters: • user: mandatory string • repo: mandatory string This API call can be influenced via the "params" hashref with following parameters: • milestone: one of the following: • "Integer" Milestone number • "none" for Issues with no Milestone • "*" for Issues with any Milestone • state: one of the following: • open (default) • closed • assignee: one of the following: • "String" User login • "none" for Issues with no assigned User • "*" for Issues with any assigned User • mentioned: String User login • labels: String list of comma separated Label names. Example: "bug,ui,@high" • sort: one of the following: • created (default) • updated • comments • direction: one of the following: • asc • desc (default) • since: optional string of a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ Examples: my $i = Pithub::Issues->new; my $result = $i->list( user => 'plu', repo => 'Pithub', params => { milestone => 42, state => 'open', labels => 'bug', sort => 'updated', direction => 'asc', } ); Response: Status: 200 OK [ { "url": "https://api.github.com/repos/octocat/Hello-World/issues/1", "html_url": "https://github.com/octocat/Hello-World/issues/1", "number": 1347, "state": "open", "title": "Found a bug", "body": "I'm having a problem with this.", "user": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "labels": [ { "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", "name": "bug", "color": "f29513" } ], "assignee": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "milestone": { "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", "number": 1, "state": "open", "title": "v1.0", "description": "", "creator": { "login": "octocat", "id": 1, "gravatar_url": "https://github.com/images/error/octocat_happy.gif", "url": "https://api.github.com/users/octocat" }, "open_issues": 4, "closed_issues": 8, "created_at": "2011-04-10T20:09:31Z", "due_on": null }, "comments": 0, "pull_request": { "html_url": "https://github.com/octocat/Hello-World/issues/1", "diff_url": "https://github.com/octocat/Hello-World/issues/1.diff", "patch_url": "https://github.com/octocat/Hello-World/issues/1.patch" }, "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z" } ] milestones Provides access to Pithub::Issues::Milestones. update • Edit an issue PATCH /repos/:user/:repo/issues/:id Parameters: • user: mandatory string • repo: mandatory string • data: mandatory hashref, having following keys: • title: mandatory string • body: optional string • assignee: optional string - Login for the user that this issue should be assigned to. • milestone: optional number - Milestone to associate this issue with. • labels: optional arrayref of strings - Labels to associate with this issue. Pass one or more Labels to replace the set of Labels on this Issue. Send an empty arrayref ("[]") to clear all Labels from the Issue. Examples: my $i = Pithub::Issues->new; my $result = $i->update( user => 'plu', repo => 'Pithub', issue_id => 1, data => { assignee => 'octocat', body => "I'm having a problem with this.", labels => [ 'Label1', 'Label2' ], milestone => 1, state => 'open', title => 'Found a bug' } );
AUTHOR
Johannes Plunien <plu@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2011 by Johannes Plunien. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.