ScriptRunner Connect Managed API for GitHub
Managed API for GitHub is an API Client for GitHub by Adaptavist. You can read more about Managed APIs here.
This is ScriptRunner Connect runtime specific version of the Managed API (with sr-connect
suffix). If you want to use Managed API in any other runtime, have a look at the runtime agnostic version.
Supported API calls
- fetch
- Branch
- getBranch
- getBranches
- mergeBranch
- renameBranch
- syncForkBranch
- Protection
- deleteProtection
- getProtection
- updateProtection
- Admin
- Commit
- Signature
- Pull
- Review
- Status
- Commit
- Deployment
- Git
- Blob
- Commit
- Reference
- Tag
- Tree
- Issue
- createIssue
- getIssue
- getIssuesForAuthenticatedUser
- getOrganizationIssuesForAuthenticatedUser
- getRepositoryIssues
- lockIssue
- unlockIssue
- updateIssue
- Assignee
- Comment
- Event
- Label
- Milestone
- Organization
- Project
- Pull
- Release
- Repository
- createDispatchEvent
- createOrganizationRepository
- createRepositoryForAuthenticatedUser
- createRepositoryFromTemplate
- deleteRepository
- disableAutomatedSecurityFixes
- disableVulnerabilityAlerts
- enableAutomatedSecurityFixes
- enableVulnerabilityAlerts
- getCodeOwnersErrors
- getContributors
- getLanguages
- getOrganizationRepositories
- getPublicRepositories
- getRepositoriesForAuthenticatedUser
- getRepositoriesForUser
- getRepository
- getTags
- getTeams
- getTopics
- isVulnerabilityAlertsEnabled
- replaceTopics
- transferRepository
- updateRepository
- Collaborator
- Content
- Fork
- Search
- User
Constructing Managed API
In ScriptRunner Connect a Managed API is constructed for you, but if you need to construct it manually, here's how you can do it:
import { GitHubApi } from '@managed-api/github-sr-connect';
export default async function() {
const api = new GitHubApi('API_CONNECTION_ID');
}
Contact
Feel free to drop ideas, suggestions or improvements into our Slack community channel.
Changelog
2.0.0
-
Breaking change: URL and query string parameters are now URL encoded, meaning if you encoded them explicitly before you have to remove your own encoding, otherwise they will get double encoded.
0.11.0
-
- Updated OpenApi Specification.
-
- Fields
sort
andorder
are deprecated inSearch.searchCode
.
- Fields
0.9.0
Added support for the following Organization.Member methods:
-
List organization members that can be used as
Organization.Member.getMembers
orAll.getOrganizationMembers
. -
Check organization membership for a user that can be used as
Organization.Member.checkMembershipForUser
orAll.checkOrganizationMembershipForUser
. -
Remove an organization member that can be used as
Organization.Member.removeMember
orAll.removeOrganizationMember
. -
Get organization membership for a user that can be used as
Organization.Member.getMembershipForUser
orAll.getOrganizationMembershipForUser
. -
Set organization membership for a user that can be used as
Organization.Member.setMembershipForUser
orAll.setOrganizationMembershipForUser
. -
Remove organization membership for a user that can be used as
Organization.Member.removeMembershipForUser
orAll.removeOrganzationMembershipForUser
. -
List organization memberships for the authenticated user that can be used as
Organization.Member.getMembershipsForAuthenticatedUser
orAll.getOrganizationMembershipsForAuthenticatedUser
. -
Get an organization membership for the authenticated user that can be used as
Organization.Member.getMembershipForAuthenticatedUser
orAll.getOrganizationMembershipForAuthenticatedUser
. -
Update an organization membership for the authenticated user that can be used as
Organization.Member.updateMembershipForAuthenticatedUser
orAll.updateOrganizationMembershipForAuthenticatedUser
.
Added support for the following Organization methods:
-
List organizations that can be used as
Organization.getOrganizations
orAll.getOrganizations
. -
Get an organization that can be used as
Organization.getOrganization
orAll.getOrganization
. -
Update an organization that can be used as
Organization.updateOrganization
orAll.updateOrganization
. -
Get the audit log for an organization that can be used as
Organization.getAuditLog
orAll.getAuditLogForOrganization
. -
List app installations for an organization that can be used as
Organization.getInstallations
orAll.getInstallationsForOrganization
. -
List organizations for the authenticated user that can be used as
Organization.getOrganizationsForAuthenticatedUser
orAll.getOrganizationsForAuthenticatedUser
. -
List organizations for a user that can be used as
Organization.getOrganizationsForUser
orAll.getOrganizationsForUser
.
Added support for the following Search methods:
-
Search code that can be used as
Search.searchCode
orAll.searchCode
. -
Search commits that can be used as
Search.searchCommits
orAll.searchCommits
. -
Search issues and pull requests that can be used as
Search.searchIssuesAndPullRequests
orAll.searchIssuesAndPullRequests
. -
Search labels that can be used as
Search.searchLabels
orAll.searchLabels
. -
Search repositories that can be used as
Search.searchRepositories
orAll.searchRepositories
. -
Search topics that can be used as
Search.searchTopics
orAll.searchTopics
. -
Search users that can be used as
Search.searchUsers
orAll.searchUsers
.
Added support for the following Release methods:
-
List releases that can be used as
Release.getReleases
orAll.getReleases
. -
Create a release that can be used as
Release.createRelease
orAll.createRelease
. -
Generate release notes content for a release that can be used as
Release.generateReleaseNotes
orAll.generateReleaseNotes
. -
Get the latest release that can be used as
Release.getLatestRelease
orAll.getLatestRelease
. -
Get a release by tag name that can be used as
Release.getReleaseByTagName
orAll.getReleaseByTagName
. -
Get a release that can be used as
Release.getRelease
orAll.getRelease
. -
Update a release that can be used as
Release.updateRelease
orAll.updateRelease
. -
Delete a release that can be used as
Release.deleteRelease
orAll.deleteRelease
.
Added support for the following User.Block methods:
-
List users blocked by the authenticated user that can be used as
User.Block.getBlockedUsersByAuthenticatedUser
orAll.getBlockedUsersByAuthenticatedUser
. -
Check if a user is blocked by the authenticated user that can be used as
User.Block.checkIfUserIsBlockedByAuthenticatedUser
orAll.checkIfUserIsBlockedByAuthenticatedUser
. -
Block a user that can be used as
User.Block.blockUser
orAll.blockUser
. -
Unblock a user that can be used as
User.Block.unblockUser
orAll.unblockUser
.
Added support for the following User methods:
-
Get the authenticated user that can be used as
User.getAuthenticatedUser
orAll.getAuthenticatedUser
. -
Update the authenticated user that can be used as
User.updateAuthenticatedUser
orAll.updateAuthenticatedUser
. -
List users that can be used as
User.getUsers
orAll.getUsers
. -
Get a user that can be used as
User.getUser
orAll.getUser
. -
Get contextual information for a user that can be used as
User.getUserContext
orAll.getUserContext
.
Added support for the following Repository.Content methods:
-
Delete a file that can be used as
Repository.Content.deleteFile
orAll.deleteFile
. -
Get a repository README that can be used as
Repository.Content.getRepositoryReadme
orAll.getRepositoryReadme
. -
Get a repository README for a directory that can be used as
Repository.Content.getRepositoryReadmeForDirectory
orAll.getRepositoryReadmeForDirectory
.
Added support for the following Branch.Protection methods:
-
Get branch protection that can be used as
Branch.Protection.getProtection
orAll.getBranchProtection
. -
Update branch protection that can be used as
Branch.Protection.updateProtection
orAll.updateBranchProtection
. -
Delete branch protection that can be used as
Branch.Protection.deleteProtection
orAll.deleteBranchProtection
.
Added support for the following Branch.Protection.Admin methods:
-
Get admin branch protection that can be used as
Branch.Protection.Admin.getProtection
orAll.getAdminBranchProtection
. -
Set admin branch protection that can be used as
Branch.Protection.Admin.setProtection
orAll.setAdminBranchProtection
. -
Delete admin branch protection that can be used as
Branch.Protection.Admin.deleteProtection
orAll.deleteAdminBranchProtection
.
Added support for the following Branch.Protection.Pull.Review methods:
-
Get pull request review protection that can be used as
Branch.Protection.Pull.Review.getProtection
orAll.getBranchPullRequestReviewProtection
. -
Update pull request review protection that can be used as
Branch.Protection.Pull.Review.updateProtection
orAll.updateBranchPullRequestReviewProtection
.
Added support for the following Branch.Protection.Commit.Signature methods:
-
Get commit signature protection that can be used as
Branch.Protection.Commit.Signature.getProtection
orAll.getBranchCommitSignatureProtection
. -
Create commit signature protection that can be used as
Branch.Protection.Commit.Signature.createProtection
orAll.createBranchCommitSignatureProtection
. -
Delete commit signature protection that can be used as
Branch.Protection.Commit.Signature.deleteProtection
orAll.deleteBranchCommitSignatureProtection
.
Added support for the following Branch.Protection.Status.Check methods:
-
Get status checks protection that can be used as
Branch.Protection.Status.Check.getProtection
orAll.getBranchStatusCheckProtection
. -
Update status checks protection that can be used as
Branch.Protection.Status.Check.updateProtection
orAll.updateBranchStatusCheckProtection
. -
Remove status checks protection that can be used as
Branch.Protection.Status.Check.removeProtection
orAll.removeBranchStatusCheckProtection
. -
Get all status check contexts that can be used as
Branch.Protection.Status.Check.getContexts
orAll.getBranchStatusCheckContexts
. -
Add status check contexts that can be used as
Branch.Protection.Status.Check.addContexts
orAll.addBranchStatusCheckContexts
. -
Set status check contexts that can be used as
Branch.Protection.Status.Check.setContexts
orAll.setBranchStatusCheckContexts
.
Added support for the following Project methods:
-
List organization projects that can be used as
Project.getOrganizationProjects
orAll.getOrganizationProjects
. -
Create an organization project that can be used as
Project.createOrganizationProject
orAll.createOrganizationProject
. -
Get a project that can be used as
Project.getProject
orAll.getProject
. -
Update a project that can be used as
Project.updateProject
orAll.updateProject
. -
Delete a project that can be used as
Project.deleteProject
orAll.deleteProject
. -
List repository projects that can be used as
Project.getRepositoryProjects
orAll.getRepositoryProjects
. -
Create a repository project that can be used as
Project.createRepositoryProject
orAll.createRepositoryProject
. -
List user projects that can be used as
Project.getUserProjects
orAll.getUserProjects
. -
Create a user project that can be used as
Project.createUserProject
orAll.createUserProject
.
Added support for the following Search methods:
-
Search code that can be used as
Search.searchCode
orAll.searchCode
. -
Search commits that can be used as
Search.searchCommits
orAll.searchCommits
. -
Search issues and pull requests that can be used as
Search.searchIssuesAndPullRequests
orAll.searchIssuesAndPullRequests
. -
Search labels that can be used as
Search.searchLabels
orAll.searchLabels
. -
Search repositories that can be used as
Search.searchRepositories
orAll.searchRepositories
. -
Search topics that can be used as
Search.searchTopics
orAll.searchTopics
. -
Search users that can be used as
Search.searchUsers
orAll.searchUsers
.
Copyright Adaptavist 2024 (c) All rights reserved