---
title: "Create App"
method: POST
path: "/apps"
---

# Create App

`POST /apps`

## Request

- Base URL: `https://api.xhostd.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.xhostd.com/apps`
- Auth: none declared

## Headers

- `authorization` string, nullable

## Request body

- CreateAppRequest: The body of POST /apps. The scheduler places every app, so the body names no host. ``extra="forbid"`` makes any other field, such as ``host_id``, a 422 that names it, and FastAPI returns that 422 before the route creates anything.
  - `name` string, required
  - `template` string
  - `branch` string, nullable

## Response `200`

Successful Response

- AppResponse
  - `id` string, uuid, required
  - `name` string, required
  - `repo_url` string, required
  - `template` string, required
  - `created_at` string, date-time, required
  - `external_db_access_enabled` boolean, required
  - `external_blob_access_enabled` boolean, required
  - `port_forwarding_enabled` boolean, required
  - `port_forwarding_available` boolean, required
  - `agent_protected_actions_enabled` boolean, nullable, required
  - `agent_protected_actions_effective` boolean, required
  - `channels` ChannelResponse[], required
    - `id` string, uuid, required
    - `name` string, required
    - `hostname` string, required
    - `git_ref_binding` string, nullable, required
    - `follows_branch` boolean, required
    - `current_sha` string, nullable, required
    - `status` string, required
    - `pending_deploy` PendingDeployResponse, required: The channel's in-flight deploy, if one is queued or running.
      - `deploy_id` string, uuid, required
      - `sha` string, required
      - `status` string, required
  - `owner_username` string, required
  - `role` string, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/xhostd/apis/xhostd-public.md) · [All operations](https://skmtc.dev/xhostd/apis/xhostd-public/llms.txt) · [OpenAPI document](https://skmtc.dev/xhostd/apis/xhostd-public/revisions/bf439c4d1789?raw)
