githubGitHub

Procedures and concepts for the GitHub integration.

circle-info

The following documentation is for GitHub v2.0.1 (BDK).

Overview

GitHub is the world's leading platform for version control and collaborative software development. This integration enables automated repository management, issue tracking, pull request operations, and code deployment workflows. Streamline your development processes and enhance team collaboration on code projects.

Prerequisites

1. Required Books

The following Book(s) need to be added to your agent so it can learn and understand the automation procedures defined within them:

  • GitHub

How to Add the Book(s)

  1. Go to BooksAll Books.

  2. Search for the name of the book and click on it.

  3. Click on Install or Add Connection to add the book to your agent.

  4. If adding a connection, you'll be prompted for connectivity details.

Connectivity

This section outlines the available methods for connecting to the Book, along with the required configuration details for each.

This books supports the connectivity methods described in this section.In here you will find information about what information is required in order to employ each method.

Connect using API Key

Connect to the GitHub API using an API key.

Label
Description
Type

API Key

The API key to be used for connecting

sensitive

Procedures

to create a (pull request) in a repository source

Create a pull request for a specified GitHub repository.

Input Concepts

Concept
Description
Type
Required
Default Value

repository source

The source of the repository. It is a combination of the owner and the repository name, separated by a forward slash. For example, 'torvalds/linux'.

conceptual or text

Yes

(no default)

The details required to create a pull request. It includes the title, head, base, and body.

github pull request

Yes

(no default)

Output Concepts

Concept
Description
Type

The pull request just created.

github pull request

Examples

Create a pull request from a repository

to create an (issue) in a repository source

Create an issue for a specified GitHub repository.

Input Concepts

Concept
Description
Type
Required
Default Value

repository source

The source of the repository. It is a combination of the owner and the repository name, separated by a forward slash. For example, 'torvalds/linux'.

conceptual or text

Yes

(no default)

The details required to create an issue. It includes the title, and can contain body.

github issue

Yes

(no default)

Output Concepts

Concept
Description
Type

The issue just created.

github issue

Examples

Create an issue from a repository

to get the (commits) from a repository source

FILTER - CAPABLE

Get the commits from a GitHub repository.

Input Concepts

Concept
Description
Type
Required
Default Value

repository source

The source of the repository. It is a combination of the owner and the repository name, separated by a forward slash. For example, 'torvalds/linux'.

conceptual or text

Yes

(no default)

branch

The branch to fetch commits from. Defaults to 'main'.

text

No

main

Output Concepts

Concept
Description
Type

A list of commits with details such as commit message, author, and date.

github commit

Examples

Retrieve the list of commits from the main branch of a repository

Retrieve the list of commits from a specific branch of a repository

Retrieve the list of commits that were committed in the specified time period

to get the (issues) from a repository source

Get the issues from a GitHub repository.

Input Concepts

Concept
Description
Type
Required
Default Value

repository source

The source of the repository. It is a combination of the owner and the repository name, separated by a forward slash. For example, 'torvalds/linux'.

conceptual or text

Yes

(no default)

state

The state of the issues to fetch. Defaults to 'open'.

noun

No

open

Output Concepts

Concept
Description
Type

A list of issues with details such as title, description, and URL.

github issue

Examples

Retrieve the list of issues from a repository

Retrieve the list of closed issues from a repository

to get the (pull request) from a repository source

Get a pull request from a GitHub repository.

Input Concepts

Concept
Description
Type
Required
Default Value

repository source

The source of the repository. It is a combination of the owner and the repository name, separated by a forward slash. For example, 'torvalds/linux'.

conceptual or text

Yes

(no default)

number

The number of the pull request to fetch.

number

Yes

(no default)

Output Concepts

Concept
Description
Type

A pull request with details such as title, description, and URL.

github pull request

Examples

Retrieve the list of open pull requests from a repository

to get the (pull requests) from a repository source

Get the pull requests from a GitHub repository.

Input Concepts

Concept
Description
Type
Required
Default Value

repository source

The source of the repository. It is a combination of the owner and the repository name, separated by a forward slash. For example, 'torvalds/linux'.

conceptual or text

Yes

(no default)

state

The state of the pull requests to fetch. Defaults to 'open'.

noun

No

open

Output Concepts

Concept
Description
Type

A list of pull requests with details such as title, description, and URL.

github pull request

Examples

Retrieve the list of pull requests from a repository

Retrieve the list of open pull requests from a repository

to get the (repositories) from a source organization

Get the repositories from a GitHub organization.

Input Concepts

Concept
Description
Type
Required
Default Value

source organization

The source organization to fetch repositories from.

conceptual or text

Yes

(no default)

Output Concepts

Concept
Description
Type

A list of repositories with details such as repository name, description, and URL.

github repository

Examples

Retrieve the list of repositories from an organization

to get the (team) from a source organization

Get a team from a GitHub organization.

Input Concepts

Concept
Description
Type
Required
Default Value

source organization

The source organization to fetch team from.

conceptual or text

Yes

(no default)

slug

The slug of the team to fetch.

text

Yes

(no default)

Output Concepts

Concept
Description
Type

A team with details such as team name.

github team

Examples

Retrieve the team from an organization

to get the (teams) from a source organization

Get the teams from a GitHub organization.

Input Concepts

Concept
Description
Type
Required
Default Value

source organization

The source organization to fetch teams from.

conceptual or text

Yes

(no default)

Output Concepts

Concept
Description
Type

A list of teams with details such as team name.

github team

Examples

Retrieve the list of teams from an organization

to get the (user) from a name

Get a user from GitHub.

Input Concepts

Concept
Description
Type
Required
Default Value

name

The name of the user to fetch.

conceptual or text

Yes

(no default)

Output Concepts

Concept
Description
Type

The user details such as name, login, and email.

github user

Examples

Retrieve the details of a user

to request reviewers for a (pull request)

Request reviewers for a pull request in a specified GitHub repository.

Input Concepts

Concept
Description
Type
Required
Default Value

The pull request.

github pull request

Yes

(no default)

repository source

The source of the repository. It is a combination of the owner and the repository name, separated by a forward slash. For example, 'torvalds/linux'.

text

Yes

(no default)

user names

The list of reviewers to request.

text

Yes

(no default)

team names

The list of team reviewers to request. Defaults to None.

text

No

(no default)

Output Concepts

Concept
Description
Type

The pull request with the reviewers just requested.

github pull request

Examples

Request reviewers for a pull request to request reviewers for a github pull request the user names are "ignacio-kognitos", "other-user" the team names are "kognitos-team"

to update a (pull request) in a repository source

Update a pull request for a specified GitHub repository.

Input Concepts

Concept
Description
Type
Required
Default Value

repository source

The source of the repository. It is a combination of the owner and the repository name, separated by a forward slash. For example, 'torvalds/linux'.

conceptual or text

Yes

(no default)

The details required to update a pull request. It includes the pull request number and can contain title, body, and state.

github pull request

Yes

(no default)

Output Concepts

Concept
Description
Type

The pull request just updated.

github pull request

Examples

Update a pull request from a repository

to update an (issue) in a repository source

Update an issue for a specified GitHub repository.

Input Concepts

Concept
Description
Type
Required
Default Value

repository source

The source of the repository. It is a combination of the owner and the repository name, separated by a forward slash. For example, 'torvalds/linux'.

conceptual or text

Yes

(no default)

The details required to update an issue. It includes the issue number and can contain title, body, and state.

github issue

Yes

(no default)

Output Concepts

Concept
Description
Type

The issue just updated.

github issue

Examples

Update an issue from a repository

Concepts

Github issue

GitHub Issue Wrapper class.

Field Name
Description
Type

number

The number of the issue. Optional since is None in case of creating an issue.

optional[number]

title

The title of the issue. Optional since can be None in case of editing an issue.

optional[text]

body

The body of the issue. Optional since can be None in case of editing an issue.

optional[text]

state

The state of the issue. Optional since is None in case of creating an issue.

optional[text]

The labels of the issue. Optional since can be None in case of editing an issue.

optional[list of github label]

The user of the issue. Optional since is None in case of creating an issue.

optional[github user]

Github label

GitHub Label Wrapper class.

Field Name
Description
Type

color

The color of the label.

text

description

The description of the label.

optional[text]

name

The name of the label.

text

url

The URL of the label.

text

Github user

GitHub User Wrapper class.

Field Name
Description
Type

login

The login of the user.

optional[text]

id

The ID of the user.

optional[number]

type

The type of the user.

optional[text]

Github pull request

GitHub Pull Request Wrapper class.

Field Name
Description
Type

number

The number of the pull request. Optional since is None in case of creating a pull request.

optional[number]

head

The head of the pull request. Optional since can be None in case of editing a pull request.

optional[github pull request part? or text]

title

The title of the pull request. Optional since can be None in case of editing a pull request.

optional[text]

base

The base of the pull request. Optional since can be None in case of editing a pull request.

optional[github pull request part? or text]

body

The body of the pull request. Optional since can be None in case of editing a pull request.

optional[text]

state

The state of the pull request. Optional since is None in case of creating a pull request.

optional[text]

Github commit

GitHub Commit Wrapper class.

Field Name
Description
Type

The commit.

optional[github git commit]

sha

The SHA of the commit.

optional[text]

The commit stats.

optional[github commit stats]

url

The URL of the commit.

optional[text]

Github git commit

GitHub Git Commit Wrapper class.

Field Name
Description
Type

The author of the commit.

optional[github git author]

The committer of the commit.

optional[github git author]

message

The message of the commit.

optional[text]

sha

The SHA of the commit.

optional[text]

Github commit stats

GitHub Commit Stats Wrapper class.

Field Name
Description
Type

total

The total number of commits.

number

deletions

The number of deletions.

number

additions

The number of additions.

number

Github repository

GitHub Repository Wrapper class.

Field Name
Description
Type

branches_url

The branches URL.

text

commits_url

The commits URL.

text

description

The description of the repository.

text

git_commits_url

The git commits URL.

text

git_tags_url

The git tags URL.

text

git_url

The git URL.

text

name

The name of the repository.

text

Github team

GitHub Team Wrapper class.

Field Name
Description
Type

id

The ID of the team.

number

url

The URL of the team.

text

name

The name of the team.

text

slug

The slug of the team.

text

description

The description of the team.

text

privacy

The privacy of the team.

text

permission

The permission of the team.

text

The members of the team.

optional[list of github user]

members_url

The members URL of the team.

optional[text]

repositories_url

The repositories URL of the team.

text

Last updated

Was this helpful?