# Référentiels

Documentation de référence sur les types de schéma GraphQL dans la catégorie Référentiels.

## archiveRepository - mutation

Marks a repository as archived.

### Input fields for `archiveRepository`

* `input` (ArchiveRepositoryInput!): 

### Return fields for `archiveRepository`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repository` (Repository): The repository that was marked as archived.

## ArchiveRepositoryInput - input object

Autogenerated input type of ArchiveRepository.

### Input fields for `ArchiveRepositoryInput`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repositoryId` (ID!): The ID of the repository to mark as archived.

## BypassActor - union

Types that can represent a repository ruleset bypass actor.

### Possible types for `BypassActor`

* App
* Team

## cloneTemplateRepository - mutation

Create a new repository with the same files and directory structure as a template repository.

### Input fields for `cloneTemplateRepository`

* `input` (CloneTemplateRepositoryInput!): 

### Return fields for `cloneTemplateRepository`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repository` (Repository): The new repository.

## CloneTemplateRepositoryInput - input object

Autogenerated input type of CloneTemplateRepository.

### Input fields for `CloneTemplateRepositoryInput`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `description` (String): A short description of the new repository.
* `includeAllBranches` (Boolean): Whether to copy all branches from the template to the new repository. Defaults
to copying only the default branch of the template.
* `name` (String!): The name of the new repository.
* `ownerId` (ID!): The ID of the owner for the new repository.
* `repositoryId` (ID!): The Node ID of the template repository.
* `visibility` (RepositoryVisibility!): Indicates the repository's visibility level.

## CodeScanningParameters - object

Choose which tools must provide code scanning results before the reference is
updated. When configured, code scanning must be enabled and have results for
both the commit and the reference being updated.

### Fields for `CodeScanningParameters`

* `codeScanningTools` ([CodeScanningTool!]!): Tools that must provide code scanning results for this rule to pass.

## CodeScanningParametersInput - input object

Choose which tools must provide code scanning results before the reference is
updated. When configured, code scanning must be enabled and have results for
both the commit and the reference being updated.

### Input fields for `CodeScanningParametersInput`

* `codeScanningTools` ([CodeScanningToolInput!]!): Tools that must provide code scanning results for this rule to pass.

## CodeScanningTool - object

A tool that must provide code scanning results for this rule to pass.

### Fields for `CodeScanningTool`

* `alertsThreshold` (String!): The severity level at which code scanning results that raise alerts block a
reference update. For more information on alert severity levels, see "About code scanning alerts.".
* `securityAlertsThreshold` (String!): The severity level at which code scanning results that raise security alerts
block a reference update. For more information on security severity levels,
see "About code scanning alerts.".
* `tool` (String!): The name of a code scanning tool.

## CodeScanningToolInput - input object

A tool that must provide code scanning results for this rule to pass.

### Input fields for `CodeScanningToolInput`

* `alertsThreshold` (String!): The severity level at which code scanning results that raise alerts block a
reference update. For more information on alert severity levels, see "About code scanning alerts.".
* `securityAlertsThreshold` (String!): The severity level at which code scanning results that raise security alerts
block a reference update. For more information on security severity levels,
see "About code scanning alerts.".
* `tool` (String!): The name of a code scanning tool.

## CollaboratorAffiliation - enum

Collaborators affiliation level with a subject.

### Values for `CollaboratorAffiliation`

* `ALL`: All collaborators the authenticated user can see.
* `DIRECT`: All collaborators with permissions to an organization-owned subject, regardless of organization membership status.
* `OUTSIDE`: All outside collaborators of an organization-owned subject.

## ContributingGuidelines - object

The Contributing Guidelines for a repository.

### Fields for `ContributingGuidelines`

* `body` (String): The body of the Contributing Guidelines.
* `resourcePath` (URI): The HTTP path for the Contributing Guidelines.
* `url` (URI): The HTTP URL for the Contributing Guidelines.

## createRepository - mutation

Create a new repository.

### Input fields for `createRepository`

* `input` (CreateRepositoryInput!): 

### Return fields for `createRepository`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repository` (Repository): The new repository.

## CreateRepositoryInput - input object

Autogenerated input type of CreateRepository.

### Input fields for `CreateRepositoryInput`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `description` (String): A short description of the new repository.
* `hasIssuesEnabled` (Boolean): Indicates if the repository should have the issues feature enabled.
* `hasWikiEnabled` (Boolean): Indicates if the repository should have the wiki feature enabled.
* `homepageUrl` (URI): The URL for a web page about this repository.
* `name` (String!): The name of the new repository.
* `ownerId` (ID): The ID of the owner for the new repository.
* `teamId` (ID): When an organization is specified as the owner, this ID identifies the team
that should be granted access to the new repository.
* `template` (Boolean): 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.
* `visibility` (RepositoryVisibility!): Indicates the repository's visibility level.

## createRepositoryRuleset - mutation

Create a repository ruleset.

### Input fields for `createRepositoryRuleset`

* `input` (CreateRepositoryRulesetInput!): 

### Return fields for `createRepositoryRuleset`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `ruleset` (RepositoryRuleset): The newly created Ruleset.

## CreateRepositoryRulesetInput - input object

Autogenerated input type of CreateRepositoryRuleset.

### Input fields for `CreateRepositoryRulesetInput`

* `bypassActors` ([RepositoryRulesetBypassActorInput!]): A list of actors that are allowed to bypass rules in this ruleset.
* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `conditions` (RepositoryRuleConditionsInput!): The set of conditions for this ruleset.
* `enforcement` (RuleEnforcement!): The enforcement level for this ruleset.
* `name` (String!): The name of the ruleset.
* `rules` ([RepositoryRuleInput!]): The list of rules for this ruleset.
* `sourceId` (ID!): The global relay id of the source in which a new ruleset should be created in.
* `target` (RepositoryRulesetTarget): The target of the ruleset.

## DefaultRepositoryPermissionField - enum

The possible base permissions for repositories.

### Values for `DefaultRepositoryPermissionField`

* `ADMIN`: Can read, write, and administrate repos by default.
* `NONE`: No access.
* `READ`: Can read repos by default.
* `WRITE`: Can read and write repos by default.

## deleteRepositoryRuleset - mutation

Delete a repository ruleset.

### Input fields for `deleteRepositoryRuleset`

* `input` (DeleteRepositoryRulesetInput!): 

### Return fields for `deleteRepositoryRuleset`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.

## DeleteRepositoryRulesetInput - input object

Autogenerated input type of DeleteRepositoryRuleset.

### Input fields for `DeleteRepositoryRulesetInput`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repositoryRulesetId` (ID!): The global relay id of the repository ruleset to be deleted.

## FileExtensionRestrictionParameters - object

Prevent commits that include files with specified file extensions from being pushed to the commit graph.

### Fields for `FileExtensionRestrictionParameters`

* `restrictedFileExtensions` ([String!]!): The file extensions that are restricted from being pushed to the commit graph.

## FileExtensionRestrictionParametersInput - input object

Prevent commits that include files with specified file extensions from being pushed to the commit graph.

### Input fields for `FileExtensionRestrictionParametersInput`

* `restrictedFileExtensions` ([String!]!): The file extensions that are restricted from being pushed to the commit graph.

## FilePathRestrictionParameters - object

Prevent commits that include changes in specified file and folder paths from
being pushed to the commit graph. This includes absolute paths that contain file names.

### Fields for `FilePathRestrictionParameters`

* `restrictedFilePaths` ([String!]!): The file paths that are restricted from being pushed to the commit graph.

## FilePathRestrictionParametersInput - input object

Prevent commits that include changes in specified file and folder paths from
being pushed to the commit graph. This includes absolute paths that contain file names.

### Input fields for `FilePathRestrictionParametersInput`

* `restrictedFilePaths` ([String!]!): The file paths that are restricted from being pushed to the commit graph.

## Language - object

Represents a given language found in repositories.

**Implements:** Node

### Fields for `Language`

* `color` (String): The color defined for the current language.
* `id` (ID!): The Node ID of the Language object.
* `name` (String!): The name of the current language.

## LanguageConnection - object

A list of languages associated with the parent.

### Fields for `LanguageConnection`

* `edges` ([LanguageEdge]): A list of edges.
* `nodes` ([Language]): A list of nodes.
* `pageInfo` (PageInfo!): Information to aid in pagination.
* `totalCount` (Int!): Identifies the total count of items in the connection.
* `totalSize` (Int!): The total size in bytes of files written in that language.

## LanguageEdge - object

Represents the language of a repository.

### Fields for `LanguageEdge`

* `cursor` (String!): 
* `node` (Language!): 
* `size` (Int!): The number of bytes of code written in the language.

## LanguageOrder - input object

Ordering options for language connections.

### Input fields for `LanguageOrder`

* `direction` (OrderDirection!): The ordering direction.
* `field` (LanguageOrderField!): The field to order languages by.

## LanguageOrderField - enum

Properties by which language connections can be ordered.

### Values for `LanguageOrderField`

* `SIZE`: Order languages by the size of all files containing the language.

## MaxFilePathLengthParameters - object

Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.

### Fields for `MaxFilePathLengthParameters`

* `maxFilePathLength` (Int!): The maximum amount of characters allowed in file paths.

## MaxFilePathLengthParametersInput - input object

Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.

### Input fields for `MaxFilePathLengthParametersInput`

* `maxFilePathLength` (Int!): The maximum amount of characters allowed in file paths.

## MaxFileSizeParameters - object

Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.

### Fields for `MaxFileSizeParameters`

* `maxFileSize` (Int!): The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).

## MaxFileSizeParametersInput - input object

Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.

### Input fields for `MaxFileSizeParametersInput`

* `maxFileSize` (Int!): The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).

## MergeCommitMessage - enum

The possible default commit messages for merges.

### Values for `MergeCommitMessage`

* `BLANK`: Default to a blank commit message.
* `PR_BODY`: Default to the pull request's body.
* `PR_TITLE`: Default to the pull request's title.

## MergeCommitTitle - enum

The possible default commit titles for merges.

### Values for `MergeCommitTitle`

* `MERGE_MESSAGE`: Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).
* `PR_TITLE`: Default to the pull request's title.

## PermissionSource - object

A level of permission and source for a user's access to a repository.

### Fields for `PermissionSource`

* `organization` (Organization!): The organization the repository belongs to.
* `permission` (DefaultRepositoryPermissionField!): The level of access this source has granted to the user.
* `roleName` (String): The name of the role this source has granted to the user.
* `source` (PermissionGranter!): The source of this permission.

## PropertyTargetDefinition - object

A property that must match.

### Fields for `PropertyTargetDefinition`

* `name` (String!): The name of the property.
* `propertyValues` ([String!]!): The values to match for.
* `source` (String): The source of the property. Choosecustomor 'system'. Defaults to 'custom' if not specified.

## PropertyTargetDefinitionInput - input object

A property that must match.

### Input fields for `PropertyTargetDefinitionInput`

* `name` (String!): The name of the property.
* `propertyValues` ([String!]!): The values to match for.
* `source` (String): The source of the property. Choosecustomor 'system'. Defaults to 'custom' if not specified.

## RepoAccessAuditEntry - object

Audit log entry for a repo.access event.

**Implements:** AuditEntry, Node, OrganizationAuditEntryData, RepositoryAuditEntryData

### Fields for `RepoAccessAuditEntry`

* `action` (String!): The action name. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actor` (AuditEntryActor): The user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorIp` (String): The IP address of the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLocation` (ActorLocation): A readable representation of the actor's location. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLogin` (String): The username of the user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorResourcePath` (URI): The HTTP path for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorUrl` (URI): The HTTP URL for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `createdAt` (PreciseDateTime!): The time the action was initiated. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `id` (ID!): The Node ID of the RepoAccessAuditEntry object.
* `operationType` (OperationType): The corresponding operation type for the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organization` (Organization): The Organization associated with the Audit Entry. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationName` (String): The name of the Organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationResourcePath` (URI): The HTTP path for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationUrl` (URI): The HTTP URL for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.
* `user` (User): The user affected by the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userLogin` (String): For actions involving two users, the actor is the initiator and the user is the affected user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userResourcePath` (URI): The HTTP path for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userUrl` (URI): The HTTP URL for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `visibility` (RepoAccessAuditEntryVisibility): The visibility of the repository. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.

## RepoAccessAuditEntryVisibility - enum

The privacy of a repository.

### Values for `RepoAccessAuditEntryVisibility`

* `INTERNAL`: The repository is visible only to users in the same enterprise.
* `PRIVATE`: The repository is visible only to those with explicit access.
* `PUBLIC`: The repository is visible to everyone.

## RepoAddMemberAuditEntry - object

Audit log entry for a repo.add_member event.

**Implements:** AuditEntry, Node, OrganizationAuditEntryData, RepositoryAuditEntryData

### Fields for `RepoAddMemberAuditEntry`

* `action` (String!): The action name. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actor` (AuditEntryActor): The user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorIp` (String): The IP address of the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLocation` (ActorLocation): A readable representation of the actor's location. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLogin` (String): The username of the user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorResourcePath` (URI): The HTTP path for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorUrl` (URI): The HTTP URL for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `createdAt` (PreciseDateTime!): The time the action was initiated. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `id` (ID!): The Node ID of the RepoAddMemberAuditEntry object.
* `operationType` (OperationType): The corresponding operation type for the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organization` (Organization): The Organization associated with the Audit Entry. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationName` (String): The name of the Organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationResourcePath` (URI): The HTTP path for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationUrl` (URI): The HTTP URL for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.
* `user` (User): The user affected by the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userLogin` (String): For actions involving two users, the actor is the initiator and the user is the affected user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userResourcePath` (URI): The HTTP path for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userUrl` (URI): The HTTP URL for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `visibility` (RepoAddMemberAuditEntryVisibility): The visibility of the repository. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.

## RepoAddMemberAuditEntryVisibility - enum

The privacy of a repository.

### Values for `RepoAddMemberAuditEntryVisibility`

* `INTERNAL`: The repository is visible only to users in the same enterprise.
* `PRIVATE`: The repository is visible only to those with explicit access.
* `PUBLIC`: The repository is visible to everyone.

## RepoAddTopicAuditEntry - object

Audit log entry for a repo.add_topic event.

**Implements:** AuditEntry, Node, OrganizationAuditEntryData, RepositoryAuditEntryData, TopicAuditEntryData

### Fields for `RepoAddTopicAuditEntry`

* `action` (String!): The action name. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actor` (AuditEntryActor): The user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorIp` (String): The IP address of the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLocation` (ActorLocation): A readable representation of the actor's location. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLogin` (String): The username of the user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorResourcePath` (URI): The HTTP path for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorUrl` (URI): The HTTP URL for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `createdAt` (PreciseDateTime!): The time the action was initiated. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `id` (ID!): The Node ID of the RepoAddTopicAuditEntry object.
* `operationType` (OperationType): The corresponding operation type for the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organization` (Organization): The Organization associated with the Audit Entry. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationName` (String): The name of the Organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationResourcePath` (URI): The HTTP path for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationUrl` (URI): The HTTP URL for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.
* `topic` (Topic): The name of the topic added to the repository.
* `topicName` (String): The name of the topic added to the repository.
* `user` (User): The user affected by the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userLogin` (String): For actions involving two users, the actor is the initiator and the user is the affected user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userResourcePath` (URI): The HTTP path for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userUrl` (URI): The HTTP URL for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.

## RepoArchivedAuditEntry - object

Audit log entry for a repo.archived event.

**Implements:** AuditEntry, Node, OrganizationAuditEntryData, RepositoryAuditEntryData

### Fields for `RepoArchivedAuditEntry`

* `action` (String!): The action name. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actor` (AuditEntryActor): The user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorIp` (String): The IP address of the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLocation` (ActorLocation): A readable representation of the actor's location. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLogin` (String): The username of the user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorResourcePath` (URI): The HTTP path for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorUrl` (URI): The HTTP URL for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `createdAt` (PreciseDateTime!): The time the action was initiated. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `id` (ID!): The Node ID of the RepoArchivedAuditEntry object.
* `operationType` (OperationType): The corresponding operation type for the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organization` (Organization): The Organization associated with the Audit Entry. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationName` (String): The name of the Organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationResourcePath` (URI): The HTTP path for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationUrl` (URI): The HTTP URL for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.
* `user` (User): The user affected by the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userLogin` (String): For actions involving two users, the actor is the initiator and the user is the affected user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userResourcePath` (URI): The HTTP path for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userUrl` (URI): The HTTP URL for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `visibility` (RepoArchivedAuditEntryVisibility): The visibility of the repository. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.

## RepoArchivedAuditEntryVisibility - enum

The privacy of a repository.

### Values for `RepoArchivedAuditEntryVisibility`

* `INTERNAL`: The repository is visible only to users in the same enterprise.
* `PRIVATE`: The repository is visible only to those with explicit access.
* `PUBLIC`: The repository is visible to everyone.

## RepoChangeMergeSettingAuditEntry - object

Audit log entry for a repo.change_merge_setting event.

**Implements:** AuditEntry, Node, OrganizationAuditEntryData, RepositoryAuditEntryData

### Fields for `RepoChangeMergeSettingAuditEntry`

* `action` (String!): The action name. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actor` (AuditEntryActor): The user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorIp` (String): The IP address of the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLocation` (ActorLocation): A readable representation of the actor's location. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLogin` (String): The username of the user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorResourcePath` (URI): The HTTP path for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorUrl` (URI): The HTTP URL for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `createdAt` (PreciseDateTime!): The time the action was initiated. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `id` (ID!): The Node ID of the RepoChangeMergeSettingAuditEntry object.
* `isEnabled` (Boolean): Whether the change was to enable (true) or disable (false) the merge type. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `mergeType` (RepoChangeMergeSettingAuditEntryMergeType): The merge method affected by the change. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `operationType` (OperationType): The corresponding operation type for the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organization` (Organization): The Organization associated with the Audit Entry. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationName` (String): The name of the Organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationResourcePath` (URI): The HTTP path for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationUrl` (URI): The HTTP URL for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.
* `user` (User): The user affected by the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userLogin` (String): For actions involving two users, the actor is the initiator and the user is the affected user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userResourcePath` (URI): The HTTP path for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userUrl` (URI): The HTTP URL for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.

## RepoChangeMergeSettingAuditEntryMergeType - enum

The merge options available for pull requests to this repository.

### Values for `RepoChangeMergeSettingAuditEntryMergeType`

* `MERGE`: The pull request is added to the base branch in a merge commit.
* `REBASE`: Commits from the pull request are added onto the base branch individually without a merge commit.
* `SQUASH`: The pull request's commits are squashed into a single commit before they are merged to the base branch.

## RepoCreateAuditEntry - object

Audit log entry for a repo.create event.

**Implements:** AuditEntry, Node, OrganizationAuditEntryData, RepositoryAuditEntryData

### Fields for `RepoCreateAuditEntry`

* `action` (String!): The action name. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actor` (AuditEntryActor): The user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorIp` (String): The IP address of the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLocation` (ActorLocation): A readable representation of the actor's location. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLogin` (String): The username of the user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorResourcePath` (URI): The HTTP path for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorUrl` (URI): The HTTP URL for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `createdAt` (PreciseDateTime!): The time the action was initiated. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `forkParentName` (String): The name of the parent repository for this forked repository. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `forkSourceName` (String): The name of the root repository for this network. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `id` (ID!): The Node ID of the RepoCreateAuditEntry object.
* `operationType` (OperationType): The corresponding operation type for the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organization` (Organization): The Organization associated with the Audit Entry. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationName` (String): The name of the Organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationResourcePath` (URI): The HTTP path for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationUrl` (URI): The HTTP URL for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.
* `user` (User): The user affected by the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userLogin` (String): For actions involving two users, the actor is the initiator and the user is the affected user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userResourcePath` (URI): The HTTP path for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userUrl` (URI): The HTTP URL for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `visibility` (RepoCreateAuditEntryVisibility): The visibility of the repository. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.

## RepoCreateAuditEntryVisibility - enum

The privacy of a repository.

### Values for `RepoCreateAuditEntryVisibility`

* `INTERNAL`: The repository is visible only to users in the same enterprise.
* `PRIVATE`: The repository is visible only to those with explicit access.
* `PUBLIC`: The repository is visible to everyone.

## RepoDestroyAuditEntry - object

Audit log entry for a repo.destroy event.

**Implements:** AuditEntry, Node, OrganizationAuditEntryData, RepositoryAuditEntryData

### Fields for `RepoDestroyAuditEntry`

* `action` (String!): The action name. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actor` (AuditEntryActor): The user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorIp` (String): The IP address of the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLocation` (ActorLocation): A readable representation of the actor's location. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLogin` (String): The username of the user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorResourcePath` (URI): The HTTP path for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorUrl` (URI): The HTTP URL for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `createdAt` (PreciseDateTime!): The time the action was initiated. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `id` (ID!): The Node ID of the RepoDestroyAuditEntry object.
* `operationType` (OperationType): The corresponding operation type for the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organization` (Organization): The Organization associated with the Audit Entry. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationName` (String): The name of the Organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationResourcePath` (URI): The HTTP path for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationUrl` (URI): The HTTP URL for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.
* `user` (User): The user affected by the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userLogin` (String): For actions involving two users, the actor is the initiator and the user is the affected user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userResourcePath` (URI): The HTTP path for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userUrl` (URI): The HTTP URL for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `visibility` (RepoDestroyAuditEntryVisibility): The visibility of the repository. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.

## RepoDestroyAuditEntryVisibility - enum

The privacy of a repository.

### Values for `RepoDestroyAuditEntryVisibility`

* `INTERNAL`: The repository is visible only to users in the same enterprise.
* `PRIVATE`: The repository is visible only to those with explicit access.
* `PUBLIC`: The repository is visible to everyone.

## RepoRemoveMemberAuditEntry - object

Audit log entry for a repo.remove_member event.

**Implements:** AuditEntry, Node, OrganizationAuditEntryData, RepositoryAuditEntryData

### Fields for `RepoRemoveMemberAuditEntry`

* `action` (String!): The action name. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actor` (AuditEntryActor): The user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorIp` (String): The IP address of the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLocation` (ActorLocation): A readable representation of the actor's location. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLogin` (String): The username of the user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorResourcePath` (URI): The HTTP path for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorUrl` (URI): The HTTP URL for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `createdAt` (PreciseDateTime!): The time the action was initiated. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `id` (ID!): The Node ID of the RepoRemoveMemberAuditEntry object.
* `operationType` (OperationType): The corresponding operation type for the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organization` (Organization): The Organization associated with the Audit Entry. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationName` (String): The name of the Organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationResourcePath` (URI): The HTTP path for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationUrl` (URI): The HTTP URL for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.
* `user` (User): The user affected by the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userLogin` (String): For actions involving two users, the actor is the initiator and the user is the affected user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userResourcePath` (URI): The HTTP path for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userUrl` (URI): The HTTP URL for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `visibility` (RepoRemoveMemberAuditEntryVisibility): The visibility of the repository. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.

## RepoRemoveMemberAuditEntryVisibility - enum

The privacy of a repository.

### Values for `RepoRemoveMemberAuditEntryVisibility`

* `INTERNAL`: The repository is visible only to users in the same enterprise.
* `PRIVATE`: The repository is visible only to those with explicit access.
* `PUBLIC`: The repository is visible to everyone.

## RepoRemoveTopicAuditEntry - object

Audit log entry for a repo.remove_topic event.

**Implements:** AuditEntry, Node, OrganizationAuditEntryData, RepositoryAuditEntryData, TopicAuditEntryData

### Fields for `RepoRemoveTopicAuditEntry`

* `action` (String!): The action name. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actor` (AuditEntryActor): The user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorIp` (String): The IP address of the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLocation` (ActorLocation): A readable representation of the actor's location. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorLogin` (String): The username of the user who initiated the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorResourcePath` (URI): The HTTP path for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `actorUrl` (URI): The HTTP URL for the actor. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `createdAt` (PreciseDateTime!): The time the action was initiated. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `id` (ID!): The Node ID of the RepoRemoveTopicAuditEntry object.
* `operationType` (OperationType): The corresponding operation type for the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organization` (Organization): The Organization associated with the Audit Entry. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationName` (String): The name of the Organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationResourcePath` (URI): The HTTP path for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `organizationUrl` (URI): The HTTP URL for the organization. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.
* `topic` (Topic): The name of the topic added to the repository.
* `topicName` (String): The name of the topic added to the repository.
* `user` (User): The user affected by the action. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userLogin` (String): For actions involving two users, the actor is the initiator and the user is the affected user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userResourcePath` (URI): The HTTP path for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.
* `userUrl` (URI): The HTTP URL for the user. **Deprecated:** The GraphQL audit-log is deprecated. Please use the REST API instead. Removal on 2026-04-01 UTC.

## Repository - object

A repository contains the content for a project.

**Implements:** Node, PackageOwner, ProjectOwner, ProjectV2Recent, RepositoryInfo, Starrable, Subscribable, UniformResourceLocatable

### Fields for `Repository`

* `allowUpdateBranch` (Boolean!): Whether or not a pull request head branch that is behind its base branch can
always be updated even if it is not required to be up to date before merging.
* `archivedAt` (DateTime): Identifies the date and time when the repository was archived.
* `assignableUsers` (UserConnection!): A list of users that can be assigned to issues in this repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `query` (String): Filters users with query on user name and login.

* `autoMergeAllowed` (Boolean!): Whether or not Auto-merge can be enabled on pull requests in this repository.
* `branchProtectionRules` (BranchProtectionRuleConnection!): A list of branch protection rules for this repository. _(Pagination: `after`, `before`, `first`, `last`)_
* `codeOfConduct` (CodeOfConduct): Returns the code of conduct for this repository.
* `codeowners` (RepositoryCodeowners): Information extracted from the repository's CODEOWNERS file.
  * `refName` (String): The ref name used to return the associated CODEOWNERS file.

* `collaborators` (RepositoryCollaboratorConnection): A list of collaborators associated with the repository.
  * `affiliation` (CollaboratorAffiliation): Collaborators affiliation level with a repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `login` (String): The login of one specific collaborator.
  * `query` (String): Filters users with query on user name and login.

* `commitComments` (CommitCommentConnection!): A list of commit comments associated with the repository. _(Pagination: `after`, `before`, `first`, `last`)_
* `contactLinks` ([RepositoryContactLink!]): Returns a list of contact links associated to the repository.
* `contributingGuidelines` (ContributingGuidelines): Returns the contributing guidelines for this repository.
* `createdAt` (DateTime!): Identifies the date and time when the object was created.
* `databaseId` (Int): Identifies the primary key from the database.
* `defaultBranchRef` (Ref): The Ref associated with the repository's default branch.
* `deleteBranchOnMerge` (Boolean!): Whether or not branches are automatically deleted when merged in this repository.
* `dependencyGraphManifests` (DependencyGraphManifestConnection): A list of dependency manifests contained in the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `dependenciesAfter` (String): Cursor to paginate dependencies.
  * `dependenciesFirst` (Int): Number of dependencies to fetch.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `withDependencies` (Boolean): Flag to scope to only manifests with dependencies.

* `deployKeys` (DeployKeyConnection!): A list of deploy keys that are on this repository. _(Pagination: `after`, `before`, `first`, `last`)_
* `deployments` (DeploymentConnection!): Deployments associated with the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `environments` ([String!]): Environments to list deployments for.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (DeploymentOrder): Ordering options for deployments returned from the connection.

* `description` (String): The description of the repository.
* `descriptionHTML` (HTML!): The description of the repository rendered to HTML.
* `discussion` (Discussion): Returns a single discussion from the current repository by number.
  * `number` (Int!): The number for the discussion to be returned.

* `discussionCategories` (DiscussionCategoryConnection!): A list of discussion categories that are available in the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `filterByAssignable` (Boolean): Filter by categories that are assignable by the viewer.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.

* `discussionCategory` (DiscussionCategory): A discussion category by slug.
  * `slug` (String!): The slug of the discussion category to be returned.

* `discussions` (DiscussionConnection!): A list of discussions that have been opened in the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `answered` (Boolean): Only show answered or unanswered discussions.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `categoryId` (ID): Only include discussions that belong to the category with this ID.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (DiscussionOrder): Ordering options for discussions returned from the connection.
  * `states` ([DiscussionState!]): A list of states to filter the discussions by.

* `diskUsage` (Int): The number of kilobytes this repository occupies on disk.
* `environment` (Environment): Returns a single active environment from the current repository by name.
  * `name` (String!): The name of the environment to be returned.

* `environments` (EnvironmentConnection!): A list of environments that are in this repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `names` ([String!]): The names of the environments to be returned.
  * `orderBy` (Environments): Ordering options for the environments.
  * `pinnedEnvironmentFilter` (EnvironmentPinnedFilterField): Filter to control pinned environments return. Default: `ALL`.

* `forkCount` (Int!): Returns how many forks there are of this repository in the whole network.
* `forkingAllowed` (Boolean!): Whether this repository allows forks.
* `forks` (RepositoryConnection!): A list of direct forked repositories.
  * `affiliations` ([RepositoryAffiliation]): Array of viewer's affiliation options for repositories returned from the
connection. For example, OWNER will include only repositories that the
current viewer owns.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `hasIssuesEnabled` (Boolean): If non-null, filters repositories according to whether they have issues enabled.
  * `isLocked` (Boolean): If non-null, filters repositories according to whether they have been locked.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (RepositoryOrder): Ordering options for repositories returned from the connection.
  * `ownerAffiliations` ([RepositoryAffiliation]): Array of owner's affiliation options for repositories returned from the
connection. For example, OWNER will include only repositories that the
organization or user being viewed owns.
  * `privacy` (RepositoryPrivacy): If non-null, filters repositories according to privacy. Internal
repositories are considered private; consider using the visibility argument
if only internal repositories are needed. Cannot be combined with the
visibility argument.
  * `visibility` (RepositoryVisibility): If non-null, filters repositories according to visibility. Cannot be combined with the privacy argument.

* `hasAnonymousAccessEnabled` (Boolean!): Indicates if the repository has anonymous Git read access feature enabled.
* `hasDiscussionsEnabled` (Boolean!): Indicates if the repository has the Discussions feature enabled.
* `hasIssuesEnabled` (Boolean!): Indicates if the repository has issues feature enabled.
* `hasProjectsEnabled` (Boolean!): Indicates if the repository has the Projects feature enabled.
* `hasVulnerabilityAlertsEnabled` (Boolean!): Whether vulnerability alerts are enabled for the repository.
* `hasWikiEnabled` (Boolean!): Indicates if the repository has wiki feature enabled.
* `homepageUrl` (URI): The repository's URL.
* `id` (ID!): The Node ID of the Repository object.
* `isArchived` (Boolean!): Indicates if the repository is unmaintained.
* `isBlankIssuesEnabled` (Boolean!): Returns true if blank issue creation is allowed.
* `isDisabled` (Boolean!): Returns whether or not this repository disabled.
* `isEmpty` (Boolean!): Returns whether or not this repository is empty.
* `isFork` (Boolean!): Identifies if the repository is a fork.
* `isInOrganization` (Boolean!): Indicates if a repository is either owned by an organization, or is a private fork of an organization repository.
* `isLocked` (Boolean!): Indicates if the repository has been locked or not.
* `isMirror` (Boolean!): Identifies if the repository is a mirror.
* `isPrivate` (Boolean!): Identifies if the repository is private or internal.
* `isSecurityPolicyEnabled` (Boolean): Returns true if this repository has a security policy.
* `isTemplate` (Boolean!): Identifies if the repository is a template that can be used to generate new repositories.
* `isUserConfigurationRepository` (Boolean!): Is this repository a user configuration repository?.
* `issue` (Issue): Returns a single issue from the current repository by number.
  * `number` (Int!): The number for the issue to be returned.

* `issueOrPullRequest` (IssueOrPullRequest): Returns a single issue-like object from the current repository by number.
  * `number` (Int!): The number for the issue to be returned.

* `issueTemplates` ([IssueTemplate!]): Returns a list of issue templates associated to the repository.
* `issueType` (IssueType): Returns a single issue type by name.
  * `name` (String!): Issue type name.

* `issueTypes` (IssueTypeConnection): A list of the repository's issue types.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (IssueTypeOrder): Ordering options for issue types returned from the connection.

* `issues` (IssueConnection!): A list of issues that have been opened in the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `filterBy` (IssueFilters): Filtering options for issues returned from the connection.
  * `first` (Int): Returns the first n elements from the list.
  * `labels` ([String!]): A list of label names to filter the pull requests by.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (IssueOrder): Ordering options for issues returned from the connection.
  * `states` ([IssueState!]): A list of states to filter the issues by.

* `label` (Label): Returns a single label by name.
  * `name` (String!): Label name.

* `labels` (LabelConnection): A list of labels associated with the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (LabelOrder): Ordering options for labels returned from the connection.
  * `query` (String): If provided, searches labels by name and description.

* `languages` (LanguageConnection): A list containing a breakdown of the language composition of the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (LanguageOrder): Order for connection.

* `latestRelease` (Release): Get the latest release for the repository if one exists.
* `licenseInfo` (License): The license associated with the repository.
* `lockReason` (RepositoryLockReason): The reason the repository has been locked.
* `mentionableUsers` (UserConnection!): A list of Users that can be mentioned in the context of the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `query` (String): Filters users with query on user name and login.

* `mergeCommitAllowed` (Boolean!): Whether or not PRs are merged with a merge commit on this repository.
* `mergeCommitMessage` (MergeCommitMessage!): How the default commit message will be generated when merging a pull request.
* `mergeCommitTitle` (MergeCommitTitle!): How the default commit title will be generated when merging a pull request.
* `mergeQueue` (MergeQueue): The merge queue for a specified branch, otherwise the default branch if not provided.
  * `branch` (String): The name of the branch to get the merge queue for. Case sensitive.

* `milestone` (Milestone): Returns a single milestone from the current repository by number.
  * `number` (Int!): The number for the milestone to be returned.

* `milestones` (MilestoneConnection): A list of milestones associated with the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (MilestoneOrder): Ordering options for milestones.
  * `query` (String): Filters milestones with a query on the title.
  * `states` ([MilestoneState!]): Filter by the state of the milestones.

* `mirrorUrl` (URI): The repository's original mirror URL.
* `name` (String!): The name of the repository.
* `nameWithOwner` (String!): The repository's name with owner.
* `object` (GitObject): A Git object in the repository.
  * `expression` (String): A Git revision expression suitable for rev-parse.
  * `oid` (GitObjectID): The Git object ID.

* `openGraphImageUrl` (URI!): The image used to represent this repository in Open Graph data.
* `owner` (RepositoryOwner!): The User owner of the repository.
* `packages` (PackageConnection!): A list of packages under the owner.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `names` ([String]): Find packages by their names.
  * `orderBy` (PackageOrder): Ordering of the returned packages.
  * `packageType` (PackageType): Filter registry package by type.
  * `repositoryId` (ID): Find packages in a repository by ID.

* `parent` (Repository): The repository parent, if this is a fork.
* `pinnedDiscussions` (PinnedDiscussionConnection!): A list of discussions that have been pinned in this repository. _(Pagination: `after`, `before`, `first`, `last`)_
* `pinnedEnvironments` (PinnedEnvironmentConnection): A list of pinned environments for this repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (PinnedEnvironmentOrder): Ordering options for the environments.

* `pinnedIssues` (PinnedIssueConnection): A list of pinned issues for this repository. _(Pagination: `after`, `before`, `first`, `last`)_
* `planFeatures` (RepositoryPlanFeatures!): Returns information about the availability of certain features and limits based on the repository's billing plan.
* `primaryLanguage` (Language): The primary language of the repository's code.
* `project` (Project): Find project by number. **Deprecated:** Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC.
  * `number` (Int!): The project number to find.

* `projectV2` (ProjectV2): Finds and returns the Project according to the provided Project number.
  * `number` (Int!): The Project number.

* `projects` (ProjectConnection!): A list of projects under the owner. **Deprecated:** Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (ProjectOrder): Ordering options for projects returned from the connection.
  * `search` (String): Query to search projects by, currently only searching by name.
  * `states` ([ProjectState!]): A list of states to filter the projects by.

* `projectsResourcePath` (URI!): The HTTP path listing the repository's projects.
* `projectsUrl` (URI!): The HTTP URL listing the repository's projects.
* `projectsV2` (ProjectV2Connection!): List of projects linked to this repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `minPermissionLevel` (ProjectV2PermissionLevel): Filter projects based on user role. Default: `READ`.
  * `orderBy` (ProjectV2Order): How to order the returned projects.
  * `query` (String): A project to search for linked to the repo.

* `pullRequest` (PullRequest): Returns a single pull request from the current repository by number.
  * `number` (Int!): The number for the pull request to be returned.

* `pullRequestTemplates` ([PullRequestTemplate!]): Returns a list of pull request templates associated to the repository.
* `pullRequests` (PullRequestConnection!): A list of pull requests that have been opened in the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `baseRefName` (String): The base ref name to filter the pull requests by.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `headRefName` (String): The head ref name to filter the pull requests by.
  * `labels` ([String!]): A list of label names to filter the pull requests by.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (IssueOrder): Ordering options for pull requests returned from the connection.
  * `states` ([PullRequestState!]): A list of states to filter the pull requests by.

* `pushedAt` (DateTime): Identifies the date and time when the repository was last pushed to.
* `rebaseMergeAllowed` (Boolean!): Whether or not rebase-merging is enabled on this repository.
* `recentProjects` (ProjectV2Connection!): Recent projects that this user has modified in the context of the owner. _(Pagination: `after`, `before`, `first`, `last`)_
* `ref` (Ref): Fetch a given ref from the repository.
  * `qualifiedName` (String!): The ref to retrieve. Fully qualified matches are checked in order
(refs/heads/master) before falling back onto checks for short name matches (master).

* `refs` (RefConnection): Fetch a list of refs from the repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `direction` (OrderDirection): DEPRECATED: use orderBy. The ordering direction.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (RefOrder): Ordering options for refs returned from the connection.
  * `query` (String): Filters refs with query on name.
  * `refPrefix` (String!): A ref name prefix like refs/heads/, refs/tags/, etc.

* `release` (Release): Lookup a single release given various criteria.
  * `tagName` (String!): The name of the Tag the Release was created from.

* `releases` (ReleaseConnection!): List of releases which are dependent on this repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (ReleaseOrder): Order for connection.

* `repositoryTopics` (RepositoryTopicConnection!): A list of applied repository-topic associations for this repository. _(Pagination: `after`, `before`, `first`, `last`)_
* `resourcePath` (URI!): The HTTP path for this repository.
* `ruleset` (RepositoryRuleset): Returns a single ruleset from the current repository by ID.
  * `databaseId` (Int!): The ID of the ruleset to be returned.
  * `includeParents` (Boolean): Include rulesets configured at higher levels that apply to this repository. Default: `true`.

* `rulesets` (RepositoryRulesetConnection): A list of rulesets for this repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `includeParents` (Boolean): Return rulesets configured at higher levels that apply to this repository. Default: `true`.
  * `last` (Int): Returns the last n elements from the list.
  * `targets` ([RepositoryRulesetTarget!]): Return rulesets that apply to the specified target.

* `securityPolicyUrl` (URI): The security policy URL.
* `shortDescriptionHTML` (HTML!): A description of the repository, rendered to HTML without any links in it.
  * `limit` (Int): How many characters to return. Default: `200`.

* `squashMergeAllowed` (Boolean!): Whether or not squash-merging is enabled on this repository.
* `squashMergeCommitMessage` (SquashMergeCommitMessage!): How the default commit message will be generated when squash merging a pull request.
* `squashMergeCommitTitle` (SquashMergeCommitTitle!): How the default commit title will be generated when squash merging a pull request.
* `squashPrTitleUsedAsDefault` (Boolean!): Whether a squash merge commit can use the pull request title as default. **Deprecated:** squashPrTitleUsedAsDefault will be removed. Use Repository.squashMergeCommitTitle instead. Removal on 2023-04-01 UTC.
* `sshUrl` (GitSSHRemote!): The SSH URL to clone this repository.
* `stargazerCount` (Int!): Returns a count of how many stargazers there are on this object.
* `stargazers` (StargazerConnection!): A list of users who have starred this starrable.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (StarOrder): Order for connection.

* `submodules` (SubmoduleConnection!): Returns a list of all submodules in this repository parsed from the
.gitmodules file as of the default branch's HEAD commit. _(Pagination: `after`, `before`, `first`, `last`)_
* `suggestedActors` (ActorConnection!): A list of suggested actors that can be attributed to content in this repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `capabilities` ([RepositorySuggestedActorFilter!]!): A list of capabilities to filter actors by.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `loginNames` (String): A comma separated list of login names to filter actors by. Only the first 10 logins will be used.
  * `query` (String): Search actors with query on user name and login.

* `tempCloneToken` (String): Temporary authentication token for cloning this repository.
* `templateRepository` (Repository): The repository from which this repository was generated, if any.
* `updatedAt` (DateTime!): Identifies the date and time when the object was last updated.
* `url` (URI!): The HTTP URL for this repository.
* `usesCustomOpenGraphImage` (Boolean!): Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar.
* `viewerCanAdminister` (Boolean!): Indicates whether the viewer has admin permissions on this repository.
* `viewerCanCreateProjects` (Boolean!): Can the current viewer create new projects on this owner. **Deprecated:** Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC.
* `viewerCanSeeIssueFields` (Boolean!): Indicates whether the current user can see issue fields in this repository.
* `viewerCanSubscribe` (Boolean!): Check if the viewer is able to change their subscription status for the repository.
* `viewerCanUpdateTopics` (Boolean!): Indicates whether the viewer can update the topics of this repository.
* `viewerDefaultCommitEmail` (String): The last commit email for the viewer.
* `viewerDefaultMergeMethod` (PullRequestMergeMethod!): The last used merge method by the viewer or the default for the repository.
* `viewerHasStarred` (Boolean!): Returns a boolean indicating whether the viewing user has starred this starrable.
* `viewerPermission` (RepositoryPermission): The users permission level on the repository. Will return null if authenticated as an GitHub App.
* `viewerPossibleCommitEmails` ([String!]): A list of emails this viewer can commit with.
* `viewerSubscription` (SubscriptionState): Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.
* `visibility` (RepositoryVisibility!): Indicates the repository's visibility level.
* `vulnerabilityAlert` (RepositoryVulnerabilityAlert): Returns a single vulnerability alert from the current repository by number.
  * `number` (Int!): The number for the vulnerability alert to be returned.

* `vulnerabilityAlerts` (RepositoryVulnerabilityAlertConnection): A list of vulnerability alerts that are on this repository.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `dependencyScopes` ([RepositoryVulnerabilityAlertDependencyScope!]): Filter by the scope of the alert's dependency.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `states` ([RepositoryVulnerabilityAlertState!]): Filter by the state of the alert.

* `watchers` (UserConnection!): A list of users watching the repository. _(Pagination: `after`, `before`, `first`, `last`)_
* `webCommitSignoffRequired` (Boolean!): Whether contributors are required to sign off on web-based commits in this repository.

## repository - query

Lookup a given repository by the owner and repository name.

**Type:** Repository

### Arguments for `repository`

* `followRenames` (Boolean): Follow repository renames. If disabled, a repository referenced by its old name will return an error.
* `name` (String!): The name of the repository.
* `owner` (String!): The login field of a user or organization.

## RepositoryAffiliation - enum

The affiliation of a user to a repository.

### Values for `RepositoryAffiliation`

* `COLLABORATOR`: Repositories that the user has been added to as a collaborator.
* `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.
* `OWNER`: Repositories that are owned by the authenticated user.

## RepositoryAuditEntryData - interface

Metadata for an audit entry with action repo.*.

### Fields for `RepositoryAuditEntryData`

* `repository` (Repository): The repository associated with the action.
* `repositoryName` (String): The name of the repository.
* `repositoryResourcePath` (URI): The HTTP path for the repository.
* `repositoryUrl` (URI): The HTTP URL for the repository.

### Implemented by

* PrivateRepositoryForkingDisableAuditEntry
* PrivateRepositoryForkingEnableAuditEntry
* RepoConfigDisableAnonymousGitAccessAuditEntry
* RepoConfigDisableCollaboratorsOnlyAuditEntry
* RepoConfigDisableContributorsOnlyAuditEntry
* RepoConfigDisableSockpuppetDisallowedAuditEntry
* RepoConfigEnableAnonymousGitAccessAuditEntry
* RepoConfigEnableCollaboratorsOnlyAuditEntry
* RepoConfigEnableContributorsOnlyAuditEntry
* RepoConfigEnableSockpuppetDisallowedAuditEntry
* RepoConfigLockAnonymousGitAccessAuditEntry
* RepoConfigUnlockAnonymousGitAccessAuditEntry
* OrgRestoreMemberMembershipRepositoryAuditEntryData
* RepoAccessAuditEntry
* RepoAddMemberAuditEntry
* RepoAddTopicAuditEntry
* RepoArchivedAuditEntry
* RepoChangeMergeSettingAuditEntry
* RepoCreateAuditEntry
* RepoDestroyAuditEntry
* RepoRemoveMemberAuditEntry
* RepoRemoveTopicAuditEntry
* TeamAddRepositoryAuditEntry
* TeamRemoveRepositoryAuditEntry

## RepositoryCodeowners - object

Information extracted from a repository's CODEOWNERS file.

### Fields for `RepositoryCodeowners`

* `errors` ([RepositoryCodeownersError!]!): Any problems that were encountered while parsing the CODEOWNERS file.

## RepositoryCodeownersError - object

An error in a CODEOWNERS file.

### Fields for `RepositoryCodeownersError`

* `column` (Int!): The column number where the error occurs.
* `kind` (String!): A short string describing the type of error.
* `line` (Int!): The line number where the error occurs.
* `message` (String!): A complete description of the error, combining information from other fields.
* `path` (String!): The path to the file when the error occurs.
* `source` (String!): The content of the line where the error occurs.
* `suggestion` (String): A suggestion of how to fix the error.

## RepositoryConnection - object

A list of repositories owned by the subject.

### Fields for `RepositoryConnection`

* `edges` ([RepositoryEdge]): A list of edges.
* `nodes` ([Repository]): A list of nodes.
* `pageInfo` (PageInfo!): Information to aid in pagination.
* `totalCount` (Int!): Identifies the total count of items in the connection.
* `totalDiskUsage` (Int!): The total size in kilobytes of all repositories in the connection. Value will
never be larger than max 32-bit signed integer.

## RepositoryContactLink - object

A repository contact link.

### Fields for `RepositoryContactLink`

* `about` (String!): The contact link purpose.
* `name` (String!): The contact link name.
* `url` (URI!): The contact link URL.

## RepositoryContributionType - enum

The reason a repository is listed as 'contributed'.

### Values for `RepositoryContributionType`

* `COMMIT`: Created a commit.
* `ISSUE`: Created an issue.
* `PULL_REQUEST`: Created a pull request.
* `PULL_REQUEST_REVIEW`: Reviewed a pull request.
* `REPOSITORY`: Created the repository.

## RepositoryEdge - object

An edge in a connection.

### Fields for `RepositoryEdge`

* `cursor` (String!): A cursor for use in pagination.
* `node` (Repository): The item at the end of the edge.

## RepositoryIdConditionTarget - object

Parameters to be used for the repository_id condition.

### Fields for `RepositoryIdConditionTarget`

* `repositoryIds` ([ID!]!): One of these repo IDs must match the repo.

## RepositoryIdConditionTargetInput - input object

Parameters to be used for the repository_id condition.

### Input fields for `RepositoryIdConditionTargetInput`

* `repositoryIds` ([ID!]!): One of these repo IDs must match the repo.

## RepositoryInfo - interface

A subset of repository info.

### Fields for `RepositoryInfo`

* `archivedAt` (DateTime): Identifies the date and time when the repository was archived.
* `createdAt` (DateTime!): Identifies the date and time when the object was created.
* `description` (String): The description of the repository.
* `descriptionHTML` (HTML!): The description of the repository rendered to HTML.
* `forkCount` (Int!): Returns how many forks there are of this repository in the whole network.
* `hasAnonymousAccessEnabled` (Boolean!): Indicates if the repository has anonymous Git read access feature enabled.
* `hasDiscussionsEnabled` (Boolean!): Indicates if the repository has the Discussions feature enabled.
* `hasIssuesEnabled` (Boolean!): Indicates if the repository has issues feature enabled.
* `hasProjectsEnabled` (Boolean!): Indicates if the repository has the Projects feature enabled.
* `hasWikiEnabled` (Boolean!): Indicates if the repository has wiki feature enabled.
* `homepageUrl` (URI): The repository's URL.
* `isArchived` (Boolean!): Indicates if the repository is unmaintained.
* `isFork` (Boolean!): Identifies if the repository is a fork.
* `isInOrganization` (Boolean!): Indicates if a repository is either owned by an organization, or is a private fork of an organization repository.
* `isLocked` (Boolean!): Indicates if the repository has been locked or not.
* `isMirror` (Boolean!): Identifies if the repository is a mirror.
* `isPrivate` (Boolean!): Identifies if the repository is private or internal.
* `isTemplate` (Boolean!): Identifies if the repository is a template that can be used to generate new repositories.
* `licenseInfo` (License): The license associated with the repository.
* `lockReason` (RepositoryLockReason): The reason the repository has been locked.
* `mirrorUrl` (URI): The repository's original mirror URL.
* `name` (String!): The name of the repository.
* `nameWithOwner` (String!): The repository's name with owner.
* `openGraphImageUrl` (URI!): The image used to represent this repository in Open Graph data.
* `owner` (RepositoryOwner!): The User owner of the repository.
* `pushedAt` (DateTime): Identifies the date and time when the repository was last pushed to.
* `resourcePath` (URI!): The HTTP path for this repository.
* `shortDescriptionHTML` (HTML!): A description of the repository, rendered to HTML without any links in it.
  * `limit` (Int): How many characters to return. Default: `200`.

* `updatedAt` (DateTime!): Identifies the date and time when the object was last updated.
* `url` (URI!): The HTTP URL for this repository.
* `usesCustomOpenGraphImage` (Boolean!): Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar.
* `visibility` (RepositoryVisibility!): Indicates the repository's visibility level.

### Implemented by

* Repository

## RepositoryInvitation - object

An invitation for a user to be added to a repository.

**Implements:** Node

### Fields for `RepositoryInvitation`

* `email` (String): The email address that received the invitation.
* `id` (ID!): The Node ID of the RepositoryInvitation object.
* `invitee` (User): The user who received the invitation.
* `inviter` (User!): The user who created the invitation.
* `permalink` (URI!): The permalink for this repository invitation.
* `permission` (RepositoryPermission!): The permission granted on this repository by this invitation.
* `repository` (RepositoryInfo): The Repository the user is invited to.

## RepositoryInvitationConnection - object

A list of repository invitations.

### Fields for `RepositoryInvitationConnection`

* `edges` ([RepositoryInvitationEdge]): A list of edges.
* `nodes` ([RepositoryInvitation]): A list of nodes.
* `pageInfo` (PageInfo!): Information to aid in pagination.
* `totalCount` (Int!): Identifies the total count of items in the connection.

## RepositoryInvitationEdge - object

An edge in a connection.

### Fields for `RepositoryInvitationEdge`

* `cursor` (String!): A cursor for use in pagination.
* `node` (RepositoryInvitation): The item at the end of the edge.

## RepositoryInvitationOrder - input object

Ordering options for repository invitation connections.

### Input fields for `RepositoryInvitationOrder`

* `direction` (OrderDirection!): The ordering direction.
* `field` (RepositoryInvitationOrderField!): The field to order repository invitations by.

## RepositoryInvitationOrderField - enum

Properties by which repository invitation connections can be ordered.

### Values for `RepositoryInvitationOrderField`

* `CREATED_AT`: Order repository invitations by creation time.

## RepositoryLockReason - enum

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

### Values for `RepositoryLockReason`

* `BILLING`: The repository is locked due to a billing related reason.
* `MIGRATING`: The repository is locked due to a migration.
* `MOVING`: The repository is locked due to a move.
* `RENAME`: The repository is locked due to a rename.
* `TRADE_RESTRICTION`: The repository is locked due to a trade controls related reason.
* `TRANSFERRING_OWNERSHIP`: The repository is locked due to an ownership transfer.

## RepositoryNameConditionTarget - object

Parameters to be used for the repository_name condition.

### Fields for `RepositoryNameConditionTarget`

* `exclude` ([String!]!): Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.
* `include` ([String!]!): Array of repository names or patterns to include. One of these patterns must
match for the condition to pass. Also accepts ~ALL to include all repositories.
* `protected` (Boolean!): Target changes that match these patterns will be prevented except by those with bypass permissions.

## RepositoryNameConditionTargetInput - input object

Parameters to be used for the repository_name condition.

### Input fields for `RepositoryNameConditionTargetInput`

* `exclude` ([String!]!): Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.
* `include` ([String!]!): Array of repository names or patterns to include. One of these patterns must
match for the condition to pass. Also accepts ~ALL to include all repositories.
* `protected` (Boolean): Target changes that match these patterns will be prevented except by those with bypass permissions.

## RepositoryNode - interface

Represents a object that belongs to a repository.

### Fields for `RepositoryNode`

* `repository` (Repository!): The repository associated with this node.

### Implemented by

* CommitComment
* CommitCommentThread
* DependabotUpdate
* RepositoryVulnerabilityAlert
* Discussion
* DiscussionCategory
* PinnedDiscussion
* Issue
* IssueComment
* PullRequest
* PullRequestCommitCommentThread
* PullRequestReview
* PullRequestReviewComment

## RepositoryOrder - input object

Ordering options for repository connections.

### Input fields for `RepositoryOrder`

* `direction` (OrderDirection!): The ordering direction.
* `field` (RepositoryOrderField!): The field to order repositories by.

## RepositoryOrderField - enum

Properties by which repository connections can be ordered.

### Values for `RepositoryOrderField`

* `CREATED_AT`: Order repositories by creation time.
* `NAME`: Order repositories by name.
* `PUSHED_AT`: Order repositories by push time.
* `STARGAZERS`: Order repositories by number of stargazers.
* `UPDATED_AT`: Order repositories by update time.

## RepositoryOwner - interface

Represents an owner of a Repository.

### Fields for `RepositoryOwner`

* `avatarUrl` (URI!): A URL pointing to the owner's public avatar.
  * `size` (Int): The size of the resulting square image.

* `id` (ID!): The Node ID of the RepositoryOwner object.
* `login` (String!): The username used to login.
* `repositories` (RepositoryConnection!): A list of repositories that the user owns.
  * `affiliations` ([RepositoryAffiliation]): Array of viewer's affiliation options for repositories returned from the
connection. For example, OWNER will include only repositories that the
current viewer owns.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `hasIssuesEnabled` (Boolean): If non-null, filters repositories according to whether they have issues enabled.
  * `isArchived` (Boolean): If non-null, filters repositories according to whether they are archived and not maintained.
  * `isFork` (Boolean): If non-null, filters repositories according to whether they are forks of another repository.
  * `isLocked` (Boolean): If non-null, filters repositories according to whether they have been locked.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (RepositoryOrder): Ordering options for repositories returned from the connection.
  * `ownerAffiliations` ([RepositoryAffiliation]): Array of owner's affiliation options for repositories returned from the
connection. For example, OWNER will include only repositories that the
organization or user being viewed owns.
  * `privacy` (RepositoryPrivacy): If non-null, filters repositories according to privacy. Internal
repositories are considered private; consider using the visibility argument
if only internal repositories are needed. Cannot be combined with the
visibility argument.
  * `visibility` (RepositoryVisibility): If non-null, filters repositories according to visibility. Cannot be combined with the privacy argument.

* `repository` (Repository): Find Repository.
  * `followRenames` (Boolean): Follow repository renames. If disabled, a repository referenced by its old name will return an error. Default: `true`.
  * `name` (String!): Name of Repository to find.

* `resourcePath` (URI!): The HTTP URL for the owner.
* `url` (URI!): The HTTP URL for the owner.

### Implemented by

* Organization
* User

## repositoryOwner - query

Lookup a repository owner (ie. either a User or an Organization) by login.

**Type:** RepositoryOwner

### Arguments for `repositoryOwner`

* `login` (String!): The username to lookup the owner by.

## RepositoryPermission - enum

The access level to a repository.

### Values for `RepositoryPermission`

* `ADMIN`: Can read, clone, and push to this repository. Can also manage issues, pull
requests, and repository settings, including adding collaborators.
* `MAINTAIN`: Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings.
* `READ`: Can read and clone this repository. Can also open and comment on issues and pull requests.
* `TRIAGE`: Can read and clone this repository. Can also manage issues and pull requests.
* `WRITE`: Can read, clone, and push to this repository. Can also manage issues and pull requests.

## RepositoryPlanFeatures - object

Information about the availability of features and limits for a repository based on its billing plan.

### Fields for `RepositoryPlanFeatures`

* `codeowners` (Boolean!): Whether reviews can be automatically requested and enforced with a CODEOWNERS file.
* `draftPullRequests` (Boolean!): Whether pull requests can be created as or converted to draft.
* `maximumAssignees` (Int!): Maximum number of users that can be assigned to an issue or pull request.
* `maximumManualReviewRequests` (Int!): Maximum number of manually-requested reviews on a pull request.
* `teamReviewRequests` (Boolean!): Whether teams can be requested to review pull requests.

## RepositoryPrivacy - enum

The privacy of a repository.

### Values for `RepositoryPrivacy`

* `PRIVATE`: Private.
* `PUBLIC`: Public.

## RepositoryPropertyConditionTarget - object

Parameters to be used for the repository_property condition.

### Fields for `RepositoryPropertyConditionTarget`

* `exclude` ([PropertyTargetDefinition!]!): Array of repository properties that must not match.
* `include` ([PropertyTargetDefinition!]!): Array of repository properties that must match.

## RepositoryPropertyConditionTargetInput - input object

Parameters to be used for the repository_property condition.

### Input fields for `RepositoryPropertyConditionTargetInput`

* `exclude` ([PropertyTargetDefinitionInput!]!): Array of repository properties that must not match.
* `include` ([PropertyTargetDefinitionInput!]!): Array of repository properties that must match.

## RepositoryRule - object

A repository rule.

**Implements:** Node

### Fields for `RepositoryRule`

* `id` (ID!): The Node ID of the RepositoryRule object.
* `parameters` (RuleParameters): The parameters for this rule.
* `repositoryRuleset` (RepositoryRuleset): The repository ruleset associated with this rule configuration.
* `type` (RepositoryRuleType!): The type of rule.

## RepositoryRuleConditions - object

Set of conditions that determine if a ruleset will evaluate.

### Fields for `RepositoryRuleConditions`

* `refName` (RefNameConditionTarget): Configuration for the ref_name condition.
* `repositoryId` (RepositoryIdConditionTarget): Configuration for the repository_id condition.
* `repositoryName` (RepositoryNameConditionTarget): Configuration for the repository_name condition.
* `repositoryProperty` (RepositoryPropertyConditionTarget): Configuration for the repository_property condition.

## RepositoryRuleConditionsInput - input object

Specifies the conditions required for a ruleset to evaluate.

### Input fields for `RepositoryRuleConditionsInput`

* `refName` (RefNameConditionTargetInput): Configuration for the ref_name condition.
* `repositoryId` (RepositoryIdConditionTargetInput): Configuration for the repository_id condition.
* `repositoryName` (RepositoryNameConditionTargetInput): Configuration for the repository_name condition.
* `repositoryProperty` (RepositoryPropertyConditionTargetInput): Configuration for the repository_property condition.

## RepositoryRuleConnection - object

The connection type for RepositoryRule.

### Fields for `RepositoryRuleConnection`

* `edges` ([RepositoryRuleEdge]): A list of edges.
* `nodes` ([RepositoryRule]): A list of nodes.
* `pageInfo` (PageInfo!): Information to aid in pagination.
* `totalCount` (Int!): Identifies the total count of items in the connection.

## RepositoryRuleEdge - object

An edge in a connection.

### Fields for `RepositoryRuleEdge`

* `cursor` (String!): A cursor for use in pagination.
* `node` (RepositoryRule): The item at the end of the edge.

## RepositoryRuleInput - input object

Specifies the attributes for a new or updated rule.

### Input fields for `RepositoryRuleInput`

* `id` (ID): Optional ID of this rule when updating.
* `parameters` (RuleParametersInput): The parameters for the rule.
* `type` (RepositoryRuleType!): The type of rule to create.

## RepositoryRuleOrder - input object

Ordering options for repository rules.

### Input fields for `RepositoryRuleOrder`

* `direction` (OrderDirection!): The ordering direction.
* `field` (RepositoryRuleOrderField!): The field to order repository rules by.

## RepositoryRuleOrderField - enum

Properties by which repository rule connections can be ordered.

### Values for `RepositoryRuleOrderField`

* `CREATED_AT`: Order repository rules by created time.
* `TYPE`: Order repository rules by type.
* `UPDATED_AT`: Order repository rules by updated time.

## RepositoryRuleset - object

A repository ruleset.

**Implements:** Node

### Fields for `RepositoryRuleset`

* `bypassActors` (RepositoryRulesetBypassActorConnection): The actors that can bypass this ruleset. _(Pagination: `after`, `before`, `first`, `last`)_
* `conditions` (RepositoryRuleConditions!): The set of conditions that must evaluate to true for this ruleset to apply.
* `createdAt` (DateTime!): Identifies the date and time when the object was created.
* `databaseId` (Int): Identifies the primary key from the database.
* `enforcement` (RuleEnforcement!): The enforcement level of this ruleset.
* `id` (ID!): The Node ID of the RepositoryRuleset object.
* `name` (String!): Name of the ruleset.
* `rules` (RepositoryRuleConnection): List of rules.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `type` (RepositoryRuleType): The type of rule.

* `source` (RuleSource!): Source of ruleset.
* `target` (RepositoryRulesetTarget): Target of the ruleset.
* `updatedAt` (DateTime!): Identifies the date and time when the object was last updated.

## RepositoryRulesetBypassActor - object

A team or app that has the ability to bypass a rules defined on a ruleset.

**Implements:** Node

### Fields for `RepositoryRulesetBypassActor`

* `actor` (BypassActor): The actor that can bypass rules.
* `bypassMode` (RepositoryRulesetBypassActorBypassMode): The mode for the bypass actor.
* `deployKey` (Boolean!): This actor represents the ability for a deploy key to bypass.
* `enterpriseOwner` (Boolean!): This actor represents the ability for an enterprise owner to bypass.
* `id` (ID!): The Node ID of the RepositoryRulesetBypassActor object.
* `organizationAdmin` (Boolean!): This actor represents the ability for an organization owner to bypass.
* `repositoryRoleDatabaseId` (Int): If the actor is a repository role, the repository role's ID that can bypass.
* `repositoryRoleName` (String): If the actor is a repository role, the repository role's name that can bypass.
* `repositoryRuleset` (RepositoryRuleset): Identifies the ruleset associated with the allowed actor.

## RepositoryRulesetBypassActorBypassMode - enum

The bypass mode for a specific actor on a ruleset.

### Values for `RepositoryRulesetBypassActorBypassMode`

* `ALWAYS`: The actor can always bypass rules.
* `EXEMPT`: The actor is exempt from rules without generating a pass / fail result.
* `PULL_REQUEST`: The actor can only bypass rules via a pull request.

## RepositoryRulesetBypassActorConnection - object

The connection type for RepositoryRulesetBypassActor.

### Fields for `RepositoryRulesetBypassActorConnection`

* `edges` ([RepositoryRulesetBypassActorEdge]): A list of edges.
* `nodes` ([RepositoryRulesetBypassActor]): A list of nodes.
* `pageInfo` (PageInfo!): Information to aid in pagination.
* `totalCount` (Int!): Identifies the total count of items in the connection.

## RepositoryRulesetBypassActorEdge - object

An edge in a connection.

### Fields for `RepositoryRulesetBypassActorEdge`

* `cursor` (String!): A cursor for use in pagination.
* `node` (RepositoryRulesetBypassActor): The item at the end of the edge.

## RepositoryRulesetBypassActorInput - input object

Specifies the attributes for a new or updated ruleset bypass actor. Only one of
actor_id, repository_role_database_id, organization_admin, or deploy_key
should be specified.

### Input fields for `RepositoryRulesetBypassActorInput`

* `actorId` (ID): For Team and Integration bypasses, the Team or Integration ID.
* `bypassMode` (RepositoryRulesetBypassActorBypassMode!): The bypass mode for this actor.
* `deployKey` (Boolean): For deploy key bypasses, true. Can only use ALWAYS as the bypass mode.
* `enterpriseOwner` (Boolean): For enterprise owner bypasses, true.
* `organizationAdmin` (Boolean): For organization owner bypasses, true.
* `repositoryRoleDatabaseId` (Int): For role bypasses, the role database ID.

## RepositoryRulesetConnection - object

The connection type for RepositoryRuleset.

### Fields for `RepositoryRulesetConnection`

* `edges` ([RepositoryRulesetEdge]): A list of edges.
* `nodes` ([RepositoryRuleset]): A list of nodes.
* `pageInfo` (PageInfo!): Information to aid in pagination.
* `totalCount` (Int!): Identifies the total count of items in the connection.

## RepositoryRulesetEdge - object

An edge in a connection.

### Fields for `RepositoryRulesetEdge`

* `cursor` (String!): A cursor for use in pagination.
* `node` (RepositoryRuleset): The item at the end of the edge.

## RepositoryRulesetTarget - enum

The targets supported for rulesets.

### Values for `RepositoryRulesetTarget`

* `BRANCH`: Branch.
* `PUSH`: Push.
* `REPOSITORY`: repository.
* `TAG`: Tag.

## RepositoryRuleType - enum

The rule types supported in rulesets.

### Values for `RepositoryRuleType`

* `AUTHORIZATION`: Authorization.
* `BRANCH_NAME_PATTERN`: Branch name pattern.
* `CODE_SCANNING`: Choose which tools must provide code scanning results before the reference is
updated. When configured, code scanning must be enabled and have results for
both the commit and the reference being updated.
* `COMMITTER_EMAIL_PATTERN`: Committer email pattern.
* `COMMIT_AUTHOR_EMAIL_PATTERN`: Commit author email pattern.
* `COMMIT_MESSAGE_PATTERN`: Commit message pattern.
* `COPILOT_CODE_REVIEW`: Request Copilot code review for new pull requests automatically if the author has access to Copilot code review.
* `CREATION`: Only allow users with bypass permission to create matching refs.
* `DELETION`: Only allow users with bypass permissions to delete matching refs.
* `FILE_EXTENSION_RESTRICTION`: Prevent commits that include files with specified file extensions from being pushed to the commit graph.
* `FILE_PATH_RESTRICTION`: Prevent commits that include changes in specified file and folder paths from
being pushed to the commit graph. This includes absolute paths that contain file names.
* `LOCK_BRANCH`: Branch is read-only. Users cannot push to the branch.
* `MAX_FILE_PATH_LENGTH`: Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.
* `MAX_FILE_SIZE`: Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.
* `MAX_REF_UPDATES`: Max ref updates.
* `MERGE_QUEUE`: Merges must be performed via a merge queue.
* `MERGE_QUEUE_LOCKED_REF`: Merge queue locked ref.
* `NON_FAST_FORWARD`: Prevent users with push access from force pushing to refs.
* `PULL_REQUEST`: Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.
* `REQUIRED_DEPLOYMENTS`: Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.
* `REQUIRED_LINEAR_HISTORY`: Prevent merge commits from being pushed to matching refs.
* `REQUIRED_REVIEW_THREAD_RESOLUTION`: When enabled, all conversations on code must be resolved before a pull request
can be merged into a branch that matches this rule.
* `REQUIRED_SIGNATURES`: Commits pushed to matching refs must have verified signatures.
* `REQUIRED_STATUS_CHECKS`: Choose which status checks must pass before the ref is updated. When enabled,
commits must first be pushed to another ref where the checks pass.
* `REQUIRED_WORKFLOW_STATUS_CHECKS`: Require all commits be made to a non-target branch and submitted via a pull
request and required workflow checks to pass before they can be merged.
* `SECRET_SCANNING`: Secret scanning.
* `TAG`: Tag.
* `TAG_NAME_PATTERN`: Tag name pattern.
* `UPDATE`: Only allow users with bypass permission to update matching refs.
* `WORKFLOWS`: Require all changes made to a targeted branch to pass the specified workflows before they can be merged.
* `WORKFLOW_UPDATES`: Workflow files cannot be modified.

## RepositorySuggestedActorFilter - enum

The possible filters for suggested actors in a repository.

### Values for `RepositorySuggestedActorFilter`

* `CAN_BE_ASSIGNED`: Actors that can be assigned to issues and pull requests.
* `CAN_BE_AUTHOR`: Actors that can be the author of issues and pull requests.

## RepositoryTopic - object

A repository-topic connects a repository to a topic.

**Implements:** Node, UniformResourceLocatable

### Fields for `RepositoryTopic`

* `id` (ID!): The Node ID of the RepositoryTopic object.
* `resourcePath` (URI!): The HTTP path for this repository-topic.
* `topic` (Topic!): The topic.
* `url` (URI!): The HTTP URL for this repository-topic.

## RepositoryTopicConnection - object

The connection type for RepositoryTopic.

### Fields for `RepositoryTopicConnection`

* `edges` ([RepositoryTopicEdge]): A list of edges.
* `nodes` ([RepositoryTopic]): A list of nodes.
* `pageInfo` (PageInfo!): Information to aid in pagination.
* `totalCount` (Int!): Identifies the total count of items in the connection.

## RepositoryTopicEdge - object

An edge in a connection.

### Fields for `RepositoryTopicEdge`

* `cursor` (String!): A cursor for use in pagination.
* `node` (RepositoryTopic): The item at the end of the edge.

## RepositoryVisibility - enum

The repository's visibility level.

### Values for `RepositoryVisibility`

* `INTERNAL`: The repository is visible only to users in the same enterprise.
* `PRIVATE`: The repository is visible only to those with explicit access.
* `PUBLIC`: The repository is visible to everyone.

## RuleEnforcement - enum

The level of enforcement for a rule or ruleset.

### Values for `RuleEnforcement`

* `ACTIVE`: Rules will be enforced.
* `DISABLED`: Do not evaluate or enforce rules.
* `EVALUATE`: Allow admins to test rules before enforcing them. Admins can view insights on
the Rule Insights page (evaluate is only available with GitHub Enterprise).

## RuleParameters - union

Types which can be parameters for RepositoryRule objects.

### Possible types for `RuleParameters`

* BranchNamePatternParameters
* CodeScanningParameters
* CommitAuthorEmailPatternParameters
* CommitMessagePatternParameters
* CommitterEmailPatternParameters
* CopilotCodeReviewParameters
* FileExtensionRestrictionParameters
* FilePathRestrictionParameters
* MaxFilePathLengthParameters
* MaxFileSizeParameters
* MergeQueueParameters
* PullRequestParameters
* RequiredDeploymentsParameters
* RequiredStatusChecksParameters
* TagNamePatternParameters
* UpdateParameters
* WorkflowsParameters

## RuleParametersInput - input object

Specifies the parameters for a RepositoryRule object. Only one of the fields should be specified.

### Input fields for `RuleParametersInput`

* `branchNamePattern` (BranchNamePatternParametersInput): Parameters used for the branch_name_pattern rule type.
* `codeScanning` (CodeScanningParametersInput): Parameters used for the code_scanning rule type.
* `commitAuthorEmailPattern` (CommitAuthorEmailPatternParametersInput): Parameters used for the commit_author_email_pattern rule type.
* `commitMessagePattern` (CommitMessagePatternParametersInput): Parameters used for the commit_message_pattern rule type.
* `committerEmailPattern` (CommitterEmailPatternParametersInput): Parameters used for the committer_email_pattern rule type.
* `copilotCodeReview` (CopilotCodeReviewParametersInput): Parameters used for the copilot_code_review rule type.
* `fileExtensionRestriction` (FileExtensionRestrictionParametersInput): Parameters used for the file_extension_restriction rule type.
* `filePathRestriction` (FilePathRestrictionParametersInput): Parameters used for the file_path_restriction rule type.
* `maxFilePathLength` (MaxFilePathLengthParametersInput): Parameters used for the max_file_path_length rule type.
* `maxFileSize` (MaxFileSizeParametersInput): Parameters used for the max_file_size rule type.
* `mergeQueue` (MergeQueueParametersInput): Parameters used for the merge_queue rule type.
* `pullRequest` (PullRequestParametersInput): Parameters used for the pull_request rule type.
* `requiredDeployments` (RequiredDeploymentsParametersInput): Parameters used for the required_deployments rule type.
* `requiredStatusChecks` (RequiredStatusChecksParametersInput): Parameters used for the required_status_checks rule type.
* `tagNamePattern` (TagNamePatternParametersInput): Parameters used for the tag_name_pattern rule type.
* `update` (UpdateParametersInput): Parameters used for the update rule type.
* `workflows` (WorkflowsParametersInput): Parameters used for the workflows rule type.

## RuleSource - union

Types which can have RepositoryRule objects.

### Possible types for `RuleSource`

* Enterprise
* Organization
* Repository

## SquashMergeCommitMessage - enum

The possible default commit messages for squash merges.

### Values for `SquashMergeCommitMessage`

* `BLANK`: Default to a blank commit message.
* `COMMIT_MESSAGES`: Default to the branch's commit messages.
* `PR_BODY`: Default to the pull request's body.

## SquashMergeCommitTitle - enum

The possible default commit titles for squash merges.

### Values for `SquashMergeCommitTitle`

* `COMMIT_OR_PR_TITLE`: Default to the commit's title (if only one commit) or the pull request's title (when more than one commit).
* `PR_TITLE`: Default to the pull request's title.

## StarredRepositoryConnection - object

The connection type for Repository.

### Fields for `StarredRepositoryConnection`

* `edges` ([StarredRepositoryEdge]): A list of edges.
* `isOverLimit` (Boolean!): Is the list of stars for this user truncated? This is true for users that have many stars.
* `nodes` ([Repository]): A list of nodes.
* `pageInfo` (PageInfo!): Information to aid in pagination.
* `totalCount` (Int!): Identifies the total count of items in the connection.

## StarredRepositoryEdge - object

Represents a starred repository.

### Fields for `StarredRepositoryEdge`

* `cursor` (String!): A cursor for use in pagination.
* `node` (Repository!): 
* `starredAt` (DateTime!): Identifies when the item was starred.

## TagNamePatternParameters - object

Parameters to be used for the tag_name_pattern rule.

### Fields for `TagNamePatternParameters`

* `name` (String): How this rule will appear to users.
* `negate` (Boolean!): If true, the rule will fail if the pattern matches.
* `operator` (String!): The operator to use for matching.
* `pattern` (String!): The pattern to match with.

## TagNamePatternParametersInput - input object

Parameters to be used for the tag_name_pattern rule.

### Input fields for `TagNamePatternParametersInput`

* `name` (String): How this rule will appear to users.
* `negate` (Boolean): If true, the rule will fail if the pattern matches.
* `operator` (String!): The operator to use for matching.
* `pattern` (String!): The pattern to match with.

## TeamRepositoryConnection - object

The connection type for Repository.

### Fields for `TeamRepositoryConnection`

* `edges` ([TeamRepositoryEdge]): A list of edges.
* `nodes` ([Repository]): A list of nodes.
* `pageInfo` (PageInfo!): Information to aid in pagination.
* `totalCount` (Int!): Identifies the total count of items in the connection.

## TeamRepositoryEdge - object

Represents a team repository.

### Fields for `TeamRepositoryEdge`

* `cursor` (String!): A cursor for use in pagination.
* `node` (Repository!): 
* `permission` (RepositoryPermission!): The permission level the team has on the repository.

## Topic - object

A topic aggregates entities that are related to a subject.

**Implements:** Node, Starrable

### Fields for `Topic`

* `id` (ID!): The Node ID of the Topic object.
* `name` (String!): The topic's name.
* `relatedTopics` ([Topic!]!): A list of related topics, including aliases of this topic, sorted with the most relevant
first. Returns up to 10 Topics.
  * `first` (Int): How many topics to return. Default: `3`.

* `repositories` (RepositoryConnection!): A list of repositories.
  * `affiliations` ([RepositoryAffiliation]): Array of viewer's affiliation options for repositories returned from the
connection. For example, OWNER will include only repositories that the
current viewer owns.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `hasIssuesEnabled` (Boolean): If non-null, filters repositories according to whether they have issues enabled.
  * `isLocked` (Boolean): If non-null, filters repositories according to whether they have been locked.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (RepositoryOrder): Ordering options for repositories returned from the connection.
  * `ownerAffiliations` ([RepositoryAffiliation]): Array of owner's affiliation options for repositories returned from the
connection. For example, OWNER will include only repositories that the
organization or user being viewed owns.
  * `privacy` (RepositoryPrivacy): If non-null, filters repositories according to privacy. Internal
repositories are considered private; consider using the visibility argument
if only internal repositories are needed. Cannot be combined with the
visibility argument.
  * `visibility` (RepositoryVisibility): If non-null, filters repositories according to visibility. Cannot be combined with the privacy argument.

* `stargazerCount` (Int!): Returns a count of how many stargazers there are on this object.
* `stargazers` (StargazerConnection!): A list of users who have starred this starrable.
  * `after` (String): Returns the elements in the list that come after the specified cursor.
  * `before` (String): Returns the elements in the list that come before the specified cursor.
  * `first` (Int): Returns the first n elements from the list.
  * `last` (Int): Returns the last n elements from the list.
  * `orderBy` (StarOrder): Order for connection.

* `viewerHasStarred` (Boolean!): Returns a boolean indicating whether the viewing user has starred this starrable.

## topic - query

Look up a topic by name.

**Type:** Topic

### Arguments for `topic`

* `name` (String!): The topic's name.

## unarchiveRepository - mutation

Unarchives a repository.

### Input fields for `unarchiveRepository`

* `input` (UnarchiveRepositoryInput!): 

### Return fields for `unarchiveRepository`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repository` (Repository): The repository that was unarchived.

## UnarchiveRepositoryInput - input object

Autogenerated input type of UnarchiveRepository.

### Input fields for `UnarchiveRepositoryInput`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repositoryId` (ID!): The ID of the repository to unarchive.

## UpdateParameters - object

Only allow users with bypass permission to update matching refs.

### Fields for `UpdateParameters`

* `updateAllowsFetchAndMerge` (Boolean!): Branch can pull changes from its upstream repository.

## UpdateParametersInput - input object

Only allow users with bypass permission to update matching refs.

### Input fields for `UpdateParametersInput`

* `updateAllowsFetchAndMerge` (Boolean!): Branch can pull changes from its upstream repository.

## updateRepository - mutation

Update information about a repository.

### Input fields for `updateRepository`

* `input` (UpdateRepositoryInput!): 

### Return fields for `updateRepository`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repository` (Repository): The updated repository.

## UpdateRepositoryInput - input object

Autogenerated input type of UpdateRepository.

### Input fields for `UpdateRepositoryInput`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `description` (String): A new description for the repository. Pass an empty string to erase the existing description.
* `hasDiscussionsEnabled` (Boolean): Indicates if the repository should have the discussions feature enabled.
* `hasIssuesEnabled` (Boolean): Indicates if the repository should have the issues feature enabled.
* `hasProjectsEnabled` (Boolean): Indicates if the repository should have the project boards feature enabled.
* `hasWikiEnabled` (Boolean): Indicates if the repository should have the wiki feature enabled.
* `homepageUrl` (URI): The URL for a web page about this repository. Pass an empty string to erase the existing URL.
* `name` (String): The new name of the repository.
* `repositoryId` (ID!): The ID of the repository to update.
* `template` (Boolean): 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.

## updateRepositoryRuleset - mutation

Update a repository ruleset.

### Input fields for `updateRepositoryRuleset`

* `input` (UpdateRepositoryRulesetInput!): 

### Return fields for `updateRepositoryRuleset`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `ruleset` (RepositoryRuleset): The newly created Ruleset.

## UpdateRepositoryRulesetInput - input object

Autogenerated input type of UpdateRepositoryRuleset.

### Input fields for `UpdateRepositoryRulesetInput`

* `bypassActors` ([RepositoryRulesetBypassActorInput!]): A list of actors that are allowed to bypass rules in this ruleset.
* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `conditions` (RepositoryRuleConditionsInput): The list of conditions for this ruleset.
* `enforcement` (RuleEnforcement): The enforcement level for this ruleset.
* `name` (String): The name of the ruleset.
* `repositoryRulesetId` (ID!): The global relay id of the repository ruleset to be updated.
* `rules` ([RepositoryRuleInput!]): The list of rules for this ruleset.
* `target` (RepositoryRulesetTarget): The target of the ruleset.

## updateRepositoryWebCommitSignoffSetting - mutation

Sets whether contributors are required to sign off on web-based commits for a repository.

### Input fields for `updateRepositoryWebCommitSignoffSetting`

* `input` (UpdateRepositoryWebCommitSignoffSettingInput!): 

### Return fields for `updateRepositoryWebCommitSignoffSetting`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `message` (String): A message confirming the result of updating the web commit signoff setting.
* `repository` (Repository): The updated repository.

## UpdateRepositoryWebCommitSignoffSettingInput - input object

Autogenerated input type of UpdateRepositoryWebCommitSignoffSetting.

### Input fields for `UpdateRepositoryWebCommitSignoffSettingInput`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repositoryId` (ID!): The ID of the repository to update.
* `webCommitSignoffRequired` (Boolean!): Indicates if the repository should require signoff on web-based commits.

## updateTopics - mutation

Replaces the repository's topics with the given topics.

### Input fields for `updateTopics`

* `input` (UpdateTopicsInput!): 

### Return fields for `updateTopics`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `invalidTopicNames` ([String!]): Names of the provided topics that are not valid.
* `repository` (Repository): The updated repository.

## UpdateTopicsInput - input object

Autogenerated input type of UpdateTopics.

### Input fields for `UpdateTopicsInput`

* `clientMutationId` (String): A unique identifier for the client performing the mutation.
* `repositoryId` (ID!): The Node ID of the repository.
* `topicNames` ([String!]!): An array of topic names.