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

# Create a workspace

> Creates a workspace for the authenticated developer. A workspace slug is
generated from the workspace name and used as the workspace identifier.
Workspace slugs must be globally unique.
Generated slugs will only include ASCII characters. Spaces and non-ASCII
characters are replaced with hyphens.




## OpenAPI

````yaml https://global.thenile.dev/openapi.yaml post /workspaces
openapi: 3.0.1
info:
  title: Nile ReST API
  description: Making SaaS chill.
  contact:
    email: support@thenile.dev
  version: 0.1.0-1133318
servers:
  - url: https://global.thenile.dev
security: []
paths:
  /workspaces:
    post:
      tags:
        - workspaces
      summary: Create a workspace
      description: |
        Creates a workspace for the authenticated developer. A workspace slug is
        generated from the workspace name and used as the workspace identifier.
        Workspace slugs must be globally unique.
        Generated slugs will only include ASCII characters. Spaces and non-ASCII
        characters are replaced with hyphens.
      operationId: createWorkspace
      requestBody:
        description: The name of the new workspace
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/CreateWorkspaceRequest'
        required: true
      responses:
        '201':
          description: Created workspace
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Workspace'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
        '409':
          description: Workspace with the same name already exists
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
      security:
        - jwtBearerAuth: []
components:
  schemas:
    CreateWorkspaceRequest:
      required:
        - name
      type: object
      properties:
        name:
          type: string
          description: The name of the new workspace.
      description: Parameters for creating a new workspace.
    Workspace:
      required:
        - name
        - slug
      type: object
      properties:
        id:
          type: string
        name:
          minLength: 1
          type: string
        slug:
          minLength: 1
          type: string
        stripe_customer_id:
          type: string
        created:
          type: string
          format: date-time
    APIError:
      required:
        - errorCode
        - message
        - statusCode
      type: object
      properties:
        errorCode:
          type: string
          enum:
            - internal_error
            - bad_request
            - unsupported_operation
            - forbidden_operation
            - entity_not_found
            - duplicate_entity
            - invalid_credentials
            - unknown_oidc_provider
            - unknown_oidc_party
            - provider_already_exists
            - provider_config_error
            - provider_mismatch
            - provider_update_error
            - provider_disabled
            - session_state_missing
            - session_state_mismatch
            - oidc_code_missing
            - tenant_not_found
            - constraint_violation
            - sql_exception
            - db_creation_failure
            - db_status_failure
            - db_initialization_failure
            - db_deletion_failure
            - db_config_missing
            - unauthorized_workspace_access
            - email_send_failure
            - jdbc_exception
            - oidc_exception
            - region_mismatch
            - credential_creation_failure
            - credential_propagation_failure
            - unauthorized_client
            - unsupported_response_type
            - invalid_request
            - server_error
            - access_denied
            - feature_ineligible
            - customer_lookup_failure
            - threshold_exceeded
            - create_rejected
        message:
          minLength: 1
          type: string
        statusCode:
          type: integer
          format: int32
  securitySchemes:
    jwtBearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````