@itentialopensource/adapter-github
Version:
This adapter integrates with system described as: github.
970 lines (956 loc) • 337 kB
Markdown
## Using this Adapter
The `adapter.js` file contains the calls the adapter makes available to the rest of the Itential Platform. The API detailed for these calls should be available through JSDOC. The following is a brief summary of the calls.
### Generic Adapter Calls
These are adapter methods that IAP or you might use. There are some other methods not shown here that might be used for internal adapter functionality.
<table border="1" class="bordered-table">
<tr>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th>
</tr>
<tr>
<td style="padding:15px">connect()</td>
<td style="padding:15px">This call is run when the Adapter is first loaded by he Itential Platform. It validates the properties have been provided correctly.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">healthCheck(callback)</td>
<td style="padding:15px">This call ensures that the adapter can communicate with Adapter for GitHub System. The actual call that is used is defined in the adapter properties and .system entities action.json file.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">refreshProperties(properties)</td>
<td style="padding:15px">This call provides the adapter the ability to accept property changes without having to restart the adapter.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">encryptProperty(property, technique, callback)</td>
<td style="padding:15px">This call will take the provided property and technique, and return the property encrypted with the technique. This allows the property to be used in the adapterProps section for the credential password so that the password does not have to be in clear text. The adapter will decrypt the property as needed for communications with Adapter for GitHub System.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">iapUpdateAdapterConfiguration(configFile, changes, entity, type, action, callback)</td>
<td style="padding:15px">This call provides the ability to update the adapter configuration from IAP - includes actions, schema, mockdata and other configurations.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapSuspendAdapter(mode, callback)</td>
<td style="padding:15px">This call provides the ability to suspend the adapter and either have requests rejected or put into a queue to be processed after the adapter is resumed.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapUnsuspendAdapter(callback)</td>
<td style="padding:15px">This call provides the ability to resume a suspended adapter. Any requests in queue will be processed before new requests.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapGetAdapterQueue(callback)</td>
<td style="padding:15px">This call will return the requests that are waiting in the queue if throttling is enabled.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapFindAdapterPath(apiPath, callback)</td>
<td style="padding:15px">This call provides the ability to see if a particular API path is supported by the adapter.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapTroubleshootAdapter(props, persistFlag, adapter, callback)</td>
<td style="padding:15px">This call can be used to check on the performance of the adapter - it checks connectivity, healthcheck and basic get calls.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterHealthcheck(adapter, callback)</td>
<td style="padding:15px">This call will return the results of a healthcheck.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterConnectivity(callback)</td>
<td style="padding:15px">This call will return the results of a connectivity check.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterBasicGet(callback)</td>
<td style="padding:15px">This call will return the results of running basic get API calls.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapMoveAdapterEntitiesToDB(callback)</td>
<td style="padding:15px">This call will push the adapter configuration from the entities directory into the Adapter or IAP Database.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapDeactivateTasks(tasks, callback)</td>
<td style="padding:15px">This call provides the ability to remove tasks from the adapter.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapActivateTasks(tasks, callback)</td>
<td style="padding:15px">This call provides the ability to add deactivated tasks back into the adapter.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapExpandedGenericAdapterRequest(metadata, uriPath, restMethod, pathVars, queryData, requestBody, addlHeaders, callback)</td>
<td style="padding:15px">This is an expanded Generic Call. The metadata object allows us to provide many new capabilities within the generic request.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">genericAdapterRequest(uriPath, restMethod, queryData, requestBody, addlHeaders, callback)</td>
<td style="padding:15px">This call allows you to provide the path to have the adapter call. It is an easy way to incorporate paths that have not been built into the adapter yet.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">genericAdapterRequestNoBasePath(uriPath, restMethod, queryData, requestBody, addlHeaders, callback)</td>
<td style="padding:15px">This call is the same as the genericAdapterRequest only it does not add a base_path or version to the call.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterLint(callback)</td>
<td style="padding:15px">Runs lint on the addapter and provides the information back.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterTests(callback)</td>
<td style="padding:15px">Runs baseunit and unit tests on the adapter and provides the information back.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapGetAdapterInventory(callback)</td>
<td style="padding:15px">This call provides some inventory related information about the adapter.</td>
<td style="padding:15px">Yes</td>
</tr>
</table>
<br>
### Adapter Cache Calls
These are adapter methods that are used for adapter caching. If configured, the adapter will cache based on the interval provided. However, you can force a population of the cache manually as well.
<table border="1" class="bordered-table">
<tr>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th>
</tr>
<tr>
<td style="padding:15px">iapPopulateEntityCache(entityTypes, callback)</td>
<td style="padding:15px">This call populates the adapter cache.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRetrieveEntitiesCache(entityType, options, callback)</td>
<td style="padding:15px">This call retrieves the specific items from the adapter cache.</td>
<td style="padding:15px">Yes</td>
</tr>
</table>
<br>
### Adapter Broker Calls
These are adapter methods that are used to integrate to IAP Brokers. This adapter currently supports the following broker calls.
<table border="1" class="bordered-table">
<tr>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th>
</tr>
<tr>
<td style="padding:15px">hasEntities(entityType, entityList, callback)</td>
<td style="padding:15px">This call is utilized by the IAP Device Broker to determine if the adapter has a specific entity and item of the entity.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">getDevice(deviceName, callback)</td>
<td style="padding:15px">This call returns the details of the requested device.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">getDevicesFiltered(options, callback)</td>
<td style="padding:15px">This call returns the list of devices that match the criteria provided in the options filter.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">isAlive(deviceName, callback)</td>
<td style="padding:15px">This call returns whether the device status is active</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">getConfig(deviceName, format, callback)</td>
<td style="padding:15px">This call returns the configuration for the selected device.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">iapGetDeviceCount(callback)</td>
<td style="padding:15px">This call returns the count of devices.</td>
<td style="padding:15px">No</td>
</tr>
</table>
<br>
### Specific Adapter Calls
Specific adapter calls are built based on the API of the GitHub System. The Adapter Builder creates the proper method comments for generating JS-DOC for the adapter. This is the best way to get information on the calls.
<table border="1" class="bordered-table">
<tr>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Path</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th>
</tr>
<tr>
<td style="padding:15px">getEmojis(callback)</td>
<td style="padding:15px">Lists all the emojis available to use on GitHub.</td>
<td style="padding:15px">{base_path}/{version}/emojis?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getFeeds(callback)</td>
<td style="padding:15px">List Feeds.
GitHub provides several timeline resources in Atom format. The Feeds API
lists all the feeds available to the authenticating user.</td>
<td style="padding:15px">{base_path}/{version}/feeds?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postGists(body, callback)</td>
<td style="padding:15px">Create a gist.</td>
<td style="padding:15px">{base_path}/{version}/gists?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteGistsId(id, callback)</td>
<td style="padding:15px">Delete a gist.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getGistsId(id, callback)</td>
<td style="padding:15px">Get a single gist.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchGistsId(id, body, callback)</td>
<td style="padding:15px">Edit a gist.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postGistsIdComments(id, body, callback)</td>
<td style="padding:15px">Create a commen</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}/comments?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteGistsIdCommentsCommentId(id, commentId, callback)</td>
<td style="padding:15px">Delete a comment.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}/comments/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getGistsIdCommentsCommentId(id, commentId, callback)</td>
<td style="padding:15px">Get a single comment.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}/comments/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchGistsIdCommentsCommentId(id, commentId, body, callback)</td>
<td style="padding:15px">Edit a comment.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}/comments/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postGistsIdForks(id, callback)</td>
<td style="padding:15px">Fork a gist.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}/forks?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteGistsIdStar(id, callback)</td>
<td style="padding:15px">Unstar a gist.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}/star?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getGistsIdStar(id, callback)</td>
<td style="padding:15px">Check if a gist is starred.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}/star?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">putGistsIdStar(id, callback)</td>
<td style="padding:15px">Star a gist.</td>
<td style="padding:15px">{base_path}/{version}/gists/{pathv1}/star?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getGitignoreTemplates(callback)</td>
<td style="padding:15px">Listing available templates.
List all templates available to pass as an option when creating a repository.</td>
<td style="padding:15px">{base_path}/{version}/gitignore/templates?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getGitignoreTemplatesLanguage(language, callback)</td>
<td style="padding:15px">Get a single template.</td>
<td style="padding:15px">{base_path}/{version}/gitignore/templates/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getLegacyIssuesSearchOwnerRepositoryStateKeyword(keyword, state = 'open', owner, repository, callback)</td>
<td style="padding:15px">Find issues by state and keyword.</td>
<td style="padding:15px">{base_path}/{version}/legacy/issues/search/{pathv1}/{pathv2}/{pathv3}/{pathv4}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getLegacyReposSearchKeyword(keyword, order = 'desc', language, startPage, sort = 'updated', callback)</td>
<td style="padding:15px">Find repositories by keyword. Note, this legacy method does not follow the v3 pagination pattern. This method returns up to 100 results per page and pages can be fetched using the start_page parameter.</td>
<td style="padding:15px">{base_path}/{version}/legacy/repos/search/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getLegacyUserEmailEmail(email, callback)</td>
<td style="padding:15px">This API call is added for compatibility reasons only.</td>
<td style="padding:15px">{base_path}/{version}/legacy/user/email/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getLegacyUserSearchKeyword(keyword, order = 'desc', startPage, sort = 'updated', callback)</td>
<td style="padding:15px">Find users by keyword.</td>
<td style="padding:15px">{base_path}/{version}/legacy/user/search/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postMarkdown(body, callback)</td>
<td style="padding:15px">Render an arbitrary Markdown document</td>
<td style="padding:15px">{base_path}/{version}/markdown?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postMarkdownRaw(callback)</td>
<td style="padding:15px">Render a Markdown document in raw mode</td>
<td style="padding:15px">{base_path}/{version}/markdown/raw?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getMeta(callback)</td>
<td style="padding:15px">This gives some information about GitHub.com, the service.</td>
<td style="padding:15px">{base_path}/{version}/meta?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">putNotifications(body, callback)</td>
<td style="padding:15px">Mark as read.
Marking a notification as "read" removes it from the default view on GitHub.com.</td>
<td style="padding:15px">{base_path}/{version}/notifications?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getNotificationsThreadsId(id, callback)</td>
<td style="padding:15px">View a single thread.</td>
<td style="padding:15px">{base_path}/{version}/notifications/threads/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchNotificationsThreadsId(id, callback)</td>
<td style="padding:15px">Mark a thread as read</td>
<td style="padding:15px">{base_path}/{version}/notifications/threads/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteNotificationsThreadsIdSubscription(id, callback)</td>
<td style="padding:15px">Delete a Thread Subscription.</td>
<td style="padding:15px">{base_path}/{version}/notifications/threads/{pathv1}/subscription?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getNotificationsThreadsIdSubscription(id, callback)</td>
<td style="padding:15px">Get a Thread Subscription.</td>
<td style="padding:15px">{base_path}/{version}/notifications/threads/{pathv1}/subscription?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">putNotificationsThreadsIdSubscription(id, body, callback)</td>
<td style="padding:15px">Set a Thread Subscription.
This lets you subscribe to a thread, or ignore it. Subscribing to a thread
is unnecessary if the user is already subscribed to the repository. Ignoring
a thread will mute all future notifications (until you comment or get @mentioned).</td>
<td style="padding:15px">{base_path}/{version}/notifications/threads/{pathv1}/subscription?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getOrgsOrg(org, callback)</td>
<td style="padding:15px">Get an Organization.</td>
<td style="padding:15px">{base_path}/{version}/orgs/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchOrgsOrg(org, body, callback)</td>
<td style="padding:15px">Edit an Organization.</td>
<td style="padding:15px">{base_path}/{version}/orgs/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteOrgsOrgMembersUsername(org, username, callback)</td>
<td style="padding:15px">Remove a member.
Removing a user from this list will remove them from all teams and they
will no longer have any access to the organization's repositories.</td>
<td style="padding:15px">{base_path}/{version}/orgs/{pathv1}/members/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getOrgsOrgMembersUsername(org, username, callback)</td>
<td style="padding:15px">Check if a user is, publicly or privately, a member of the organization.</td>
<td style="padding:15px">{base_path}/{version}/orgs/{pathv1}/members/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteOrgsOrgPublicMembersUsername(org, username, callback)</td>
<td style="padding:15px">Conceal a user's membership.</td>
<td style="padding:15px">{base_path}/{version}/orgs/{pathv1}/public_members/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getOrgsOrgPublicMembersUsername(org, username, callback)</td>
<td style="padding:15px">Check public membership.</td>
<td style="padding:15px">{base_path}/{version}/orgs/{pathv1}/public_members/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">putOrgsOrgPublicMembersUsername(org, username, callback)</td>
<td style="padding:15px">Publicize a user's membership.</td>
<td style="padding:15px">{base_path}/{version}/orgs/{pathv1}/public_members/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postOrgsOrgRepos(org, body, callback)</td>
<td style="padding:15px">Create a new repository for the authenticated user. OAuth users must supply
repo scope.</td>
<td style="padding:15px">{base_path}/{version}/orgs/{pathv1}/repos?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postOrgsOrgTeams(org, body, callback)</td>
<td style="padding:15px">Create team.
In order to create a team, the authenticated user must be an owner of organization.</td>
<td style="padding:15px">{base_path}/{version}/orgs/{pathv1}/teams?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getRateLimit(callback)</td>
<td style="padding:15px">Get your current rate limit status
Note: Accessing this endpoint does not count against your rate limit.</td>
<td style="padding:15px">{base_path}/{version}/rate_limit?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepo(owner, repo, callback)</td>
<td style="padding:15px">Delete a Repository.
Deleting a repository requires admin access. If OAuth is used, the delete_repo
scope is required.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepo(owner, repo, callback)</td>
<td style="padding:15px">Get repository.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepo(owner, repo, body, callback)</td>
<td style="padding:15px">Edit repository.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoAssigneesAssignee(owner, repo, assignee, callback)</td>
<td style="padding:15px">Check assignee.
You may also check to see if a particular user is an assignee for a repository.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/assignees/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoBranchesBranch(owner, repo, branch, callback)</td>
<td style="padding:15px">Get Branch</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/branches/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoCollaboratorsUser(owner, repo, user, callback)</td>
<td style="padding:15px">Remove collaborator.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/collaborators/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoCollaboratorsUser(owner, repo, user, callback)</td>
<td style="padding:15px">Check if user is a collaborator</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/collaborators/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">putReposOwnerRepoCollaboratorsUser(owner, repo, user, callback)</td>
<td style="padding:15px">Add collaborator.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/collaborators/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoCommentsCommentId(owner, repo, commentId, callback)</td>
<td style="padding:15px">Delete a commit comment</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/comments/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoCommentsCommentId(owner, repo, commentId, callback)</td>
<td style="padding:15px">Get a single commit comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/comments/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepoCommentsCommentId(owner, repo, commentId, body, callback)</td>
<td style="padding:15px">Update a commit comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/comments/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoCommitsShaCode(owner, repo, shaCode, callback)</td>
<td style="padding:15px">Get a single commit.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/commits/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoCommitsShaCodeComments(owner, repo, shaCode, body, callback)</td>
<td style="padding:15px">Create a commit comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/commits/{pathv3}/comments?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoContentsPath(owner, repo, pathParam, body, callback)</td>
<td style="padding:15px">Delete a file.
This method deletes a file in a repository.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/contents/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoContentsPath(owner, repo, pathParam, pathParamQuery, ref, callback)</td>
<td style="padding:15px">Get contents.
This method returns the contents of a file or directory in a repository.
Files and symlinks support a custom media type for getting the raw content.
Directories and submodules do not support custom media types.
Note: This API supports files up to 1 megabyte in size.
Here can be many outcomes. For details see "http://developer.github.com/v3/repos/contents/"</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/contents/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">putReposOwnerRepoContentsPath(owner, repo, pathParam, body, callback)</td>
<td style="padding:15px">Create a file.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/contents/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoDeployments(owner, repo, body, callback)</td>
<td style="padding:15px">Users with push access can create a deployment for a given ref</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/deployments?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoDeploymentsIdStatuses(owner, repo, id, body, callback)</td>
<td style="padding:15px">Create a Deployment Status
Users with push access can create deployment statuses for a given deployment:</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/deployments/{pathv3}/statuses?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoDownloads(owner, repo, callback)</td>
<td style="padding:15px">Deprecated. List downloads for a repository.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/downloads?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoDownloadsDownloadId(owner, repo, downloadId, callback)</td>
<td style="padding:15px">Deprecated. Delete a download.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/downloads/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoDownloadsDownloadId(owner, repo, downloadId, callback)</td>
<td style="padding:15px">Deprecated. Get a single download.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/downloads/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoForks(owner, repo, body, callback)</td>
<td style="padding:15px">Create a fork.
Forking a Repository happens asynchronously. Therefore, you may have to wai
a short period before accessing the git objects. If this takes longer than 5
minutes, be sure to contact Support.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/forks?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoGitBlobs(owner, repo, body, callback)</td>
<td style="padding:15px">Create a Blob.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/blobs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoGitBlobsShaCode(owner, repo, shaCode, callback)</td>
<td style="padding:15px">Get a Blob.
Since blobs can be any arbitrary binary data, the input and responses for
the blob API takes an encoding parameter that can be either utf-8 or
base64. If your data cannot be losslessly sent as a UTF-8 string, you can
base64 encode it.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/blobs/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoGitCommits(owner, repo, body, callback)</td>
<td style="padding:15px">Create a Commit.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/commits?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoGitCommitsShaCode(owner, repo, shaCode, callback)</td>
<td style="padding:15px">Get a Commit.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/commits/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoGitRefs(owner, repo, callback)</td>
<td style="padding:15px">Get all References</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/refs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoGitRefs(owner, repo, body, callback)</td>
<td style="padding:15px">Create a Reference</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/refs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoGitRefsRef(owner, repo, ref, callback)</td>
<td style="padding:15px">Delete a Reference
Example: Deleting a branch: DELETE /repos/octocat/Hello-World/git/refs/heads/feature-a
Example: Deleting a tag: DELETE /repos/octocat/Hello-World/git/refs/tags/v1.0</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/refs/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoGitMatchingRefs(owner, repo, ref, callback)</td>
<td style="padding:15px">Get all Matching References</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/matching-refs/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoGitRefsRef(owner, repo, ref, callback)</td>
<td style="padding:15px">Get a Reference</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/refs/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepoGitRefsRef(owner, repo, ref, body, callback)</td>
<td style="padding:15px">Update a Reference</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/refs/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoGitTags(owner, repo, body, callback)</td>
<td style="padding:15px">Create a Tag Object.
Note that creating a tag object does not create the reference that makes a
tag in Git. If you want to create an annotated tag in Git, you have to do
this call to create the tag object, and then create the refs/tags/[tag]
reference. If you want to create a lightweight tag, you only have to create
the tag reference - this call would be unnecessary.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/tags?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoGitTagsShaCode(owner, repo, shaCode, callback)</td>
<td style="padding:15px">Get a Tag.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/tags/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoGitTrees(owner, repo, body, callback)</td>
<td style="padding:15px">Create a Tree.
The tree creation API will take nested entries as well. If both a tree and
a nested path modifying that tree are specified, it will overwrite the
contents of that tree with the new path contents and write a new tree out.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/trees?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoGitTreesShaCode(owner, repo, shaCode, recursive, callback)</td>
<td style="padding:15px">Get a Tree.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/git/trees/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoHooks(owner, repo, body, callback)</td>
<td style="padding:15px">Create a hook.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/hooks?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoHooksHookId(owner, repo, hookId, callback)</td>
<td style="padding:15px">Delete a hook.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/hooks/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoHooksHookId(owner, repo, hookId, callback)</td>
<td style="padding:15px">Get single hook.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/hooks/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepoHooksHookId(owner, repo, hookId, body, callback)</td>
<td style="padding:15px">Edit a hook.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/hooks/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoHooksHookIdTests(owner, repo, hookId, callback)</td>
<td style="padding:15px">Test a push hook.
This will trigger the hook with the latest push to the current repository
if the hook is subscribed to push events. If the hook is not subscribed
to push events, the server will respond with 204 but no test POST will
be generated.
Note: Previously /repos/:owner/:repo/hooks/:id/tes</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/hooks/{pathv3}/tests?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoIssues(owner, repo, filter = 'assigned', state = 'open', labels, sort = 'created', direction = 'asc', since, callback)</td>
<td style="padding:15px">List issues for a repository.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoIssues(owner, repo, body, callback)</td>
<td style="padding:15px">Create an issue.
Any user with pull access to a repository can create an issue.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoIssuesCommentsCommentId(owner, repo, commentId, callback)</td>
<td style="padding:15px">Delete a comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/comments/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoIssuesCommentsCommentId(owner, repo, commentId, callback)</td>
<td style="padding:15px">Get a single comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/comments/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepoIssuesCommentsCommentId(owner, repo, commentId, body, callback)</td>
<td style="padding:15px">Edit a comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/comments/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoIssuesEventsEventId(owner, repo, eventId, callback)</td>
<td style="padding:15px">Get a single event.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/events/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoIssuesNumber(owner, repo, number, callback)</td>
<td style="padding:15px">Get a single issue</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepoIssuesNumber(owner, repo, number, body, callback)</td>
<td style="padding:15px">Edit an issue.
Issue owners and users with push access can edit an issue.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoIssuesNumberComments(owner, repo, number, body, callback)</td>
<td style="padding:15px">Create a comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/{pathv3}/comments?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoIssuesNumberLabels(owner, repo, number, callback)</td>
<td style="padding:15px">Remove all labels from an issue.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/{pathv3}/labels?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoIssuesNumberLabels(owner, repo, number, body, callback)</td>
<td style="padding:15px">Add labels to an issue.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/{pathv3}/labels?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">putReposOwnerRepoIssuesNumberLabels(owner, repo, number, body, callback)</td>
<td style="padding:15px">Replace all labels for an issue.
Sending an empty array ([]) will remove all Labels from the Issue.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/{pathv3}/labels?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoIssuesNumberLabelsName(owner, repo, number, name, callback)</td>
<td style="padding:15px">Remove a label from an issue.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/issues/{pathv3}/labels/{pathv4}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoKeys(owner, repo, body, callback)</td>
<td style="padding:15px">Create a key.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/keys?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoKeysKeyId(owner, repo, keyId, callback)</td>
<td style="padding:15px">Delete a key.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/keys/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoKeysKeyId(owner, repo, keyId, callback)</td>
<td style="padding:15px">Get a key</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/keys/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoLabels(owner, repo, body, callback)</td>
<td style="padding:15px">Create a label.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/labels?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoLabelsName(owner, repo, name, callback)</td>
<td style="padding:15px">Delete a label.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/labels/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoLabelsName(owner, repo, name, callback)</td>
<td style="padding:15px">Get a single label.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/labels/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepoLabelsName(owner, repo, name, body, callback)</td>
<td style="padding:15px">Update a label.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/labels/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoLanguages(owner, repo, callback)</td>
<td style="padding:15px">List languages.
List languages for the specified repository. The value on the right of a
language is the number of bytes of code written in that language.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/languages?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoMerges(owner, repo, body, callback)</td>
<td style="padding:15px">Perform a merge.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/merges?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoMilestones(owner, repo, body, callback)</td>
<td style="padding:15px">Create a milestone.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/milestones?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoMilestonesNumber(owner, repo, number, callback)</td>
<td style="padding:15px">Delete a milestone.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/milestones/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoMilestonesNumber(owner, repo, number, callback)</td>
<td style="padding:15px">Get a single milestone.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/milestones/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepoMilestonesNumber(owner, repo, number, body, callback)</td>
<td style="padding:15px">Update a milestone.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/milestones/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">putReposOwnerRepoNotifications(owner, repo, body, callback)</td>
<td style="padding:15px">Mark notifications as read in a repository.
Marking all notifications in a repository as "read" removes them from the
default view on GitHub.com.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/notifications?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoPulls(owner, repo, body, callback)</td>
<td style="padding:15px">Create a pull request.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/pulls?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteReposOwnerRepoPullsCommentsCommentId(owner, repo, commentId, callback)</td>
<td style="padding:15px">Delete a comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/pulls/comments/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoPullsCommentsCommentId(owner, repo, commentId, callback)</td>
<td style="padding:15px">Get a single comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/pulls/comments/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepoPullsCommentsCommentId(owner, repo, commentId, body, callback)</td>
<td style="padding:15px">Edit a comment.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/pulls/comments/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoPullsNumber(owner, repo, number, callback)</td>
<td style="padding:15px">Get a single pull request.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/pulls/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">patchReposOwnerRepoPullsNumber(owner, repo, number, body, callback)</td>
<td style="padding:15px">Update a pull request.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/pulls/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoPullsNumberComments(owner, repo, number, body, callback)</td>
<td style="padding:15px">Create a comment.
#TODO Alternative input ( http://developer.github.com/v3/pulls/comments/ )
description: |
Alternative Input.
Instead of passing commit_id, path, and position you can reply to an
existing Pull Request Comment like this:
body
Required string
in_reply_to
Required number - Comment id to reply to.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/pulls/{pathv3}/comments?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoPullsNumberMerge(owner, repo, number, callback)</td>
<td style="padding:15px">Get if a pull request has been merged.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/pulls/{pathv3}/merge?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">putReposOwnerRepoPullsNumberMerge(owner, repo, number, body, callback)</td>
<td style="padding:15px">Merge a pull request (Merge Button's)</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/pulls/{pathv3}/merge?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getReposOwnerRepoReadme(owner, repo, ref, callback)</td>
<td style="padding:15px">Get the README.
This method returns the preferred README for a repository.</td>
<td style="padding:15px">{base_path}/{version}/repos/{pathv1}/{pathv2}/readme?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postReposOwnerRepoReleases(owner, repo, body, callback)</td