> ## Documentation Index
> Fetch the complete documentation index at: https://open.manus.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# project.create

> Creates a new project. Projects let you group related tasks and apply shared instructions. Pass the returned ID as `project_id` in [task.create](https://open.manus.ai/docs/v2/task.create) to create tasks within this project.

<sup>Questions or issues? Contact us at [api-support@manus.ai](mailto:api-support@manus.ai).</sup>

<Tip>
  **OAuth scope:** `create_project` or `manage_all_tasks` — see the [Open App](https://open.manus.ai/docs/v2/open-app) guide.
</Tip>

<Tip>
  **Use in tasks:** Pass the returned project ID as `project_id` in [task.create](https://open.manus.ai/docs/v2/task.create) to create tasks within this project.

  **Instructions:** The project's `instruction` will be automatically applied to all tasks in the project.
</Tip>


## OpenAPI

````yaml POST /v2/project.create
openapi: 3.1.0
info:
  title: Manus OpenAPI v2
  description: >-
    API for integrating Manus into your workflow. All responses are wrapped with
    {"ok": true, "request_id": "...", ...} for success and {"ok": false,
    "request_id": "...", "error": {"code": "...", "message": "..."}} for errors.
  version: 2.0.0
servers:
  - url: https://api.manus.ai
security:
  - ApiKeyAuth: []
paths:
  /v2/project.create:
    post:
      summary: CreateProject
      description: >-
        Creates a new project. Projects let you group related tasks and apply
        shared instructions. Pass the returned ID as `project_id` in
        [task.create](https://open.manus.ai/docs/v2/task.create) to create tasks
        within this project.
      operationId: openapi.v2.OpenapiV2Service.CreateProject
      parameters:
        - name: x-manus-api-key
          in: header
          required: false
          schema:
            type: string
          description: >-
            API key for direct authentication. Provide either this or
            `Authorization`, not both. See
            [Authentication](https://open.manus.ai/docs/v2/authentication).
        - name: Authorization
          in: header
          required: false
          schema:
            type: string
            example: Bearer {access_token}
          description: >-
            OAuth2 access token in `Bearer {token}` format. Provide either this
            or `x-manus-api-key`, not both. See the [Open
            App](https://open.manus.ai/docs/v2/open-app) guide.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Display name for the project.
                instruction:
                  type: string
                  description: >-
                    Default instruction that will be automatically prepended to
                    all tasks created within this project. Use this to enforce
                    consistent behavior across related tasks (e.g., "Always
                    respond in formal English" or "Focus on financial
                    analysis").
              required:
                - name
      responses:
        '200':
          description: Project created successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                    description: Whether the request was successful.
                  request_id:
                    type: string
                    description: Unique identifier for this API request.
                  project:
                    $ref: '#/components/schemas/Project'
                    description: The created project object.
        4XX:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security: []
components:
  schemas:
    Project:
      type: object
      description: A project for organizing tasks with shared instructions.
      properties:
        id:
          type: string
          description: Unique identifier for the project.
        name:
          type: string
          description: Display name of the project.
        created_at:
          type: integer
          format: int64
          description: Unix timestamp (seconds) when the project was created.
        instruction:
          type: string
          description: Default instruction applied to all tasks in this project.
    ErrorResponse:
      type: object
      description: Standard error response format returned when a request fails.
      properties:
        ok:
          type: boolean
          example: false
          description: Always false for error responses.
        request_id:
          type: string
          description: >-
            Unique identifier for this API request, useful for debugging with
            support.
        error:
          type: object
          description: Error details.
          properties:
            code:
              type: string
              description: >-
                Machine-readable error code (e.g., "invalid_argument",
                "not_found", "permission_denied", "rate_limited").
            message:
              type: string
              description: Human-readable error description explaining what went wrong.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-manus-api-key

````