Skip to main content

Github full reference

This is the full reference documentation for the Github agent connector.

Supported entities and actions

The Github connector supports the following entities and actions.

EntityActions
RepositoriesGet, List, Search
Org RepositoriesList
BranchesList, Get
CommitsList, Get
ReleasesList, Get
IssuesList, Get, Search
Pull RequestsList, Get, Search
ReviewsList
CommentsList, Get
Pr CommentsList, Get
LabelsList, Get
MilestonesList, Get
OrganizationsGet, List
UsersGet, List, Search
TeamsList, Get
TagsList, Get
StargazersList
ViewerGet
Viewer RepositoriesList
ProjectsList, Get
Project ItemsList

Repositories

Repositories Get

Gets information about a specific GitHub repository using GraphQL

Python SDK

github.repositories.get(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "repositories",
"action": "get",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository (username or organization)
repostringYesThe name of the repository
fieldsarray<string>NoOptional array of field names to select.
If not provided, uses default fields.

Repositories List

Returns a list of repositories for the specified user using GraphQL

Python SDK

github.repositories.list(
username="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "repositories",
"action": "list",
"params": {
"username": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
usernamestringYesThe username of the user whose repositories to list
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination (from previous response's endCursor)
fieldsarray<string>NoOptional array of field names to select.
If not provided, uses default fields.

Search for GitHub repositories using GitHub's powerful search syntax. Examples: "language:python stars:>1000", "topic:machine-learning", "org:facebook is:public"

Python SDK

github.repositories.search(
query="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "repositories",
"action": "search",
"params": {
"query": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
querystringYesGitHub repository search query using GitHub's search syntax
limitintegerNoNumber of results to return
afterstringNoCursor for pagination (from previous response's endCursor)
fieldsarray<string>NoOptional array of field names to select.
If not provided, uses default fields.

Org Repositories

Org Repositories List

Returns a list of repositories for the specified organization using GraphQL

Python SDK

github.org_repositories.list(
org="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "org_repositories",
"action": "list",
"params": {
"org": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
orgstringYesThe organization login/username
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Branches

Branches List

Returns a list of branches for the specified repository using GraphQL

Python SDK

github.branches.list(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "branches",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Branches Get

Gets information about a specific branch using GraphQL

Python SDK

github.branches.get(
owner="<str>",
repo="<str>",
branch="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "branches",
"action": "get",
"params": {
"owner": "<str>",
"repo": "<str>",
"branch": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
branchstringYesThe branch name
fieldsarray<string>NoOptional array of field names to select

Commits

Commits List

Returns a list of commits for the default branch using GraphQL

Python SDK

github.commits.list(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "commits",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Commits Get

Gets information about a specific commit by SHA using GraphQL

Python SDK

github.commits.get(
owner="<str>",
repo="<str>",
sha="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "commits",
"action": "get",
"params": {
"owner": "<str>",
"repo": "<str>",
"sha": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
shastringYesThe commit SHA
fieldsarray<string>NoOptional array of field names to select

Releases

Releases List

Returns a list of releases for the specified repository using GraphQL

Python SDK

github.releases.list(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "releases",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Releases Get

Gets information about a specific release by tag name using GraphQL

Python SDK

github.releases.get(
owner="<str>",
repo="<str>",
tag="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "releases",
"action": "get",
"params": {
"owner": "<str>",
"repo": "<str>",
"tag": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
tagstringYesThe release tag name
fieldsarray<string>NoOptional array of field names to select

Issues

Issues List

Returns a list of issues for the specified repository using GraphQL

Python SDK

github.issues.list(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issues",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
statesarray<"OPEN" | "CLOSED">NoFilter by issue state
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Issues Get

Gets information about a specific issue using GraphQL

Python SDK

github.issues.get(
owner="<str>",
repo="<str>",
number=0
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issues",
"action": "get",
"params": {
"owner": "<str>",
"repo": "<str>",
"number": 0
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
numberintegerYesThe issue number
fieldsarray<string>NoOptional array of field names to select

Search for issues using GitHub's search syntax

Python SDK

github.issues.search(
query="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "issues",
"action": "search",
"params": {
"query": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
querystringYesGitHub issue search query using GitHub's search syntax
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Pull Requests

Pull Requests List

Returns a list of pull requests for the specified repository using GraphQL

Python SDK

github.pull_requests.list(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "pull_requests",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
statesarray<"OPEN" | "CLOSED" | "MERGED">NoFilter by pull request state
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Pull Requests Get

Gets information about a specific pull request using GraphQL

Python SDK

github.pull_requests.get(
owner="<str>",
repo="<str>",
number=0
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "pull_requests",
"action": "get",
"params": {
"owner": "<str>",
"repo": "<str>",
"number": 0
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
numberintegerYesThe pull request number
fieldsarray<string>NoOptional array of field names to select

Search for pull requests using GitHub's search syntax

Python SDK

github.pull_requests.search(
query="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "pull_requests",
"action": "search",
"params": {
"query": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
querystringYesGitHub pull request search query using GitHub's search syntax
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Reviews

Reviews List

Returns a list of reviews for the specified pull request using GraphQL

Python SDK

github.reviews.list(
owner="<str>",
repo="<str>",
number=0
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "reviews",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>",
"number": 0
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
numberintegerYesThe pull request number
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Comments

Comments List

Returns a list of comments for the specified issue using GraphQL

Python SDK

github.comments.list(
owner="<str>",
repo="<str>",
number=0
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "comments",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>",
"number": 0
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
numberintegerYesThe issue number
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Comments Get

Gets information about a specific issue comment by its GraphQL node ID.

Note: This endpoint requires a GraphQL node ID (e.g., 'IC_kwDOBZtLds6YWTMj'), not a numeric database ID. You can obtain node IDs from the Comments_List response, where each comment includes both 'id' (node ID) and 'databaseId' (numeric ID).

Python SDK

github.comments.get(
id="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "comments",
"action": "get",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe GraphQL node ID of the comment
fieldsarray<string>NoOptional array of field names to select

Pr Comments

Pr Comments List

Returns a list of comments for the specified pull request using GraphQL

Python SDK

github.pr_comments.list(
owner="<str>",
repo="<str>",
number=0
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "pr_comments",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>",
"number": 0
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
numberintegerYesThe pull request number
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Pr Comments Get

Gets information about a specific pull request comment by its GraphQL node ID.

Note: This endpoint requires a GraphQL node ID (e.g., 'IC_kwDOBZtLds6YWTMj'), not a numeric database ID. You can obtain node IDs from the PRComments_List response, where each comment includes both 'id' (node ID) and 'databaseId' (numeric ID).

Python SDK

github.pr_comments.get(
id="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "pr_comments",
"action": "get",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe GraphQL node ID of the comment
fieldsarray<string>NoOptional array of field names to select

Labels

Labels List

Returns a list of labels for the specified repository using GraphQL

Python SDK

github.labels.list(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "labels",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Labels Get

Gets information about a specific label by name using GraphQL

Python SDK

github.labels.get(
owner="<str>",
repo="<str>",
name="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "labels",
"action": "get",
"params": {
"owner": "<str>",
"repo": "<str>",
"name": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
namestringYesThe label name
fieldsarray<string>NoOptional array of field names to select

Milestones

Milestones List

Returns a list of milestones for the specified repository using GraphQL

Python SDK

github.milestones.list(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "milestones",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
statesarray<"OPEN" | "CLOSED">NoFilter by milestone state
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Milestones Get

Gets information about a specific milestone by number using GraphQL

Python SDK

github.milestones.get(
owner="<str>",
repo="<str>",
number=0
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "milestones",
"action": "get",
"params": {
"owner": "<str>",
"repo": "<str>",
"number": 0
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
numberintegerYesThe milestone number
fieldsarray<string>NoOptional array of field names to select

Organizations

Organizations Get

Gets information about a specific organization using GraphQL

Python SDK

github.organizations.get(
org="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "organizations",
"action": "get",
"params": {
"org": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
orgstringYesThe organization login/username
fieldsarray<string>NoOptional array of field names to select

Organizations List

Returns a list of organizations the user belongs to using GraphQL

Python SDK

github.organizations.list(
username="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "organizations",
"action": "list",
"params": {
"username": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
usernamestringYesThe username of the user
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Users

Users Get

Gets information about a specific user using GraphQL

Python SDK

github.users.get(
username="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "get",
"params": {
"username": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
usernamestringYesThe username of the user
fieldsarray<string>NoOptional array of field names to select

Users List

Returns a list of members for the specified organization using GraphQL

Python SDK

github.users.list(
org="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "list",
"params": {
"org": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
orgstringYesThe organization login/username
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Search for GitHub users using search syntax

Python SDK

github.users.search(
query="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "users",
"action": "search",
"params": {
"query": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
querystringYesGitHub user search query using GitHub's search syntax
limitintegerNoNumber of results to return
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Teams

Teams List

Returns a list of teams for the specified organization using GraphQL

Python SDK

github.teams.list(
org="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "teams",
"action": "list",
"params": {
"org": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
orgstringYesThe organization login/username
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Teams Get

Gets information about a specific team using GraphQL

Python SDK

github.teams.get(
org="<str>",
team_slug="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "teams",
"action": "get",
"params": {
"org": "<str>",
"team_slug": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
orgstringYesThe organization login/username
team_slugstringYesThe team slug
fieldsarray<string>NoOptional array of field names to select

Tags

Tags List

Returns a list of tags for the specified repository using GraphQL

Python SDK

github.tags.list(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "tags",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Tags Get

Gets information about a specific tag by name using GraphQL

Python SDK

github.tags.get(
owner="<str>",
repo="<str>",
tag="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "tags",
"action": "get",
"params": {
"owner": "<str>",
"repo": "<str>",
"tag": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
tagstringYesThe tag name
fieldsarray<string>NoOptional array of field names to select

Stargazers

Stargazers List

Returns a list of users who have starred the repository using GraphQL

Python SDK

github.stargazers.list(
owner="<str>",
repo="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "stargazers",
"action": "list",
"params": {
"owner": "<str>",
"repo": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
ownerstringYesThe account owner of the repository
repostringYesThe name of the repository
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination
fieldsarray<string>NoOptional array of field names to select

Viewer

Viewer Get

Gets information about the currently authenticated user. This is useful when you don't know the username but need to access the current user's profile, permissions, or associated resources.

Python SDK

github.viewer.get()

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "viewer",
"action": "get"
}'

Parameters

Parameter NameTypeRequiredDescription
fieldsarray<string>NoOptional array of field names to select

Viewer Repositories

Viewer Repositories List

Returns a list of repositories owned by the authenticated user. Unlike Repositories_List which requires a username, this endpoint automatically lists repositories for the current authenticated user.

Python SDK

github.viewer_repositories.list()

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "viewer_repositories",
"action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination (from previous response's endCursor)
fieldsarray<string>NoOptional array of field names to select

Projects

Projects List

Returns a list of GitHub Projects V2 for the specified organization. Projects V2 are the new project boards that replaced classic projects.

Python SDK

github.projects.list(
org="<str>"
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "projects",
"action": "list",
"params": {
"org": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
orgstringYesThe organization login/username
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination (from previous response's endCursor)
fieldsarray<string>NoOptional array of field names to select

Projects Get

Gets information about a specific GitHub Project V2 by number

Python SDK

github.projects.get(
org="<str>",
project_number=0
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "projects",
"action": "get",
"params": {
"org": "<str>",
"project_number": 0
}
}'

Parameters

Parameter NameTypeRequiredDescription
orgstringYesThe organization login/username
project_numberintegerYesThe project number
fieldsarray<string>NoOptional array of field names to select

Project Items

Project Items List

Returns a list of items (issues, pull requests, draft issues) in a GitHub Project V2. Each item includes its field values like Status, Priority, etc.

Python SDK

github.project_items.list(
org="<str>",
project_number=0
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances/{your_connector_instance_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"entity": "project_items",
"action": "list",
"params": {
"org": "<str>",
"project_number": 0
}
}'

Parameters

Parameter NameTypeRequiredDescription
orgstringYesThe organization login/username
project_numberintegerYesThe project number
per_pageintegerNoThe number of results per page
afterstringNoCursor for pagination (from previous response's endCursor)
fieldsarray<string>NoOptional array of field names to select

Authentication

The Github connector supports the following authentication methods.

GitHub OAuth 2.0

Field NameTypeRequiredDescription
access_tokenstrYesOAuth 2.0 access token

Example

Python SDK

GithubConnector(
auth_config=GithubAuthConfig(
access_token="<OAuth 2.0 access token>"
)
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"connector_definition_id": "ef69ef6e-aa7f-4af1-a01d-ef775033524e",
"auth_config": {
"access_token": "<OAuth 2.0 access token>"
},
"name": "My Github Connector"
}'

GitHub Personal Access Token

Field NameTypeRequiredDescription
tokenstrYesGitHub personal access token (fine-grained or classic)

Example

Python SDK

GithubConnector(
auth_config=GithubAuthConfig(
token="<GitHub personal access token (fine-grained or classic)>"
)
)

API

curl --location 'https://api.airbyte.ai/api/v1/connectors/instances' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
"connector_definition_id": "ef69ef6e-aa7f-4af1-a01d-ef775033524e",
"auth_config": {
"token": "<GitHub personal access token (fine-grained or classic)>"
},
"name": "My Github Connector"
}'