Import a GitHub repository and deploy it
Changed onBody: { installation_id, repo_id } (a repository a GitHub account linked to the workspace reads) or { repo_url } (a public repository, https://github.com/owner/name; deploys by hand only), plus name?, branch? (default: the repository’s default), root_dir?, framework? (auto, node, python, dockerfile, compose, static), port? (3000), health_path? (/), install_cmd?, build_cmd?, start_cmd?, auto_deploy?, env? and deploy? (false: import only). Detection when framework is auto: orgo.json, a compose file, a Dockerfile, package.json (npm, pnpm, yarn or bun by lockfile; Node.js from .nvmrc or engines, 22 by default), a Python project (uv; a Procfile web: line or a start command), index.html. The app must listen on 0.0.0.0:<port>; it gets PORT. env values are stored encrypted, never returned, and masked in build logs. The first deployment is queued and built once the computer runs; nothing wakes it. At most 10 deploys a computer, and each is one of its 20 apps. Or an Ingot repo: { source: "ingot", repo: "<workspace>/<name>", at? } (a repo of the central Ingot server: the id of a workspace the caller owns or is a member of, then the repo’s name; another, or another workspace than a workspace key’s own, is 403 INGOT_WORKSPACE_MISMATCH; at: the changeset a deploy builds when it names none, default the newest on main); no GitHub repository, deploys main by hand only, its files exported on the computer with ingot export (which Bops installs with its config) instead of a clone.
Request
- Base URLhttps://www.orgo.ai
- AuthHTTP bearer
Path parameters
Computer id.
Request body
Example request
{
"repo_url": "https://github.com/owner/name"
}Response
Imported; its first deployment is in deployments.
Example response
{
"repo": "acme/web",
"ingot_repo": "0b6f4c7e-2d1a-4c3b-9e8f-7a6b5c4d3e2f/notes"
}Changes
- info
added the optional property
to the response with the status - info
added the optional property
to the response with the status - info
added the optional property
to the response with the status
- info
- info
added the non-success response with the status
- info