GitHub
Repository management, issues, and pull requests
Overview
- Version: 1.1.4
- Base URL:
https://api.github.com - Category: Development
- Tools Available: 547
- Rate Limit: 5000 requests/hour (authenticated)
- Documentation: https://docs.github.com/en/rest
Quick Start
from ocp_agent import OCPAgent
agent = OCPAgent()
# Register with authentication
await agent.register_api(
'github',
headers={'Authorization': 'Bearer your_token_here'}
)
# List available tools
tools = agent.list_tools('github')
print(f"Available: {len(tools)} tools")Authentication
Type: Bearer Token
Use ‘Bearer ghp_xxxxxxxxxxxx’ with a GitHub personal access token
See the Authentication Guide for general setup instructions.
Available Tools
This API provides 547 tools across various resource types.
actions
POST
actionsAddCustomLabelsToSelfHostedRunnerForRepo
POST
actionsApproveWorkflowRun
POST
actionsCancelWorkflowRun
PUT
actionsCreateOrUpdateRepoSecret
POST
actionsCreateRegistrationTokenForRepo
POST
actionsCreateRemoveTokenForRepo
POST
actionsCreateRepoVariable
POST
actionsCreateWorkflowDispatch
DELETE
actionsDeleteActionsCacheById
DELETE
actionsDeleteActionsCacheByKey
DELETE
actionsDeleteArtifact
DELETE
actionsDeleteRepoSecret
DELETE
actionsDeleteRepoVariable
DELETE
actionsDeleteSelfHostedRunnerFromRepo
DELETE
actionsDeleteWorkflowRun
DELETE
actionsDeleteWorkflowRunLogs
PUT
actionsDisableWorkflow
GET
actionsDownloadArtifact
GET
actionsDownloadJobLogsForWorkflowRun
GET
actionsDownloadWorkflowRunAttemptLogs
GET
actionsDownloadWorkflowRunLogs
PUT
actionsEnableWorkflow
POST
actionsForceCancelWorkflowRun
POST
actionsGenerateRunnerJitconfigForRepo
GET
actionsGetActionsCacheList
GET
actionsGetActionsCacheRetentionLimitForRepository
GET
actionsGetActionsCacheStorageLimitForRepository
GET
actionsGetActionsCacheUsage
GET
actionsGetAllowedActionsRepository
GET
actionsGetArtifact
GET
actionsGetArtifactAndLogRetentionSettingsRepository
GET
actionsGetCustomOidcSubClaimForRepo
GET
actionsGetForkPrContributorApprovalPermissionsRepository
GET
actionsGetGithubActionsDefaultWorkflowPermissionsRepository
GET
actionsGetGithubActionsPermissionsRepository
GET
actionsGetJobForWorkflowRun
GET
actionsGetPendingDeploymentsForRun
GET
actionsGetPrivateRepoForkPrWorkflowsSettingsRepository
GET
actionsGetRepoPublicKey
GET
actionsGetRepoSecret
GET
actionsGetRepoVariable
GET
actionsGetReviewsForRun
GET
actionsGetSelfHostedRunnerForRepo
GET
actionsGetWorkflow
GET
actionsGetWorkflowAccessToRepository
GET
actionsGetWorkflowRun
GET
actionsGetWorkflowRunAttempt
GET
actionsGetWorkflowRunUsage
GET
actionsGetWorkflowUsage
GET
actionsListArtifactsForRepo
GET
actionsListJobsForWorkflowRun
GET
actionsListJobsForWorkflowRunAttempt
GET
actionsListLabelsForSelfHostedRunnerForRepo
GET
actionsListRepoOrganizationSecrets
GET
actionsListRepoOrganizationVariables
GET
actionsListRepoSecrets
GET
actionsListRepoVariables
GET
actionsListRepoWorkflows
GET
actionsListRunnerApplicationsForRepo
GET
actionsListSelfHostedRunnersForRepo
GET
actionsListWorkflowRunArtifacts
GET
actionsListWorkflowRuns
GET
actionsListWorkflowRunsForRepo
POST
actionsReRunJobForWorkflowRun
POST
actionsReRunWorkflow
POST
actionsReRunWorkflowFailedJobs
DELETE
actionsRemoveAllCustomLabelsFromSelfHostedRunnerForRepo
DELETE
actionsRemoveCustomLabelFromSelfHostedRunnerForRepo
POST
actionsReviewCustomGatesForRun
POST
actionsReviewPendingDeploymentsForRun
PUT
actionsSetActionsCacheRetentionLimitForRepository
PUT
actionsSetActionsCacheStorageLimitForRepository
PUT
actionsSetAllowedActionsRepository
PUT
actionsSetArtifactAndLogRetentionSettingsRepository
PUT
actionsSetCustomLabelsForSelfHostedRunnerForRepo
PUT
actionsSetCustomOidcSubClaimForRepo
PUT
actionsSetForkPrContributorApprovalPermissionsRepository
PUT
actionsSetGithubActionsDefaultWorkflowPermissionsRepository
PUT
actionsSetGithubActionsPermissionsRepository
PUT
actionsSetPrivateRepoForkPrWorkflowsSettingsRepository
PUT
actionsSetWorkflowAccessToRepository
PATCH
actionsUpdateRepoVariable
branches
POST
reposAddAppAccessRestrictions
POST
reposAddStatusCheckContexts
POST
reposAddTeamAccessRestrictions
POST
reposAddUserAccessRestrictions
POST
reposCreateCommitSignatureProtection
DELETE
reposDeleteAccessRestrictions
DELETE
reposDeleteAdminBranchProtection
DELETE
reposDeleteBranchProtection
DELETE
reposDeleteCommitSignatureProtection
DELETE
reposDeletePullRequestReviewProtection
GET
reposGetAccessRestrictions
GET
reposGetAdminBranchProtection
GET
reposGetAllStatusCheckContexts
GET
reposGetAppsWithAccessToProtectedBranch
GET
reposGetBranch
GET
reposGetBranchProtection
GET
reposGetCommitSignatureProtection
GET
reposGetPullRequestReviewProtection
GET
reposGetStatusChecksProtection
GET
reposGetTeamsWithAccessToProtectedBranch
GET
reposGetUsersWithAccessToProtectedBranch
GET
reposListBranches
DELETE
reposRemoveAppAccessRestrictions
DELETE
reposRemoveStatusCheckContexts
DELETE
reposRemoveStatusCheckProtection
DELETE
reposRemoveTeamAccessRestrictions
DELETE
reposRemoveUserAccessRestrictions
POST
reposRenameBranch
POST
reposSetAdminBranchProtection
PUT
reposSetAppAccessRestrictions
PUT
reposSetStatusCheckContexts
PUT
reposSetTeamAccessRestrictions
PUT
reposSetUserAccessRestrictions
PUT
reposUpdateBranchProtection
PATCH
reposUpdatePullRequestReviewProtection
PATCH
reposUpdateStatusCheckProtection
code-scanning
POST
codeScanningCommitAutofix
POST
codeScanningCreateAutofix
POST
codeScanningCreateVariantAnalysis
DELETE
codeScanningDeleteAnalysis
DELETE
codeScanningDeleteCodeqlDatabase
GET
codeScanningGetAlert
GET
codeScanningGetAnalysis
GET
codeScanningGetAutofix
GET
codeScanningGetCodeqlDatabase
GET
codeScanningGetDefaultSetup
GET
codeScanningGetSarif
GET
codeScanningGetVariantAnalysis
GET
codeScanningGetVariantAnalysisRepoTask
GET
codeScanningListAlertInstances
GET
codeScanningListAlertsForRepo
GET
codeScanningListCodeqlDatabases
GET
codeScanningListRecentAnalyses
PATCH
codeScanningUpdateAlert
PATCH
codeScanningUpdateDefaultSetup
POST
codeScanningUploadSarif
codespaces
GET
codespacesCheckPermissionsForDevcontainer
PUT
codespacesCreateOrUpdateRepoSecret
POST
codespacesCreateWithRepoForAuthenticatedUser
DELETE
codespacesDeleteRepoSecret
GET
codespacesGetRepoPublicKey
GET
codespacesGetRepoSecret
GET
codespacesListDevcontainersInRepositoryForAuthenticatedUser
GET
codespacesListInRepositoryForAuthenticatedUser
GET
codespacesListRepoSecrets
GET
codespacesPreFlightWithRepoForAuthenticatedUser
GET
codespacesRepoMachinesForAuthenticatedUser
commits
GET
checksListForRef
GET
checksListSuitesForRef
POST
reposCreateCommitComment
GET
reposGetCombinedStatusForRef
GET
reposGetCommit
GET
reposListBranchesForHeadCommit
GET
reposListCommentsForCommit
GET
reposListCommitStatusesForRef
GET
reposListCommits
GET
reposListPullRequestsAssociatedWithCommit
dependabot
PUT
dependabotCreateOrUpdateRepoSecret
DELETE
dependabotDeleteRepoSecret
GET
dependabotGetAlert
GET
dependabotGetRepoPublicKey
GET
dependabotGetRepoSecret
GET
dependabotListAlertsForRepo
GET
dependabotListRepoSecrets
PATCH
dependabotUpdateAlert
deployments
POST
reposCreateDeployment
POST
reposCreateDeploymentStatus
DELETE
reposDeleteDeployment
GET
reposGetDeployment
GET
reposGetDeploymentStatus
GET
reposListDeploymentStatuses
GET
reposListDeployments
environments
POST
actionsCreateEnvironmentVariable
PUT
actionsCreateOrUpdateEnvironmentSecret
DELETE
actionsDeleteEnvironmentSecret
DELETE
actionsDeleteEnvironmentVariable
GET
actionsGetEnvironmentPublicKey
GET
actionsGetEnvironmentSecret
GET
actionsGetEnvironmentVariable
GET
actionsListEnvironmentSecrets
GET
actionsListEnvironmentVariables
PATCH
actionsUpdateEnvironmentVariable
POST
reposCreateDeploymentBranchPolicy
POST
reposCreateDeploymentProtectionRule
PUT
reposCreateOrUpdateEnvironment
DELETE
reposDeleteAnEnvironment
DELETE
reposDeleteDeploymentBranchPolicy
DELETE
reposDisableDeploymentProtectionRule
GET
reposGetAllDeploymentProtectionRules
GET
reposGetAllEnvironments
GET
reposGetCustomDeploymentProtectionRule
GET
reposGetDeploymentBranchPolicy
GET
reposGetEnvironment
GET
reposListCustomDeploymentRuleIntegrations
GET
reposListDeploymentBranchPolicies
PUT
reposUpdateDeploymentBranchPolicy
gists
GET
gistsCheckIsStarred
POST
gistsCreate
POST
gistsCreateComment
DELETE
gistsDelete
DELETE
gistsDeleteComment
POST
gistsFork
GET
gistsGet
GET
gistsGetComment
GET
gistsGetRevision
GET
gistsList
GET
gistsListComments
GET
gistsListCommits
GET
gistsListForks
GET
gistsListPublic
GET
gistsListStarred
PUT
gistsStar
DELETE
gistsUnstar
PATCH
gistsUpdate
PATCH
gistsUpdateComment
git
POST
gitCreateBlob
POST
gitCreateCommit
POST
gitCreateRef
POST
gitCreateTag
POST
gitCreateTree
DELETE
gitDeleteRef
GET
gitGetBlob
GET
gitGetCommit
GET
gitGetRef
GET
gitGetTag
GET
gitGetTree
GET
gitListMatchingRefs
PATCH
gitUpdateRef
hooks
POST
reposCreateWebhook
DELETE
reposDeleteWebhook
GET
reposGetWebhook
GET
reposGetWebhookConfigForRepo
GET
reposGetWebhookDelivery
GET
reposListWebhookDeliveries
GET
reposListWebhooks
POST
reposPingWebhook
POST
reposRedeliverWebhookDelivery
POST
reposTestPushWebhook
PATCH
reposUpdateWebhook
PATCH
reposUpdateWebhookConfigForRepo
issues
POST
issuesAddAssignees
POST
issuesAddBlockedByDependency
POST
issuesAddLabels
POST
issuesAddSubIssue
GET
issuesCheckUserCanBeAssignedToIssue
POST
issuesCreate
POST
issuesCreateComment
DELETE
issuesDeleteComment
GET
issuesGet
GET
issuesGetComment
GET
issuesGetEvent
GET
issuesGetParent
GET
issuesList
GET
issuesListComments
GET
issuesListCommentsForRepo
GET
issuesListDependenciesBlockedBy
GET
issuesListDependenciesBlocking
GET
issuesListEvents
GET
issuesListEventsForRepo
GET
issuesListEventsForTimeline
GET
issuesListForRepo
GET
issuesListLabelsOnIssue
GET
issuesListSubIssues
PUT
issuesLock
DELETE
issuesRemoveAllLabels
DELETE
issuesRemoveAssignees
DELETE
issuesRemoveDependencyBlockedBy
DELETE
issuesRemoveLabel
DELETE
issuesRemoveSubIssue
PATCH
issuesReprioritizeSubIssue
PUT
issuesSetLabels
DELETE
issuesUnlock
PATCH
issuesUpdate
PATCH
issuesUpdateComment
POST
reactionsCreateForIssue
POST
reactionsCreateForIssueComment
DELETE
reactionsDeleteForIssue
DELETE
reactionsDeleteForIssueComment
GET
reactionsListForIssue
GET
reactionsListForIssueComment
pages
POST
reposCancelPagesDeployment
POST
reposCreatePagesDeployment
POST
reposCreatePagesSite
DELETE
reposDeletePagesSite
GET
reposGetLatestPagesBuild
GET
reposGetPages
GET
reposGetPagesBuild
GET
reposGetPagesDeployment
GET
reposGetPagesHealthCheck
GET
reposListPagesBuilds
POST
reposRequestPagesBuild
PUT
reposUpdateInformationAboutPagesSite
pulls
POST
codespacesCreateWithPrForAuthenticatedUser
GET
pullsCheckIfMerged
POST
pullsCreate
POST
pullsCreateReplyForReviewComment
POST
pullsCreateReview
POST
pullsCreateReviewComment
DELETE
pullsDeletePendingReview
DELETE
pullsDeleteReviewComment
PUT
pullsDismissReview
GET
pullsGet
GET
pullsGetReview
GET
pullsGetReviewComment
GET
pullsList
GET
pullsListCommentsForReview
GET
pullsListCommits
GET
pullsListFiles
GET
pullsListRequestedReviewers
GET
pullsListReviewComments
GET
pullsListReviewCommentsForRepo
GET
pullsListReviews
PUT
pullsMerge
DELETE
pullsRemoveRequestedReviewers
POST
pullsRequestReviewers
POST
pullsSubmitReview
PATCH
pullsUpdate
PUT
pullsUpdateBranch
PUT
pullsUpdateReview
PATCH
pullsUpdateReviewComment
POST
reactionsCreateForPullRequestReviewComment
DELETE
reactionsDeleteForPullRequestComment
GET
reactionsListForPullRequestReviewComment
releases
POST
reactionsCreateForRelease
DELETE
reactionsDeleteForRelease
GET
reactionsListForRelease
POST
reposCreateRelease
DELETE
reposDeleteRelease
DELETE
reposDeleteReleaseAsset
POST
reposGenerateReleaseNotes
GET
reposGetLatestRelease
GET
reposGetRelease
GET
reposGetReleaseAsset
GET
reposGetReleaseByTag
GET
reposListReleaseAssets
GET
reposListReleases
PATCH
reposUpdateRelease
PATCH
reposUpdateReleaseAsset
POST
reposUploadReleaseAsset
repos
DELETE
activityDeleteRepoSubscription
GET
activityGetRepoSubscription
GET
activityListRepoEvents
GET
activityListRepoNotificationsForAuthenticatedUser
GET
activityListStargazersForRepo
GET
activityListWatchersForRepo
PUT
activityMarkRepoNotificationsAsRead
PUT
activitySetRepoSubscription
GET
appsGetRepoInstallation
POST
checksCreate
POST
checksCreateSuite
GET
checksGet
GET
checksGetSuite
GET
checksListAnnotations
GET
checksListForSuite
POST
checksRerequestRun
POST
checksRerequestSuite
PATCH
checksSetSuitesPreferences
PATCH
checksUpdate
GET
codeSecurityGetConfigurationForRepository
POST
dependencyGraphCreateRepositorySnapshot
GET
dependencyGraphDiffRange
GET
dependencyGraphExportSbom
GET
interactionsGetRestrictionsForRepo
DELETE
interactionsRemoveRestrictionsForRepo
PUT
interactionsSetRestrictionsForRepo
GET
issuesCheckUserCanBeAssigned
POST
issuesCreateLabel
POST
issuesCreateMilestone
DELETE
issuesDeleteLabel
DELETE
issuesDeleteMilestone
GET
issuesGetLabel
GET
issuesGetMilestone
GET
issuesListAssignees
GET
issuesListLabelsForMilestone
GET
issuesListLabelsForRepo
GET
issuesListMilestones
PATCH
issuesUpdateLabel
PATCH
issuesUpdateMilestone
GET
licensesGetForRepo
DELETE
migrationsCancelImport
GET
migrationsGetCommitAuthors
GET
migrationsGetImportStatus
GET
migrationsGetLargeFiles
PATCH
migrationsMapCommitAuthor
PATCH
migrationsSetLfsPreference
PUT
migrationsStartImport
PATCH
migrationsUpdateImport
POST
reactionsCreateForCommitComment
DELETE
reactionsDeleteForCommitComment
GET
reactionsListForCommitComment
PUT
reposAddCollaborator
GET
reposCheckAutomatedSecurityFixes
GET
reposCheckCollaborator
GET
reposCheckImmutableReleases
GET
reposCheckPrivateVulnerabilityReporting
GET
reposCheckVulnerabilityAlerts
GET
reposCodeownersErrors
GET
reposCompareCommits
POST
reposCreateAttestation
POST
reposCreateAutolink
POST
reposCreateCommitStatus
POST
reposCreateDeployKey
POST
reposCreateDispatchEvent
POST
reposCreateFork
PUT
reposCreateOrUpdateFileContents
POST
reposCreateTagProtection
POST
reposCreateUsingTemplate
PATCH
reposCustomPropertiesForReposCreateOrUpdateRepositoryValues
GET
reposCustomPropertiesForReposGetRepositoryValues
DELETE
reposDelete
DELETE
reposDeleteAutolink
DELETE
reposDeleteCommitComment
DELETE
reposDeleteDeployKey
DELETE
reposDeleteFile
DELETE
reposDeleteInvitation
DELETE
reposDeleteTagProtection
DELETE
reposDisableAutomatedSecurityFixes
DELETE
reposDisableImmutableReleases
DELETE
reposDisablePrivateVulnerabilityReporting
DELETE
reposDisableVulnerabilityAlerts
GET
reposDownloadTarballArchive
GET
reposDownloadZipballArchive
PUT
reposEnableAutomatedSecurityFixes
PUT
reposEnableImmutableReleases
PUT
reposEnablePrivateVulnerabilityReporting
PUT
reposEnableVulnerabilityAlerts
GET
reposGet
GET
reposGetAllTopics
GET
reposGetAutolink
GET
reposGetBranchRules
GET
reposGetClones
GET
reposGetCodeFrequencyStats
GET
reposGetCollaboratorPermissionLevel
GET
reposGetCommitActivityStats
GET
reposGetCommitComment
GET
reposGetCommunityProfileMetrics
GET
reposGetContent
GET
reposGetContributorsStats
GET
reposGetDeployKey
GET
reposGetParticipationStats
GET
reposGetPunchCardStats
GET
reposGetReadme
GET
reposGetReadmeInDirectory
GET
reposGetTopPaths
GET
reposGetTopReferrers
GET
reposGetViews
GET
reposListActivities
GET
reposListAttestations
GET
reposListAutolinks
GET
reposListCollaborators
GET
reposListCommitCommentsForRepo
GET
reposListContributors
GET
reposListDeployKeys
GET
reposListForks
GET
reposListInvitations
GET
reposListLanguages
GET
reposListTagProtection
GET
reposListTags
GET
reposListTeams
POST
reposMerge
POST
reposMergeUpstream
DELETE
reposRemoveCollaborator
PUT
reposReplaceAllTopics
POST
reposTransfer
PATCH
reposUpdate
PATCH
reposUpdateCommitComment
PATCH
reposUpdateInvitation
rulesets
POST
reposCreateRepoRuleset
DELETE
reposDeleteRepoRuleset
GET
reposGetRepoRuleSuite
GET
reposGetRepoRuleSuites
GET
reposGetRepoRuleset
GET
reposGetRepoRulesetHistory
GET
reposGetRepoRulesetVersion
GET
reposGetRepoRulesets
PUT
reposUpdateRepoRuleset
search
GET
searchCode
GET
searchCommits
GET
searchIssuesAndPullRequests
GET
searchLabels
GET
searchRepos
GET
searchTopics
GET
searchUsers
secret-scanning
POST
secretScanningCreatePushProtectionBypass
GET
secretScanningGetAlert
GET
secretScanningGetScanHistory
GET
secretScanningListAlertsForRepo
GET
secretScanningListLocationsForAlert
PATCH
secretScanningUpdateAlert
security-advisories
POST
securityAdvisoriesCreateFork
POST
securityAdvisoriesCreatePrivateVulnerabilityReport
POST
securityAdvisoriesCreateRepositoryAdvisory
POST
securityAdvisoriesCreateRepositoryAdvisoryCveRequest
GET
securityAdvisoriesGetRepositoryAdvisory
GET
securityAdvisoriesListRepositoryAdvisories
PATCH
securityAdvisoriesUpdateRepositoryAdvisory
users
GET
activityListEventsForAuthenticatedUser
GET
activityListOrgEventsForAuthenticatedUser
GET
activityListPublicEventsForUser
GET
activityListReceivedEventsForUser
GET
activityListReceivedPublicEventsForUser
GET
activityListReposStarredByUser
GET
activityListReposWatchedByUser
GET
appsGetUserInstallation
GET
billingGetGithubBillingPremiumRequestUsageReportUser
GET
billingGetGithubBillingUsageReportUser
GET
billingGetGithubBillingUsageSummaryReportUser
GET
gistsListForUser
GET
orgsListForUser
DELETE
packagesDeletePackageForUser
DELETE
packagesDeletePackageVersionForUser
GET
packagesGetAllPackageVersionsForPackageOwnedByUser
GET
packagesGetPackageForUser
GET
packagesGetPackageVersionForUser
GET
packagesListDockerMigrationConflictingPackagesForUser
GET
packagesListPackagesForUser
POST
packagesRestorePackageForUser
POST
packagesRestorePackageVersionForUser
POST
projectsAddFieldForUser
POST
projectsAddItemForUser
DELETE
projectsDeleteItemForUser
GET
projectsGetFieldForUser
GET
projectsGetForUser
GET
projectsGetUserItem
GET
projectsListFieldsForUser
GET
projectsListForUser
GET
projectsListItemsForUser
GET
projectsListViewItemsForUser
PATCH
projectsUpdateItemForUser
GET
reposListForUser
GET
usersCheckFollowingForUser
POST
usersDeleteAttestationsBulk
DELETE
usersDeleteAttestationsById
DELETE
usersDeleteAttestationsBySubjectDigest
GET
usersGetByUsername
GET
usersGetContextForUser
GET
usersList
GET
usersListAttestations
POST
usersListAttestationsBulk
GET
usersListFollowersForUser
GET
usersListFollowingForUser
GET
usersListGpgKeysForUser
GET
usersListPublicKeysForUser
GET
usersListSocialAccountsForUser
GET
usersListSshSigningKeysForUser
Usage Example
from ocp_agent import OCPAgent
# Initialize agent
agent = OCPAgent()
# Register the GitHub
api = await agent.register_api('github')
# List available tools
tools = agent.list_tools('github')
print(f"Available tools: {len(tools)}")
# Use a tool (example)
# result = await agent.call_tool('tool_name', parameters)