---
title: "Create project"
method: POST
path: "/api/v2/projects"
tags: ["Projects"]
---

# Create project

`POST /api/v2/projects`

## Request

- Base URL: `https://api.simplelocalize.io`
- URL: `https://api.simplelocalize.io/api/v2/projects`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/simplelocalize/apis/simplelocalize-api/docs/api/v2/projects/post.ts> (a function with typed inputs; its response is checked against the schema)

Create a new project

## Headers

- `Authorization` string, required

## Request body

- ProjectCreateRequest
  - `name` string, required

## Response `200`

OK

- object
  - `msg` string
  - `status` integer
  - `data` ProjectReadDetails
    - `name` string
    - `languages` Language[]
      - `key` string
      - `name` string
      - `isDefault` boolean
      - `order` integer
      - `flag` string
      - `access` 'WRITE_READ' | 'READ' | 'HIDDEN'
      - `translationProvider` 'GOOGLE_TRANSLATE' | 'DEEPL' | 'OPEN_AI' | 'OPEN_ROUTER' | 'CUSTOM_AI' | 'ANTHROPIC' | 'GEMINI' | 'SIMPLELOCALIZE_AI' | 'EXTERNAL_API' | 'SYSTRAN' | 'PSEUDO_TRANSLATE' | 'TRANSLATION_MEMORY' | 'DISABLED'
      - `providerLanguage` string
      - `sourceLanguage` string
      - `deeplFormality` string
      - `isLocked` boolean
      - `attributes` object
      - `context` string
      - `fallbackLanguage` string
    - `customers` CustomerOverride[]
      - `key` string
      - `description` string
      - `displayName` string
    - `projectToken` string
    - `apiKey` string
    - `keys` integer
    - `unpublishedChanges` integer
    - `translatedPercentage` number, double
    - `translatedKeysByLanguage` object

## Other responses

- `400`: Bad Request
- `402`: Payment Required
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `429`: Too Many Requests
- `500`: Internal Server Error

## Changes

- **2026-11-07** `67a25a25863a`: 5 warning, 4 info
  - added the new `ANTHROPIC` enum value to the `data/languages/items/translationProvider` response property for the response status `200`
  - added the new `CUSTOM_AI` enum value to the `data/languages/items/translationProvider` response property for the response status `200`
  - added the new `GEMINI` enum value to the `data/languages/items/translationProvider` response property for the response status `200`
  - added the new `PSEUDO_TRANSLATE` enum value to the `data/languages/items/translationProvider` response property for the response status `200`
  - …5 more
- **2025-11-20** `6ed553100cd5`: 1 warning
  - added the new `TRANSLATION_MEMORY` enum value to the `data/languages/items/translationProvider` response property for the response status `200`
- **2025-11-12** `0329534cd557`: 2 warning, 17 info
  - added the new `DISABLED` enum value to the `data/languages/items/translationProvider` response property for the response status `200`
  - added the new `OPEN_ROUTER` enum value to the `data/languages/items/translationProvider` response property for the response status `200`
  - the endpoint scheme security `Personal Access Token` was added to the API
  - the endpoint scheme security `personalToken` was removed from the API
  - …15 more
- …earlier changes not shown

[Operation history](https://skmtc.dev/simplelocalize/apis/simplelocalize-api/changes/api/v2/projects/post.md)

---

[API](https://skmtc.dev/simplelocalize/apis/simplelocalize-api.md) - [All operations](https://skmtc.dev/simplelocalize/apis/simplelocalize-api/llms.txt) - [OpenAPI document](https://skmtc.dev/simplelocalize/apis/simplelocalize-api/revisions/67a25a25863a?raw)
