githubv4: github.com/shurcooL/githubv4 Index | Examples | Files | Directories

package githubv4

import "github.com/shurcooL/githubv4"

Package githubv4 is a client library for accessing GitHub GraphQL API v4 (https://developer.github.com/v4/).

If you're looking for a client library for GitHub REST API v3, the recommended package is github.com/google/go-github/github.

Status: In active early research and development. The API will change when opportunities for improvement are discovered; it is not yet frozen.

For now, see README for more details.

Code:

src := oauth2.StaticTokenSource(
    &oauth2.Token{AccessToken: os.Getenv("GITHUB_TOKEN")},
)
httpClient := oauth2.NewClient(context.Background(), src)

client := githubv4.NewClient(httpClient)

var q struct {
    Viewer struct {
        Login     string
        CreatedAt time.Time
        AvatarURL string `graphql:"avatarUrl(size: 72)"`
    }
}
err := client.Query(context.Background(), &q, nil)
if err != nil {
    log.Fatalln(err)
}
fmt.Println(q.Viewer.Login)
fmt.Println(q.Viewer.CreatedAt)
fmt.Println(q.Viewer.AvatarURL)

Index

Examples

Package Files

doc.go enum.go githubv4.go input.go scalar.go

type AcceptTopicSuggestionInput Uses

type AcceptTopicSuggestionInput struct {
    // The Node ID of the repository. (Required.)
    RepositoryID ID  `json:"repositoryId"`
    // The name of the suggested topic. (Required.)
    Name String `json:"name"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AcceptTopicSuggestionInput is an autogenerated input type of AcceptTopicSuggestion.

type AddAssigneesToAssignableInput Uses

type AddAssigneesToAssignableInput struct {
    // The id of the assignable object to add assignees to. (Required.)
    AssignableID ID  `json:"assignableId"`
    // The id of users to add as assignees. (Required.)
    AssigneeIDs []ID `json:"assigneeIds"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AddAssigneesToAssignableInput is an autogenerated input type of AddAssigneesToAssignable.

type AddCommentInput Uses

type AddCommentInput struct {
    // The Node ID of the subject to modify. (Required.)
    SubjectID ID  `json:"subjectId"`
    // The contents of the comment. (Required.)
    Body String `json:"body"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AddCommentInput is an autogenerated input type of AddComment.

type AddLabelsToLabelableInput Uses

type AddLabelsToLabelableInput struct {
    // The id of the labelable object to add labels to. (Required.)
    LabelableID ID  `json:"labelableId"`
    // The ids of the labels to add. (Required.)
    LabelIDs []ID `json:"labelIds"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AddLabelsToLabelableInput is an autogenerated input type of AddLabelsToLabelable.

type AddProjectCardInput Uses

type AddProjectCardInput struct {
    // The Node ID of the ProjectColumn. (Required.)
    ProjectColumnID ID  `json:"projectColumnId"`

    // The content of the card. Must be a member of the ProjectCardItem union. (Optional.)
    ContentID *ID `json:"contentId,omitempty"`
    // The note on the card. (Optional.)
    Note *String `json:"note,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AddProjectCardInput is an autogenerated input type of AddProjectCard.

type AddProjectColumnInput Uses

type AddProjectColumnInput struct {
    // The Node ID of the project. (Required.)
    ProjectID ID  `json:"projectId"`
    // The name of the column. (Required.)
    Name String `json:"name"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AddProjectColumnInput is an autogenerated input type of AddProjectColumn.

type AddPullRequestReviewCommentInput Uses

type AddPullRequestReviewCommentInput struct {
    // The Node ID of the review to modify. (Required.)
    PullRequestReviewID ID  `json:"pullRequestReviewId"`
    // The text of the comment. (Required.)
    Body String `json:"body"`

    // The SHA of the commit to comment on. (Optional.)
    CommitOID *GitObjectID `json:"commitOID,omitempty"`
    // The relative path of the file to comment on. (Optional.)
    Path *String `json:"path,omitempty"`
    // The line index in the diff to comment on. (Optional.)
    Position *Int `json:"position,omitempty"`
    // The comment id to reply to. (Optional.)
    InReplyTo *ID `json:"inReplyTo,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AddPullRequestReviewCommentInput is an autogenerated input type of AddPullRequestReviewComment.

type AddPullRequestReviewInput Uses

type AddPullRequestReviewInput struct {
    // The Node ID of the pull request to modify. (Required.)
    PullRequestID ID  `json:"pullRequestId"`

    // The commit OID the review pertains to. (Optional.)
    CommitOID *GitObjectID `json:"commitOID,omitempty"`
    // The contents of the review body comment. (Optional.)
    Body *String `json:"body,omitempty"`
    // The event to perform on the pull request review. (Optional.)
    Event *PullRequestReviewEvent `json:"event,omitempty"`
    // The review line comments. (Optional.)
    Comments *[]*DraftPullRequestReviewComment `json:"comments,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AddPullRequestReviewInput is an autogenerated input type of AddPullRequestReview.

type AddReactionInput Uses

type AddReactionInput struct {
    // The Node ID of the subject to modify. (Required.)
    SubjectID ID  `json:"subjectId"`
    // The name of the emoji to react with. (Required.)
    Content ReactionContent `json:"content"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AddReactionInput is an autogenerated input type of AddReaction.

type AddStarInput Uses

type AddStarInput struct {
    // The Starrable ID to star. (Required.)
    StarrableID ID  `json:"starrableId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

AddStarInput is an autogenerated input type of AddStar.

type Boolean Uses

type Boolean graphql.Boolean

Boolean represents true or false values.

func NewBoolean Uses

func NewBoolean(v Boolean) *Boolean

NewBoolean is a helper to make a new *Boolean.

type ChangeUserStatusInput Uses

type ChangeUserStatusInput struct {

    // The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., :grinning:. (Optional.)
    Emoji *String `json:"emoji,omitempty"`
    // A short description of your current status. (Optional.)
    Message *String `json:"message,omitempty"`
    // The ID of the organization whose members will be allowed to see the status. If omitted, the status will be publicly visible. (Optional.)
    OrganizationID *ID `json:"organizationId,omitempty"`
    // Whether this status should indicate you are not fully available on GitHub, e.g., you are away. (Optional.)
    LimitedAvailability *Boolean `json:"limitedAvailability,omitempty"`
    // If set, the user status will not be shown after this date. (Optional.)
    ExpiresAt *DateTime `json:"expiresAt,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

ChangeUserStatusInput is an autogenerated input type of ChangeUserStatus.

type ClearLabelsFromLabelableInput Uses

type ClearLabelsFromLabelableInput struct {
    // The id of the labelable object to clear the labels from. (Required.)
    LabelableID ID  `json:"labelableId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

ClearLabelsFromLabelableInput is an autogenerated input type of ClearLabelsFromLabelable.

type Client Uses

type Client struct {
    // contains filtered or unexported fields
}

Client is a GitHub GraphQL API v4 client.

func NewClient Uses

func NewClient(httpClient *http.Client) *Client

NewClient creates a new GitHub GraphQL API v4 client with the provided http.Client. If httpClient is nil, then http.DefaultClient is used.

Note that GitHub GraphQL API v4 requires authentication, so the provided http.Client is expected to take care of that.

func NewEnterpriseClient Uses

func NewEnterpriseClient(url string, httpClient *http.Client) *Client

NewEnterpriseClient creates a new GitHub GraphQL API v4 client for the GitHub Enterprise instance with the specified GraphQL endpoint URL, using the provided http.Client. If httpClient is nil, then http.DefaultClient is used.

Note that GitHub GraphQL API v4 requires authentication, so the provided http.Client is expected to take care of that.

func (*Client) Mutate Uses

func (c *Client) Mutate(ctx context.Context, m interface{}, input Input, variables map[string]interface{}) error

Mutate executes a single GraphQL mutation request, with a mutation derived from m, populating the response into it. m should be a pointer to struct that corresponds to the GitHub GraphQL schema. Provided input will be set as a variable named "input".

func (*Client) Query Uses

func (c *Client) Query(ctx context.Context, q interface{}, variables map[string]interface{}) error

Query executes a single GraphQL query request, with a query derived from q, populating the response into it. q should be a pointer to struct that corresponds to the GitHub GraphQL schema.

type CloneProjectInput Uses

type CloneProjectInput struct {
    // The owner ID to create the project under. (Required.)
    TargetOwnerID ID  `json:"targetOwnerId"`
    // The source project to clone. (Required.)
    SourceID ID  `json:"sourceId"`
    // Whether or not to clone the source project's workflows. (Required.)
    IncludeWorkflows Boolean `json:"includeWorkflows"`
    // The name of the project. (Required.)
    Name String `json:"name"`

    // The description of the project. (Optional.)
    Body *String `json:"body,omitempty"`
    // The visibility of the project, defaults to false (private). (Optional.)
    Public *Boolean `json:"public,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CloneProjectInput is an autogenerated input type of CloneProject.

type CloneTemplateRepositoryInput Uses

type CloneTemplateRepositoryInput struct {
    // The Node ID of the template repository. (Required.)
    RepositoryID ID  `json:"repositoryId"`
    // The name of the new repository. (Required.)
    Name String `json:"name"`
    // The ID of the owner for the new repository. (Required.)
    OwnerID ID  `json:"ownerId"`
    // Indicates the repository's visibility level. (Required.)
    Visibility RepositoryVisibility `json:"visibility"`

    // A short description of the new repository. (Optional.)
    Description *String `json:"description,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CloneTemplateRepositoryInput is an autogenerated input type of CloneTemplateRepository.

type CloseIssueInput Uses

type CloseIssueInput struct {
    // ID of the issue to be closed. (Required.)
    IssueID ID  `json:"issueId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CloseIssueInput is an autogenerated input type of CloseIssue.

type ClosePullRequestInput Uses

type ClosePullRequestInput struct {
    // ID of the pull request to be closed. (Required.)
    PullRequestID ID  `json:"pullRequestId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

ClosePullRequestInput is an autogenerated input type of ClosePullRequest.

type CollaboratorAffiliation Uses

type CollaboratorAffiliation string

CollaboratorAffiliation represents collaborators affiliation level with a subject.

const (
    CollaboratorAffiliationOutside CollaboratorAffiliation = "OUTSIDE" // All outside collaborators of an organization-owned subject.
    CollaboratorAffiliationDirect  CollaboratorAffiliation = "DIRECT"  // All collaborators with permissions to an organization-owned subject, regardless of organization membership status.
    CollaboratorAffiliationAll     CollaboratorAffiliation = "ALL"     // All collaborators the authenticated user can see.
)

Collaborators affiliation level with a subject.

type CommentAuthorAssociation Uses

type CommentAuthorAssociation string

CommentAuthorAssociation represents a comment author association with repository.

const (
    CommentAuthorAssociationMember               CommentAuthorAssociation = "MEMBER"                 // Author is a member of the organization that owns the repository.
    CommentAuthorAssociationOwner                CommentAuthorAssociation = "OWNER"                  // Author is the owner of the repository.
    CommentAuthorAssociationCollaborator         CommentAuthorAssociation = "COLLABORATOR"           // Author has been invited to collaborate on the repository.
    CommentAuthorAssociationContributor          CommentAuthorAssociation = "CONTRIBUTOR"            // Author has previously committed to the repository.
    CommentAuthorAssociationFirstTimeContributor CommentAuthorAssociation = "FIRST_TIME_CONTRIBUTOR" // Author has not previously committed to the repository.
    CommentAuthorAssociationFirstTimer           CommentAuthorAssociation = "FIRST_TIMER"            // Author has not previously committed to GitHub.
    CommentAuthorAssociationNone                 CommentAuthorAssociation = "NONE"                   // Author has no association with the repository.
)

A comment author association with repository.

type CommentCannotUpdateReason Uses

type CommentCannotUpdateReason string

CommentCannotUpdateReason represents the possible errors that will prevent a user from updating a comment.

const (
    CommentCannotUpdateReasonInsufficientAccess    CommentCannotUpdateReason = "INSUFFICIENT_ACCESS"     // You must be the author or have write access to this repository to update this comment.
    CommentCannotUpdateReasonLocked                CommentCannotUpdateReason = "LOCKED"                  // Unable to create comment because issue is locked.
    CommentCannotUpdateReasonLoginRequired         CommentCannotUpdateReason = "LOGIN_REQUIRED"          // You must be logged in to update this comment.
    CommentCannotUpdateReasonMaintenance           CommentCannotUpdateReason = "MAINTENANCE"             // Repository is under maintenance.
    CommentCannotUpdateReasonVerifiedEmailRequired CommentCannotUpdateReason = "VERIFIED_EMAIL_REQUIRED" // At least one email address must be verified to update this comment.
    CommentCannotUpdateReasonDenied                CommentCannotUpdateReason = "DENIED"                  // You cannot update this comment.
)

The possible errors that will prevent a user from updating a comment.

type CommitAuthor Uses

type CommitAuthor struct {

    // ID of a User to filter by. If non-null, only commits authored by this user will be returned. This field takes precedence over emails. (Optional.)
    ID  *ID `json:"id,omitempty"`
    // Email addresses to filter by. Commits authored by any of the specified email addresses will be returned. (Optional.)
    Emails *[]String `json:"emails,omitempty"`
}

CommitAuthor specifies an author for filtering Git commits.

type CommitContributionOrder Uses

type CommitContributionOrder struct {
    // The field by which to order commit contributions. (Required.)
    Field CommitContributionOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

CommitContributionOrder represents ordering options for commit contribution connections.

type CommitContributionOrderField Uses

type CommitContributionOrderField string

CommitContributionOrderField represents properties by which commit contribution connections can be ordered.

const (
    CommitContributionOrderFieldOccurredAt  CommitContributionOrderField = "OCCURRED_AT"  // Order commit contributions by when they were made.
    CommitContributionOrderFieldCommitCount CommitContributionOrderField = "COMMIT_COUNT" // Order commit contributions by how many commits they represent.
)

Properties by which commit contribution connections can be ordered.

type ContributionOrder Uses

type ContributionOrder struct {
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`

    // The field by which to order contributions. **Upcoming Change on 2019-10-01 UTC** **Description:** `field` will be removed. Only one order field is supported. **Reason:** `field` will be removed. (Optional.)
    Field *ContributionOrderField `json:"field,omitempty"`
}

ContributionOrder represents ordering options for contribution connections.

type ContributionOrderField Uses

type ContributionOrderField string

ContributionOrderField represents properties by which contribution connections can be ordered.

const (
    ContributionOrderFieldOccurredAt ContributionOrderField = "OCCURRED_AT" // Order contributions by when they were made.
)

Properties by which contribution connections can be ordered.

type ConvertProjectCardNoteToIssueInput Uses

type ConvertProjectCardNoteToIssueInput struct {
    // The ProjectCard ID to convert. (Required.)
    ProjectCardID ID  `json:"projectCardId"`
    // The ID of the repository to create the issue in. (Required.)
    RepositoryID ID  `json:"repositoryId"`

    // The title of the newly created issue. Defaults to the card's note text. (Optional.)
    Title *String `json:"title,omitempty"`
    // The body of the newly created issue. (Optional.)
    Body *String `json:"body,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

ConvertProjectCardNoteToIssueInput is an autogenerated input type of ConvertProjectCardNoteToIssue.

type CreateBranchProtectionRuleInput Uses

type CreateBranchProtectionRuleInput struct {
    // The global relay id of the repository in which a new branch protection rule should be created in. (Required.)
    RepositoryID ID  `json:"repositoryId"`
    // The glob-like pattern used to determine matching branches. (Required.)
    Pattern String `json:"pattern"`

    // Are approving reviews required to update matching branches. (Optional.)
    RequiresApprovingReviews *Boolean `json:"requiresApprovingReviews,omitempty"`
    // Number of approving reviews required to update matching branches. (Optional.)
    RequiredApprovingReviewCount *Int `json:"requiredApprovingReviewCount,omitempty"`
    // Are commits required to be signed. (Optional.)
    RequiresCommitSignatures *Boolean `json:"requiresCommitSignatures,omitempty"`
    // Can admins overwrite branch protection. (Optional.)
    IsAdminEnforced *Boolean `json:"isAdminEnforced,omitempty"`
    // Are status checks required to update matching branches. (Optional.)
    RequiresStatusChecks *Boolean `json:"requiresStatusChecks,omitempty"`
    // Are branches required to be up to date before merging. (Optional.)
    RequiresStrictStatusChecks *Boolean `json:"requiresStrictStatusChecks,omitempty"`
    // Are reviews from code owners required to update matching branches. (Optional.)
    RequiresCodeOwnerReviews *Boolean `json:"requiresCodeOwnerReviews,omitempty"`
    // Will new commits pushed to matching branches dismiss pull request review approvals. (Optional.)
    DismissesStaleReviews *Boolean `json:"dismissesStaleReviews,omitempty"`
    // Is dismissal of pull request reviews restricted. (Optional.)
    RestrictsReviewDismissals *Boolean `json:"restrictsReviewDismissals,omitempty"`
    // A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches. (Optional.)
    ReviewDismissalActorIDs *[]ID `json:"reviewDismissalActorIds,omitempty"`
    // Is pushing to matching branches restricted. (Optional.)
    RestrictsPushes *Boolean `json:"restrictsPushes,omitempty"`
    // A list of User or Team IDs allowed to push to matching branches. (Optional.)
    PushActorIDs *[]ID `json:"pushActorIds,omitempty"`
    // List of required status check contexts that must pass for commits to be accepted to matching branches. (Optional.)
    RequiredStatusCheckContexts *[]String `json:"requiredStatusCheckContexts,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CreateBranchProtectionRuleInput is an autogenerated input type of CreateBranchProtectionRule.

type CreateContentAttachmentInput Uses

type CreateContentAttachmentInput struct {
    // The node ID of the content_reference. (Required.)
    ContentReferenceID ID  `json:"contentReferenceId"`
    // The title of the content attachment. (Required.)
    Title String `json:"title"`
    // The body of the content attachment, which may contain markdown. (Required.)
    Body String `json:"body"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CreateContentAttachmentInput is an autogenerated input type of CreateContentAttachment.

type CreateIssueInput Uses

type CreateIssueInput struct {
    // The Node ID of the repository. (Required.)
    RepositoryID ID  `json:"repositoryId"`
    // The title for the issue. (Required.)
    Title String `json:"title"`

    // The body for the issue description. (Optional.)
    Body *String `json:"body,omitempty"`
    // The Node ID for the user assignee for this issue. (Optional.)
    AssigneeIDs *[]ID `json:"assigneeIds,omitempty"`
    // The Node ID of the milestone for this issue. (Optional.)
    MilestoneID *ID `json:"milestoneId,omitempty"`
    // An array of Node IDs of labels for this issue. (Optional.)
    LabelIDs *[]ID `json:"labelIds,omitempty"`
    // An array of Node IDs for projects associated with this issue. (Optional.)
    ProjectIDs *[]ID `json:"projectIds,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CreateIssueInput is an autogenerated input type of CreateIssue.

type CreateProjectInput Uses

type CreateProjectInput struct {
    // The owner ID to create the project under. (Required.)
    OwnerID ID  `json:"ownerId"`
    // The name of project. (Required.)
    Name String `json:"name"`

    // The description of project. (Optional.)
    Body *String `json:"body,omitempty"`
    // The name of the GitHub-provided template. (Optional.)
    Template *ProjectTemplate `json:"template,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CreateProjectInput is an autogenerated input type of CreateProject.

type CreatePullRequestInput Uses

type CreatePullRequestInput struct {
    // The Node ID of the repository. (Required.)
    RepositoryID ID  `json:"repositoryId"`
    // The name of the branch you want your changes pulled into. This should be an existing branch on the current repository. You cannot update the base branch on a pull request to point to another repository. (Required.)
    BaseRefName String `json:"baseRefName"`
    // The name of the branch where your changes are implemented. For cross-repository pull requests in the same network, namespace `head_ref_name` with a user like this: `username:branch`. (Required.)
    HeadRefName String `json:"headRefName"`
    // The title of the pull request. (Required.)
    Title String `json:"title"`

    // The contents of the pull request. (Optional.)
    Body *String `json:"body,omitempty"`
    // Indicates whether maintainers can modify the pull request. (Optional.)
    MaintainerCanModify *Boolean `json:"maintainerCanModify,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CreatePullRequestInput is an autogenerated input type of CreatePullRequest.

type CreateRefInput Uses

type CreateRefInput struct {
    // The Node ID of the Repository to create the Ref in. (Required.)
    RepositoryID ID  `json:"repositoryId"`
    // The fully qualified name of the new Ref (ie: `refs/heads/my_new_branch`). (Required.)
    Name String `json:"name"`
    // The GitObjectID that the new Ref shall target. Must point to a commit. (Required.)
    Oid GitObjectID `json:"oid"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CreateRefInput is an autogenerated input type of CreateRef.

type CreateRepositoryInput Uses

type CreateRepositoryInput struct {
    // The name of the new repository. (Required.)
    Name String `json:"name"`
    // Indicates the repository's visibility level. (Required.)
    Visibility RepositoryVisibility `json:"visibility"`

    // The ID of the owner for the new repository. (Optional.)
    OwnerID *ID `json:"ownerId,omitempty"`
    // A short description of the new repository. (Optional.)
    Description *String `json:"description,omitempty"`
    // Whether this repository should be marked as a template such that anyone who can access it can create new repositories with the same files and directory structure. (Optional.)
    Template *Boolean `json:"template,omitempty"`
    // The URL for a web page about this repository. (Optional.)
    HomepageURL *URI `json:"homepageUrl,omitempty"`
    // Indicates if the repository should have the wiki feature enabled. (Optional.)
    HasWikiEnabled *Boolean `json:"hasWikiEnabled,omitempty"`
    // Indicates if the repository should have the issues feature enabled. (Optional.)
    HasIssuesEnabled *Boolean `json:"hasIssuesEnabled,omitempty"`
    // When an organization is specified as the owner, this ID identifies the team that should be granted access to the new repository. (Optional.)
    TeamID *ID `json:"teamId,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

CreateRepositoryInput is an autogenerated input type of CreateRepository.

type Date Uses

type Date struct{ time.Time }

Date is an ISO-8601 encoded date.

func NewDate Uses

func NewDate(v Date) *Date

NewDate is a helper to make a new *Date.

type DateTime Uses

type DateTime struct{ time.Time }

DateTime is an ISO-8601 encoded UTC date.

func NewDateTime Uses

func NewDateTime(v DateTime) *DateTime

NewDateTime is a helper to make a new *DateTime.

type DeclineTopicSuggestionInput Uses

type DeclineTopicSuggestionInput struct {
    // The Node ID of the repository. (Required.)
    RepositoryID ID  `json:"repositoryId"`
    // The name of the suggested topic. (Required.)
    Name String `json:"name"`
    // The reason why the suggested topic is declined. (Required.)
    Reason TopicSuggestionDeclineReason `json:"reason"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeclineTopicSuggestionInput is an autogenerated input type of DeclineTopicSuggestion.

type DefaultRepositoryPermissionField Uses

type DefaultRepositoryPermissionField string

DefaultRepositoryPermissionField represents the possible default permissions for repositories.

const (
    DefaultRepositoryPermissionFieldNone  DefaultRepositoryPermissionField = "NONE"  // No access.
    DefaultRepositoryPermissionFieldRead  DefaultRepositoryPermissionField = "READ"  // Can read repos by default.
    DefaultRepositoryPermissionFieldWrite DefaultRepositoryPermissionField = "WRITE" // Can read and write repos by default.
    DefaultRepositoryPermissionFieldAdmin DefaultRepositoryPermissionField = "ADMIN" // Can read, write, and administrate repos by default.
)

The possible default permissions for repositories.

type DeleteBranchProtectionRuleInput Uses

type DeleteBranchProtectionRuleInput struct {
    // The global relay id of the branch protection rule to be deleted. (Required.)
    BranchProtectionRuleID ID  `json:"branchProtectionRuleId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeleteBranchProtectionRuleInput is an autogenerated input type of DeleteBranchProtectionRule.

type DeleteIssueCommentInput Uses

type DeleteIssueCommentInput struct {
    // The ID of the comment to delete. (Required.)
    ID  ID  `json:"id"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeleteIssueCommentInput is an autogenerated input type of DeleteIssueComment.

type DeleteIssueInput Uses

type DeleteIssueInput struct {
    // The ID of the issue to delete. (Required.)
    IssueID ID  `json:"issueId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeleteIssueInput is an autogenerated input type of DeleteIssue.

type DeleteProjectCardInput Uses

type DeleteProjectCardInput struct {
    // The id of the card to delete. (Required.)
    CardID ID  `json:"cardId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeleteProjectCardInput is an autogenerated input type of DeleteProjectCard.

type DeleteProjectColumnInput Uses

type DeleteProjectColumnInput struct {
    // The id of the column to delete. (Required.)
    ColumnID ID  `json:"columnId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeleteProjectColumnInput is an autogenerated input type of DeleteProjectColumn.

type DeleteProjectInput Uses

type DeleteProjectInput struct {
    // The Project ID to update. (Required.)
    ProjectID ID  `json:"projectId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeleteProjectInput is an autogenerated input type of DeleteProject.

type DeletePullRequestReviewCommentInput Uses

type DeletePullRequestReviewCommentInput struct {
    // The ID of the comment to delete. (Required.)
    ID  ID  `json:"id"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeletePullRequestReviewCommentInput is an autogenerated input type of DeletePullRequestReviewComment.

type DeletePullRequestReviewInput Uses

type DeletePullRequestReviewInput struct {
    // The Node ID of the pull request review to delete. (Required.)
    PullRequestReviewID ID  `json:"pullRequestReviewId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeletePullRequestReviewInput is an autogenerated input type of DeletePullRequestReview.

type DeleteRefInput Uses

type DeleteRefInput struct {
    // The Node ID of the Ref to be deleted. (Required.)
    RefID ID  `json:"refId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DeleteRefInput is an autogenerated input type of DeleteRef.

type DeploymentOrder Uses

type DeploymentOrder struct {
    // The field to order deployments by. (Required.)
    Field DeploymentOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

DeploymentOrder represents ordering options for deployment connections.

type DeploymentOrderField Uses

type DeploymentOrderField string

DeploymentOrderField represents properties by which deployment connections can be ordered.

const (
    DeploymentOrderFieldCreatedAt DeploymentOrderField = "CREATED_AT" // Order collection by creation time.
)

Properties by which deployment connections can be ordered.

type DeploymentState Uses

type DeploymentState string

DeploymentState represents the possible states in which a deployment can be.

const (
    DeploymentStateAbandoned  DeploymentState = "ABANDONED"   // The pending deployment was not updated after 30 minutes.
    DeploymentStateActive     DeploymentState = "ACTIVE"      // The deployment is currently active.
    DeploymentStateDestroyed  DeploymentState = "DESTROYED"   // An inactive transient deployment.
    DeploymentStateError      DeploymentState = "ERROR"       // The deployment experienced an error.
    DeploymentStateFailure    DeploymentState = "FAILURE"     // The deployment has failed.
    DeploymentStateInactive   DeploymentState = "INACTIVE"    // The deployment is inactive.
    DeploymentStatePending    DeploymentState = "PENDING"     // The deployment is pending.
    DeploymentStateQueued     DeploymentState = "QUEUED"      // The deployment has queued.
    DeploymentStateInProgress DeploymentState = "IN_PROGRESS" // The deployment is in progress.
)

The possible states in which a deployment can be.

type DeploymentStatusState Uses

type DeploymentStatusState string

DeploymentStatusState represents the possible states for a deployment status.

const (
    DeploymentStatusStatePending    DeploymentStatusState = "PENDING"     // The deployment is pending.
    DeploymentStatusStateSuccess    DeploymentStatusState = "SUCCESS"     // The deployment was successful.
    DeploymentStatusStateFailure    DeploymentStatusState = "FAILURE"     // The deployment has failed.
    DeploymentStatusStateInactive   DeploymentStatusState = "INACTIVE"    // The deployment is inactive.
    DeploymentStatusStateError      DeploymentStatusState = "ERROR"       // The deployment experienced an error.
    DeploymentStatusStateQueued     DeploymentStatusState = "QUEUED"      // The deployment is queued.
    DeploymentStatusStateInProgress DeploymentStatusState = "IN_PROGRESS" // The deployment is in progress.
)

The possible states for a deployment status.

type DismissPullRequestReviewInput Uses

type DismissPullRequestReviewInput struct {
    // The Node ID of the pull request review to modify. (Required.)
    PullRequestReviewID ID  `json:"pullRequestReviewId"`
    // The contents of the pull request review dismissal message. (Required.)
    Message String `json:"message"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

DismissPullRequestReviewInput is an autogenerated input type of DismissPullRequestReview.

type DraftPullRequestReviewComment Uses

type DraftPullRequestReviewComment struct {
    // Path to the file being commented on. (Required.)
    Path String `json:"path"`
    // Position in the file to leave a comment on. (Required.)
    Position Int `json:"position"`
    // Body of the comment to leave. (Required.)
    Body String `json:"body"`
}

DraftPullRequestReviewComment specifies a review comment to be left with a Pull Request Review.

type Float Uses

type Float graphql.Float

Float represents signed double-precision fractional values as specified by IEEE 754.

func NewFloat Uses

func NewFloat(v Float) *Float

NewFloat is a helper to make a new *Float.

type GistOrder Uses

type GistOrder struct {
    // The field to order repositories by. (Required.)
    Field GistOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

GistOrder represents ordering options for gist connections.

type GistOrderField Uses

type GistOrderField string

GistOrderField represents properties by which gist connections can be ordered.

const (
    GistOrderFieldCreatedAt GistOrderField = "CREATED_AT" // Order gists by creation time.
    GistOrderFieldUpdatedAt GistOrderField = "UPDATED_AT" // Order gists by update time.
    GistOrderFieldPushedAt  GistOrderField = "PUSHED_AT"  // Order gists by push time.
)

Properties by which gist connections can be ordered.

type GistPrivacy Uses

type GistPrivacy string

GistPrivacy represents the privacy of a Gist.

const (
    GistPrivacyPublic GistPrivacy = "PUBLIC" // Public.
    GistPrivacySecret GistPrivacy = "SECRET" // Secret.
    GistPrivacyAll    GistPrivacy = "ALL"    // Gists that are public and secret.
)

The privacy of a Gist.

type GitObjectID Uses

type GitObjectID string

GitObjectID is a Git object ID. For example, "912ec1990bd09f8fc128c3fa6b59105085aabc03".

func NewGitObjectID Uses

func NewGitObjectID(v GitObjectID) *GitObjectID

NewGitObjectID is a helper to make a new *GitObjectID.

type GitSignatureState Uses

type GitSignatureState string

GitSignatureState represents the state of a Git signature.

const (
    GitSignatureStateValid                GitSignatureState = "VALID"                 // Valid signature and verified by GitHub.
    GitSignatureStateInvalid              GitSignatureState = "INVALID"               // Invalid signature.
    GitSignatureStateMalformedSig         GitSignatureState = "MALFORMED_SIG"         // Malformed signature.
    GitSignatureStateUnknownKey           GitSignatureState = "UNKNOWN_KEY"           // Key used for signing not known to GitHub.
    GitSignatureStateBadEmail             GitSignatureState = "BAD_EMAIL"             // Invalid email used for signing.
    GitSignatureStateUnverifiedEmail      GitSignatureState = "UNVERIFIED_EMAIL"      // Email used for signing unverified on GitHub.
    GitSignatureStateNoUser               GitSignatureState = "NO_USER"               // Email used for signing not known to GitHub.
    GitSignatureStateUnknownSigType       GitSignatureState = "UNKNOWN_SIG_TYPE"      // Unknown signature type.
    GitSignatureStateUnsigned             GitSignatureState = "UNSIGNED"              // Unsigned.
    GitSignatureStateGpgverifyUnavailable GitSignatureState = "GPGVERIFY_UNAVAILABLE" // Internal error - the GPG verification service is unavailable at the moment.
    GitSignatureStateGpgverifyError       GitSignatureState = "GPGVERIFY_ERROR"       // Internal error - the GPG verification service misbehaved.
    GitSignatureStateNotSigningKey        GitSignatureState = "NOT_SIGNING_KEY"       // The usage flags for the key that signed this don't allow signing.
    GitSignatureStateExpiredKey           GitSignatureState = "EXPIRED_KEY"           // Signing key expired.
    GitSignatureStateOcspPending          GitSignatureState = "OCSP_PENDING"          // Valid signature, pending certificate revocation checking.
    GitSignatureStateOcspError            GitSignatureState = "OCSP_ERROR"            // Valid siganture, though certificate revocation check failed.
    GitSignatureStateBadCert              GitSignatureState = "BAD_CERT"              // The signing certificate or its chain could not be verified.
    GitSignatureStateOcspRevoked          GitSignatureState = "OCSP_REVOKED"          // One or more certificates in chain has been revoked.
)

The state of a Git signature.

type GitTimestamp Uses

type GitTimestamp struct{ time.Time }

GitTimestamp is an ISO-8601 encoded date. Unlike the DateTime type, GitTimestamp is not converted in UTC.

func NewGitTimestamp Uses

func NewGitTimestamp(v GitTimestamp) *GitTimestamp

NewGitTimestamp is a helper to make a new *GitTimestamp.

type HTML Uses

type HTML string

HTML is a string containing HTML code.

func NewHTML Uses

func NewHTML(v HTML) *HTML

NewHTML is a helper to make a new *HTML.

type ID Uses

type ID graphql.ID

ID represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "VXNlci0xMA==") or integer (such as 4) input value will be accepted as an ID.

func NewID Uses

func NewID(v ID) *ID

NewID is a helper to make a new *ID.

type IdentityProviderConfigurationState Uses

type IdentityProviderConfigurationState string

IdentityProviderConfigurationState represents the possible states in which authentication can be configured with an identity provider.

const (
    IdentityProviderConfigurationStateEnforced     IdentityProviderConfigurationState = "ENFORCED"     // Authentication with an identity provider is configured and enforced.
    IdentityProviderConfigurationStateConfigured   IdentityProviderConfigurationState = "CONFIGURED"   // Authentication with an identity provider is configured but not enforced.
    IdentityProviderConfigurationStateUnconfigured IdentityProviderConfigurationState = "UNCONFIGURED" // Authentication with an identity provider is not configured.
)

The possible states in which authentication can be configured with an identity provider.

type ImportProjectInput Uses

type ImportProjectInput struct {
    // The name of the Organization or User to create the Project under. (Required.)
    OwnerName String `json:"ownerName"`
    // The name of Project. (Required.)
    Name String `json:"name"`
    // A list of columns containing issues and pull requests. (Required.)
    ColumnImports []ProjectColumnImport `json:"columnImports"`

    // The description of Project. (Optional.)
    Body *String `json:"body,omitempty"`
    // Whether the Project is public or not. (Optional.)
    Public *Boolean `json:"public,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

ImportProjectInput is an autogenerated input type of ImportProject.

type Input Uses

type Input interface{}

Input represents one of the Input structs:

AcceptTopicSuggestionInput, AddAssigneesToAssignableInput, AddCommentInput, AddLabelsToLabelableInput, AddProjectCardInput, AddProjectColumnInput, AddPullRequestReviewCommentInput, AddPullRequestReviewInput, AddReactionInput, AddStarInput, ChangeUserStatusInput, ClearLabelsFromLabelableInput, CloneProjectInput, CloneTemplateRepositoryInput, CloseIssueInput, ClosePullRequestInput, CommitAuthor, CommitContributionOrder, ContributionOrder, ConvertProjectCardNoteToIssueInput, CreateBranchProtectionRuleInput, CreateContentAttachmentInput, CreateIssueInput, CreateProjectInput, CreatePullRequestInput, CreateRefInput, CreateRepositoryInput, DeclineTopicSuggestionInput, DeleteBranchProtectionRuleInput, DeleteIssueCommentInput, DeleteIssueInput, DeleteProjectCardInput, DeleteProjectColumnInput, DeleteProjectInput, DeletePullRequestReviewCommentInput, DeletePullRequestReviewInput, DeleteRefInput, DeploymentOrder, DismissPullRequestReviewInput, DraftPullRequestReviewComment, GistOrder, ImportProjectInput, IssueFilters, IssueOrder, LanguageOrder, LockLockableInput, MergeBranchInput, MergePullRequestInput, MilestoneOrder, MinimizeCommentInput, MoveProjectCardInput, MoveProjectColumnInput, PinIssueInput, ProjectCardImport, ProjectColumnImport, ProjectOrder, PullRequestOrder, ReactionOrder, RefOrder, ReleaseOrder, RemoveAssigneesFromAssignableInput, RemoveLabelsFromLabelableInput, RemoveOutsideCollaboratorInput, RemoveReactionInput, RemoveStarInput, ReopenIssueInput, ReopenPullRequestInput, RepositoryOrder, RequestReviewsInput, ResolveReviewThreadInput, SecurityAdvisoryIdentifierFilter, SecurityAdvisoryOrder, SecurityVulnerabilityOrder, StarOrder, SubmitPullRequestReviewInput, TeamMemberOrder, TeamOrder, TeamRepositoryOrder, UnlockLockableInput, UnmarkIssueAsDuplicateInput, UnminimizeCommentInput, UnpinIssueInput, UnresolveReviewThreadInput, UpdateBranchProtectionRuleInput, UpdateIssueCommentInput, UpdateIssueInput, UpdateProjectCardInput, UpdateProjectColumnInput, UpdateProjectInput, UpdatePullRequestInput, UpdatePullRequestReviewCommentInput, UpdatePullRequestReviewInput, UpdateRefInput, UpdateRepositoryInput, UpdateSubscriptionInput, UpdateTopicsInput, UserStatusOrder.

type Int Uses

type Int graphql.Int

Int represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

func NewInt Uses

func NewInt(v Int) *Int

NewInt is a helper to make a new *Int.

type IssueFilters Uses

type IssueFilters struct {

    // List issues assigned to given name. Pass in `null` for issues with no assigned user, and `*` for issues assigned to any user. (Optional.)
    Assignee *String `json:"assignee,omitempty"`
    // List issues created by given name. (Optional.)
    CreatedBy *String `json:"createdBy,omitempty"`
    // List issues where the list of label names exist on the issue. (Optional.)
    Labels *[]String `json:"labels,omitempty"`
    // List issues where the given name is mentioned in the issue. (Optional.)
    Mentioned *String `json:"mentioned,omitempty"`
    // List issues by given milestone argument. If an string representation of an integer is passed, it should refer to a milestone by its number field. Pass in `null` for issues with no milestone, and `*` for issues that are assigned to any milestone. (Optional.)
    Milestone *String `json:"milestone,omitempty"`
    // List issues that have been updated at or after the given date. (Optional.)
    Since *DateTime `json:"since,omitempty"`
    // List issues filtered by the list of states given. (Optional.)
    States *[]IssueState `json:"states,omitempty"`
    // List issues subscribed to by viewer. (Optional.)
    ViewerSubscribed *Boolean `json:"viewerSubscribed,omitempty"`
}

IssueFilters represents ways in which to filter lists of issues.

type IssueOrder Uses

type IssueOrder struct {
    // The field in which to order issues by. (Required.)
    Field IssueOrderField `json:"field"`
    // The direction in which to order issues by the specified field. (Required.)
    Direction OrderDirection `json:"direction"`
}

IssueOrder represents ways in which lists of issues can be ordered upon return.

type IssueOrderField Uses

type IssueOrderField string

IssueOrderField represents properties by which issue connections can be ordered.

const (
    IssueOrderFieldCreatedAt IssueOrderField = "CREATED_AT" // Order issues by creation time.
    IssueOrderFieldUpdatedAt IssueOrderField = "UPDATED_AT" // Order issues by update time.
    IssueOrderFieldComments  IssueOrderField = "COMMENTS"   // Order issues by comment count.
)

Properties by which issue connections can be ordered.

type IssuePubSubTopic Uses

type IssuePubSubTopic string

IssuePubSubTopic represents the possible PubSub channels for an issue.

const (
    IssuePubSubTopicUpdated    IssuePubSubTopic = "UPDATED"    // The channel ID for observing issue updates.
    IssuePubSubTopicMarkasread IssuePubSubTopic = "MARKASREAD" // The channel ID for marking an issue as read.
    IssuePubSubTopicTimeline   IssuePubSubTopic = "TIMELINE"   // The channel ID for updating items on the issue timeline.
    IssuePubSubTopicState      IssuePubSubTopic = "STATE"      // The channel ID for observing issue state updates.
)

The possible PubSub channels for an issue.

type IssueState Uses

type IssueState string

IssueState represents the possible states of an issue.

const (
    IssueStateOpen   IssueState = "OPEN"   // An issue that is still open.
    IssueStateClosed IssueState = "CLOSED" // An issue that has been closed.
)

The possible states of an issue.

type IssueTimelineItemsItemType Uses

type IssueTimelineItemsItemType string

IssueTimelineItemsItemType represents the possible item types found in a timeline.

const (
    IssueTimelineItemsItemTypeIssueComment               IssueTimelineItemsItemType = "ISSUE_COMMENT"                  // Represents a comment on an Issue.
    IssueTimelineItemsItemTypeCrossReferencedEvent       IssueTimelineItemsItemType = "CROSS_REFERENCED_EVENT"         // Represents a mention made by one issue or pull request to another.
    IssueTimelineItemsItemTypeAddedToProjectEvent        IssueTimelineItemsItemType = "ADDED_TO_PROJECT_EVENT"         // Represents a 'added_to_project' event on a given issue or pull request.
    IssueTimelineItemsItemTypeAssignedEvent              IssueTimelineItemsItemType = "ASSIGNED_EVENT"                 // Represents an 'assigned' event on any assignable object.
    IssueTimelineItemsItemTypeClosedEvent                IssueTimelineItemsItemType = "CLOSED_EVENT"                   // Represents a 'closed' event on any `Closable`.
    IssueTimelineItemsItemTypeCommentDeletedEvent        IssueTimelineItemsItemType = "COMMENT_DELETED_EVENT"          // Represents a 'comment_deleted' event on a given issue or pull request.
    IssueTimelineItemsItemTypeConvertedNoteToIssueEvent  IssueTimelineItemsItemType = "CONVERTED_NOTE_TO_ISSUE_EVENT"  // Represents a 'converted_note_to_issue' event on a given issue or pull request.
    IssueTimelineItemsItemTypeDemilestonedEvent          IssueTimelineItemsItemType = "DEMILESTONED_EVENT"             // Represents a 'demilestoned' event on a given issue or pull request.
    IssueTimelineItemsItemTypeLabeledEvent               IssueTimelineItemsItemType = "LABELED_EVENT"                  // Represents a 'labeled' event on a given issue or pull request.
    IssueTimelineItemsItemTypeLockedEvent                IssueTimelineItemsItemType = "LOCKED_EVENT"                   // Represents a 'locked' event on a given issue or pull request.
    IssueTimelineItemsItemTypeMentionedEvent             IssueTimelineItemsItemType = "MENTIONED_EVENT"                // Represents a 'mentioned' event on a given issue or pull request.
    IssueTimelineItemsItemTypeMilestonedEvent            IssueTimelineItemsItemType = "MILESTONED_EVENT"               // Represents a 'milestoned' event on a given issue or pull request.
    IssueTimelineItemsItemTypeMovedColumnsInProjectEvent IssueTimelineItemsItemType = "MOVED_COLUMNS_IN_PROJECT_EVENT" // Represents a 'moved_columns_in_project' event on a given issue or pull request.
    IssueTimelineItemsItemTypePinnedEvent                IssueTimelineItemsItemType = "PINNED_EVENT"                   // Represents a 'pinned' event on a given issue or pull request.
    IssueTimelineItemsItemTypeReferencedEvent            IssueTimelineItemsItemType = "REFERENCED_EVENT"               // Represents a 'referenced' event on a given `ReferencedSubject`.
    IssueTimelineItemsItemTypeRemovedFromProjectEvent    IssueTimelineItemsItemType = "REMOVED_FROM_PROJECT_EVENT"     // Represents a 'removed_from_project' event on a given issue or pull request.
    IssueTimelineItemsItemTypeRenamedTitleEvent          IssueTimelineItemsItemType = "RENAMED_TITLE_EVENT"            // Represents a 'renamed' event on a given issue or pull request.
    IssueTimelineItemsItemTypeReopenedEvent              IssueTimelineItemsItemType = "REOPENED_EVENT"                 // Represents a 'reopened' event on any `Closable`.
    IssueTimelineItemsItemTypeSubscribedEvent            IssueTimelineItemsItemType = "SUBSCRIBED_EVENT"               // Represents a 'subscribed' event on a given `Subscribable`.
    IssueTimelineItemsItemTypeTransferredEvent           IssueTimelineItemsItemType = "TRANSFERRED_EVENT"              // Represents a 'transferred' event on a given issue or pull request.
    IssueTimelineItemsItemTypeUnassignedEvent            IssueTimelineItemsItemType = "UNASSIGNED_EVENT"               // Represents an 'unassigned' event on any assignable object.
    IssueTimelineItemsItemTypeUnlabeledEvent             IssueTimelineItemsItemType = "UNLABELED_EVENT"                // Represents an 'unlabeled' event on a given issue or pull request.
    IssueTimelineItemsItemTypeUnlockedEvent              IssueTimelineItemsItemType = "UNLOCKED_EVENT"                 // Represents an 'unlocked' event on a given issue or pull request.
    IssueTimelineItemsItemTypeUserBlockedEvent           IssueTimelineItemsItemType = "USER_BLOCKED_EVENT"             // Represents a 'user_blocked' event on a given user.
    IssueTimelineItemsItemTypeUnpinnedEvent              IssueTimelineItemsItemType = "UNPINNED_EVENT"                 // Represents an 'unpinned' event on a given issue or pull request.
    IssueTimelineItemsItemTypeUnsubscribedEvent          IssueTimelineItemsItemType = "UNSUBSCRIBED_EVENT"             // Represents an 'unsubscribed' event on a given `Subscribable`.
)

The possible item types found in a timeline.

type LanguageOrder Uses

type LanguageOrder struct {
    // The field to order languages by. (Required.)
    Field LanguageOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

LanguageOrder represents ordering options for language connections.

type LanguageOrderField Uses

type LanguageOrderField string

LanguageOrderField represents properties by which language connections can be ordered.

const (
    LanguageOrderFieldSize LanguageOrderField = "SIZE" // Order languages by the size of all files containing the language.
)

Properties by which language connections can be ordered.

type LockLockableInput Uses

type LockLockableInput struct {
    // ID of the issue or pull request to be locked. (Required.)
    LockableID ID  `json:"lockableId"`

    // A reason for why the issue or pull request will be locked. (Optional.)
    LockReason *LockReason `json:"lockReason,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

LockLockableInput is an autogenerated input type of LockLockable.

type LockReason Uses

type LockReason string

LockReason represents the possible reasons that an issue or pull request was locked.

const (
    LockReasonOffTopic  LockReason = "OFF_TOPIC"  // The issue or pull request was locked because the conversation was off-topic.
    LockReasonTooHeated LockReason = "TOO_HEATED" // The issue or pull request was locked because the conversation was too heated.
    LockReasonResolved  LockReason = "RESOLVED"   // The issue or pull request was locked because the conversation was resolved.
    LockReasonSpam      LockReason = "SPAM"       // The issue or pull request was locked because the conversation was spam.
)

The possible reasons that an issue or pull request was locked.

type MergeBranchInput Uses

type MergeBranchInput struct {
    // The Node ID of the Repository containing the base branch that will be modified. (Required.)
    RepositoryID ID  `json:"repositoryId"`
    // The name of the base branch that the provided head will be merged into. (Required.)
    Base String `json:"base"`
    // The head to merge into the base branch. This can be a branch name or a commit GitObjectID. (Required.)
    Head String `json:"head"`

    // Message to use for the merge commit. If omitted, a default will be used. (Optional.)
    CommitMessage *String `json:"commitMessage,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

MergeBranchInput is an autogenerated input type of MergeBranch.

type MergePullRequestInput Uses

type MergePullRequestInput struct {
    // ID of the pull request to be merged. (Required.)
    PullRequestID ID  `json:"pullRequestId"`

    // Commit headline to use for the merge commit; if omitted, a default message will be used. (Optional.)
    CommitHeadline *String `json:"commitHeadline,omitempty"`
    // Commit body to use for the merge commit; if omitted, a default message will be used. (Optional.)
    CommitBody *String `json:"commitBody,omitempty"`
    // OID that the pull request head ref must match to allow merge; if omitted, no check is performed. (Optional.)
    ExpectedHeadOid *GitObjectID `json:"expectedHeadOid,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

MergePullRequestInput is an autogenerated input type of MergePullRequest.

type MergeableState Uses

type MergeableState string

MergeableState represents whether or not a PullRequest can be merged.

const (
    MergeableStateMergeable   MergeableState = "MERGEABLE"   // The pull request can be merged.
    MergeableStateConflicting MergeableState = "CONFLICTING" // The pull request cannot be merged due to merge conflicts.
    MergeableStateUnknown     MergeableState = "UNKNOWN"     // The mergeability of the pull request is still being calculated.
)

Whether or not a PullRequest can be merged.

type MilestoneOrder Uses

type MilestoneOrder struct {
    // The field to order milestones by. (Required.)
    Field MilestoneOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

MilestoneOrder represents ordering options for milestone connections.

type MilestoneOrderField Uses

type MilestoneOrderField string

MilestoneOrderField represents properties by which milestone connections can be ordered.

const (
    MilestoneOrderFieldDueDate   MilestoneOrderField = "DUE_DATE"   // Order milestones by when they are due.
    MilestoneOrderFieldCreatedAt MilestoneOrderField = "CREATED_AT" // Order milestones by when they were created.
    MilestoneOrderFieldUpdatedAt MilestoneOrderField = "UPDATED_AT" // Order milestones by when they were last updated.
    MilestoneOrderFieldNumber    MilestoneOrderField = "NUMBER"     // Order milestones by their number.
)

Properties by which milestone connections can be ordered.

type MilestoneState Uses

type MilestoneState string

MilestoneState represents the possible states of a milestone.

const (
    MilestoneStateOpen   MilestoneState = "OPEN"   // A milestone that is still open.
    MilestoneStateClosed MilestoneState = "CLOSED" // A milestone that has been closed.
)

The possible states of a milestone.

type MinimizeCommentInput Uses

type MinimizeCommentInput struct {
    // The Node ID of the subject to modify. (Required.)
    SubjectID ID  `json:"subjectId"`
    // The classification of comment. (Required.)
    Classifier ReportedContentClassifiers `json:"classifier"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

MinimizeCommentInput is an autogenerated input type of MinimizeComment.

type MoveProjectCardInput Uses

type MoveProjectCardInput struct {
    // The id of the card to move. (Required.)
    CardID ID  `json:"cardId"`
    // The id of the column to move it into. (Required.)
    ColumnID ID  `json:"columnId"`

    // Place the new card after the card with this id. Pass null to place it at the top. (Optional.)
    AfterCardID *ID `json:"afterCardId,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

MoveProjectCardInput is an autogenerated input type of MoveProjectCard.

type MoveProjectColumnInput Uses

type MoveProjectColumnInput struct {
    // The id of the column to move. (Required.)
    ColumnID ID  `json:"columnId"`

    // Place the new column after the column with this id. Pass null to place it at the front. (Optional.)
    AfterColumnID *ID `json:"afterColumnId,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

MoveProjectColumnInput is an autogenerated input type of MoveProjectColumn.

type OrderDirection Uses

type OrderDirection string

OrderDirection represents possible directions in which to order a list of items when provided an `orderBy` argument.

const (
    OrderDirectionAsc  OrderDirection = "ASC"  // Specifies an ascending order for a given `orderBy` argument.
    OrderDirectionDesc OrderDirection = "DESC" // Specifies a descending order for a given `orderBy` argument.
)

Possible directions in which to order a list of items when provided an `orderBy` argument.

type OrganizationInvitationRole Uses

type OrganizationInvitationRole string

OrganizationInvitationRole represents the possible organization invitation roles.

const (
    OrganizationInvitationRoleDirectMember   OrganizationInvitationRole = "DIRECT_MEMBER"   // The user is invited to be a direct member of the organization.
    OrganizationInvitationRoleAdmin          OrganizationInvitationRole = "ADMIN"           // The user is invited to be an admin of the organization.
    OrganizationInvitationRoleBillingManager OrganizationInvitationRole = "BILLING_MANAGER" // The user is invited to be a billing manager of the organization.
    OrganizationInvitationRoleReinstate      OrganizationInvitationRole = "REINSTATE"       // The user's previous role will be reinstated.
)

The possible organization invitation roles.

type OrganizationInvitationType Uses

type OrganizationInvitationType string

OrganizationInvitationType represents the possible organization invitation types.

const (
    OrganizationInvitationTypeUser  OrganizationInvitationType = "USER"  // The invitation was to an existing user.
    OrganizationInvitationTypeEmail OrganizationInvitationType = "EMAIL" // The invitation was to an email address.
)

The possible organization invitation types.

type OrganizationMemberRole Uses

type OrganizationMemberRole string

OrganizationMemberRole represents the possible roles within an organization for its members.

const (
    OrganizationMemberRoleMember OrganizationMemberRole = "MEMBER" // The user is a member of the organization.
    OrganizationMemberRoleAdmin  OrganizationMemberRole = "ADMIN"  // The user is an administrator of the organization.
)

The possible roles within an organization for its members.

type PinIssueInput Uses

type PinIssueInput struct {
    // The ID of the issue to be pinned. (Required.)
    IssueID ID  `json:"issueId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

PinIssueInput is an autogenerated input type of PinIssue.

type PinnableItemType Uses

type PinnableItemType string

PinnableItemType represents represents items that can be pinned to a profile page or dashboard.

const (
    PinnableItemTypeRepository   PinnableItemType = "REPOSITORY"   // A repository.
    PinnableItemTypeGist         PinnableItemType = "GIST"         // A gist.
    PinnableItemTypeIssue        PinnableItemType = "ISSUE"        // An issue.
    PinnableItemTypeProject      PinnableItemType = "PROJECT"      // A project.
    PinnableItemTypePullRequest  PinnableItemType = "PULL_REQUEST" // A pull request.
    PinnableItemTypeUser         PinnableItemType = "USER"         // A user.
    PinnableItemTypeOrganization PinnableItemType = "ORGANIZATION" // An organization.
    PinnableItemTypeTeam         PinnableItemType = "TEAM"         // A team.
)

Represents items that can be pinned to a profile page or dashboard.

type ProjectCardArchivedState Uses

type ProjectCardArchivedState string

ProjectCardArchivedState represents the possible archived states of a project card.

const (
    ProjectCardArchivedStateArchived    ProjectCardArchivedState = "ARCHIVED"     // A project card that is archived.
    ProjectCardArchivedStateNotArchived ProjectCardArchivedState = "NOT_ARCHIVED" // A project card that is not archived.
)

The possible archived states of a project card.

type ProjectCardImport Uses

type ProjectCardImport struct {
    // Repository name with owner (owner/repository). (Required.)
    Repository String `json:"repository"`
    // The issue or pull request number. (Required.)
    Number Int `json:"number"`
}

ProjectCardImport represents an issue or PR and its owning repository to be used in a project card.

type ProjectCardState Uses

type ProjectCardState string

ProjectCardState represents various content states of a ProjectCard.

const (
    ProjectCardStateContentOnly ProjectCardState = "CONTENT_ONLY" // The card has content only.
    ProjectCardStateNoteOnly    ProjectCardState = "NOTE_ONLY"    // The card has a note only.
    ProjectCardStateRedacted    ProjectCardState = "REDACTED"     // The card is redacted.
)

Various content states of a ProjectCard.

type ProjectColumnImport Uses

type ProjectColumnImport struct {
    // The name of the column. (Required.)
    ColumnName String `json:"columnName"`
    // The position of the column, starting from 0. (Required.)
    Position Int `json:"position"`

    // A list of issues and pull requests in the column. (Optional.)
    Issues *[]ProjectCardImport `json:"issues,omitempty"`
}

ProjectColumnImport represents a project column and a list of its issues and PRs.

type ProjectColumnPurpose Uses

type ProjectColumnPurpose string

ProjectColumnPurpose represents the semantic purpose of the column - todo, in progress, or done.

const (
    ProjectColumnPurposeTodo       ProjectColumnPurpose = "TODO"        // The column contains cards still to be worked on.
    ProjectColumnPurposeInProgress ProjectColumnPurpose = "IN_PROGRESS" // The column contains cards which are currently being worked on.
    ProjectColumnPurposeDone       ProjectColumnPurpose = "DONE"        // The column contains cards which are complete.
)

The semantic purpose of the column - todo, in progress, or done.

type ProjectOrder Uses

type ProjectOrder struct {
    // The field in which to order projects by. (Required.)
    Field ProjectOrderField `json:"field"`
    // The direction in which to order projects by the specified field. (Required.)
    Direction OrderDirection `json:"direction"`
}

ProjectOrder represents ways in which lists of projects can be ordered upon return.

type ProjectOrderField Uses

type ProjectOrderField string

ProjectOrderField represents properties by which project connections can be ordered.

const (
    ProjectOrderFieldCreatedAt ProjectOrderField = "CREATED_AT" // Order projects by creation time.
    ProjectOrderFieldUpdatedAt ProjectOrderField = "UPDATED_AT" // Order projects by update time.
    ProjectOrderFieldName      ProjectOrderField = "NAME"       // Order projects by name.
)

Properties by which project connections can be ordered.

type ProjectState Uses

type ProjectState string

ProjectState represents state of the project; either 'open' or 'closed'.

const (
    ProjectStateOpen   ProjectState = "OPEN"   // The project is open.
    ProjectStateClosed ProjectState = "CLOSED" // The project is closed.
)

State of the project; either 'open' or 'closed'.

type ProjectTemplate Uses

type ProjectTemplate string

ProjectTemplate represents gitHub-provided templates for Projects.

const (
    ProjectTemplateBasicKanban            ProjectTemplate = "BASIC_KANBAN"             // Create a board with columns for To do, In progress and Done.
    ProjectTemplateAutomatedKanbanV2      ProjectTemplate = "AUTOMATED_KANBAN_V2"      // Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns.
    ProjectTemplateAutomatedReviewsKanban ProjectTemplate = "AUTOMATED_REVIEWS_KANBAN" // Create a board with triggers to automatically move cards across columns with review automation.
    ProjectTemplateBugTriage              ProjectTemplate = "BUG_TRIAGE"               // Create a board to triage and prioritize bugs with To do, priority, and Done columns.
)

GitHub-provided templates for Projects.

type PullRequestOrder Uses

type PullRequestOrder struct {
    // The field in which to order pull requests by. (Required.)
    Field PullRequestOrderField `json:"field"`
    // The direction in which to order pull requests by the specified field. (Required.)
    Direction OrderDirection `json:"direction"`
}

PullRequestOrder represents ways in which lists of issues can be ordered upon return.

type PullRequestOrderField Uses

type PullRequestOrderField string

PullRequestOrderField represents properties by which pull_requests connections can be ordered.

const (
    PullRequestOrderFieldCreatedAt PullRequestOrderField = "CREATED_AT" // Order pull_requests by creation time.
    PullRequestOrderFieldUpdatedAt PullRequestOrderField = "UPDATED_AT" // Order pull_requests by update time.
)

Properties by which pull_requests connections can be ordered.

type PullRequestPubSubTopic Uses

type PullRequestPubSubTopic string

PullRequestPubSubTopic represents the possible PubSub channels for a pull request.

const (
    PullRequestPubSubTopicUpdated    PullRequestPubSubTopic = "UPDATED"    // The channel ID for observing pull request updates.
    PullRequestPubSubTopicMarkasread PullRequestPubSubTopic = "MARKASREAD" // The channel ID for marking an pull request as read.
    PullRequestPubSubTopicHeadRef    PullRequestPubSubTopic = "HEAD_REF"   // The channel ID for observing head ref updates.
    PullRequestPubSubTopicTimeline   PullRequestPubSubTopic = "TIMELINE"   // The channel ID for updating items on the pull request timeline.
    PullRequestPubSubTopicState      PullRequestPubSubTopic = "STATE"      // The channel ID for observing pull request state updates.
)

The possible PubSub channels for a pull request.

type PullRequestReviewCommentState Uses

type PullRequestReviewCommentState string

PullRequestReviewCommentState represents the possible states of a pull request review comment.

const (
    PullRequestReviewCommentStatePending   PullRequestReviewCommentState = "PENDING"   // A comment that is part of a pending review.
    PullRequestReviewCommentStateSubmitted PullRequestReviewCommentState = "SUBMITTED" // A comment that is part of a submitted review.
)

The possible states of a pull request review comment.

type PullRequestReviewEvent Uses

type PullRequestReviewEvent string

PullRequestReviewEvent represents the possible events to perform on a pull request review.

const (
    PullRequestReviewEventComment        PullRequestReviewEvent = "COMMENT"         // Submit general feedback without explicit approval.
    PullRequestReviewEventApprove        PullRequestReviewEvent = "APPROVE"         // Submit feedback and approve merging these changes.
    PullRequestReviewEventRequestChanges PullRequestReviewEvent = "REQUEST_CHANGES" // Submit feedback that must be addressed before merging.
    PullRequestReviewEventDismiss        PullRequestReviewEvent = "DISMISS"         // Dismiss review so it now longer effects merging.
)

The possible events to perform on a pull request review.

type PullRequestReviewState Uses

type PullRequestReviewState string

PullRequestReviewState represents the possible states of a pull request review.

const (
    PullRequestReviewStatePending          PullRequestReviewState = "PENDING"           // A review that has not yet been submitted.
    PullRequestReviewStateCommented        PullRequestReviewState = "COMMENTED"         // An informational review.
    PullRequestReviewStateApproved         PullRequestReviewState = "APPROVED"          // A review allowing the pull request to merge.
    PullRequestReviewStateChangesRequested PullRequestReviewState = "CHANGES_REQUESTED" // A review blocking the pull request from merging.
    PullRequestReviewStateDismissed        PullRequestReviewState = "DISMISSED"         // A review that has been dismissed.
)

The possible states of a pull request review.

type PullRequestState Uses

type PullRequestState string

PullRequestState represents the possible states of a pull request.

const (
    PullRequestStateOpen   PullRequestState = "OPEN"   // A pull request that is still open.
    PullRequestStateClosed PullRequestState = "CLOSED" // A pull request that has been closed without being merged.
    PullRequestStateMerged PullRequestState = "MERGED" // A pull request that has been closed by being merged.
)

The possible states of a pull request.

type PullRequestTimelineItemsItemType Uses

type PullRequestTimelineItemsItemType string

PullRequestTimelineItemsItemType represents the possible item types found in a timeline.

const (
    PullRequestTimelineItemsItemTypePullRequestCommit                 PullRequestTimelineItemsItemType = "PULL_REQUEST_COMMIT"                  // Represents a Git commit part of a pull request.
    PullRequestTimelineItemsItemTypePullRequestCommitCommentThread    PullRequestTimelineItemsItemType = "PULL_REQUEST_COMMIT_COMMENT_THREAD"   // Represents a commit comment thread part of a pull request.
    PullRequestTimelineItemsItemTypePullRequestReview                 PullRequestTimelineItemsItemType = "PULL_REQUEST_REVIEW"                  // A review object for a given pull request.
    PullRequestTimelineItemsItemTypePullRequestReviewThread           PullRequestTimelineItemsItemType = "PULL_REQUEST_REVIEW_THREAD"           // A threaded list of comments for a given pull request.
    PullRequestTimelineItemsItemTypePullRequestRevisionMarker         PullRequestTimelineItemsItemType = "PULL_REQUEST_REVISION_MARKER"         // Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits.
    PullRequestTimelineItemsItemTypeBaseRefChangedEvent               PullRequestTimelineItemsItemType = "BASE_REF_CHANGED_EVENT"               // Represents a 'base_ref_changed' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeBaseRefForcePushedEvent           PullRequestTimelineItemsItemType = "BASE_REF_FORCE_PUSHED_EVENT"          // Represents a 'base_ref_force_pushed' event on a given pull request.
    PullRequestTimelineItemsItemTypeDeployedEvent                     PullRequestTimelineItemsItemType = "DEPLOYED_EVENT"                       // Represents a 'deployed' event on a given pull request.
    PullRequestTimelineItemsItemTypeDeploymentEnvironmentChangedEvent PullRequestTimelineItemsItemType = "DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT" // Represents a 'deployment_environment_changed' event on a given pull request.
    PullRequestTimelineItemsItemTypeHeadRefDeletedEvent               PullRequestTimelineItemsItemType = "HEAD_REF_DELETED_EVENT"               // Represents a 'head_ref_deleted' event on a given pull request.
    PullRequestTimelineItemsItemTypeHeadRefForcePushedEvent           PullRequestTimelineItemsItemType = "HEAD_REF_FORCE_PUSHED_EVENT"          // Represents a 'head_ref_force_pushed' event on a given pull request.
    PullRequestTimelineItemsItemTypeHeadRefRestoredEvent              PullRequestTimelineItemsItemType = "HEAD_REF_RESTORED_EVENT"              // Represents a 'head_ref_restored' event on a given pull request.
    PullRequestTimelineItemsItemTypeMergedEvent                       PullRequestTimelineItemsItemType = "MERGED_EVENT"                         // Represents a 'merged' event on a given pull request.
    PullRequestTimelineItemsItemTypeReviewDismissedEvent              PullRequestTimelineItemsItemType = "REVIEW_DISMISSED_EVENT"               // Represents a 'review_dismissed' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeReviewRequestedEvent              PullRequestTimelineItemsItemType = "REVIEW_REQUESTED_EVENT"               // Represents an 'review_requested' event on a given pull request.
    PullRequestTimelineItemsItemTypeReviewRequestRemovedEvent         PullRequestTimelineItemsItemType = "REVIEW_REQUEST_REMOVED_EVENT"         // Represents an 'review_request_removed' event on a given pull request.
    PullRequestTimelineItemsItemTypeReadyForReviewEvent               PullRequestTimelineItemsItemType = "READY_FOR_REVIEW_EVENT"               // Represents a 'ready_for_review' event on a given pull request.
    PullRequestTimelineItemsItemTypeIssueComment                      PullRequestTimelineItemsItemType = "ISSUE_COMMENT"                        // Represents a comment on an Issue.
    PullRequestTimelineItemsItemTypeCrossReferencedEvent              PullRequestTimelineItemsItemType = "CROSS_REFERENCED_EVENT"               // Represents a mention made by one issue or pull request to another.
    PullRequestTimelineItemsItemTypeAddedToProjectEvent               PullRequestTimelineItemsItemType = "ADDED_TO_PROJECT_EVENT"               // Represents a 'added_to_project' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeAssignedEvent                     PullRequestTimelineItemsItemType = "ASSIGNED_EVENT"                       // Represents an 'assigned' event on any assignable object.
    PullRequestTimelineItemsItemTypeClosedEvent                       PullRequestTimelineItemsItemType = "CLOSED_EVENT"                         // Represents a 'closed' event on any `Closable`.
    PullRequestTimelineItemsItemTypeCommentDeletedEvent               PullRequestTimelineItemsItemType = "COMMENT_DELETED_EVENT"                // Represents a 'comment_deleted' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeConvertedNoteToIssueEvent         PullRequestTimelineItemsItemType = "CONVERTED_NOTE_TO_ISSUE_EVENT"        // Represents a 'converted_note_to_issue' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeDemilestonedEvent                 PullRequestTimelineItemsItemType = "DEMILESTONED_EVENT"                   // Represents a 'demilestoned' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeLabeledEvent                      PullRequestTimelineItemsItemType = "LABELED_EVENT"                        // Represents a 'labeled' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeLockedEvent                       PullRequestTimelineItemsItemType = "LOCKED_EVENT"                         // Represents a 'locked' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeMentionedEvent                    PullRequestTimelineItemsItemType = "MENTIONED_EVENT"                      // Represents a 'mentioned' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeMilestonedEvent                   PullRequestTimelineItemsItemType = "MILESTONED_EVENT"                     // Represents a 'milestoned' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeMovedColumnsInProjectEvent        PullRequestTimelineItemsItemType = "MOVED_COLUMNS_IN_PROJECT_EVENT"       // Represents a 'moved_columns_in_project' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypePinnedEvent                       PullRequestTimelineItemsItemType = "PINNED_EVENT"                         // Represents a 'pinned' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeReferencedEvent                   PullRequestTimelineItemsItemType = "REFERENCED_EVENT"                     // Represents a 'referenced' event on a given `ReferencedSubject`.
    PullRequestTimelineItemsItemTypeRemovedFromProjectEvent           PullRequestTimelineItemsItemType = "REMOVED_FROM_PROJECT_EVENT"           // Represents a 'removed_from_project' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeRenamedTitleEvent                 PullRequestTimelineItemsItemType = "RENAMED_TITLE_EVENT"                  // Represents a 'renamed' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeReopenedEvent                     PullRequestTimelineItemsItemType = "REOPENED_EVENT"                       // Represents a 'reopened' event on any `Closable`.
    PullRequestTimelineItemsItemTypeSubscribedEvent                   PullRequestTimelineItemsItemType = "SUBSCRIBED_EVENT"                     // Represents a 'subscribed' event on a given `Subscribable`.
    PullRequestTimelineItemsItemTypeTransferredEvent                  PullRequestTimelineItemsItemType = "TRANSFERRED_EVENT"                    // Represents a 'transferred' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeUnassignedEvent                   PullRequestTimelineItemsItemType = "UNASSIGNED_EVENT"                     // Represents an 'unassigned' event on any assignable object.
    PullRequestTimelineItemsItemTypeUnlabeledEvent                    PullRequestTimelineItemsItemType = "UNLABELED_EVENT"                      // Represents an 'unlabeled' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeUnlockedEvent                     PullRequestTimelineItemsItemType = "UNLOCKED_EVENT"                       // Represents an 'unlocked' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeUserBlockedEvent                  PullRequestTimelineItemsItemType = "USER_BLOCKED_EVENT"                   // Represents a 'user_blocked' event on a given user.
    PullRequestTimelineItemsItemTypeUnpinnedEvent                     PullRequestTimelineItemsItemType = "UNPINNED_EVENT"                       // Represents an 'unpinned' event on a given issue or pull request.
    PullRequestTimelineItemsItemTypeUnsubscribedEvent                 PullRequestTimelineItemsItemType = "UNSUBSCRIBED_EVENT"                   // Represents an 'unsubscribed' event on a given `Subscribable`.
)

The possible item types found in a timeline.

type ReactionContent Uses

type ReactionContent string

ReactionContent represents emojis that can be attached to Issues, Pull Requests and Comments.

const (
    ReactionContentThumbsUp   ReactionContent = "THUMBS_UP"   // Represents the 👍 emoji.
    ReactionContentThumbsDown ReactionContent = "THUMBS_DOWN" // Represents the 👎 emoji.
    ReactionContentLaugh      ReactionContent = "LAUGH"       // Represents the 😄 emoji.
    ReactionContentHooray     ReactionContent = "HOORAY"      // Represents the 🎉 emoji.
    ReactionContentConfused   ReactionContent = "CONFUSED"    // Represents the 😕 emoji.
    ReactionContentHeart      ReactionContent = "HEART"       // Represents the ❤️ emoji.
    ReactionContentRocket     ReactionContent = "ROCKET"      // Represents the 🚀 emoji.
    ReactionContentEyes       ReactionContent = "EYES"        // Represents the 👀 emoji.
)

Emojis that can be attached to Issues, Pull Requests and Comments.

type ReactionOrder Uses

type ReactionOrder struct {
    // The field in which to order reactions by. (Required.)
    Field ReactionOrderField `json:"field"`
    // The direction in which to order reactions by the specified field. (Required.)
    Direction OrderDirection `json:"direction"`
}

ReactionOrder represents ways in which lists of reactions can be ordered upon return.

type ReactionOrderField Uses

type ReactionOrderField string

ReactionOrderField represents a list of fields that reactions can be ordered by.

const (
    ReactionOrderFieldCreatedAt ReactionOrderField = "CREATED_AT" // Allows ordering a list of reactions by when they were created.
)

A list of fields that reactions can be ordered by.

type RefOrder Uses

type RefOrder struct {
    // The field in which to order refs by. (Required.)
    Field RefOrderField `json:"field"`
    // The direction in which to order refs by the specified field. (Required.)
    Direction OrderDirection `json:"direction"`
}

RefOrder represents ways in which lists of git refs can be ordered upon return.

type RefOrderField Uses

type RefOrderField string

RefOrderField represents properties by which ref connections can be ordered.

const (
    RefOrderFieldTagCommitDate RefOrderField = "TAG_COMMIT_DATE" // Order refs by underlying commit date if the ref prefix is refs/tags/.
    RefOrderFieldAlphabetical  RefOrderField = "ALPHABETICAL"    // Order refs by their alphanumeric name.
)

Properties by which ref connections can be ordered.

type ReleaseOrder Uses

type ReleaseOrder struct {
    // The field in which to order releases by. (Required.)
    Field ReleaseOrderField `json:"field"`
    // The direction in which to order releases by the specified field. (Required.)
    Direction OrderDirection `json:"direction"`
}

ReleaseOrder represents ways in which lists of releases can be ordered upon return.

type ReleaseOrderField Uses

type ReleaseOrderField string

ReleaseOrderField represents properties by which release connections can be ordered.

const (
    ReleaseOrderFieldCreatedAt ReleaseOrderField = "CREATED_AT" // Order releases by creation time.
    ReleaseOrderFieldName      ReleaseOrderField = "NAME"       // Order releases alphabetically by name.
)

Properties by which release connections can be ordered.

type RemoveAssigneesFromAssignableInput Uses

type RemoveAssigneesFromAssignableInput struct {
    // The id of the assignable object to remove assignees from. (Required.)
    AssignableID ID  `json:"assignableId"`
    // The id of users to remove as assignees. (Required.)
    AssigneeIDs []ID `json:"assigneeIds"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

RemoveAssigneesFromAssignableInput is an autogenerated input type of RemoveAssigneesFromAssignable.

type RemoveLabelsFromLabelableInput Uses

type RemoveLabelsFromLabelableInput struct {
    // The id of the Labelable to remove labels from. (Required.)
    LabelableID ID  `json:"labelableId"`
    // The ids of labels to remove. (Required.)
    LabelIDs []ID `json:"labelIds"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

RemoveLabelsFromLabelableInput is an autogenerated input type of RemoveLabelsFromLabelable.

type RemoveOutsideCollaboratorInput Uses

type RemoveOutsideCollaboratorInput struct {
    // The ID of the outside collaborator to remove. (Required.)
    UserID ID  `json:"userId"`
    // The ID of the organization to remove the outside collaborator from. (Required.)
    OrganizationID ID  `json:"organizationId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

RemoveOutsideCollaboratorInput is an autogenerated input type of RemoveOutsideCollaborator.

type RemoveReactionInput Uses

type RemoveReactionInput struct {
    // The Node ID of the subject to modify. (Required.)
    SubjectID ID  `json:"subjectId"`
    // The name of the emoji reaction to remove. (Required.)
    Content ReactionContent `json:"content"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

RemoveReactionInput is an autogenerated input type of RemoveReaction.

type RemoveStarInput Uses

type RemoveStarInput struct {
    // The Starrable ID to unstar. (Required.)
    StarrableID ID  `json:"starrableId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

RemoveStarInput is an autogenerated input type of RemoveStar.

type ReopenIssueInput Uses

type ReopenIssueInput struct {
    // ID of the issue to be opened. (Required.)
    IssueID ID  `json:"issueId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

ReopenIssueInput is an autogenerated input type of ReopenIssue.

type ReopenPullRequestInput Uses

type ReopenPullRequestInput struct {
    // ID of the pull request to be reopened. (Required.)
    PullRequestID ID  `json:"pullRequestId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

ReopenPullRequestInput is an autogenerated input type of ReopenPullRequest.

type ReportedContentClassifiers Uses

type ReportedContentClassifiers string

ReportedContentClassifiers represents the reasons a piece of content can be reported or minimized.

const (
    ReportedContentClassifiersSpam     ReportedContentClassifiers = "SPAM"      // A spammy piece of content.
    ReportedContentClassifiersAbuse    ReportedContentClassifiers = "ABUSE"     // An abusive or harassing piece of content.
    ReportedContentClassifiersOffTopic ReportedContentClassifiers = "OFF_TOPIC" // An irrelevant piece of content.
    ReportedContentClassifiersOutdated ReportedContentClassifiers = "OUTDATED"  // An outdated piece of content.
    ReportedContentClassifiersResolved ReportedContentClassifiers = "RESOLVED"  // The content has been resolved.
)

The reasons a piece of content can be reported or minimized.

type RepositoryAffiliation Uses

type RepositoryAffiliation string

RepositoryAffiliation represents the affiliation of a user to a repository.

const (
    RepositoryAffiliationOwner              RepositoryAffiliation = "OWNER"               // Repositories that are owned by the authenticated user.
    RepositoryAffiliationCollaborator       RepositoryAffiliation = "COLLABORATOR"        // Repositories that the user has been added to as a collaborator.
    RepositoryAffiliationOrganizationMember RepositoryAffiliation = "ORGANIZATION_MEMBER" // Repositories that the user has access to through being a member of an organization. This includes every repository on every team that the user is on.
)

The affiliation of a user to a repository.

type RepositoryCollaboratorAffiliation Uses

type RepositoryCollaboratorAffiliation string

RepositoryCollaboratorAffiliation represents the affiliation type between collaborator and repository.

const (
    RepositoryCollaboratorAffiliationAll     RepositoryCollaboratorAffiliation = "ALL"     // All collaborators of the repository.
    RepositoryCollaboratorAffiliationOutside RepositoryCollaboratorAffiliation = "OUTSIDE" // All outside collaborators of an organization-owned repository.
)

The affiliation type between collaborator and repository.

type RepositoryContributionType Uses

type RepositoryContributionType string

RepositoryContributionType represents the reason a repository is listed as 'contributed'.

const (
    RepositoryContributionTypeCommit            RepositoryContributionType = "COMMIT"              // Created a commit.
    RepositoryContributionTypeIssue             RepositoryContributionType = "ISSUE"               // Created an issue.
    RepositoryContributionTypePullRequest       RepositoryContributionType = "PULL_REQUEST"        // Created a pull request.
    RepositoryContributionTypeRepository        RepositoryContributionType = "REPOSITORY"          // Created the repository.
    RepositoryContributionTypePullRequestReview RepositoryContributionType = "PULL_REQUEST_REVIEW" // Reviewed a pull request.
)

The reason a repository is listed as 'contributed'.

type RepositoryLockReason Uses

type RepositoryLockReason string

RepositoryLockReason represents the possible reasons a given repository could be in a locked state.

const (
    RepositoryLockReasonMoving    RepositoryLockReason = "MOVING"    // The repository is locked due to a move.
    RepositoryLockReasonBilling   RepositoryLockReason = "BILLING"   // The repository is locked due to a billing related reason.
    RepositoryLockReasonRename    RepositoryLockReason = "RENAME"    // The repository is locked due to a rename.
    RepositoryLockReasonMigrating RepositoryLockReason = "MIGRATING" // The repository is locked due to a migration.
)

The possible reasons a given repository could be in a locked state.

type RepositoryOrder Uses

type RepositoryOrder struct {
    // The field to order repositories by. (Required.)
    Field RepositoryOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

RepositoryOrder represents ordering options for repository connections.

type RepositoryOrderField Uses

type RepositoryOrderField string

RepositoryOrderField represents properties by which repository connections can be ordered.

const (
    RepositoryOrderFieldCreatedAt  RepositoryOrderField = "CREATED_AT" // Order repositories by creation time.
    RepositoryOrderFieldUpdatedAt  RepositoryOrderField = "UPDATED_AT" // Order repositories by update time.
    RepositoryOrderFieldPushedAt   RepositoryOrderField = "PUSHED_AT"  // Order repositories by push time.
    RepositoryOrderFieldName       RepositoryOrderField = "NAME"       // Order repositories by name.
    RepositoryOrderFieldStargazers RepositoryOrderField = "STARGAZERS" // Order repositories by number of stargazers.
)

Properties by which repository connections can be ordered.

type RepositoryPermission Uses

type RepositoryPermission string

RepositoryPermission represents the access level to a repository.

const (
    RepositoryPermissionAdmin    RepositoryPermission = "ADMIN"    // Can read, clone, and push to this repository. Can also manage issues, pull requests, and repository settings, including adding collaborators.
    RepositoryPermissionMaintain RepositoryPermission = "MAINTAIN" // Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings.
    RepositoryPermissionWrite    RepositoryPermission = "WRITE"    // Can read, clone, and push to this repository. Can also manage issues and pull requests.
    RepositoryPermissionTriage   RepositoryPermission = "TRIAGE"   // Can read and clone this repository. Can also manage issues and pull requests.
    RepositoryPermissionRead     RepositoryPermission = "READ"     // Can read and clone this repository. Can also open and comment on issues and pull requests.
)

The access level to a repository.

type RepositoryPrivacy Uses

type RepositoryPrivacy string

RepositoryPrivacy represents the privacy of a repository.

const (
    RepositoryPrivacyPublic  RepositoryPrivacy = "PUBLIC"  // Public.
    RepositoryPrivacyPrivate RepositoryPrivacy = "PRIVATE" // Private.
)

The privacy of a repository.

type RepositoryVisibility Uses

type RepositoryVisibility string

RepositoryVisibility represents the repository's visibility level.

const (
    RepositoryVisibilityPrivate  RepositoryVisibility = "PRIVATE"  // The repository is visible only to those with explicit access.
    RepositoryVisibilityPublic   RepositoryVisibility = "PUBLIC"   // The repository is visible to everyone.
    RepositoryVisibilityInternal RepositoryVisibility = "INTERNAL" // The repository is visible only to users in the same business.
)

The repository's visibility level.

type RequestReviewsInput Uses

type RequestReviewsInput struct {
    // The Node ID of the pull request to modify. (Required.)
    PullRequestID ID  `json:"pullRequestId"`

    // The Node IDs of the user to request. (Optional.)
    UserIDs *[]ID `json:"userIds,omitempty"`
    // The Node IDs of the team to request. (Optional.)
    TeamIDs *[]ID `json:"teamIds,omitempty"`
    // Add users to the set rather than replace. (Optional.)
    Union *Boolean `json:"union,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

RequestReviewsInput is an autogenerated input type of RequestReviews.

type ResolveReviewThreadInput Uses

type ResolveReviewThreadInput struct {
    // The ID of the thread to resolve. (Required.)
    ThreadID ID  `json:"threadId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

ResolveReviewThreadInput is an autogenerated input type of ResolveReviewThread.

type SearchType Uses

type SearchType string

SearchType represents represents the individual results of a search.

const (
    SearchTypeIssue      SearchType = "ISSUE"      // Returns results matching issues in repositories.
    SearchTypeRepository SearchType = "REPOSITORY" // Returns results matching repositories.
    SearchTypeUser       SearchType = "USER"       // Returns results matching users and organizations on GitHub.
)

Represents the individual results of a search.

type SecurityAdvisoryEcosystem Uses

type SecurityAdvisoryEcosystem string

SecurityAdvisoryEcosystem represents the possible ecosystems of a security vulnerability's package.

const (
    SecurityAdvisoryEcosystemRubygems SecurityAdvisoryEcosystem = "RUBYGEMS" // Ruby gems hosted at RubyGems.org.
    SecurityAdvisoryEcosystemNpm      SecurityAdvisoryEcosystem = "NPM"      // JavaScript packages hosted at npmjs.com.
    SecurityAdvisoryEcosystemPip      SecurityAdvisoryEcosystem = "PIP"      // Python packages hosted at PyPI.org.
    SecurityAdvisoryEcosystemMaven    SecurityAdvisoryEcosystem = "MAVEN"    // Java artifacts hosted at the Maven central repository.
    SecurityAdvisoryEcosystemNuget    SecurityAdvisoryEcosystem = "NUGET"    // .NET packages hosted at the NuGet Gallery.
)

The possible ecosystems of a security vulnerability's package.

type SecurityAdvisoryIdentifierFilter Uses

type SecurityAdvisoryIdentifierFilter struct {
    // The identifier type. (Required.)
    Type SecurityAdvisoryIdentifierType `json:"type"`
    // The identifier string. Supports exact or partial matching. (Required.)
    Value String `json:"value"`
}

SecurityAdvisoryIdentifierFilter represents an advisory identifier to filter results on.

type SecurityAdvisoryIdentifierType Uses

type SecurityAdvisoryIdentifierType string

SecurityAdvisoryIdentifierType represents identifier formats available for advisories.

const (
    SecurityAdvisoryIdentifierTypeCve  SecurityAdvisoryIdentifierType = "CVE"  // Common Vulnerabilities and Exposures Identifier.
    SecurityAdvisoryIdentifierTypeGhsa SecurityAdvisoryIdentifierType = "GHSA" // GitHub Security Advisory ID.
)

Identifier formats available for advisories.

type SecurityAdvisoryOrder Uses

type SecurityAdvisoryOrder struct {
    // The field to order security advisories by. (Required.)
    Field SecurityAdvisoryOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

SecurityAdvisoryOrder represents ordering options for security advisory connections.

type SecurityAdvisoryOrderField Uses

type SecurityAdvisoryOrderField string

SecurityAdvisoryOrderField represents properties by which security advisory connections can be ordered.

const (
    SecurityAdvisoryOrderFieldPublishedAt SecurityAdvisoryOrderField = "PUBLISHED_AT" // Order advisories by publication time.
    SecurityAdvisoryOrderFieldUpdatedAt   SecurityAdvisoryOrderField = "UPDATED_AT"   // Order advisories by update time.
)

Properties by which security advisory connections can be ordered.

type SecurityAdvisorySeverity Uses

type SecurityAdvisorySeverity string

SecurityAdvisorySeverity represents severity of the vulnerability.

const (
    SecurityAdvisorySeverityLow      SecurityAdvisorySeverity = "LOW"      // Low.
    SecurityAdvisorySeverityModerate SecurityAdvisorySeverity = "MODERATE" // Moderate.
    SecurityAdvisorySeverityHigh     SecurityAdvisorySeverity = "HIGH"     // High.
    SecurityAdvisorySeverityCritical SecurityAdvisorySeverity = "CRITICAL" // Critical.
)

Severity of the vulnerability.

type SecurityVulnerabilityOrder Uses

type SecurityVulnerabilityOrder struct {
    // The field to order security vulnerabilities by. (Required.)
    Field SecurityVulnerabilityOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

SecurityVulnerabilityOrder represents ordering options for security vulnerability connections.

type SecurityVulnerabilityOrderField Uses

type SecurityVulnerabilityOrderField string

SecurityVulnerabilityOrderField represents properties by which security vulnerability connections can be ordered.

const (
    SecurityVulnerabilityOrderFieldUpdatedAt SecurityVulnerabilityOrderField = "UPDATED_AT" // Order vulnerability by update time.
)

Properties by which security vulnerability connections can be ordered.

type StarOrder Uses

type StarOrder struct {
    // The field in which to order nodes by. (Required.)
    Field StarOrderField `json:"field"`
    // The direction in which to order nodes. (Required.)
    Direction OrderDirection `json:"direction"`
}

StarOrder represents ways in which star connections can be ordered.

type StarOrderField Uses

type StarOrderField string

StarOrderField represents properties by which star connections can be ordered.

const (
    StarOrderFieldStarredAt StarOrderField = "STARRED_AT" // Allows ordering a list of stars by when they were created.
)

Properties by which star connections can be ordered.

type StatusState Uses

type StatusState string

StatusState represents the possible commit status states.

const (
    StatusStateExpected StatusState = "EXPECTED" // Status is expected.
    StatusStateError    StatusState = "ERROR"    // Status is errored.
    StatusStateFailure  StatusState = "FAILURE"  // Status is failing.
    StatusStatePending  StatusState = "PENDING"  // Status is pending.
    StatusStateSuccess  StatusState = "SUCCESS"  // Status is successful.
)

The possible commit status states.

type String Uses

type String graphql.String

String represents textual data as UTF-8 character sequences. This type is most often used by GraphQL to represent free-form human-readable text.

func NewString Uses

func NewString(v String) *String

NewString is a helper to make a new *String.

type SubmitPullRequestReviewInput Uses

type SubmitPullRequestReviewInput struct {
    // The Pull Request Review ID to submit. (Required.)
    PullRequestReviewID ID  `json:"pullRequestReviewId"`
    // The event to send to the Pull Request Review. (Required.)
    Event PullRequestReviewEvent `json:"event"`

    // The text field to set on the Pull Request Review. (Optional.)
    Body *String `json:"body,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

SubmitPullRequestReviewInput is an autogenerated input type of SubmitPullRequestReview.

type SubscriptionState Uses

type SubscriptionState string

SubscriptionState represents the possible states of a subscription.

const (
    SubscriptionStateUnsubscribed SubscriptionState = "UNSUBSCRIBED" // The User is only notified when participating or @mentioned.
    SubscriptionStateSubscribed   SubscriptionState = "SUBSCRIBED"   // The User is notified of all conversations.
    SubscriptionStateIgnored      SubscriptionState = "IGNORED"      // The User is never notified.
)

The possible states of a subscription.

type TeamMemberOrder Uses

type TeamMemberOrder struct {
    // The field to order team members by. (Required.)
    Field TeamMemberOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

TeamMemberOrder represents ordering options for team member connections.

type TeamMemberOrderField Uses

type TeamMemberOrderField string

TeamMemberOrderField represents properties by which team member connections can be ordered.

const (
    TeamMemberOrderFieldLogin     TeamMemberOrderField = "LOGIN"      // Order team members by login.
    TeamMemberOrderFieldCreatedAt TeamMemberOrderField = "CREATED_AT" // Order team members by creation time.
)

Properties by which team member connections can be ordered.

type TeamMemberRole Uses

type TeamMemberRole string

TeamMemberRole represents the possible team member roles; either 'maintainer' or 'member'.

const (
    TeamMemberRoleMaintainer TeamMemberRole = "MAINTAINER" // A team maintainer has permission to add and remove team members.
    TeamMemberRoleMember     TeamMemberRole = "MEMBER"     // A team member has no administrative permissions on the team.
)

The possible team member roles; either 'maintainer' or 'member'.

type TeamMembershipType Uses

type TeamMembershipType string

TeamMembershipType represents defines which types of team members are included in the returned list. Can be one of IMMEDIATE, CHILD_TEAM or ALL.

const (
    TeamMembershipTypeImmediate TeamMembershipType = "IMMEDIATE"  // Includes only immediate members of the team.
    TeamMembershipTypeChildTeam TeamMembershipType = "CHILD_TEAM" // Includes only child team members for the team.
    TeamMembershipTypeAll       TeamMembershipType = "ALL"        // Includes immediate and child team members for the team.
)

Defines which types of team members are included in the returned list. Can be one of IMMEDIATE, CHILD_TEAM or ALL.

type TeamOrder Uses

type TeamOrder struct {
    // The field in which to order nodes by. (Required.)
    Field TeamOrderField `json:"field"`
    // The direction in which to order nodes. (Required.)
    Direction OrderDirection `json:"direction"`
}

TeamOrder represents ways in which team connections can be ordered.

type TeamOrderField Uses

type TeamOrderField string

TeamOrderField represents properties by which team connections can be ordered.

const (
    TeamOrderFieldName TeamOrderField = "NAME" // Allows ordering a list of teams by name.
)

Properties by which team connections can be ordered.

type TeamPrivacy Uses

type TeamPrivacy string

TeamPrivacy represents the possible team privacy values.

const (
    TeamPrivacySecret  TeamPrivacy = "SECRET"  // A secret team can only be seen by its members.
    TeamPrivacyVisible TeamPrivacy = "VISIBLE" // A visible team can be seen and @mentioned by every member of the organization.
)

The possible team privacy values.

type TeamRepositoryOrder Uses

type TeamRepositoryOrder struct {
    // The field to order repositories by. (Required.)
    Field TeamRepositoryOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

TeamRepositoryOrder represents ordering options for team repository connections.

type TeamRepositoryOrderField Uses

type TeamRepositoryOrderField string

TeamRepositoryOrderField represents properties by which team repository connections can be ordered.

const (
    TeamRepositoryOrderFieldCreatedAt  TeamRepositoryOrderField = "CREATED_AT" // Order repositories by creation time.
    TeamRepositoryOrderFieldUpdatedAt  TeamRepositoryOrderField = "UPDATED_AT" // Order repositories by update time.
    TeamRepositoryOrderFieldPushedAt   TeamRepositoryOrderField = "PUSHED_AT"  // Order repositories by push time.
    TeamRepositoryOrderFieldName       TeamRepositoryOrderField = "NAME"       // Order repositories by name.
    TeamRepositoryOrderFieldPermission TeamRepositoryOrderField = "PERMISSION" // Order repositories by permission.
    TeamRepositoryOrderFieldStargazers TeamRepositoryOrderField = "STARGAZERS" // Order repositories by number of stargazers.
)

Properties by which team repository connections can be ordered.

type TeamRole Uses

type TeamRole string

TeamRole represents the role of a user on a team.

const (
    TeamRoleAdmin  TeamRole = "ADMIN"  // User has admin rights on the team.
    TeamRoleMember TeamRole = "MEMBER" // User is a member of the team.
)

The role of a user on a team.

type TopicSuggestionDeclineReason Uses

type TopicSuggestionDeclineReason string

TopicSuggestionDeclineReason represents reason that the suggested topic is declined.

const (
    TopicSuggestionDeclineReasonNotRelevant        TopicSuggestionDeclineReason = "NOT_RELEVANT"        // The suggested topic is not relevant to the repository.
    TopicSuggestionDeclineReasonTooSpecific        TopicSuggestionDeclineReason = "TOO_SPECIFIC"        // The suggested topic is too specific for the repository (e.g. #ruby-on-rails-version-4-2-1).
    TopicSuggestionDeclineReasonPersonalPreference TopicSuggestionDeclineReason = "PERSONAL_PREFERENCE" // The viewer does not like the suggested topic.
    TopicSuggestionDeclineReasonTooGeneral         TopicSuggestionDeclineReason = "TOO_GENERAL"         // The suggested topic is too general for the repository.
)

Reason that the suggested topic is declined.

type URI Uses

type URI struct{ *url.URL }

URI is an RFC 3986, RFC 3987, and RFC 6570 (level 4) compliant URI.

func NewURI Uses

func NewURI(v URI) *URI

NewURI is a helper to make a new *URI.

func (URI) MarshalJSON Uses

func (u URI) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaler interface. The URI is a quoted string.

func (*URI) UnmarshalJSON Uses

func (u *URI) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaler interface. The URI is expected to be a quoted string.

type UnlockLockableInput Uses

type UnlockLockableInput struct {
    // ID of the issue or pull request to be unlocked. (Required.)
    LockableID ID  `json:"lockableId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UnlockLockableInput is an autogenerated input type of UnlockLockable.

type UnmarkIssueAsDuplicateInput Uses

type UnmarkIssueAsDuplicateInput struct {
    // ID of the issue or pull request currently marked as a duplicate. (Required.)
    DuplicateID ID  `json:"duplicateId"`
    // ID of the issue or pull request currently considered canonical/authoritative/original. (Required.)
    CanonicalID ID  `json:"canonicalId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UnmarkIssueAsDuplicateInput is an autogenerated input type of UnmarkIssueAsDuplicate.

type UnminimizeCommentInput Uses

type UnminimizeCommentInput struct {
    // The Node ID of the subject to modify. (Required.)
    SubjectID ID  `json:"subjectId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UnminimizeCommentInput is an autogenerated input type of UnminimizeComment.

type UnpinIssueInput Uses

type UnpinIssueInput struct {
    // The ID of the issue to be unpinned. (Required.)
    IssueID ID  `json:"issueId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UnpinIssueInput is an autogenerated input type of UnpinIssue.

type UnresolveReviewThreadInput Uses

type UnresolveReviewThreadInput struct {
    // The ID of the thread to unresolve. (Required.)
    ThreadID ID  `json:"threadId"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UnresolveReviewThreadInput is an autogenerated input type of UnresolveReviewThread.

type UpdateBranchProtectionRuleInput Uses

type UpdateBranchProtectionRuleInput struct {
    // The global relay id of the branch protection rule to be updated. (Required.)
    BranchProtectionRuleID ID  `json:"branchProtectionRuleId"`

    // The glob-like pattern used to determine matching branches. (Optional.)
    Pattern *String `json:"pattern,omitempty"`
    // Are approving reviews required to update matching branches. (Optional.)
    RequiresApprovingReviews *Boolean `json:"requiresApprovingReviews,omitempty"`
    // Number of approving reviews required to update matching branches. (Optional.)
    RequiredApprovingReviewCount *Int `json:"requiredApprovingReviewCount,omitempty"`
    // Are commits required to be signed. (Optional.)
    RequiresCommitSignatures *Boolean `json:"requiresCommitSignatures,omitempty"`
    // Can admins overwrite branch protection. (Optional.)
    IsAdminEnforced *Boolean `json:"isAdminEnforced,omitempty"`
    // Are status checks required to update matching branches. (Optional.)
    RequiresStatusChecks *Boolean `json:"requiresStatusChecks,omitempty"`
    // Are branches required to be up to date before merging. (Optional.)
    RequiresStrictStatusChecks *Boolean `json:"requiresStrictStatusChecks,omitempty"`
    // Are reviews from code owners required to update matching branches. (Optional.)
    RequiresCodeOwnerReviews *Boolean `json:"requiresCodeOwnerReviews,omitempty"`
    // Will new commits pushed to matching branches dismiss pull request review approvals. (Optional.)
    DismissesStaleReviews *Boolean `json:"dismissesStaleReviews,omitempty"`
    // Is dismissal of pull request reviews restricted. (Optional.)
    RestrictsReviewDismissals *Boolean `json:"restrictsReviewDismissals,omitempty"`
    // A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches. (Optional.)
    ReviewDismissalActorIDs *[]ID `json:"reviewDismissalActorIds,omitempty"`
    // Is pushing to matching branches restricted. (Optional.)
    RestrictsPushes *Boolean `json:"restrictsPushes,omitempty"`
    // A list of User or Team IDs allowed to push to matching branches. (Optional.)
    PushActorIDs *[]ID `json:"pushActorIds,omitempty"`
    // List of required status check contexts that must pass for commits to be accepted to matching branches. (Optional.)
    RequiredStatusCheckContexts *[]String `json:"requiredStatusCheckContexts,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateBranchProtectionRuleInput is an autogenerated input type of UpdateBranchProtectionRule.

type UpdateIssueCommentInput Uses

type UpdateIssueCommentInput struct {
    // The ID of the IssueComment to modify. (Required.)
    ID  ID  `json:"id"`
    // The updated text of the comment. (Required.)
    Body String `json:"body"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateIssueCommentInput is an autogenerated input type of UpdateIssueComment.

type UpdateIssueInput Uses

type UpdateIssueInput struct {
    // The ID of the Issue to modify. (Required.)
    ID  ID  `json:"id"`

    // The title for the issue. (Optional.)
    Title *String `json:"title,omitempty"`
    // The body for the issue description. (Optional.)
    Body *String `json:"body,omitempty"`
    // An array of Node IDs of users for this issue. (Optional.)
    AssigneeIDs *[]ID `json:"assigneeIds,omitempty"`
    // The Node ID of the milestone for this issue. (Optional.)
    MilestoneID *ID `json:"milestoneId,omitempty"`
    // An array of Node IDs of labels for this issue. (Optional.)
    LabelIDs *[]ID `json:"labelIds,omitempty"`
    // The desired issue state. (Optional.)
    State *IssueState `json:"state,omitempty"`
    // An array of Node IDs for projects associated with this issue. (Optional.)
    ProjectIDs *[]ID `json:"projectIds,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateIssueInput is an autogenerated input type of UpdateIssue.

type UpdateProjectCardInput Uses

type UpdateProjectCardInput struct {
    // The ProjectCard ID to update. (Required.)
    ProjectCardID ID  `json:"projectCardId"`

    // Whether or not the ProjectCard should be archived. (Optional.)
    IsArchived *Boolean `json:"isArchived,omitempty"`
    // The note of ProjectCard. (Optional.)
    Note *String `json:"note,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateProjectCardInput is an autogenerated input type of UpdateProjectCard.

type UpdateProjectColumnInput Uses

type UpdateProjectColumnInput struct {
    // The ProjectColumn ID to update. (Required.)
    ProjectColumnID ID  `json:"projectColumnId"`
    // The name of project column. (Required.)
    Name String `json:"name"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateProjectColumnInput is an autogenerated input type of UpdateProjectColumn.

type UpdateProjectInput Uses

type UpdateProjectInput struct {
    // The Project ID to update. (Required.)
    ProjectID ID  `json:"projectId"`

    // The name of project. (Optional.)
    Name *String `json:"name,omitempty"`
    // The description of project. (Optional.)
    Body *String `json:"body,omitempty"`
    // Whether the project is open or closed. (Optional.)
    State *ProjectState `json:"state,omitempty"`
    // Whether the project is public or not. (Optional.)
    Public *Boolean `json:"public,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateProjectInput is an autogenerated input type of UpdateProject.

type UpdatePullRequestInput Uses

type UpdatePullRequestInput struct {
    // The Node ID of the pull request. (Required.)
    PullRequestID ID  `json:"pullRequestId"`

    // The name of the branch you want your changes pulled into. This should be an existing branch on the current repository. (Optional.)
    BaseRefName *String `json:"baseRefName,omitempty"`
    // The title of the pull request. (Optional.)
    Title *String `json:"title,omitempty"`
    // The contents of the pull request. (Optional.)
    Body *String `json:"body,omitempty"`
    // Indicates whether maintainers can modify the pull request. (Optional.)
    MaintainerCanModify *Boolean `json:"maintainerCanModify,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdatePullRequestInput is an autogenerated input type of UpdatePullRequest.

type UpdatePullRequestReviewCommentInput Uses

type UpdatePullRequestReviewCommentInput struct {
    // The Node ID of the comment to modify. (Required.)
    PullRequestReviewCommentID ID  `json:"pullRequestReviewCommentId"`
    // The text of the comment. (Required.)
    Body String `json:"body"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdatePullRequestReviewCommentInput is an autogenerated input type of UpdatePullRequestReviewComment.

type UpdatePullRequestReviewInput Uses

type UpdatePullRequestReviewInput struct {
    // The Node ID of the pull request review to modify. (Required.)
    PullRequestReviewID ID  `json:"pullRequestReviewId"`
    // The contents of the pull request review body. (Required.)
    Body String `json:"body"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdatePullRequestReviewInput is an autogenerated input type of UpdatePullRequestReview.

type UpdateRefInput Uses

type UpdateRefInput struct {
    // The Node ID of the Ref to be updated. (Required.)
    RefID ID  `json:"refId"`
    // The GitObjectID that the Ref shall be updated to target. (Required.)
    Oid GitObjectID `json:"oid"`

    // Permit updates of branch Refs that are not fast-forwards?. (Optional.)
    Force *Boolean `json:"force,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateRefInput is an autogenerated input type of UpdateRef.

type UpdateRepositoryInput Uses

type UpdateRepositoryInput struct {
    // The ID of the repository to update. (Required.)
    RepositoryID ID  `json:"repositoryId"`

    // The new name of the repository. (Optional.)
    Name *String `json:"name,omitempty"`
    // A new description for the repository. Pass an empty string to erase the existing description. (Optional.)
    Description *String `json:"description,omitempty"`
    // Whether this repository should be marked as a template such that anyone who can access it can create new repositories with the same files and directory structure. (Optional.)
    Template *Boolean `json:"template,omitempty"`
    // The URL for a web page about this repository. Pass an empty string to erase the existing URL. (Optional.)
    HomepageURL *URI `json:"homepageUrl,omitempty"`
    // Indicates if the repository should have the wiki feature enabled. (Optional.)
    HasWikiEnabled *Boolean `json:"hasWikiEnabled,omitempty"`
    // Indicates if the repository should have the issues feature enabled. (Optional.)
    HasIssuesEnabled *Boolean `json:"hasIssuesEnabled,omitempty"`
    // Indicates if the repository should have the project boards feature enabled. (Optional.)
    HasProjectsEnabled *Boolean `json:"hasProjectsEnabled,omitempty"`
    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateRepositoryInput is an autogenerated input type of UpdateRepository.

type UpdateSubscriptionInput Uses

type UpdateSubscriptionInput struct {
    // The Node ID of the subscribable object to modify. (Required.)
    SubscribableID ID  `json:"subscribableId"`
    // The new state of the subscription. (Required.)
    State SubscriptionState `json:"state"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateSubscriptionInput is an autogenerated input type of UpdateSubscription.

type UpdateTopicsInput Uses

type UpdateTopicsInput struct {
    // The Node ID of the repository. (Required.)
    RepositoryID ID  `json:"repositoryId"`
    // An array of topic names. (Required.)
    TopicNames []String `json:"topicNames"`

    // A unique identifier for the client performing the mutation. (Optional.)
    ClientMutationID *String `json:"clientMutationId,omitempty"`
}

UpdateTopicsInput is an autogenerated input type of UpdateTopics.

type UserBlockDuration Uses

type UserBlockDuration string

UserBlockDuration represents the possible durations that a user can be blocked for.

const (
    UserBlockDurationOneDay    UserBlockDuration = "ONE_DAY"    // The user was blocked for 1 day.
    UserBlockDurationThreeDays UserBlockDuration = "THREE_DAYS" // The user was blocked for 3 days.
    UserBlockDurationOneWeek   UserBlockDuration = "ONE_WEEK"   // The user was blocked for 7 days.
    UserBlockDurationOneMonth  UserBlockDuration = "ONE_MONTH"  // The user was blocked for 30 days.
    UserBlockDurationPermanent UserBlockDuration = "PERMANENT"  // The user was blocked permanently.
)

The possible durations that a user can be blocked for.

type UserStatusOrder Uses

type UserStatusOrder struct {
    // The field to order user statuses by. (Required.)
    Field UserStatusOrderField `json:"field"`
    // The ordering direction. (Required.)
    Direction OrderDirection `json:"direction"`
}

UserStatusOrder represents ordering options for user status connections.

type UserStatusOrderField Uses

type UserStatusOrderField string

UserStatusOrderField represents properties by which user status connections can be ordered.

const (
    UserStatusOrderFieldUpdatedAt UserStatusOrderField = "UPDATED_AT" // Order user statuses by when they were updated.
)

Properties by which user status connections can be ordered.

type X509Certificate Uses

type X509Certificate struct{ *x509.Certificate }

X509Certificate is a valid x509 certificate.

func NewX509Certificate Uses

func NewX509Certificate(v X509Certificate) *X509Certificate

NewX509Certificate is a helper to make a new *X509Certificate.

func (X509Certificate) MarshalJSON Uses

func (x X509Certificate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaler interface.

func (*X509Certificate) UnmarshalJSON Uses

func (x *X509Certificate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaler interface.

Directories

PathSynopsis
example/githubv4devgithubv4dev is a test program currently being used for developing githubv4 package.

Package githubv4 imports 8 packages (graph) and is imported by 39 packages. Updated 2019-07-18. Refresh now. Tools for package owners.