# General Translation Platform: Create a Project
URL: https://generaltranslation.com/en-US/docs/platform/openapi/reference/projects/create-project.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Create a project in the specified Organization. Requires org:projects:create.

## Endpoint

`POST https://api.gtx.dev/v2/orgs/{orgId}/projects`

**Operation ID:** `createProject`

**Tags:** `Projects`

**Summary:** Create a Project

Create a project in the specified Organization. Requires `org:projects:create`.

Authentication: required. Send an API key in the `Authorization: Bearer <key>` header when authenticating.

### Parameters

- `orgId` (path, string, required)
- `gt-api-version` (header, "2026-10-08.v1", optional): API contract version. Defaults to the oldest supported version.

### Request body (required)

Body (`application/json`, object):
- `name` (string, required): Trimmed Project name, 1–64 characters. Accepts ASCII letters, digits, spaces, dashes, underscores, apostrophes, parentheses, and periods.
- `defaultLocale` (string, required): Source locale for the project.
- `cdnEnabled` (boolean): Enable CDN delivery. Defaults to false when omitted.

### Responses

**201**: Project created. Each successful request creates a new project.
Response body (`application/json`, object):
- `project` (object, required)
  - `id` (string, required)
  - `name` (string, required)
  - `orgId` (string, required)
  - `defaultLocale` (string, required)

**400**: The request is malformed or failed validation.
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**401**: Authentication is missing or invalid.
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**403**: The caller is authenticated but not allowed to perform this operation or access the requested resource.
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**409**: Your plan's project limit has been reached.
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**413**: The request, or the data it would return, exceeds a size or item limit.
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**415**: The request body's Content-Type is missing or not supported. Send the body as application/json.
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**429**: Too many requests. The rate limit was exceeded.
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

**500**: An unexpected server error occurred.
Response body (`application/json`, object):
- `error` (string, required)

Response body (`text/html`, string):

Complete OpenAPI 3.1 specification: https://generaltranslation.com/openapi.yaml

OpenAPI schema: [openapi.json](https://generaltranslation.com/openapi.json)

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
