GitHub

Package: httpx (REST API) · 16 nodes · GitHub API — issues, PRs, files, branches, releases

Automate GitHub with visual nodes — create issues, manage PRs, push files, create branches and releases, all via the GitHub REST API. Uses the Connect pattern: a single Connect node creates an authenticated httpx.Client, which flows to all downstream nodes.

Getting Started

  1. Add a Connect node and wire a token string to it
  2. Add a Repo Name node with your owner/repo
  3. Wire the Client output from Connect and Repo output from Repo Name into any GitHub node

Node Reference

Config

Node Type Inputs Outputs Maps to
Connect statement Token (str) Client (gh.Client) httpx.Client(base_url="api.github.com")
Repo Name expression Repo (str) "owner/repo" literal

Issues

Node Type Inputs Outputs Maps to
Create Issue statement Client, Repo, Title, Body Issue URL (str) POST /repos/{repo}/issues
Create Comment statement Client, Repo, Issue # (int), Body POST /repos/{repo}/issues/{n}/comments
List Issues expression Client, Repo Issues (list) GET /repos/{repo}/issues

Pull Requests

Node Type Inputs Outputs Maps to
Get PR Diff statement Client, Repo, PR # (int) Diff (str) GET /repos/{repo}/pulls/{pr}
List PRs expression Client, Repo PRs (list) GET /repos/{repo}/pulls
Create PR statement Client, Repo, Title, Head, Base PR URL (str) POST /repos/{repo}/pulls
Merge PR statement Client, Repo, PR # (int) PUT /repos/{repo}/pulls/{pr}/merge

Files

Node Type Inputs Outputs Maps to
Get File expression Client, Repo, Path Content (str) GET /repos/{repo}/contents/{path}
Push File statement Client, Repo, Path, Content, Message PUT /repos/{repo}/contents/{path}
Delete File statement Client, Repo, Path, Message, SHA DELETE /repos/{repo}/contents/{path}

Git

Node Type Inputs Outputs Maps to
Create Branch statement Client, Repo, Branch, From SHA POST /repos/{repo}/git/refs
Create Release statement Client, Repo, Tag, Name, Body Release URL (str) POST /repos/{repo}/releases
List Branches expression Client, Repo Branches (list) GET /repos/{repo}/branches
Get Branch expression Client, Repo, Branch SHA (str), Name (str) GET /repos/{repo}/branches/{branch}

Domain Types

Type Description
gh.Client Authenticated GitHub API client (httpx.Client with base URL and auth headers)
gh.Issue GitHub issue object
gh.PullRequest GitHub pull request object