---
title: "Create GitHub App"
method: POST
path: "/github-apps"
tags: ["GitHub Apps"]
---

# Create GitHub App

`POST /github-apps`

Create a new GitHub app.

## Request body

- object
  - `name` string, required — Name of the GitHub app.
  - `organization` string, nullable — Organization to associate the app with.
  - `api_url` string — API URL for the GitHub app (e.g., https://api.github.com).
  - `html_url` string, required — HTML URL for the GitHub app (e.g., https://github.com).
  - `custom_user` string — Custom user for SSH access (default: git).
  - `custom_port` integer — Custom port for SSH access (default: 22).
  - `app_id` integer, required — GitHub App ID from GitHub.
  - `installation_id` integer, required — GitHub Installation ID.
  - `client_id` string, required — GitHub OAuth App Client ID.
  - `client_secret` string, required — GitHub OAuth App Client Secret.
  - `webhook_secret` string — Webhook secret for GitHub webhooks.
  - `private_key_uuid` string, required — UUID of an existing private key for GitHub App authentication.
  - `is_system_wide` boolean — Is this app system-wide (cloud only).

## Response `201`

GitHub app created successfully.

- object
  - `id` integer
  - `uuid` string
  - `name` string
  - `organization` string, nullable
  - `api_url` string
  - `html_url` string
  - `custom_user` string
  - `custom_port` integer
  - `app_id` integer
  - `installation_id` integer
  - `client_id` string
  - `private_key_id` integer
  - `is_system_wide` boolean
  - `team_id` integer

## Other responses

- `400` — Invalid token.
- `401` — Unauthenticated.
- `422` — Validation error.

---

[API](https://skmtc.net/coollabsio/apis/coolify.md) · [All operations](https://skmtc.net/coollabsio/apis/coolify/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/coollabsio/coolify/versions/08be5dc8e729/schema)
