---
title: "Create a project"
method: POST
path: "/api/projects"
tags: ["project-controller"]
---

# Create a project

`POST /api/projects`

## Request

- Base URL: `https://api.pagegoat.com`
- URL: `https://api.pagegoat.com/api/projects`
- Auth: HTTP bearer

Actor-gated: this consumes the CALLER's plan, unlike acting on a site someone shared with them.

## Request body

- ProjectNameRequest: A project's name.
  - `name` string, nullable: Blank or omitted falls back to a generated default on create.

## Response `201`

The created project.

## Other responses

- `402`: No paid plan, or the plan's project ceiling is already reached.

---

[API](https://skmtc.dev/pagegoat/apis/pagegoat-api.md) · [All operations](https://skmtc.dev/pagegoat/apis/pagegoat-api/llms.txt) · [OpenAPI document](https://skmtc.dev/pagegoat/apis/pagegoat-api/revisions/3e87219680af?raw)
