Create a Project

Create a project in your workspace.

About

Before you train a model, you need to create a Project.

A Project contains images and annotations. This data can then be turned into a dataset version, a snapshot of your data frozen in time. Versions can then be used to train models.

Web App

Create a Project

First, go to the Roboflow dashboard. Then, click "Create New Project":

You will be taken to a page where you can create a new project:

On this page, you will need to fill out:

  1. A project type.
    1. Object Detection: Find the location of objects in an image.
    2. Single-Label Classification: Given a limited set of categories, assign a label to an image.
    3. Multi-Label Classification: Given a limited set of categories, assign an arbitrary number of labels that are relevant to the image.
    4. Instance Segmentation: To the pixel level, find the location of objects in an image.
    5. Semantic Segmentation: To the pixel level, find the location of objects in an image and create unique references for each object found.
    6. Keypoint Detection: Find the location of objects and their keypoints in an image. Commonly used for determining the pose of an object.
  2. A project name: The name of your project.
  3. Annotation group: A label that categorizes what you are detecting in your images (e.g. "chess pieces", "vehicles", "defects"). Projects that share the same annotation group also share their class list and annotations. See Annotation Groups for more details.

When you have specified these values, submit the form to create the project.

If you would like to see another type of project supported you can select the option from the dropdown of project types to indicate your interest.

If you are on a free plan, your datasets and models will be available on Roboflow Universe. If you are on a paid plan, you can create private projects. Private projects are only accessible to your Workspace and are never public.

Create a Project From the Agent

You can create a Project from Roboflow Agent without leaving the chat. Open the "+" tab and click "New model" under "Create". The same form opens inside the tab, with the project type selector and the rest of the fields.

When the Project is created, the tab turns into that Project's view.

HTTP API

POST /:workspace/projects

Create a project in a workspace.

Example Request

curl -X POST "https://api.roboflow.com/my-workspace/projects?api_key=$ROBOFLOW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Sharks Dataset",
    "type": "object-detection",
    "annotation": "sharks",
    "license": "MIT"
  }'

Body

NameTypeDescriptionRequired
namestringDisplay name for the project. The URL slug is auto-generated from this.true
typestringProject type. One of object-detection, single-label-classification, multi-label-classification, instance-segmentation, semantic-segmentation, keypoint-detection.true
annotationstringAnnotation group - a noun describing what's being labeled (e.g. "sharks", "defects").true
licensestringLicense for the project. Required for workspaces that aren't already public. Accepted values: Public Domain, MIT, CC BY 4.0, BY-NC-SA 4.0, OBdL v1.0, Private (paid plans only).false
groupstringId of a project folder to place this project in. See Manage Project Folders.false

Example Response

{
    "id": "my-workspace/sharks-dataset",
    "type": "object-detection",
    "name": "Sharks Dataset",
    "created": 1688739471567,
    "updated": 1688739471567,
    "images": 0,
    "unannotated": 0,
    "annotation": "sharks",
    "versions": 0,
    "public": false,
    "splits": {},
    "colors": {},
    "classes": {},
    "icon": null
}

Required scope: project:create.

Python SDK

Workspace.create_project() creates a new project in the workspace and returns a Project object you can then upload images to.

import roboflow

rf = roboflow.Roboflow(api_key="YOUR_API_KEY")

project = rf.workspace().create_project(
    project_name="Flower detector",
    project_type="object-detection",
    project_license="MIT",
    annotation="flowers",
)
print(project.id)

Parameters

  • project_name (str) - the display name. The URL slug is auto-generated from this.
  • project_type (str) - one of:
    • object-detection
    • single-label-classification
    • multi-label-classification
    • instance-segmentation
    • semantic-segmentation
    • keypoint-detection
  • project_license (str) - set to "Private" for private projects (paid plans only). Public-license values include "MIT", "CC BY 4.0", "Public Domain", etc. - see the project creation form in the web app for the full list.
  • annotation (str) - the annotation group: a noun describing what's being labeled ("flowers", "vehicles", "defects"). Used in the labeling UI prompts.

CLI

You can create new projects from the command line.

Command

roboflow project create <name> --type <project-type>

Options

FlagDescription
--typeProject type (required). See supported types below
--licenseLicense for the project (optional)
--annotationAnnotation group name (optional, defaults to project name)

Supported Project Types

  • object-detection
  • single-label-classification
  • multi-label-classification
  • instance-segmentation
  • semantic-segmentation
  • keypoint-detection

Examples

Create an object detection project:

roboflow project create my-detector --type object-detection

Create a classification project:

roboflow project create breed-classifier --type single-label-classification

JSON Output

roboflow project create my-detector --type object-detection --json
{
  "status": "created",
  "project": "my-detector",
  "type": "object-detection",
  "workspace": "my-workspace"
}

MCP Server

Connect your AI agent to the MCP Server and it can create and inspect projects with these tools:

ToolDescription
projects_createCreate a new computer vision project.
projects_getGet project detail including versions, classes, splits, and trained models.
projects_listList projects in the workspace.

Next steps