Documentation ¶
Overview ¶
Package github provides a client for using the GitHub API.
Construct a new GitHub client, then use the various services on the client to access different parts of the GitHub API. For example:
client := github.NewClient(nil) // list all organizations for user "willnorris" orgs, _, err := client.Organizations.List("willnorris", nil)
Set optional parameters for an API method by passing an Options object.
// list recently updated repositories for org "github" opt := &github.RepositoryListByOrgOptions{Sort: "updated"} repos, _, err := client.Repositories.ListByOrg("github", opt)
The services of a client divide the API into logical chunks and correspond to the structure of the GitHub API documentation at http://developer.github.com/v3/.
Authentication ¶
The go-github library does not directly handle authentication. Instead, when creating a new client, pass an http.Client that can handle authentication for you. The easiest and recommended way to do this is using the goauth2 library, but you can always use any other library that provides an http.Client. If you have an OAuth2 access token (for example, a personal API token), you can use it with the goauth2 using:
import "code.google.com/p/goauth2/oauth" // simple OAuth transport if you already have an access token; // see goauth2 library for full usage t := &oauth.Transport{ Token: &oauth.Token{AccessToken: "..."}, } client := github.NewClient(t.Client()) // list all repositories for the authenticated user repos, _, err := client.Repositories.List("", nil)
Note that when using an authenticated Client, all calls made by the client will include the specified OAuth token. Therefore, authenticated clients should almost never be shared between different users.
Rate Limiting ¶
GitHub imposes a rate limit on all API clients. Unauthenticated clients are limited to 60 requests per hour, while authenticated clients can make up to 5,000 requests per hour. To receive the higher rate limit when making calls that are not issued on behalf of a user, use the UnauthenticatedRateLimitedTransport.
The Rate field on a client tracks the rate limit information based on the most recent API call. This is updated on every call, but may be out of date if it's been some time since the last API call and other clients have made subsequent requests since then. You can always call RateLimit() directly to get the most up-to-date rate limit data for the client.
Learn more about GitHub rate limiting at http://developer.github.com/v3/#rate-limiting.
Creating and Updating Resources ¶
All structs for GitHub resources use pointer values for all non-repeated fields. This allows distinguishing between unset fields and those set to a zero-value. Helper functions have been provided to easily create these pointers for string, bool, and int values. For example:
// create a new private repository named "foo" repo := &github.Repo{ Name: github.String("foo"), Private: github.Bool(true), } client.Repositories.Create("", repo)
Users who have worked with protocol buffers should find this pattern familiar.
Index ¶
- func Bool(v bool) *bool
- func CheckResponse(r *http.Response) error
- func Int(v int) *int
- func String(v string) *string
- func Stringify(message interface{}) string
- type ActivityListStarredOptions
- type ActivityService
- func (s *ActivityService) ListEvents(opt *ListOptions) ([]Event, *Response, error)
- func (s *ActivityService) ListEventsForOrganization(org string, opt *ListOptions) ([]Event, *Response, error)
- func (s *ActivityService) ListEventsForRepoNetwork(owner, repo string, opt *ListOptions) ([]Event, *Response, error)
- func (s *ActivityService) ListEventsPerformedByUser(user string, publicOnly bool, opt *ListOptions) ([]Event, *Response, error)
- func (s *ActivityService) ListEventsRecievedByUser(user string, publicOnly bool, opt *ListOptions) ([]Event, *Response, error)
- func (s *ActivityService) ListIssueEventsForRepository(owner, repo string, opt *ListOptions) ([]Event, *Response, error)
- func (s *ActivityService) ListRepositoryEvents(owner, repo string, opt *ListOptions) ([]Event, *Response, error)
- func (s *ActivityService) ListStarred(user string, opt *ActivityListStarredOptions) ([]Repository, *Response, error)
- func (s *ActivityService) ListUserEventsForOrganization(org, user string, opt *ListOptions) ([]Event, *Response, error)
- func (s *ActivityService) ListWatchers(owner, repo string) ([]User, *Response, error)
- type Client
- func (c *Client) Do(req *http.Request, v interface{}) (*Response, error)
- func (c *Client) NewRequest(method, urlStr string, body interface{}) (*http.Request, error)
- func (c *Client) NewUploadRequest(urlStr string, reader io.Reader, size int64, mediaType string) (*http.Request, error)
- func (c *Client) RateLimit() (*Rate, *Response, error)
- type CodeResult
- type CodeSearchResult
- type Commit
- type CommitAuthor
- type CommitFile
- type CommitStats
- type CommitsComparison
- type CommitsListOptions
- type Error
- type ErrorResponse
- type Event
- type Gist
- type GistComment
- type GistFile
- type GistFilename
- type GistListOptions
- type GistsService
- func (s *GistsService) Create(gist *Gist) (*Gist, *Response, error)
- func (s *GistsService) CreateComment(gistID string, comment *GistComment) (*GistComment, *Response, error)
- func (s *GistsService) Delete(id string) (*Response, error)
- func (s *GistsService) DeleteComment(gistID string, commentID int) (*Response, error)
- func (s *GistsService) Edit(id string, gist *Gist) (*Gist, *Response, error)
- func (s *GistsService) EditComment(gistID string, commentID int, comment *GistComment) (*GistComment, *Response, error)
- func (s *GistsService) Fork(id string) (*Gist, *Response, error)
- func (s *GistsService) Get(id string) (*Gist, *Response, error)
- func (s *GistsService) GetComment(gistID string, commentID int) (*GistComment, *Response, error)
- func (s *GistsService) IsStarred(id string) (bool, *Response, error)
- func (s *GistsService) List(user string, opt *GistListOptions) ([]Gist, *Response, error)
- func (s *GistsService) ListAll(opt *GistListOptions) ([]Gist, *Response, error)
- func (s *GistsService) ListComments(gistID string) ([]GistComment, *Response, error)
- func (s *GistsService) ListStarred(opt *GistListOptions) ([]Gist, *Response, error)
- func (s *GistsService) Star(id string) (*Response, error)
- func (s *GistsService) Unstar(id string) (*Response, error)
- type GitObject
- type GitService
- func (s *GitService) CreateCommit(owner string, repo string, commit *Commit) (*Commit, *Response, error)
- func (s *GitService) CreateRef(owner string, repo string, ref *Reference) (*Reference, *Response, error)
- func (s *GitService) CreateTree(owner string, repo string, baseTree string, entries []TreeEntry) (*Tree, *Response, error)
- func (s *GitService) DeleteRef(owner string, repo string, ref string) (*Response, error)
- func (s *GitService) GetCommit(owner string, repo string, sha string) (*Commit, *Response, error)
- func (s *GitService) GetRef(owner string, repo string, ref string) (*Reference, *Response, error)
- func (s *GitService) GetTree(owner string, repo string, sha string, recursive bool) (*Tree, *Response, error)
- func (s *GitService) ListRefs(owner string, repo string) ([]*Reference, *Response, error)
- func (s *GitService) UpdateRef(owner string, repo string, ref *Reference, force bool) (*Reference, *Response, error)
- type Gitignore
- type GitignoresService
- type Hook
- type Issue
- type IssueComment
- type IssueListByRepoOptions
- type IssueListCommentsOptions
- type IssueListOptions
- type IssueRequest
- type IssuesSearchResult
- type IssuesService
- func (s *IssuesService) AddLabelsToIssue(owner string, repo string, number int, labels []string) ([]Label, *Response, error)
- func (s *IssuesService) Create(owner string, repo string, issue *IssueRequest) (*Issue, *Response, error)
- func (s *IssuesService) CreateComment(owner string, repo string, number int, comment *IssueComment) (*IssueComment, *Response, error)
- func (s *IssuesService) CreateLabel(owner string, repo string, label *Label) (*Label, *Response, error)
- func (s *IssuesService) DeleteComment(owner string, repo string, id int) (*Response, error)
- func (s *IssuesService) DeleteLabel(owner string, repo string, name string) (*Response, error)
- func (s *IssuesService) Edit(owner string, repo string, number int, issue *IssueRequest) (*Issue, *Response, error)
- func (s *IssuesService) EditComment(owner string, repo string, id int, comment *IssueComment) (*IssueComment, *Response, error)
- func (s *IssuesService) EditLabel(owner string, repo string, name string, label *Label) (*Label, *Response, error)
- func (s *IssuesService) Get(owner string, repo string, number int) (*Issue, *Response, error)
- func (s *IssuesService) GetComment(owner string, repo string, id int) (*IssueComment, *Response, error)
- func (s *IssuesService) GetLabel(owner string, repo string, name string) (*Label, *Response, error)
- func (s *IssuesService) IsAssignee(owner string, repo string, user string) (bool, *Response, error)
- func (s *IssuesService) List(all bool, opt *IssueListOptions) ([]Issue, *Response, error)
- func (s *IssuesService) ListAssignees(owner string, repo string) ([]User, *Response, error)
- func (s *IssuesService) ListByOrg(org string, opt *IssueListOptions) ([]Issue, *Response, error)
- func (s *IssuesService) ListByRepo(owner string, repo string, opt *IssueListByRepoOptions) ([]Issue, *Response, error)
- func (s *IssuesService) ListComments(owner string, repo string, number int, opt *IssueListCommentsOptions) ([]IssueComment, *Response, error)
- func (s *IssuesService) ListLabels(owner string, repo string) ([]Label, *Response, error)
- func (s *IssuesService) ListLabelsByIssue(owner string, repo string, number int) ([]Label, *Response, error)
- func (s *IssuesService) ListLabelsForMilestone(owner string, repo string, number int) ([]Label, *Response, error)
- func (s *IssuesService) RemoveLabelForIssue(owner string, repo string, number int, label string) (*Response, error)
- func (s *IssuesService) RemoveLabelsForIssue(owner string, repo string, number int) (*Response, error)
- func (s *IssuesService) ReplaceLabelsForIssue(owner string, repo string, number int, labels []string) ([]Label, *Response, error)
- type Key
- type Label
- type ListMembersOptions
- type ListOptions
- type Organization
- type OrganizationsService
- func (s *OrganizationsService) AddTeamMember(team int, user string) (*Response, error)
- func (s *OrganizationsService) AddTeamRepo(team int, owner string, repo string) (*Response, error)
- func (s *OrganizationsService) ConcealMembership(org, user string) (*Response, error)
- func (s *OrganizationsService) CreateTeam(org string, team *Team) (*Team, *Response, error)
- func (s *OrganizationsService) DeleteTeam(team int) (*Response, error)
- func (s *OrganizationsService) Edit(name string, org *Organization) (*Organization, *Response, error)
- func (s *OrganizationsService) EditTeam(id int, team *Team) (*Team, *Response, error)
- func (s *OrganizationsService) Get(org string) (*Organization, *Response, error)
- func (s *OrganizationsService) GetTeam(team int) (*Team, *Response, error)
- func (s *OrganizationsService) IsMember(org, user string) (bool, *Response, error)
- func (s *OrganizationsService) IsPublicMember(org, user string) (bool, *Response, error)
- func (s *OrganizationsService) IsTeamMember(team int, user string) (bool, *Response, error)
- func (s *OrganizationsService) IsTeamRepo(team int, owner string, repo string) (bool, *Response, error)
- func (s *OrganizationsService) List(user string, opt *ListOptions) ([]Organization, *Response, error)
- func (s *OrganizationsService) ListMembers(org string, opt *ListMembersOptions) ([]User, *Response, error)
- func (s *OrganizationsService) ListTeamMembers(team int) ([]User, *Response, error)
- func (s *OrganizationsService) ListTeamRepos(team int) ([]Repository, *Response, error)
- func (s *OrganizationsService) ListTeams(org string) ([]Team, *Response, error)
- func (s *OrganizationsService) PublicizeMembership(org, user string) (*Response, error)
- func (s *OrganizationsService) RemoveMember(org, user string) (*Response, error)
- func (s *OrganizationsService) RemoveTeamMember(team int, user string) (*Response, error)
- func (s *OrganizationsService) RemoveTeamRepo(team int, owner string, repo string) (*Response, error)
- type Plan
- type PullRequest
- type PullRequestComment
- type PullRequestListCommentsOptions
- type PullRequestListOptions
- type PullRequestsService
- func (s *PullRequestsService) Create(owner string, repo string, pull *PullRequest) (*PullRequest, *Response, error)
- func (s *PullRequestsService) CreateComment(owner string, repo string, number int, comment *PullRequestComment) (*PullRequestComment, *Response, error)
- func (s *PullRequestsService) DeleteComment(owner string, repo string, number int) (*Response, error)
- func (s *PullRequestsService) Edit(owner string, repo string, number int, pull *PullRequest) (*PullRequest, *Response, error)
- func (s *PullRequestsService) EditComment(owner string, repo string, number int, comment *PullRequestComment) (*PullRequestComment, *Response, error)
- func (s *PullRequestsService) Get(owner string, repo string, number int) (*PullRequest, *Response, error)
- func (s *PullRequestsService) GetComment(owner string, repo string, number int) (*PullRequestComment, *Response, error)
- func (s *PullRequestsService) List(owner string, repo string, opt *PullRequestListOptions) ([]PullRequest, *Response, error)
- func (s *PullRequestsService) ListComments(owner string, repo string, number int, opt *PullRequestListCommentsOptions) ([]PullRequestComment, *Response, error)
- type PushEvent
- type PushEventCommit
- type Rate
- type Reference
- type ReleaseAsset
- type RepoStatus
- type RepositoriesSearchResult
- type RepositoriesService
- func (s *RepositoriesService) AddCollaborator(owner, repo, user string) (*Response, error)
- func (s *RepositoriesService) CompareCommits(owner, repo string, base, head string) (*CommitsComparison, *Response, error)
- func (s *RepositoriesService) Create(org string, repo *Repository) (*Repository, *Response, error)
- func (s *RepositoriesService) CreateComment(owner, repo, sha string, comment *RepositoryComment) (*RepositoryComment, *Response, error)
- func (s *RepositoriesService) CreateFork(owner, repo string, opt *RepositoryCreateForkOptions) (*Repository, *Response, error)
- func (s *RepositoriesService) CreateHook(owner, repo string, hook *Hook) (*Hook, *Response, error)
- func (s *RepositoriesService) CreateKey(owner string, repo string, key *Key) (*Key, *Response, error)
- func (s *RepositoriesService) CreateRelease(owner, repo string, release *RepositoryRelease) (*RepositoryRelease, *Response, error)
- func (s *RepositoriesService) CreateStatus(owner, repo, ref string, status *RepoStatus) (*RepoStatus, *Response, error)
- func (s *RepositoriesService) DeleteComment(owner, repo string, id int) (*Response, error)
- func (s *RepositoriesService) DeleteHook(owner, repo string, id int) (*Response, error)
- func (s *RepositoriesService) DeleteKey(owner string, repo string, id int) (*Response, error)
- func (s *RepositoriesService) DeleteRelease(owner, repo string, id int) (*Response, error)
- func (s *RepositoriesService) DeleteReleaseAsset(owner, repo string, id int) (*Response, error)
- func (s *RepositoriesService) Edit(owner, repo string, repository *Repository) (*Repository, *Response, error)
- func (s *RepositoriesService) EditHook(owner, repo string, id int, hook *Hook) (*Hook, *Response, error)
- func (s *RepositoriesService) EditKey(owner string, repo string, id int, key *Key) (*Key, *Response, error)
- func (s *RepositoriesService) EditRelease(owner, repo string, id int, release *RepositoryRelease) (*RepositoryRelease, *Response, error)
- func (s *RepositoriesService) EditReleaseAsset(owner, repo string, id int, release *ReleaseAsset) (*ReleaseAsset, *Response, error)
- func (s *RepositoriesService) Get(owner, repo string) (*Repository, *Response, error)
- func (s *RepositoriesService) GetComment(owner, repo string, id int) (*RepositoryComment, *Response, error)
- func (s *RepositoriesService) GetCommit(owner, repo, sha string) (*RepositoryCommit, *Response, error)
- func (s *RepositoriesService) GetHook(owner, repo string, id int) (*Hook, *Response, error)
- func (s *RepositoriesService) GetKey(owner string, repo string, id int) (*Key, *Response, error)
- func (s *RepositoriesService) GetReadme(owner, repo string) (*RepositoryContent, *Response, error)
- func (s *RepositoriesService) GetRelease(owner, repo string, id int) (*RepositoryRelease, *Response, error)
- func (s *RepositoriesService) GetReleaseAsset(owner, repo string, id int) (*ReleaseAsset, *Response, error)
- func (s *RepositoriesService) IsCollaborator(owner, repo, user string) (bool, *Response, error)
- func (s *RepositoriesService) List(user string, opt *RepositoryListOptions) ([]Repository, *Response, error)
- func (s *RepositoriesService) ListAll(opt *RepositoryListAllOptions) ([]Repository, *Response, error)
- func (s *RepositoriesService) ListByOrg(org string, opt *RepositoryListByOrgOptions) ([]Repository, *Response, error)
- func (s *RepositoriesService) ListCollaborators(owner, repo string) ([]User, *Response, error)
- func (s *RepositoriesService) ListComments(owner, repo string) ([]RepositoryComment, *Response, error)
- func (s *RepositoriesService) ListCommitComments(owner, repo, sha string) ([]RepositoryComment, *Response, error)
- func (s *RepositoriesService) ListCommits(owner, repo string, opt *CommitsListOptions) ([]RepositoryCommit, *Response, error)
- func (s *RepositoriesService) ListForks(owner, repo string, opt *RepositoryListForksOptions) ([]Repository, *Response, error)
- func (s *RepositoriesService) ListHooks(owner, repo string, opt *ListOptions) ([]Hook, *Response, error)
- func (s *RepositoriesService) ListKeys(owner string, repo string) ([]Key, *Response, error)
- func (s *RepositoriesService) ListLanguages(owner string, repository string) (map[string]int, *Response, error)
- func (s *RepositoriesService) ListReleaseAssets(owner, repo string, id int) ([]ReleaseAsset, *Response, error)
- func (s *RepositoriesService) ListReleases(owner, repo string) ([]RepositoryRelease, *Response, error)
- func (s *RepositoriesService) ListStatuses(owner, repo, ref string) ([]RepoStatus, *Response, error)
- func (s *RepositoriesService) RemoveCollaborator(owner, repo, user string) (*Response, error)
- func (s *RepositoriesService) TestHook(owner, repo string, id int) (*Response, error)
- func (s *RepositoriesService) UpdateComment(owner, repo string, id int, comment *RepositoryComment) (*RepositoryComment, *Response, error)
- func (s *RepositoriesService) UploadReleaseAsset(owner, repo string, id int, opt *UploadOptions, file *os.File) (*ReleaseAsset, *Response, error)
- type Repository
- type RepositoryComment
- type RepositoryCommit
- type RepositoryContent
- type RepositoryCreateForkOptions
- type RepositoryListAllOptions
- type RepositoryListByOrgOptions
- type RepositoryListForksOptions
- type RepositoryListOptions
- type RepositoryRelease
- type Response
- type SearchOptions
- type SearchService
- func (s *SearchService) Code(query string, opt *SearchOptions) (*CodeSearchResult, *Response, error)
- func (s *SearchService) Issues(query string, opt *SearchOptions) (*IssuesSearchResult, *Response, error)
- func (s *SearchService) Repositories(query string, opt *SearchOptions) (*RepositoriesSearchResult, *Response, error)
- func (s *SearchService) Users(query string, opt *SearchOptions) (*UsersSearchResult, *Response, error)
- type Team
- type Timestamp
- type Tree
- type TreeEntry
- type UnauthenticatedRateLimitedTransport
- type UploadOptions
- type User
- type UserEmail
- type UserListOptions
- type UsersSearchResult
- type UsersService
- func (s *UsersService) AddEmails(emails []UserEmail) ([]UserEmail, *Response, error)
- func (s *UsersService) CreateKey(key *Key) (*Key, *Response, error)
- func (s *UsersService) DeleteEmails(emails []UserEmail) (*Response, error)
- func (s *UsersService) DeleteKey(id int) (*Response, error)
- func (s *UsersService) Edit(user *User) (*User, *Response, error)
- func (s *UsersService) EditKey(id int, key *Key) (*Key, *Response, error)
- func (s *UsersService) Follow(user string) (*Response, error)
- func (s *UsersService) Get(user string) (*User, *Response, error)
- func (s *UsersService) GetKey(id int) (*Key, *Response, error)
- func (s *UsersService) IsFollowing(user, target string) (bool, *Response, error)
- func (s *UsersService) ListAll(opt *UserListOptions) ([]User, *Response, error)
- func (s *UsersService) ListEmails() ([]UserEmail, *Response, error)
- func (s *UsersService) ListFollowers(user string) ([]User, *Response, error)
- func (s *UsersService) ListFollowing(user string, opt *ListOptions) ([]User, *Response, error)
- func (s *UsersService) ListKeys(user string) ([]Key, *Response, error)
- func (s *UsersService) Unfollow(user string) (*Response, error)
- type WebHookAuthor
- type WebHookCommit
- type WebHookPayload
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Bool ¶
Bool is a helper routine that allocates a new bool value to store v and returns a pointer to it.
func CheckResponse ¶
CheckResponse checks the API response for errors, and returns them if present. A response is considered an error if it has a status code outside the 200 range. API error responses are expected to have either no response body, or a JSON response body that maps to ErrorResponse. Any other response body will be silently ignored.
func Int ¶
Int is a helper routine that allocates a new int32 value to store v and returns a pointer to it, but unlike Int32 its argument value is an int.
Types ¶
type ActivityListStarredOptions ¶
type ActivityListStarredOptions struct { // How to sort the repository list. Possible values are: created, updated, // pushed, full_name. Default is "full_name". Sort string `url:"sort,omitempty"` // Direction in which to sort repositories. Possible values are: asc, desc. // Default is "asc" when sort is "full_name", otherwise default is "desc". Direction string `url:"direction,omitempty"` ListOptions }
ActivityListStarredOptions specifies the optional parameters to the ActivityService.ListStarred method.
type ActivityService ¶
type ActivityService struct {
// contains filtered or unexported fields
}
ActivityService handles communication with the activity related methods of the GitHub API.
GitHub API docs: http://developer.github.com/v3/activity/
func (*ActivityService) ListEvents ¶
func (s *ActivityService) ListEvents(opt *ListOptions) ([]Event, *Response, error)
ListEvents drinks from the firehose of all public events across GitHub.
GitHub API docs: http://developer.github.com/v3/activity/events/#list-public-events
func (*ActivityService) ListEventsForOrganization ¶
func (s *ActivityService) ListEventsForOrganization(org string, opt *ListOptions) ([]Event, *Response, error)
ListEventsForOrganization lists public events for an organization.
GitHub API docs: http://developer.github.com/v3/activity/events/#list-public-events-for-an-organization
func (*ActivityService) ListEventsForRepoNetwork ¶
func (s *ActivityService) ListEventsForRepoNetwork(owner, repo string, opt *ListOptions) ([]Event, *Response, error)
ListEventsForRepoNetwork lists public events for a network of repositories.
GitHub API docs: http://developer.github.com/v3/activity/events/#list-public-events-for-a-network-of-repositories
func (*ActivityService) ListEventsPerformedByUser ¶
func (s *ActivityService) ListEventsPerformedByUser(user string, publicOnly bool, opt *ListOptions) ([]Event, *Response, error)
ListEventsPerformedByUser lists the events performed by a user. If publicOnly is true, only public events will be returned.
GitHub API docs: http://developer.github.com/v3/activity/events/#list-events-performed-by-a-user
func (*ActivityService) ListEventsRecievedByUser ¶
func (s *ActivityService) ListEventsRecievedByUser(user string, publicOnly bool, opt *ListOptions) ([]Event, *Response, error)
ListEventsRecievedByUser lists the events recieved by a user. If publicOnly is true, only public events will be returned.
GitHub API docs: http://developer.github.com/v3/activity/events/#list-events-that-a-user-has-received
func (*ActivityService) ListIssueEventsForRepository ¶
func (s *ActivityService) ListIssueEventsForRepository(owner, repo string, opt *ListOptions) ([]Event, *Response, error)
ListIssueEventsForRepository lists issue events for a repository.
GitHub API docs: http://developer.github.com/v3/activity/events/#list-issue-events-for-a-repository
func (*ActivityService) ListRepositoryEvents ¶
func (s *ActivityService) ListRepositoryEvents(owner, repo string, opt *ListOptions) ([]Event, *Response, error)
ListRepositoryEvents lists events for a repository.
GitHub API docs: http://developer.github.com/v3/activity/events/#list-repository-events
func (*ActivityService) ListStarred ¶
func (s *ActivityService) ListStarred(user string, opt *ActivityListStarredOptions) ([]Repository, *Response, error)
ListStarred lists all the repos starred by a user. Passing the empty string will list the starred repositories for the authenticated user.
GitHub API docs: http://developer.github.com/v3/activity/starring/#list-repositories-being-starred
func (*ActivityService) ListUserEventsForOrganization ¶
func (s *ActivityService) ListUserEventsForOrganization(org, user string, opt *ListOptions) ([]Event, *Response, error)
ListUserEventsForOrganization provides the user’s organization dashboard. You must be authenticated as the user to view this.
GitHub API docs: http://developer.github.com/v3/activity/events/#list-events-for-an-organization
func (*ActivityService) ListWatchers ¶
func (s *ActivityService) ListWatchers(owner, repo string) ([]User, *Response, error)
ListWatchers lists watchers of a particular repo.
GitHub API Docs: http://developer.github.com/v3/activity/watching/#list-watchers
type Client ¶
type Client struct { // Base URL for API requests. Defaults to the public GitHub API, but can be // set to a domain endpoint to use with GitHub Enterprise. BaseURL should // always be specified with a trailing slash. BaseURL *url.URL // Base URL for uploading files. UploadURL *url.URL // User agent used when communicating with the GitHub API. UserAgent string // Rate specifies the current rate limit for the client as determined by the // most recent API call. If the client is used in a multi-user application, // this rate may not always be up-to-date. Call RateLimit() to check the // current rate. Rate Rate // Services used for talking to different parts of the GitHub API. Activity *ActivityService Gists *GistsService Git *GitService Gitignores *GitignoresService Issues *IssuesService Organizations *OrganizationsService PullRequests *PullRequestsService Repositories *RepositoriesService Search *SearchService Users *UsersService // contains filtered or unexported fields }
A Client manages communication with the GitHub API.
func NewClient ¶
NewClient returns a new GitHub API client. If a nil httpClient is provided, http.DefaultClient will be used. To use API methods which require authentication, provide an http.Client that will perform the authentication for you (such as that provided by the goauth2 library).
func (*Client) Do ¶
Do sends an API request and returns the API response. The API response is decoded and stored in the value pointed to by v, or returned as an error if an API error has occurred.
func (*Client) NewRequest ¶
NewRequest creates an API request. A relative URL can be provided in urlStr, in which case it is resolved relative to the BaseURL of the Client. Relative URLs should always be specified without a preceding slash. If specified, the value pointed to by body is JSON encoded and included as the request body.
func (*Client) NewUploadRequest ¶
func (c *Client) NewUploadRequest(urlStr string, reader io.Reader, size int64, mediaType string) (*http.Request, error)
NewUploadRequest creates an upload request. A relative URL can be provided in urlStr, in which case it is resolved relative to the UploadURL of the Client. Relative URLs should always be specified without a preceding slash.
type CodeResult ¶
type CodeResult struct { Name *string `json:"name,omitempty"` Path *string `json:"path,omitempty"` SHA *string `json:"sha,omitempty"` HTMLURL *string `json:"html_url,omitempty"` Repository *Repository `json:"repository,omitempty"` }
CodeResult represents a single search result.
func (CodeResult) String ¶
func (c CodeResult) String() string
type CodeSearchResult ¶
type CodeSearchResult struct { Total *int `json:"total_count,omitempty"` CodeResults []CodeResult `json:"items,omitempty"` }
CodeSearchResult represents the result of an code search.
type Commit ¶
type Commit struct { SHA *string `json:"sha,omitempty"` Author *CommitAuthor `json:"author,omitempty"` Committer *CommitAuthor `json:"committer,omitempty"` Message *string `json:"message,omitempty"` Tree *Tree `json:"tree,omitempty"` Parents []Commit `json:"parents,omitempty"` Stats *CommitStats `json:"stats,omitempty"` }
Commit represents a GitHub commit.
type CommitAuthor ¶
type CommitAuthor struct { Date *time.Time `json:"date,omitempty"` Name *string `json:"name,omitempty"` Email *string `json:"email,omitempty"` }
CommitAuthor represents the author or committer of a commit. The commit author may not correspond to a GitHub User.
func (CommitAuthor) String ¶
func (c CommitAuthor) String() string
type CommitFile ¶
type CommitFile struct { SHA *string `json:"sha,omitempty"` Filename *string `json:"filename,omitempty"` Additions *int `json:"additions,omitempty"` Deletions *int `json:"deletions,omitempty"` Changes *int `json:"changes,omitempty"` Status *string `json:"status,omitempty"` Patch *string `json:"patch,omitempty"` }
CommitFile represents a file modified in a commit.
func (CommitFile) String ¶
func (c CommitFile) String() string
type CommitStats ¶
type CommitStats struct { Additions *int `json:"additions,omitempty"` Deletions *int `json:"deletions,omitempty"` Total *int `json:"total,omitempty"` }
CommitStats represents the number of additions / deletions from a file in a given RepositoryCommit.
func (CommitStats) String ¶
func (c CommitStats) String() string
type CommitsComparison ¶
type CommitsComparison struct { BaseCommit *RepositoryCommit `json:"base_commit,omitempty"` // Head can be 'behind' or 'ahead' Status *string `json:"status,omitempty"` AheadBy *int `json:"ahead_by,omitempty"` BehindBy *int `json:"behind_by,omitempty"` TotalCommits *int `json:"total_commits,omitempty"` Commits []RepositoryCommit `json:"commits,omitempty"` Files []CommitFile `json:"files,omitempty"` }
CommitsComparison is the result of comparing two commits. See CompareCommits() for details.
func (CommitsComparison) String ¶
func (c CommitsComparison) String() string
type CommitsListOptions ¶
type CommitsListOptions struct { // SHA or branch to start listing Commits from. SHA string `url:"sha,omitempty"` // Path that should be touched by the returned Commits. Path string `url:"path,omitempty"` // Author of by which to filter Commits. Author string `url:"author,omitempty"` // Since when should Commits be included in the response. Since time.Time `url:"since,omitempty"` // Until when should Commits be included in the response. Until time.Time `url:"until,omitempty"` }
CommitsListOptions specifies the optional parameters to the RepositoriesService.ListCommits method.
type Error ¶
type Error struct { Resource string `json:"resource"` // resource on which the error occurred Field string `json:"field"` // field on which the error occurred Code string `json:"code"` // validation error code }
An Error reports more details on an individual error in an ErrorResponse. These are the possible validation error codes:
missing: resource does not exist missing_field: a required field on a resource has not been set invalid: the formatting of a field is invalid already_exists: another resource has the same valid as this field
GitHub API docs: http://developer.github.com/v3/#client-errors
type ErrorResponse ¶
type ErrorResponse struct { Response *http.Response // HTTP response that caused this error Message string `json:"message"` // error message Errors []Error `json:"errors"` // more detail on individual errors }
An ErrorResponse reports one or more errors caused by an API request.
GitHub API docs: http://developer.github.com/v3/#client-errors
func (*ErrorResponse) Error ¶
func (r *ErrorResponse) Error() string
type Event ¶
type Event struct { Type *string `json:"type,omitempty"` Public *bool `json:"public"` RawPayload *json.RawMessage `json:"payload,omitempty"` Repo *Repository `json:"repo,omitempty"` Actor *User `json:"actor,omitempty"` Org *Organization `json:"org,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` ID *string `json:"id,omitempty"` }
Event represents a GitHub event.
type Gist ¶
type Gist struct { ID *string `json:"id,omitempty"` Description *string `json:"description,omitempty"` Public *bool `json:"public,omitempty"` User *User `json:"user,omitempty"` Files map[GistFilename]GistFile `json:"files,omitempty"` Comments *int `json:"comments,omitempty"` HTMLURL *string `json:"html_url,omitempty"` GitPullURL *string `json:"git_pull_url,omitempty"` GitPushURL *string `json:"git_push_url,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` }
Gist represents a GitHub's gist.
type GistComment ¶
type GistComment struct { ID *int `json:"id,omitempty"` URL *string `json:"url,omitempty"` Body *string `json:"body,omitempty"` User *User `json:"user,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` }
GistComment represents a Gist comment.
func (GistComment) String ¶
func (g GistComment) String() string
type GistFile ¶
type GistFile struct { Size *int `json:"size,omitempty"` Filename *string `json:"filename,omitempty"` RawURL *string `json:"raw_url,omitempty"` Content *string `json:"content,omitempty"` }
GistFile represents a file on a gist.
type GistListOptions ¶
type GistListOptions struct { // Since filters Gists by time. Since time.Time `url:"since,omitempty"` }
GistListOptions specifies the optional parameters to the GistsService.List, GistsService.ListAll, and GistsService.ListStarred methods.
type GistsService ¶
type GistsService struct {
// contains filtered or unexported fields
}
GistsService handles communication with the Gist related methods of the GitHub API.
GitHub API docs: http://developer.github.com/v3/gists/
func (*GistsService) Create ¶
func (s *GistsService) Create(gist *Gist) (*Gist, *Response, error)
Create a gist for authenticated user.
GitHub API docs: http://developer.github.com/v3/gists/#create-a-gist
func (*GistsService) CreateComment ¶
func (s *GistsService) CreateComment(gistID string, comment *GistComment) (*GistComment, *Response, error)
CreateComment creates a comment for a gist.
GitHub API docs: http://developer.github.com/v3/gists/comments/#create-a-comment
func (*GistsService) Delete ¶
func (s *GistsService) Delete(id string) (*Response, error)
Delete a gist.
GitHub API docs: http://developer.github.com/v3/gists/#delete-a-gist
func (*GistsService) DeleteComment ¶
func (s *GistsService) DeleteComment(gistID string, commentID int) (*Response, error)
DeleteComment deletes a gist comment.
GitHub API docs: http://developer.github.com/v3/gists/comments/#delete-a-comment
func (*GistsService) Edit ¶
Edit a gist.
GitHub API docs: http://developer.github.com/v3/gists/#edit-a-gist
func (*GistsService) EditComment ¶
func (s *GistsService) EditComment(gistID string, commentID int, comment *GistComment) (*GistComment, *Response, error)
EditComment edits an existing gist comment.
GitHub API docs: http://developer.github.com/v3/gists/comments/#edit-a-comment
func (*GistsService) Fork ¶
func (s *GistsService) Fork(id string) (*Gist, *Response, error)
Fork a gist.
GitHub API docs: http://developer.github.com/v3/gists/#fork-a-gist
func (*GistsService) Get ¶
func (s *GistsService) Get(id string) (*Gist, *Response, error)
Get a single gist.
GitHub API docs: http://developer.github.com/v3/gists/#get-a-single-gist
func (*GistsService) GetComment ¶
func (s *GistsService) GetComment(gistID string, commentID int) (*GistComment, *Response, error)
GetComment retrieves a single comment from a gist.
GitHub API docs: http://developer.github.com/v3/gists/comments/#get-a-single-comment
func (*GistsService) IsStarred ¶
func (s *GistsService) IsStarred(id string) (bool, *Response, error)
IsStarred checks if a gist is starred by authenticated user.
GitHub API docs: http://developer.github.com/v3/gists/#check-if-a-gist-is-starred
func (*GistsService) List ¶
func (s *GistsService) List(user string, opt *GistListOptions) ([]Gist, *Response, error)
List gists for a user. Passing the empty string will list all public gists if called anonymously. However, if the call is authenticated, it will returns all gists for the authenticated user.
GitHub API docs: http://developer.github.com/v3/gists/#list-gists
func (*GistsService) ListAll ¶
func (s *GistsService) ListAll(opt *GistListOptions) ([]Gist, *Response, error)
ListAll lists all public gists.
GitHub API docs: http://developer.github.com/v3/gists/#list-gists
func (*GistsService) ListComments ¶
func (s *GistsService) ListComments(gistID string) ([]GistComment, *Response, error)
ListComments lists all comments for a gist.
GitHub API docs: http://developer.github.com/v3/gists/comments/#list-comments-on-a-gist
func (*GistsService) ListStarred ¶
func (s *GistsService) ListStarred(opt *GistListOptions) ([]Gist, *Response, error)
ListStarred lists starred gists of authenticated user.
GitHub API docs: http://developer.github.com/v3/gists/#list-gists
func (*GistsService) Star ¶
func (s *GistsService) Star(id string) (*Response, error)
Star a gist on behalf of authenticated user.
GitHub API docs: http://developer.github.com/v3/gists/#star-a-gist
func (*GistsService) Unstar ¶
func (s *GistsService) Unstar(id string) (*Response, error)
Unstar a gist on a behalf of authenticated user.
Github API docs: http://developer.github.com/v3/gists/#unstar-a-gist
type GitObject ¶
type GitObject struct { Type *string `json:"type"` SHA *string `json:"sha"` URL *string `json:"url"` }
GitObject represents a Git object.
type GitService ¶
type GitService struct {
// contains filtered or unexported fields
}
GitService handles communication with the git data related methods of the GitHub API.
GitHub API docs: http://developer.github.com/v3/git/
func (*GitService) CreateCommit ¶
func (s *GitService) CreateCommit(owner string, repo string, commit *Commit) (*Commit, *Response, error)
CreateCommit creates a new commit in a repository.
The commit.Committer is optional and will be filled with the commit.Author data if omitted. If the commit.Author is omitted, it will be filled in with the authenticated user’s information and the current date.
GitHub API docs: http://developer.github.com/v3/git/commits/#create-a-commit
func (*GitService) CreateRef ¶
func (s *GitService) CreateRef(owner string, repo string, ref *Reference) (*Reference, *Response, error)
CreateRef creates a new ref in a repository.
GitHub API docs: http://developer.github.com/v3/git/refs/#create-a-reference
func (*GitService) CreateTree ¶
func (s *GitService) CreateTree(owner string, repo string, baseTree string, entries []TreeEntry) (*Tree, *Response, error)
CreateTree creates a new tree in a repository. If both a tree and a nested path modifying that tree are specified, it will overwrite the contents of that tree with the new path contents and write a new tree out.
GitHub API docs: http://developer.github.com/v3/git/trees/#create-a-tree
func (*GitService) DeleteRef ¶
DeleteRef deletes a ref from a repository.
GitHub API docs: http://developer.github.com/v3/git/refs/#delete-a-reference
func (*GitService) GetCommit ¶
GetCommit fetchs the Commit object for a given SHA.
GitHub API docs: http://developer.github.com/v3/git/commits/#get-a-commit
func (*GitService) GetRef ¶
GetRef fetches the Reference object for a given Git ref.
GitHub API docs: http://developer.github.com/v3/git/refs/#get-a-reference
func (*GitService) GetTree ¶
func (s *GitService) GetTree(owner string, repo string, sha string, recursive bool) (*Tree, *Response, error)
GetTree fetches the Tree object for a given sha hash from a repository.
GitHub API docs: http://developer.github.com/v3/git/trees/#get-a-tree
func (*GitService) ListRefs ¶
ListRefs lists all refs in a repository.
GitHub API docs: http://developer.github.com/v3/git/refs/#get-all-references
type Gitignore ¶
type Gitignore struct { Name *string `json:"name,omitempty"` Source *string `json:"source,omitempty"` }
Represents a .gitignore file as returned by the GitHub API.
type GitignoresService ¶
type GitignoresService struct {
// contains filtered or unexported fields
}
GitignoresService provides access to the gitignore related functions in the GitHub API.
GitHub API docs: http://developer.github.com/v3/gitignore/
func (GitignoresService) Get ¶
func (s GitignoresService) Get(name string) (*Gitignore, *Response, error)
Fetches a Gitignore by name.
http://developer.github.com/v3/gitignore/#get-a-single-template
func (GitignoresService) List ¶
func (s GitignoresService) List() ([]string, *Response, error)
Fetches a list of all available Gitignore templates.
http://developer.github.com/v3/gitignore/#listing-available-templates
type Hook ¶
type Hook struct { CreatedAt *time.Time `json:"created_at,omitempty"` UpdatedAt *time.Time `json:"updated_at,omitempty"` Name *string `json:"name,omitempty"` Events []string `json:"events,omitempty"` Active *bool `json:"active,omitempty"` Config map[string]interface{} `json:"config,omitempty"` ID *int `json:"id,omitempty"` }
Hook represents a GitHub (web and service) hook for a repository.
type Issue ¶
type Issue struct { Number *int `json:"number,omitempty"` State *string `json:"state,omitempty"` Title *string `json:"title,omitempty"` Body *string `json:"body,omitempty"` User *User `json:"user,omitempty"` Labels []Label `json:"labels,omitempty"` Assignee *User `json:"assignee,omitempty"` Comments *int `json:"comments,omitempty"` ClosedAt *time.Time `json:"closed_at,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` UpdatedAt *time.Time `json:"updated_at,omitempty"` }
Issue represents a GitHub issue on a repository.
type IssueComment ¶
type IssueComment struct { ID *int `json:"id,omitempty"` Body *string `json:"body,omitempty"` User *User `json:"user,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` UpdatedAt *time.Time `json:"updated_at,omitempty"` }
IssueComment represents a comment left on an issue.
func (IssueComment) String ¶
func (i IssueComment) String() string
type IssueListByRepoOptions ¶
type IssueListByRepoOptions struct { // Milestone limits issues for the specified milestone. Possible values are // a milestone number, "none" for issues with no milestone, "*" for issues // with any milestone. Milestone string `url:"milestone,omitempty"` // State filters issues based on their state. Possible values are: open, // closed. Default is "open". State string `url:"state,omitempty"` // Assignee filters issues based on their assignee. Possible values are a // user name, "none" for issues that are not assigned, "*" for issues with // any assigned user. Assignee string `url:"assignee,omitempty"` // Assignee filters issues based on their creator. Creator string `url:"creator,omitempty"` // Assignee filters issues to those mentioned a specific user. Mentioned string `url:"mentioned,omitempty"` // Labels filters issues based on their label. Labels []string `url:"labels,omitempty,comma"` // Sort specifies how to sort issues. Possible values are: created, updated, // and comments. Default value is "assigned". Sort string `url:"sort,omitempty"` // Direction in which to sort issues. Possible values are: asc, desc. // Default is "asc". Direction string `url:"direction,omitempty"` // Since filters issues by time. Since time.Time `url:"since,omitempty"` ListOptions }
IssueListByRepoOptions specifies the optional parameters to the IssuesService.ListByRepo method.
type IssueListCommentsOptions ¶
type IssueListCommentsOptions struct { // Sort specifies how to sort comments. Possible values are: created, updated. Sort string `url:"sort,omitempty"` // Direction in which to sort comments. Possible values are: asc, desc. Direction string `url:"direction,omitempty"` // Since filters comments by time. Since time.Time `url:"since,omitempty"` }
IssueListCommentsOptions specifies the optional parameters to the IssuesService.ListComments method.
type IssueListOptions ¶
type IssueListOptions struct { // Filter specifies which issues to list. Possible values are: assigned, // created, mentioned, subscribed, all. Default is "assigned". Filter string `url:"filter,omitempty"` // State filters issues based on their state. Possible values are: open, // closed. Default is "open". State string `url:"state,omitempty"` // Labels filters issues based on their label. Labels []string `url:"labels,comma,omitempty"` // Sort specifies how to sort issues. Possible values are: created, updated, // and comments. Default value is "assigned". Sort string `url:"sort,omitempty"` // Direction in which to sort issues. Possible values are: asc, desc. // Default is "asc". Direction string `url:"direction,omitempty"` // Since filters issues by time. Since time.Time `url:"since,omitempty"` ListOptions }
IssueListOptions specifies the optional parameters to the IssuesService.List and IssuesService.ListByOrg methods.
type IssueRequest ¶
type IssueRequest struct { Title *string `json:"title,omitempty"` Body *string `json:"body,omitempty"` Labels []string `json:"labels,omitempty"` Assignee *string `json:"assignee,omitempty"` State *string `json:"state,omitempty"` }
IssueRequest represents a request to create/edit an issue. It is separate from Issue above because otherwise Labels and Assignee fail to serialize to the correct JSON.
type IssuesSearchResult ¶
type IssuesSearchResult struct { Total *int `json:"total_count,omitempty"` Issues []Issue `json:"items,omitempty"` }
IssuesSearchResult represents the result of an issues search.
type IssuesService ¶
type IssuesService struct {
// contains filtered or unexported fields
}
IssuesService handles communication with the issue related methods of the GitHub API.
GitHub API docs: http://developer.github.com/v3/issues/
func (*IssuesService) AddLabelsToIssue ¶
func (s *IssuesService) AddLabelsToIssue(owner string, repo string, number int, labels []string) ([]Label, *Response, error)
AddLabelsToIssue adds labels to an issue.
GitHub API docs: http://developer.github.com/v3/issues/labels/#list-all-labels-for-this-repository
func (*IssuesService) Create ¶
func (s *IssuesService) Create(owner string, repo string, issue *IssueRequest) (*Issue, *Response, error)
Create a new issue on the specified repository.
GitHub API docs: http://developer.github.com/v3/issues/#create-an-issue
func (*IssuesService) CreateComment ¶
func (s *IssuesService) CreateComment(owner string, repo string, number int, comment *IssueComment) (*IssueComment, *Response, error)
CreateComment creates a new comment on the specified issue.
GitHub API docs: http://developer.github.com/v3/issues/comments/#create-a-comment
func (*IssuesService) CreateLabel ¶
func (s *IssuesService) CreateLabel(owner string, repo string, label *Label) (*Label, *Response, error)
CreateLabel creates a new label on the specified repository.
GitHub API docs: http://developer.github.com/v3/issues/labels/#create-a-label
func (*IssuesService) DeleteComment ¶
DeleteComment deletes an issue comment.
GitHub API docs: http://developer.github.com/v3/issues/comments/#delete-a-comment
func (*IssuesService) DeleteLabel ¶
DeleteLabel deletes a label.
GitHub API docs: http://developer.github.com/v3/issues/labels/#delete-a-label
func (*IssuesService) Edit ¶
func (s *IssuesService) Edit(owner string, repo string, number int, issue *IssueRequest) (*Issue, *Response, error)
Edit an issue.
GitHub API docs: http://developer.github.com/v3/issues/#edit-an-issue
func (*IssuesService) EditComment ¶
func (s *IssuesService) EditComment(owner string, repo string, id int, comment *IssueComment) (*IssueComment, *Response, error)
EditComment updates an issue comment.
GitHub API docs: http://developer.github.com/v3/issues/comments/#edit-a-comment
func (*IssuesService) EditLabel ¶
func (s *IssuesService) EditLabel(owner string, repo string, name string, label *Label) (*Label, *Response, error)
EditLabel edits a label.
GitHub API docs: http://developer.github.com/v3/issues/labels/#update-a-label
func (*IssuesService) Get ¶
Get a single issue.
GitHub API docs: http://developer.github.com/v3/issues/#get-a-single-issue
func (*IssuesService) GetComment ¶
func (s *IssuesService) GetComment(owner string, repo string, id int) (*IssueComment, *Response, error)
GetComment fetches the specified issue comment.
GitHub API docs: http://developer.github.com/v3/issues/comments/#get-a-single-comment
func (*IssuesService) GetLabel ¶
GetLabel gets a single label.
GitHub API docs: http://developer.github.com/v3/issues/labels/#get-a-single-label
func (*IssuesService) IsAssignee ¶
IsAssignee checks if a user is an assignee for the specified repository.
GitHub API docs: http://developer.github.com/v3/issues/assignees/#check-assignee
func (*IssuesService) List ¶
func (s *IssuesService) List(all bool, opt *IssueListOptions) ([]Issue, *Response, error)
List the issues for the authenticated user. If all is true, list issues across all the user's visible repositories including owned, member, and organization repositories; if false, list only owned and member repositories.
GitHub API docs: http://developer.github.com/v3/issues/#list-issues
func (*IssuesService) ListAssignees ¶
ListAssignees fetches all available assignees (owners and collaborators) to which issues may be assigned.
GitHub API docs: http://developer.github.com/v3/issues/assignees/#list-assignees
func (*IssuesService) ListByOrg ¶
func (s *IssuesService) ListByOrg(org string, opt *IssueListOptions) ([]Issue, *Response, error)
ListByOrg fetches the issues in the specified organization for the authenticated user.
GitHub API docs: http://developer.github.com/v3/issues/#list-issues
func (*IssuesService) ListByRepo ¶
func (s *IssuesService) ListByRepo(owner string, repo string, opt *IssueListByRepoOptions) ([]Issue, *Response, error)
ListByRepo lists the issues for the specified repository.
GitHub API docs: http://developer.github.com/v3/issues/#list-issues-for-a-repository
func (*IssuesService) ListComments ¶
func (s *IssuesService) ListComments(owner string, repo string, number int, opt *IssueListCommentsOptions) ([]IssueComment, *Response, error)
ListComments lists all comments on the specified issue. Specifying an issue number of 0 will return all comments on all issues for the repository.
GitHub API docs: http://developer.github.com/v3/issues/comments/#list-comments-on-an-issue
func (*IssuesService) ListLabels ¶
ListLabels lists all labels for a repository.
GitHub API docs: http://developer.github.com/v3/issues/labels/#list-all-labels-for-this-repository
func (*IssuesService) ListLabelsByIssue ¶
func (s *IssuesService) ListLabelsByIssue(owner string, repo string, number int) ([]Label, *Response, error)
ListLabelsByIssue lists all labels for an issue.
GitHub API docs: http://developer.github.com/v3/issues/labels/#list-all-labels-for-this-repository
func (*IssuesService) ListLabelsForMilestone ¶
func (s *IssuesService) ListLabelsForMilestone(owner string, repo string, number int) ([]Label, *Response, error)
ListLabelsForMilestone lists labels for every issue in a milestone.
GitHub API docs: http://developer.github.com/v3/issues/labels/#get-labels-for-every-issue-in-a-milestone
func (*IssuesService) RemoveLabelForIssue ¶
func (s *IssuesService) RemoveLabelForIssue(owner string, repo string, number int, label string) (*Response, error)
RemoveLabelForIssue removes a label for an issue.
GitHub API docs: http://developer.github.com/v3/issues/labels/#remove-a-label-from-an-issue
func (*IssuesService) RemoveLabelsForIssue ¶
func (s *IssuesService) RemoveLabelsForIssue(owner string, repo string, number int) (*Response, error)
RemoveLabelsForIssue removes all labels for an issue.
GitHub API docs: http://developer.github.com/v3/issues/labels/#remove-all-labels-from-an-issue
func (*IssuesService) ReplaceLabelsForIssue ¶
func (s *IssuesService) ReplaceLabelsForIssue(owner string, repo string, number int, labels []string) ([]Label, *Response, error)
ReplaceLabelsForIssue replaces all labels for an issue.
GitHub API docs: http://developer.github.com/v3/issues/labels/#replace-all-labels-for-an-issue
type Key ¶
type Key struct { ID *int `json:"id,omitempty"` Key *string `json:"key,omitempty"` URL *string `json:"url,omitempty"` Title *string `json:"title,omitempty"` }
Key represents a public SSH key used to authenticate a user or deploy script.
type Label ¶
type Label struct { URL *string `json:"url,omitempty"` Name *string `json:"name,omitempty"` Color *string `json:"color,omitempty"` }
Label represents a GitHib label on an Issue
type ListMembersOptions ¶
type ListMembersOptions struct { // If true (or if the authenticated user is not an owner of the // organization), list only publicly visible members. PublicOnly bool `url:"-"` // Filter members returned in the list. Possible values are: // 2fa_disabled, all. Default is "all". Filter string `url:"filter,omitempty"` ListOptions }
ListMembersOptions specifies optional parameters to the OrganizationsService.ListMembers method.
type ListOptions ¶
type ListOptions struct { // For paginated result sets, page of results to retrieve. Page int `url:"page,omitempty"` // For paginated result sets, the number of results to include per page. PerPage int `url:"per_page,omitempty"` }
ListOptions specifies the optional parameters to various List methods that support pagination.
type Organization ¶
type Organization struct { Login *string `json:"login,omitempty"` ID *int `json:"id,omitempty"` URL *string `json:"url,omitempty"` AvatarURL *string `json:"avatar_url,omitempty"` Name *string `json:"name,omitempty"` Blog *string `json:"blog,omitempty"` Location *string `json:"location,omitempty"` Email *string `json:"email,omitempty"` PublicRepos *int `json:"public_repos,omitempty"` PublicGists *int `json:"public_gists,omitempty"` Followers *int `json:"followers,omitempty"` Following *int `json:"following,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` UpdatedAt *time.Time `json:"updated_at,omitempty"` TotalPrivateRepos *int `json:"total_private_repos,omitempty"` OwnedPrivateRepos *int `json:"owned_private_repos,omitempty"` PrivateGists *int `json:"private_gists,omitempty"` DiskUsage *int `json:"disk_usage,omitempty"` Collaborators *int `json:"collaborators,omitempty"` BillingEmail *string `json:"billing_email,omitempty"` Plan *Plan `json:"plan,omitempty"` }
Organization represents a GitHub organization account.
func (Organization) String ¶
func (o Organization) String() string
type OrganizationsService ¶
type OrganizationsService struct {
// contains filtered or unexported fields
}
OrganizationsService provides access to the organization related functions in the GitHub API.
GitHub API docs: http://developer.github.com/v3/orgs/
func (*OrganizationsService) AddTeamMember ¶
func (s *OrganizationsService) AddTeamMember(team int, user string) (*Response, error)
AddTeamMember adds a user to a team.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#add-team-member
func (*OrganizationsService) AddTeamRepo ¶
AddTeamRepo adds a repository to be managed by the specified team. The specified repository must be owned by the organization to which the team belongs, or a direct fork of a repository owned by the organization.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#add-team-repo
func (*OrganizationsService) ConcealMembership ¶
func (s *OrganizationsService) ConcealMembership(org, user string) (*Response, error)
ConcealMembership conceals a user's membership in an organization.
GitHub API docs: http://developer.github.com/v3/orgs/members/#conceal-a-users-membership
func (*OrganizationsService) CreateTeam ¶
CreateTeam creates a new team within an organization.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#create-team
func (*OrganizationsService) DeleteTeam ¶
func (s *OrganizationsService) DeleteTeam(team int) (*Response, error)
DeleteTeam deletes a team.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#delete-team
func (*OrganizationsService) Edit ¶
func (s *OrganizationsService) Edit(name string, org *Organization) (*Organization, *Response, error)
Edit an organization.
GitHub API docs: http://developer.github.com/v3/orgs/#edit-an-organization
func (*OrganizationsService) EditTeam ¶
EditTeam edits a team.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#edit-team
func (*OrganizationsService) Get ¶
func (s *OrganizationsService) Get(org string) (*Organization, *Response, error)
Get fetches an organization by name.
GitHub API docs: http://developer.github.com/v3/orgs/#get-an-organization
func (*OrganizationsService) GetTeam ¶
func (s *OrganizationsService) GetTeam(team int) (*Team, *Response, error)
GetTeam fetches a team by ID.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#get-team
func (*OrganizationsService) IsMember ¶
func (s *OrganizationsService) IsMember(org, user string) (bool, *Response, error)
IsMember checks if a user is a member of an organization.
GitHub API docs: http://developer.github.com/v3/orgs/members/#check-membership
func (*OrganizationsService) IsPublicMember ¶
func (s *OrganizationsService) IsPublicMember(org, user string) (bool, *Response, error)
IsPublicMember checks if a user is a public member of an organization.
GitHub API docs: http://developer.github.com/v3/orgs/members/#check-public-membership
func (*OrganizationsService) IsTeamMember ¶
IsTeamMember checks if a user is a member of the specified team.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#get-team-member
func (*OrganizationsService) IsTeamRepo ¶
func (s *OrganizationsService) IsTeamRepo(team int, owner string, repo string) (bool, *Response, error)
IsTeamRepo checks if a team manages the specified repository.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#get-team-repo
func (*OrganizationsService) List ¶
func (s *OrganizationsService) List(user string, opt *ListOptions) ([]Organization, *Response, error)
List the organizations for a user. Passing the empty string will list organizations for the authenticated user.
GitHub API docs: http://developer.github.com/v3/orgs/#list-user-organizations
func (*OrganizationsService) ListMembers ¶
func (s *OrganizationsService) ListMembers(org string, opt *ListMembersOptions) ([]User, *Response, error)
ListMembers lists the members for an organization. If the authenticated user is an owner of the organization, this will return both concealed and public members, otherwise it will only return public members.
GitHub API docs: http://developer.github.com/v3/orgs/members/#members-list
func (*OrganizationsService) ListTeamMembers ¶
func (s *OrganizationsService) ListTeamMembers(team int) ([]User, *Response, error)
ListTeamMembers lists all of the users who are members of the specified team.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#list-team-members
func (*OrganizationsService) ListTeamRepos ¶
func (s *OrganizationsService) ListTeamRepos(team int) ([]Repository, *Response, error)
ListTeamRepos lists the repositories that the specified team has access to.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#list-team-repos
func (*OrganizationsService) ListTeams ¶
func (s *OrganizationsService) ListTeams(org string) ([]Team, *Response, error)
ListTeams lists all of the teams for an organization.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#list-teams
func (*OrganizationsService) PublicizeMembership ¶
func (s *OrganizationsService) PublicizeMembership(org, user string) (*Response, error)
PublicizeMembership publicizes a user's membership in an organization.
GitHub API docs: http://developer.github.com/v3/orgs/members/#publicize-a-users-membership
func (*OrganizationsService) RemoveMember ¶
func (s *OrganizationsService) RemoveMember(org, user string) (*Response, error)
RemoveMember removes a user from all teams of an organization.
GitHub API docs: http://developer.github.com/v3/orgs/members/#remove-a-member
func (*OrganizationsService) RemoveTeamMember ¶
func (s *OrganizationsService) RemoveTeamMember(team int, user string) (*Response, error)
RemoveTeamMember removes a user from a team.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#remove-team-member
func (*OrganizationsService) RemoveTeamRepo ¶
func (s *OrganizationsService) RemoveTeamRepo(team int, owner string, repo string) (*Response, error)
RemoveTeamRepo removes a repository from being managed by the specified team. Note that this does not delete the repository, it just removes it from the team.
GitHub API docs: http://developer.github.com/v3/orgs/teams/#remove-team-repo
type Plan ¶
type Plan struct { Name *string `json:"name,omitempty"` Space *int `json:"space,omitempty"` Collaborators *int `json:"collaborators,omitempty"` PrivateRepos *int `json:"private_repos,omitempty"` }
Plan represents the payment plan for an account. See plans at https://github.com/plans.
type PullRequest ¶
type PullRequest struct { Number *int `json:"number,omitempty"` State *string `json:"state,omitempty"` Title *string `json:"title,omitempty"` Body *string `json:"body,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` UpdatedAt *time.Time `json:"updated_at,omitempty"` ClosedAt *time.Time `json:"closed_at,omitempty"` MergedAt *time.Time `json:"merged_at,omitempty"` User *User `json:"user,omitempty"` Merged *bool `json:"merged,omitempty"` Mergeable *bool `json:"mergeable,omitempty"` MergedBy *User `json:"merged_by,omitempty"` Comments *int `json:"comments,omitempty"` Commits *int `json:"commits,omitempty"` Additions *int `json:"additions,omitempty"` Deletions *int `json:"deletions,omitempty"` ChangedFiles *int `json:"changed_files,omitempty"` HTMLURL *string `json:"html_url,omitempty"` }
PullRequest represents a GitHub pull request on a repository.
func (PullRequest) String ¶
func (p PullRequest) String() string
type PullRequestComment ¶
type PullRequestComment struct { ID *int `json:"id,omitempty"` Body *string `json:"body,omitempty"` Path *string `json:"path,omitempty"` Position *int `json:"position,omitempty"` CommitID *string `json:"commit_id,omitempty"` User *User `json:"user,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` UpdatedAt *time.Time `json:"updated_at,omitempty"` }
PullRequestComment represents a comment left on a pull request.
func (PullRequestComment) String ¶
func (p PullRequestComment) String() string
type PullRequestListCommentsOptions ¶
type PullRequestListCommentsOptions struct { // Sort specifies how to sort comments. Possible values are: created, updated. Sort string `url:"sort,omitempty"` // Direction in which to sort comments. Possible values are: asc, desc. Direction string `url:"direction,omitempty"` // Since filters comments by time. Since time.Time `url:"since,omitempty"` }
PullRequestListCommentsOptions specifies the optional parameters to the PullRequestsService.ListComments method.
type PullRequestListOptions ¶
type PullRequestListOptions struct { // State filters pull requests based on their state. Possible values are: // open, closed. Default is "open". State string `url:"state,omitempty"` // Head filters pull requests by head user and branch name in the format of: // "user:ref-name". Head string `url:"head,omitempty"` // Base filters pull requests by base branch name. Base string `url:"base,omitempty"` }
PullRequestListOptions specifies the optional parameters to the PullRequestsService.List method.
type PullRequestsService ¶
type PullRequestsService struct {
// contains filtered or unexported fields
}
PullRequestsService handles communication with the pull request related methods of the GitHub API.
GitHub API docs: http://developer.github.com/v3/pulls/
func (*PullRequestsService) Create ¶
func (s *PullRequestsService) Create(owner string, repo string, pull *PullRequest) (*PullRequest, *Response, error)
Create a new pull request on the specified repository.
GitHub API docs: https://developer.github.com/v3/pulls/#create-a-pull-request
func (*PullRequestsService) CreateComment ¶
func (s *PullRequestsService) CreateComment(owner string, repo string, number int, comment *PullRequestComment) (*PullRequestComment, *Response, error)
CreateComment creates a new comment on the specified pull request.
GitHub API docs: https://developer.github.com/v3/pulls/comments/#get-a-single-comment
func (*PullRequestsService) DeleteComment ¶
func (s *PullRequestsService) DeleteComment(owner string, repo string, number int) (*Response, error)
DeleteComment deletes a pull request comment.
GitHub API docs: https://developer.github.com/v3/pulls/comments/#delete-a-comment
func (*PullRequestsService) Edit ¶
func (s *PullRequestsService) Edit(owner string, repo string, number int, pull *PullRequest) (*PullRequest, *Response, error)
Edit a pull request.
GitHub API docs: https://developer.github.com/v3/pulls/#update-a-pull-request
func (*PullRequestsService) EditComment ¶
func (s *PullRequestsService) EditComment(owner string, repo string, number int, comment *PullRequestComment) (*PullRequestComment, *Response, error)
EditComment updates a pull request comment.
GitHub API docs: https://developer.github.com/v3/pulls/comments/#edit-a-comment
func (*PullRequestsService) Get ¶
func (s *PullRequestsService) Get(owner string, repo string, number int) (*PullRequest, *Response, error)
Get a single pull request.
GitHub API docs: https://developer.github.com/v3/pulls/#get-a-single-pull-request
func (*PullRequestsService) GetComment ¶
func (s *PullRequestsService) GetComment(owner string, repo string, number int) (*PullRequestComment, *Response, error)
GetComment fetches the specified pull request comment.
GitHub API docs: https://developer.github.com/v3/pulls/comments/#get-a-single-comment
func (*PullRequestsService) List ¶
func (s *PullRequestsService) List(owner string, repo string, opt *PullRequestListOptions) ([]PullRequest, *Response, error)
List the pull requests for the specified repository.
GitHub API docs: http://developer.github.com/v3/pulls/#list-pull-requests
func (*PullRequestsService) ListComments ¶
func (s *PullRequestsService) ListComments(owner string, repo string, number int, opt *PullRequestListCommentsOptions) ([]PullRequestComment, *Response, error)
ListComments lists all comments on the specified pull request. Specifying a pull request number of 0 will return all comments on all pull requests for the repository.
GitHub API docs: https://developer.github.com/v3/pulls/comments/#list-comments-on-a-pull-request
type PushEvent ¶
type PushEvent struct { PushID *int `json:"push_id,omitempty"` Head *string `json:"head,omitempty"` Ref *string `json:"ref,omitempty"` Size *int `json:"ref,omitempty"` Commits []PushEventCommit `json:"commits,omitempty"` }
PushEvent represents a git push to a GitHub repository.
GitHub API docs: http://developer.github.com/v3/activity/events/types/#pushevent
type PushEventCommit ¶
type PushEventCommit struct { SHA *string `json:"sha,omitempty"` Message *string `json:"message,omitempty"` Author *CommitAuthor `json:"author,omitempty"` URL *string `json:"url,omitempty"` Distinct *bool `json:"distinct"` }
PushEventCommit represents a git commit in a GitHub PushEvent.
func (PushEventCommit) String ¶
func (p PushEventCommit) String() string
type Rate ¶
type Rate struct { // The number of requests per hour the client is currently limited to. Limit int // The number of remaining requests the client can make this hour. Remaining int // The time at which the current rate limit will reset. Reset time.Time }
Rate represents the rate limit for the current client. Unauthenticated requests are limited to 60 per hour. Authenticated requests are limited to 5,000 per hour.
type Reference ¶
type Reference struct { Ref *string `json:"ref"` URL *string `json:"url"` Object *GitObject `json:"object"` }
Reference represents a GitHub reference.
type ReleaseAsset ¶
type ReleaseAsset struct { ID *int `json:"id,omitempty"` URL *string `json:"url,omitempty"` Name *string `json:"name,omitempty"` Label *string `json:"label,omitempty"` State *string `json:"state,omitempty"` ContentType *string `json:"content_type,omitempty"` Size *int `json:"size,omitempty"` DownloadCount *int `json:"download_count,omitempty"` CreatedAt *Timestamp `json:"created_at,omitempty"` UpdatedAt *Timestamp `json:"updated_at,omitempty"` }
ReleaseAsset represents a Github release asset in a repository.
func (ReleaseAsset) String ¶
func (r ReleaseAsset) String() string
type RepoStatus ¶
type RepoStatus struct { ID *int `json:"id,omitempty"` // State is the current state of the repository. Possible values are: // pending, success, error, or failure. State *string `json:"state,omitempty"` // TargetURL is the URL of the page representing this status. It will be // linked from the GitHub UI to allow users to see the source of the status. TargetURL *string `json:"target_url,omitempty"` // Description is a short high level summary of the status. Description *string `json:"description,omitempty"` Creator *User `json:"creator,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` UpdatedAt *time.Time `json:"updated_at,omitempty"` }
RepoStatus represents the status of a repository at a particular reference.
func (RepoStatus) String ¶
func (r RepoStatus) String() string
type RepositoriesSearchResult ¶
type RepositoriesSearchResult struct { Total *int `json:"total_count,omitempty"` Repositories []Repository `json:"items,omitempty"` }
RepositoriesSearchResult represents the result of a repositories search.
type RepositoriesService ¶
type RepositoriesService struct {
// contains filtered or unexported fields
}
RepositoriesService handles communication with the repository related methods of the GitHub API.
GitHub API docs: http://developer.github.com/v3/repos/
func (*RepositoriesService) AddCollaborator ¶
func (s *RepositoriesService) AddCollaborator(owner, repo, user string) (*Response, error)
AddCollaborator adds the specified Github user as collaborator to the given repo.
GitHub API docs: http://developer.github.com/v3/repos/collaborators/#add-collaborator
func (*RepositoriesService) CompareCommits ¶
func (s *RepositoriesService) CompareCommits(owner, repo string, base, head string) (*CommitsComparison, *Response, error)
CompareCommits compares a range of commits with each other. todo: support media formats - https://github.com/google/go-github/issues/6
GitHub API docs: http://developer.github.com/v3/repos/commits/index.html#compare-two-commits
func (*RepositoriesService) Create ¶
func (s *RepositoriesService) Create(org string, repo *Repository) (*Repository, *Response, error)
Create a new repository. If an organization is specified, the new repository will be created under that org. If the empty string is specified, it will be created for the authenticated user.
GitHub API docs: http://developer.github.com/v3/repos/#create
func (*RepositoriesService) CreateComment ¶
func (s *RepositoriesService) CreateComment(owner, repo, sha string, comment *RepositoryComment) (*RepositoryComment, *Response, error)
CreateComment creates a comment for the given commit. Note: GitHub allows for comments to be created for non-existing files and positions.
GitHub API docs: http://developer.github.com/v3/repos/comments/#create-a-commit-comment
func (*RepositoriesService) CreateFork ¶
func (s *RepositoriesService) CreateFork(owner, repo string, opt *RepositoryCreateForkOptions) (*Repository, *Response, error)
CreateFork creates a fork of the specified repository.
GitHub API docs: http://developer.github.com/v3/repos/forks/#list-forks
func (*RepositoriesService) CreateHook ¶
CreateHook creates a Hook for the specified repository. Name and Config are required fields.
GitHub API docs: http://developer.github.com/v3/repos/hooks/#create-a-hook
func (*RepositoriesService) CreateKey ¶
func (s *RepositoriesService) CreateKey(owner string, repo string, key *Key) (*Key, *Response, error)
CreateKey adds a deploy key for a repository.
GitHub API docs: http://developer.github.com/v3/repos/keys/#create
func (*RepositoriesService) CreateRelease ¶
func (s *RepositoriesService) CreateRelease(owner, repo string, release *RepositoryRelease) (*RepositoryRelease, *Response, error)
CreateRelease adds a new release for a repository.
GitHub API docs : http://developer.github.com/v3/repos/releases/#create-a-release
func (*RepositoriesService) CreateStatus ¶
func (s *RepositoriesService) CreateStatus(owner, repo, ref string, status *RepoStatus) (*RepoStatus, *Response, error)
CreateStatus creates a new status for a repository at the specified reference. Ref can be a SHA, a branch name, or a tag name.
GitHub API docs: http://developer.github.com/v3/repos/statuses/#create-a-status
func (*RepositoriesService) DeleteComment ¶
func (s *RepositoriesService) DeleteComment(owner, repo string, id int) (*Response, error)
DeleteComment deletes a single comment from a repository.
GitHub API docs: http://developer.github.com/v3/repos/comments/#delete-a-commit-comment
func (*RepositoriesService) DeleteHook ¶
func (s *RepositoriesService) DeleteHook(owner, repo string, id int) (*Response, error)
DeleteHook deletes a specified Hook.
GitHub API docs: http://developer.github.com/v3/repos/hooks/#delete-a-hook
func (*RepositoriesService) DeleteKey ¶
DeleteKey deletes a deploy key.
GitHub API docs: http://developer.github.com/v3/repos/keys/#delete
func (*RepositoriesService) DeleteRelease ¶
func (s *RepositoriesService) DeleteRelease(owner, repo string, id int) (*Response, error)
DeleteRelease delete a single release from a repository.
GitHub API docs : http://developer.github.com/v3/repos/releases/#delete-a-release
func (*RepositoriesService) DeleteReleaseAsset ¶
func (s *RepositoriesService) DeleteReleaseAsset(owner, repo string, id int) (*Response, error)
DeleteReleaseAsset delete a single release asset from a repository.
GitHub API docs : http://developer.github.com/v3/repos/releases/#delete-a-release-asset
func (*RepositoriesService) Edit ¶
func (s *RepositoriesService) Edit(owner, repo string, repository *Repository) (*Repository, *Response, error)
Edit updates a repository.
GitHub API docs: http://developer.github.com/v3/repos/#edit
func (*RepositoriesService) EditHook ¶
func (s *RepositoriesService) EditHook(owner, repo string, id int, hook *Hook) (*Hook, *Response, error)
EditHook updates a specified Hook.
GitHub API docs: http://developer.github.com/v3/repos/hooks/#edit-a-hook
func (*RepositoriesService) EditKey ¶
func (s *RepositoriesService) EditKey(owner string, repo string, id int, key *Key) (*Key, *Response, error)
EditKey edits a deploy key.
GitHub API docs: http://developer.github.com/v3/repos/keys/#edit
func (*RepositoriesService) EditRelease ¶
func (s *RepositoriesService) EditRelease(owner, repo string, id int, release *RepositoryRelease) (*RepositoryRelease, *Response, error)
EditRelease edits a repository release.
GitHub API docs : http://developer.github.com/v3/repos/releases/#edit-a-release
func (*RepositoriesService) EditReleaseAsset ¶
func (s *RepositoriesService) EditReleaseAsset(owner, repo string, id int, release *ReleaseAsset) (*ReleaseAsset, *Response, error)
EditReleaseAsset edits a repository release asset.
GitHub API docs : http://developer.github.com/v3/repos/releases/#edit-a-release-asset
func (*RepositoriesService) Get ¶
func (s *RepositoriesService) Get(owner, repo string) (*Repository, *Response, error)
Get fetches a repository.
GitHub API docs: http://developer.github.com/v3/repos/#get
func (*RepositoriesService) GetComment ¶
func (s *RepositoriesService) GetComment(owner, repo string, id int) (*RepositoryComment, *Response, error)
GetComment gets a single comment from a repository.
GitHub API docs: http://developer.github.com/v3/repos/comments/#get-a-single-commit-comment
func (*RepositoriesService) GetCommit ¶
func (s *RepositoriesService) GetCommit(owner, repo, sha string) (*RepositoryCommit, *Response, error)
GetCommit fetches the specified commit, including all details about it. todo: support media formats - https://github.com/google/go-github/issues/6
GitHub API docs: http://developer.github.com/v3/repos/commits/#get-a-single-commit See also: http://developer.github.com//v3/git/commits/#get-a-single-commit provides the same functionality
func (*RepositoriesService) GetHook ¶
GetHook returns a single specified Hook.
GitHub API docs: http://developer.github.com/v3/repos/hooks/#get-single-hook
func (*RepositoriesService) GetKey ¶
GetKey fetches a single deploy key.
GitHub API docs: http://developer.github.com/v3/repos/keys/#get
func (*RepositoriesService) GetReadme ¶
func (s *RepositoriesService) GetReadme(owner, repo string) (*RepositoryContent, *Response, error)
GetReadme gets the Readme file for the repository.
GitHub API docs: http://developer.github.com/v3/repos/contents/#get-the-readme
func (*RepositoriesService) GetRelease ¶
func (s *RepositoriesService) GetRelease(owner, repo string, id int) (*RepositoryRelease, *Response, error)
GetRelease fetches a single release.
GitHub API docs: http://developer.github.com/v3/repos/releases/#get-a-single-release
func (*RepositoriesService) GetReleaseAsset ¶
func (s *RepositoriesService) GetReleaseAsset(owner, repo string, id int) (*ReleaseAsset, *Response, error)
GetReleaseAsset fetches a single release asset.
GitHub API docs : http://developer.github.com/v3/repos/releases/#get-a-single-release-asset
func (*RepositoriesService) IsCollaborator ¶
func (s *RepositoriesService) IsCollaborator(owner, repo, user string) (bool, *Response, error)
IsCollaborator checks whether the specified Github user has collaborator access to the given repo. Note: This will return false if the user is not a collaborator OR the user is not a GitHub user.
GitHub API docs: http://developer.github.com/v3/repos/collaborators/#get
func (*RepositoriesService) List ¶
func (s *RepositoriesService) List(user string, opt *RepositoryListOptions) ([]Repository, *Response, error)
List the repositories for a user. Passing the empty string will list repositories for the authenticated user.
GitHub API docs: http://developer.github.com/v3/repos/#list-user-repositories
func (*RepositoriesService) ListAll ¶
func (s *RepositoriesService) ListAll(opt *RepositoryListAllOptions) ([]Repository, *Response, error)
ListAll lists all GitHub repositories in the order that they were created.
GitHub API docs: http://developer.github.com/v3/repos/#list-all-public-repositories
func (*RepositoriesService) ListByOrg ¶
func (s *RepositoriesService) ListByOrg(org string, opt *RepositoryListByOrgOptions) ([]Repository, *Response, error)
ListByOrg lists the repositories for an organization.
GitHub API docs: http://developer.github.com/v3/repos/#list-organization-repositories
func (*RepositoriesService) ListCollaborators ¶
func (s *RepositoriesService) ListCollaborators(owner, repo string) ([]User, *Response, error)
ListCollaborators lists the Github users that have access to the repository.
GitHub API docs: http://developer.github.com/v3/repos/collaborators/#list
func (*RepositoriesService) ListComments ¶
func (s *RepositoriesService) ListComments(owner, repo string) ([]RepositoryComment, *Response, error)
ListComments lists all the comments for the repository.
GitHub API docs: http://developer.github.com/v3/repos/comments/#list-commit-comments-for-a-repository
func (*RepositoriesService) ListCommitComments ¶
func (s *RepositoriesService) ListCommitComments(owner, repo, sha string) ([]RepositoryComment, *Response, error)
ListCommitComments lists all the comments for a given commit SHA.
GitHub API docs: http://developer.github.com/v3/repos/comments/#list-comments-for-a-single-commit
func (*RepositoriesService) ListCommits ¶
func (s *RepositoriesService) ListCommits(owner, repo string, opt *CommitsListOptions) ([]RepositoryCommit, *Response, error)
ListCommits lists the commits of a repository.
GitHub API docs: http://developer.github.com/v3/repos/commits/#list
func (*RepositoriesService) ListForks ¶
func (s *RepositoriesService) ListForks(owner, repo string, opt *RepositoryListForksOptions) ([]Repository, *Response, error)
ListForks lists the forks of the specified repository.
GitHub API docs: http://developer.github.com/v3/repos/forks/#list-forks
func (*RepositoriesService) ListHooks ¶
func (s *RepositoriesService) ListHooks(owner, repo string, opt *ListOptions) ([]Hook, *Response, error)
ListHooks lists all Hooks for the specified repository.
GitHub API docs: http://developer.github.com/v3/repos/hooks/#list
func (*RepositoriesService) ListKeys ¶
ListKeys lists the deploy keys for a repository.
GitHub API docs: http://developer.github.com/v3/repos/keys/#list
func (*RepositoriesService) ListLanguages ¶
func (s *RepositoriesService) ListLanguages(owner string, repository string) (map[string]int, *Response, error)
ListLanguages lists languages for the specified repository. The returned map specifies the languages and the number of bytes of code written in that language. For example:
{ "C": 78769, "Python": 7769 }
GitHub API Docs: http://developer.github.com/v3/repos/#list-languages
func (*RepositoriesService) ListReleaseAssets ¶
func (s *RepositoriesService) ListReleaseAssets(owner, repo string, id int) ([]ReleaseAsset, *Response, error)
ListReleaseAssets lists the release's assets.
GitHub API docs : http://developer.github.com/v3/repos/releases/#list-assets-for-a-release
func (*RepositoriesService) ListReleases ¶
func (s *RepositoriesService) ListReleases(owner, repo string) ([]RepositoryRelease, *Response, error)
ListReleases lists the releases for a repository.
GitHub API docs: http://developer.github.com/v3/repos/releases/#list-releases-for-a-repository
func (*RepositoriesService) ListStatuses ¶
func (s *RepositoriesService) ListStatuses(owner, repo, ref string) ([]RepoStatus, *Response, error)
ListStatuses lists the statuses of a repository at the specified reference. ref can be a SHA, a branch name, or a tag name.
GitHub API docs: http://developer.github.com/v3/repos/statuses/#list-statuses-for-a-specific-ref
func (*RepositoriesService) RemoveCollaborator ¶
func (s *RepositoriesService) RemoveCollaborator(owner, repo, user string) (*Response, error)
RemoveCollaborator removes the specified Github user as collaborator from the given repo. Note: Does not return error if a valid user that is not a collaborator is removed.
GitHub API docs: http://developer.github.com/v3/repos/collaborators/#remove-collaborator
func (*RepositoriesService) TestHook ¶
func (s *RepositoriesService) TestHook(owner, repo string, id int) (*Response, error)
TestHook triggers a test Hook by github.
GitHub API docs: http://developer.github.com/v3/repos/hooks/#test-a-push-hook
func (*RepositoriesService) UpdateComment ¶
func (s *RepositoriesService) UpdateComment(owner, repo string, id int, comment *RepositoryComment) (*RepositoryComment, *Response, error)
UpdateComment updates the body of a single comment.
GitHub API docs: http://developer.github.com/v3/repos/comments/#update-a-commit-comment
func (*RepositoriesService) UploadReleaseAsset ¶
func (s *RepositoriesService) UploadReleaseAsset(owner, repo string, id int, opt *UploadOptions, file *os.File) (*ReleaseAsset, *Response, error)
UploadReleaseAsset creates an asset by uploading a file into a release repository. To upload assets that cannot be represented by an os.File, call NewUploadRequest directly.
GitHub API docs : http://developer.github.com/v3/repos/releases/#upload-a-release-asset
type Repository ¶
type Repository struct { ID *int `json:"id,omitempty"` Owner *User `json:"owner,omitempty"` Name *string `json:"name,omitempty"` Description *string `json:"description,omitempty"` Homepage *string `json:"homepage,omitempty"` DefaultBranch *string `json:"default_branch,omitempty"` MasterBranch *string `json:"master_branch,omitempty"` CreatedAt *Timestamp `json:"created_at,omitempty"` PushedAt *Timestamp `json:"pushed_at,omitempty"` UpdatedAt *Timestamp `json:"updated_at,omitempty"` URL *string `json:"url,omitempty"` HTMLURL *string `json:"html_url,omitempty"` CloneURL *string `json:"clone_url,omitempty"` GitURL *string `json:"git_url,omitempty"` MirrorURL *string `json:"mirror_url,omitempty"` SSHURL *string `json:"ssh_url,omitempty"` SVNURL *string `json:"svn_url,omitempty"` Language *string `json:"language,omitempty"` Fork *bool `json:"fork"` ForksCount *int `json:"forks_count,omitempty"` WatchersCount *int `json:"watchers_count,omitempty"` OpenIssuesCount *int `json:"open_issues_count,omitempty"` Size *int `json:"size,omitempty"` // Additional mutable fields when creating and editing a repository Private *bool `json:"private"` HasIssues *bool `json:"has_issues"` HasWiki *bool `json:"has_wiki"` }
Repository represents a GitHub repository.
func (Repository) String ¶
func (r Repository) String() string
type RepositoryComment ¶
type RepositoryComment struct { HTMLURL *string `json:"html_url,omitempty"` URL *string `json:"url,omitempty"` ID *int `json:"id,omitempty"` CommitID *string `json:"commit_id,omitempty"` User *User `json:"user,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` UpdatedAt *time.Time `json:"updated_at,omitempty"` // User-mutable fields Body *string `json:"body"` // User-initialized fields Path *string `json:"path,omitempty"` Position *int `json:"position,omitempty"` }
RepositoryComment represents a comment for a commit, file, or line in a repository.
func (RepositoryComment) String ¶
func (r RepositoryComment) String() string
type RepositoryCommit ¶
type RepositoryCommit struct { SHA *string `json:"sha,omitempty"` Commit *Commit `json:"commit,omitempty"` Author *User `json:"author,omitempty"` Committer *User `json:"committer,omitempty"` Parents []Commit `json:"parents,omitempty"` Message *string `json:"message,omitempty"` // Details about how many changes were made in this commit. Only filled in during GetCommit! Stats *CommitStats `json:"stats,omitempty"` // Details about which files, and how this commit touched. Only filled in during GetCommit! Files []CommitFile `json:"files,omitempty"` }
RepositoryCommit represents a commit in a repo. Note that it's wrapping a Commit, so author/committer information is in two places, but contain different details about them: in RepositoryCommit "github details", in Commit - "git details".
func (RepositoryCommit) String ¶
func (r RepositoryCommit) String() string
type RepositoryContent ¶
type RepositoryContent struct { Type *string `json:"type,omitempty"` Encoding *string `json:"encoding,omitempty"` Size *int `json:"size,omitempty"` Name *string `json:"name,omitempty"` Path *string `json:"path,omitempty"` Content *string `json:"content,omitempty"` SHA *string `json:"sha,omitempty"` URL *string `json:"url,omitempty"` GitURL *string `json:"giturl,omitempty"` HTMLURL *string `json:"htmlurl,omitempty"` }
RepositoryContent represents a file or directory in a github repository.
func (*RepositoryContent) Decode ¶
func (c *RepositoryContent) Decode() ([]byte, error)
Decode decodes the file content if it is base64 encoded.
func (RepositoryContent) String ¶
func (r RepositoryContent) String() string
type RepositoryCreateForkOptions ¶
type RepositoryCreateForkOptions struct { // The organization to fork the repository into. Organization string `url:"organization,omitempty"` }
RepositoryCreateForkOptions specifies the optional parameters to the RepositoriesService.CreateFork method.
type RepositoryListAllOptions ¶
type RepositoryListAllOptions struct { // ID of the last repository seen Since int `url:"since,omitempty"` ListOptions }
RepositoryListAllOptions specifies the optional parameters to the RepositoriesService.ListAll method.
type RepositoryListByOrgOptions ¶
type RepositoryListByOrgOptions struct { // Type of repositories to list. Possible values are: all, public, private, // forks, sources, member. Default is "all". Type string `url:"type,omitempty"` ListOptions }
RepositoryListByOrgOptions specifies the optional parameters to the RepositoriesService.ListByOrg method.
type RepositoryListForksOptions ¶
type RepositoryListForksOptions struct { // How to sort the forks list. Possible values are: newest, oldest, // watchers. Default is "newest". Sort string `url:"sort,omitempty"` }
RepositoryListForksOptions specifies the optional parameters to the RepositoriesService.ListForks method.
type RepositoryListOptions ¶
type RepositoryListOptions struct { // Type of repositories to list. Possible values are: all, owner, public, // private, member. Default is "all". Type string `url:"type,omitempty"` // How to sort the repository list. Possible values are: created, updated, // pushed, full_name. Default is "full_name". Sort string `url:"sort,omitempty"` // Direction in which to sort repositories. Possible values are: asc, desc. // Default is "asc" when sort is "full_name", otherwise default is "desc". Direction string `url:"direction,omitempty"` ListOptions }
RepositoryListOptions specifies the optional parameters to the RepositoriesService.List method.
type RepositoryRelease ¶
type RepositoryRelease struct { ID *int `json:"id,omitempty"` TagName *string `json:"tag_name,omitempty"` TargetCommitish *string `json:"target_commitish,omitempty"` Name *string `json:"name,omitempty"` Body *string `json:"body,omitempty"` Draft *bool `json:"draft,omitempty"` Prerelease *bool `json:"prerelease,omitempty"` CreatedAt *Timestamp `json:"created_at,omitempty"` PublishedAt *Timestamp `json:"published_at,omitempty"` URL *string `json:"url,omitempty"` HTMLURL *string `json:"html_url,omitempty"` AssetsURL *string `json:"assets_url,omitempty"` UploadURL *string `json:"upload_url,omitempty"` }
RepositoryRelease represents a GitHub release in a repository.
func (RepositoryRelease) String ¶
func (r RepositoryRelease) String() string
type Response ¶
Response is a GitHub API response. This wraps the standard http.Response returned from GitHub and provides convenient access to things like pagination links.
type SearchOptions ¶
type SearchOptions struct { // How to sort the search results. Possible values are: // - for repositories: stars, fork, updated // - for code: indexed // - for issues: comments, created, updated // - for users: followers, repositories, joined // // Default is to sort by best match. Sort string `url:"sort,omitempty"` // Sort order if sort parameter is provided. Possible values are: asc, // desc. Default is desc. Order string `url:"order,omitempty"` ListOptions }
SearchOptions specifies optional parameters to the SearchService methods.
type SearchService ¶
type SearchService struct {
// contains filtered or unexported fields
}
SearchService provides access to the search related functions in the GitHub API.
GitHub API docs: http://developer.github.com/v3/search/
func (*SearchService) Code ¶
func (s *SearchService) Code(query string, opt *SearchOptions) (*CodeSearchResult, *Response, error)
Code searches code via various criteria.
GitHub API docs: http://developer.github.com/v3/search/#search-code
func (*SearchService) Issues ¶
func (s *SearchService) Issues(query string, opt *SearchOptions) (*IssuesSearchResult, *Response, error)
Issues searches issues via various criteria.
GitHub API docs: http://developer.github.com/v3/search/#search-issues
func (*SearchService) Repositories ¶
func (s *SearchService) Repositories(query string, opt *SearchOptions) (*RepositoriesSearchResult, *Response, error)
Repositories searches repositories via various criteria.
GitHub API docs: http://developer.github.com/v3/search/#search-repositories
func (*SearchService) Users ¶
func (s *SearchService) Users(query string, opt *SearchOptions) (*UsersSearchResult, *Response, error)
Users searches users via various criteria.
GitHub API docs: http://developer.github.com/v3/search/#search-users
type Team ¶
type Team struct { ID *int `json:"id,omitempty"` Name *string `json:"name,omitempty"` URL *string `json:"url,omitempty"` Slug *string `json:"slug,omitempty"` Permission *string `json:"permission,omitempty"` MembersCount *int `json:"members_count,omitempty"` ReposCount *int `json:"repos_count,omitempty"` }
Team represents a team within a GitHub organization. Teams are used to manage access to an organization's repositories.
type Timestamp ¶
Timestamp represents a time that can be unmarshalled from a JSON string formatted as either an RFC3339 or Unix timestamp. This is necessary for some fields since the GitHub API is inconsistent in how it represents times. All exported methods of time.Time can be called on Timestamp.
func (*Timestamp) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaler interface. Time is expected in RFC3339 or Unix format.
type TreeEntry ¶
type TreeEntry struct { SHA *string `json:"sha,omitempty"` Path *string `json:"path,omitempty"` Mode *string `json:"mode,omitempty"` Type *string `json:"type,omitempty"` Size *int `json:"size,omitempty"` }
TreeEntry represents the contents of a tree structure. TreeEntry can represent either a blob, a commit (in the case of a submodule), or another tree.
type UnauthenticatedRateLimitedTransport ¶
type UnauthenticatedRateLimitedTransport struct { // ClientID is the GitHub OAuth client ID of the current application, which // can be found by selecting its entry in the list at // https://github.com/settings/applications. ClientID string // ClientSecret is the GitHub OAuth client secret of the current // application. ClientSecret string // Transport is the underlying HTTP transport to use when making requests. // It will default to http.DefaultTransport if nil. Transport http.RoundTripper }
UnauthenticatedRateLimitedTransport allows you to make unauthenticated calls that need to use a higher rate limit associated with your OAuth application.
t := &github.UnauthenticatedRateLimitedTransport{ ClientID: "your app's client ID", ClientSecret: "your app's client secret", } client := github.NewClient(t.Client())
This will append the querystring params client_id=xxx&client_secret=yyy to all requests.
See http://developer.github.com/v3/#unauthenticated-rate-limited-requests for more information.
func (*UnauthenticatedRateLimitedTransport) Client ¶
func (t *UnauthenticatedRateLimitedTransport) Client() *http.Client
Client returns an *http.Client that makes requests which are subject to the rate limit of your OAuth application.
type UploadOptions ¶
type UploadOptions struct {
Name string `url:"name,omitempty"`
}
UploadOptions specifies the parameters to methods that support uploads.
type User ¶
type User struct { Login *string `json:"login,omitempty"` ID *int `json:"id,omitempty"` URL *string `json:"url,omitempty"` AvatarURL *string `json:"avatar_url,omitempty"` GravatarID *string `json:"gravatar_id,omitempty"` Name *string `json:"name,omitempty"` Company *string `json:"company,omitempty"` Blog *string `json:"blog,omitempty"` Location *string `json:"location,omitempty"` Email *string `json:"email,omitempty"` Hireable *bool `json:"hireable,omitempty"` PublicRepos *int `json:"public_repos,omitempty"` Followers *int `json:"followers,omitempty"` Following *int `json:"following,omitempty"` CreatedAt *time.Time `json:"created_at,omitempty"` }
User represents a GitHub user.
type UserListOptions ¶
type UserListOptions struct { // ID of the last user seen Since int `url:"since,omitempty"` }
UserListOptions specifies optional parameters to the UsersService.List method.
type UsersSearchResult ¶
type UsersSearchResult struct { Total *int `json:"total_count,omitempty"` Users []User `json:"items,omitempty"` }
UsersSearchResult represents the result of an issues search.
type UsersService ¶
type UsersService struct {
// contains filtered or unexported fields
}
UsersService handles communication with the user related methods of the GitHub API.
GitHub API docs: http://developer.github.com/v3/users/
func (*UsersService) AddEmails ¶
func (s *UsersService) AddEmails(emails []UserEmail) ([]UserEmail, *Response, error)
AddEmails adds email addresses of authenticated user
GitHub API docs: http://developer.github.com/v3/users/emails/#add-email-addresses
func (*UsersService) CreateKey ¶
func (s *UsersService) CreateKey(key *Key) (*Key, *Response, error)
CreateKey adds a public key for the authenticated user.
GitHub API docs: http://developer.github.com/v3/users/keys/#create-a-public-key
func (*UsersService) DeleteEmails ¶
func (s *UsersService) DeleteEmails(emails []UserEmail) (*Response, error)
DeleteEmails deletes email addresses from authenticated user
GitHub API docs: http://developer.github.com/v3/users/emails/#delete-email-addresses
func (*UsersService) DeleteKey ¶
func (s *UsersService) DeleteKey(id int) (*Response, error)
DeleteKey deletes a public key.
GitHub API docs: http://developer.github.com/v3/users/keys/#delete-a-public-key
func (*UsersService) Edit ¶
func (s *UsersService) Edit(user *User) (*User, *Response, error)
Edit the authenticated user.
GitHub API docs: http://developer.github.com/v3/users/#update-the-authenticated-user
func (*UsersService) EditKey ¶
EditKey edits a public key.
GitHub API docs: http://developer.github.com/v3/users/keys/#update-a-public-key
func (*UsersService) Follow ¶
func (s *UsersService) Follow(user string) (*Response, error)
Follow will cause the authenticated user to follow the specified user.
GitHub API docs: http://developer.github.com/v3/users/followers/#follow-a-user
func (*UsersService) Get ¶
func (s *UsersService) Get(user string) (*User, *Response, error)
Get fetches a user. Passing the empty string will fetch the authenticated user.
GitHub API docs: http://developer.github.com/v3/users/#get-a-single-user
func (*UsersService) GetKey ¶
func (s *UsersService) GetKey(id int) (*Key, *Response, error)
GetKey fetches a single public key.
GitHub API docs: http://developer.github.com/v3/users/keys/#get-a-single-public-key
func (*UsersService) IsFollowing ¶
func (s *UsersService) IsFollowing(user, target string) (bool, *Response, error)
IsFollowing checks if "user" is following "target". Passing the empty string for "user" will check if the authenticated user is following "target".
GitHub API docs: http://developer.github.com/v3/users/followers/#check-if-you-are-following-a-user
func (*UsersService) ListAll ¶
func (s *UsersService) ListAll(opt *UserListOptions) ([]User, *Response, error)
ListAll lists all GitHub users.
GitHub API docs: http://developer.github.com/v3/users/#get-all-users
func (*UsersService) ListEmails ¶
func (s *UsersService) ListEmails() ([]UserEmail, *Response, error)
ListEmails lists all authenticated user email addresses
GitHub API docs: http://developer.github.com/v3/users/emails/#list-email-addresses-for-a-user
func (*UsersService) ListFollowers ¶
func (s *UsersService) ListFollowers(user string) ([]User, *Response, error)
ListFollowers lists the followers for a user. Passing the empty string will fetch followers for the authenticated user.
GitHub API docs: http://developer.github.com/v3/users/followers/#list-followers-of-a-user
func (*UsersService) ListFollowing ¶
func (s *UsersService) ListFollowing(user string, opt *ListOptions) ([]User, *Response, error)
ListFollowing lists the people that a user is following. Passing the empty string will list people the authenticated user is following.
GitHub API docs: http://developer.github.com/v3/users/followers/#list-users-followed-by-another-user
func (*UsersService) ListKeys ¶
func (s *UsersService) ListKeys(user string) ([]Key, *Response, error)
ListKeys lists the verified public keys for a user. Passing the empty string will fetch keys for the authenticated user.
GitHub API docs: http://developer.github.com/v3/users/keys/#list-public-keys-for-a-user
func (*UsersService) Unfollow ¶
func (s *UsersService) Unfollow(user string) (*Response, error)
Unfollow will cause the authenticated user to unfollow the specified user.
GitHub API docs: http://developer.github.com/v3/users/followers/#unfollow-a-user
type WebHookAuthor ¶
type WebHookAuthor struct { Email *string `json:"email,omitempty"` Name *string `json:"name,omitempty"` Username *string `json:"username,omitempty"` }
WebHookAuthor represents the author or committer of a commit, as specified in a WebHookCommit. The commit author may not correspond to a GitHub User.
func (WebHookAuthor) String ¶
func (w WebHookAuthor) String() string
type WebHookCommit ¶
type WebHookCommit struct { Added []string `json:"added,omitempty"` Author *WebHookAuthor `json:"author,omitempty"` Committer *WebHookAuthor `json:"committer,omitempty"` Distinct *bool `json:"distinct,omitempty"` ID *string `json:"id,omitempty"` Message *string `json:"message,omitempty"` Modified []string `json:"modified,omitempty"` Removed []string `json:"removed,omitempty"` Timestamp *time.Time `json:"timestamp,omitempty"` }
WebHookCommit represents the commit variant we receive from GitHub in a WebHookPayload.
func (WebHookCommit) String ¶
func (w WebHookCommit) String() string
type WebHookPayload ¶
type WebHookPayload struct { After *string `json:"after,omitempty"` Before *string `json:"before,omitempty"` Commits []WebHookCommit `json:"commits,omitempty"` Compare *string `json:"compare,omitempty"` Created *bool `json:"created,omitempty"` Deleted *bool `json:"deleted,omitempty"` Forced *bool `json:"forced,omitempty"` HeadCommit *WebHookCommit `json:"head_commit,omitempty"` Pusher *User `json:"pusher,omitempty"` Ref *string `json:"ref,omitempty"` Repo *Repository `json:"repository,omitempty"` }
WebHookPayload represents the data that is received from GitHub when a push event hook is triggered. The format of these payloads pre-date most of the GitHub v3 API, so there are lots of minor incompatibilities with the types defined in the rest of the API. Therefore, several types are duplicated here to account for these differences.
GitHub API docs: https://help.github.com/articles/post-receive-hooks
func (WebHookPayload) String ¶
func (w WebHookPayload) String() string
Source Files ¶
- activity.go
- activity_events.go
- activity_star.go
- activity_watching.go
- doc.go
- gists.go
- gists_comments.go
- git.go
- git_commits.go
- git_refs.go
- git_trees.go
- github.go
- gitignore.go
- issues.go
- issues_assignees.go
- issues_comments.go
- issues_labels.go
- orgs.go
- orgs_members.go
- orgs_teams.go
- pulls.go
- pulls_comments.go
- repos.go
- repos_collaborators.go
- repos_comments.go
- repos_commits.go
- repos_contents.go
- repos_forks.go
- repos_hooks.go
- repos_keys.go
- repos_releases.go
- repos_statuses.go
- search.go
- strings.go
- timestamp.go
- users.go
- users_emails.go
- users_followers.go
- users_keys.go