---
title: "White Label Admin - Create a new project within white label context."
method: POST
path: "/api/organizations/{organizationId}/whitelabel/projects"
tags: ["Organizations"]
---

# White Label Admin - Create a new project within white label context.

`POST /api/organizations/{organizationId}/whitelabel/projects`

## Request

- Base URL: `https://studio.edgeimpulse.com/v1`
- URL: `https://studio.edgeimpulse.com/v1/api/organizations/{organizationId}/whitelabel/projects`
- Auth: one of:
  - API key in header `x-api-key`
  - API key in cookie `jwt`
  - API key in header `x-jwt-token`
  - OAuth 2
    - Authorization code: `/v1/oauth/authorize`
    - Client credentials
    - Implicit: `/v1/oauth/authorize`
    - Password
    - Token URL: `/v1/oauth/token`
- TypeScript: <https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/docs/api/organizations/:organizationId/whitelabel/projects/post.ts> (a function with typed inputs; its response is checked against the schema)

Create a new free tier project. This is an API only available to white label admins.

## Path parameters

- `organizationId` integer, required

## Request body

- AdminCreateProjectRequest
  - `projectName` string, required: The name of the project.
  - `projectVisibility` 'public' | 'private': The visibility of the project, either public or private. Public projects can be viewed by anyone on the internet and edited by collaborators. Private projects can only be viewed and edited by collaborators.
  - `ownerId` integer: Unique identifier of the owner of the new project. Either this parameter or ownerEmail must be set.
  - `ownerEmail` string: Email of the owner of the new project. Either this parameter or ownerId must be set.
  - `createApiKey` boolean: Whether to create an API key. If set to FALSE, the "apiKey" property on the response will be empty. If this field is not set, it will default to TRUE.

## Response `200`

OK

- CreateProjectResponse
  - `success` boolean, required: Whether the operation succeeded
  - `error` string: Optional error description (set if 'success' was false)
  - `id` integer, required: Project ID for the new project
  - `apiKey` string, required: API key for the new project

## Changes

- **2026-11-06** `e2a976d38427`: 1 info
  - added the new optional request property `createApiKey`
- **2025-09-08** `f2493b3fc5a1`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/changes/api/organizations/:organizationId/whitelabel/projects/post.md)

---

[API](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api.md) - [All operations](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/llms.txt) - [OpenAPI document](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/revisions/e2a976d38427?raw)
