Create Repository
github.create_repo
ActionBusiness appsconnection required
Calls POST /user/repos, or POST /orgs/{org}/repos when 'org' is set.
Create a repository for the authenticated user or for an organisation.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- Bearer token
- Providers
- GitHub
- Secret shape
- the GitHub personal access token
- Resolved by
- config.connection_id, else node.connection_id, else the tenant's sole GitHub connection
Configuration
8 fields, 1 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
name Name of the new repository. | string | Yes | — | — | hello-world |
org Organisation to create it in. Empty creates it under the token's own account. | string | No | — | — | — |
description Short repository description. | string | No | — | — | — |
homepage Project homepage URL. | string | No | — | url format | — |
private Create it private. | boolean | No | — | — | — |
auto_init Create an initial commit with a README, so the repo has a default branch. | boolean | No | — | — | — |
gitignore_template Name of a .gitignore template, e.g. Python. Needs auto_init. | string | Conditional | — | only with auto_init | — |
license_template Licence keyword, e.g. mit. Needs auto_init. | string | Conditional | — | only with auto_init | — |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"name": "hello-world"
}Output
One shape.
result
The declared fields, plus the rest of the resource as GitHub returned it.
Extra keys beyond the ones listed can appear.
| Field | Type | Example |
|---|---|---|
ok True when GitHub accepted the call. | boolean | true |
id GitHub's internal repository id. | number | — |
name Repository name. | string | — |
full_name owner/repo. | string | — |
private True for a private repository. | boolean | — |
html_url Link to the repository. | string | — |
clone_url HTTPS clone URL. | string | — |
default_branch The repository's default branch. | string | — |
{
"clone_url": "",
"default_branch": "",
"full_name": "",
"html_url": "",
"id": 0,
"name": "",
"ok": true,
"private": false
}Solutions with GitHub
See Create Repository run in a workflow.
In a technical demo we add the GitHub connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.