Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/zitadel/zitadel/llms.txt

Use this file to discover all available pages before exploring further.

Endpoint

POST /v2/projects

Description

Create a new project. A project is a vessel to group applications, roles, and authorizations. Every project belongs to exactly one organization, but can be granted to other organizations for self-management of their authorizations.

Required Permission

  • project.create

Request Body

organizationId
string
required
The unique identifier of the organization the project belongs to.Min Length: 1
Max Length: 200
projectId
string
Optional unique identifier of the new project. If omitted, the system will generate a unique ID for you (recommended).Min Length: 1
Max Length: 200
name
string
required
Name of the project. This might be presented to users, e.g., in sign-in flows.Min Length: 1
Max Length: 200
projectRoleAssertion
boolean
Enable to include role information in the user info endpoint. Also dependent on application settings.
authorizationRequired
boolean
Enable to check if a user has an authorization to use this project when logging into an application.
projectAccessRequired
boolean
Enable to check if the organization of the user has access to this project (either owns or is granted).
privateLabelingSetting
string
Setting that defines which private labeling/branding should trigger when getting to a login of this project.Options:
  • PRIVATE_LABELING_SETTING_UNSPECIFIED
  • PRIVATE_LABELING_SETTING_ENFORCE_PROJECT_RESOURCE_OWNER_POLICY
  • PRIVATE_LABELING_SETTING_ALLOW_LOGIN_USER_RESOURCE_OWNER_POLICY

Response

projectId
string
The unique identifier of the newly created project.
creationDate
timestamp
The timestamp of the project creation.

Example Request

curl -X POST https://your-domain.zitadel.cloud/v2/projects \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "organizationId": "69629026806489455",
    "name": "My Application Project",
    "projectRoleAssertion": true,
    "authorizationRequired": false,
    "projectAccessRequired": true,
    "privateLabelingSetting": "PRIVATE_LABELING_SETTING_ENFORCE_PROJECT_RESOURCE_OWNER_POLICY"
  }'

Example Response

{
  "projectId": "69629012906488334",
  "creationDate": "2024-12-18T07:50:47.492Z"
}

Error Responses

  • 400 Bad Request - Invalid project data
  • 403 Forbidden - Insufficient permissions