---
title: "Create a new project"
method: POST
path: "/papi/projects"
tags: ["Status"]
---

# Create a new project

`POST /papi/projects`

## Request

- Base URL: `https://api.websitepublisher.ai`
- URL: `https://api.websitepublisher.ai/papi/projects`
- Auth: OAuth 2 (authorization code, authorization URL `https://api.websitepublisher.ai/dapi/oauth/authorize`, token URL `https://api.websitepublisher.ai/dapi/oauth/token`, scopes: `write`)

Create a new website project. Each project gets its own subdomain, pages, assets, entities, and vault. Respects plan limits (Free: 1, Starter: 3, Pro: 10, Agency: unlimited). Returns the new project_id and live domain.

## Request body

- object
  - `name` string, required: Project name (e.g., 'My Portfolio', 'Bakkerij De Gouden Korst')
  - `subdomain` string: Desired subdomain (lowercase, a-z0-9 and hyphens). Auto-generated from name if omitted. Result: {subdomain}.websitepublisher.ai

## Response `201`

Project created

- object
  - `success` boolean
  - `data` object
    - `project_id` integer
    - `name` string
    - `subdomain` string
    - `domain` string

## Other responses

- `429`: Plan limit reached — upgrade required

---

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