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

# Create an environment

> Create an environment for a project



## OpenAPI

````yaml https://api.alpic.ai/openapi.json post /v1/environments
openapi: 3.1.1
info:
  title: Alpic API
  version: 1.0.0
servers:
  - url: https://api.alpic.ai
security:
  - bearerAuth: []
paths:
  /v1/environments:
    post:
      tags:
        - environments
      summary: Create an environment
      description: Create an environment for a project
      operationId: environments.create.v1
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                projectId:
                  type: string
                  description: The ID of the project to create the environment for
                name:
                  type: string
                  minLength: 1
                  description: The name of the environment
                sourceBranch:
                  type: string
                  minLength: 1
                  description: The branch used to build the environment
                environmentVariables:
                  type: array
                  items:
                    type: object
                    properties:
                      key:
                        type: string
                        minLength: 2
                        pattern: ^[a-zA-Z]([a-zA-Z0-9_])+$
                      value:
                        type: string
                        minLength: 1
                      isSecret:
                        type: boolean
                        default: false
                    required:
                      - key
                      - value
                  default: []
              required:
                - projectId
                - name
                - sourceBranch
      responses:
        '200':
          description: The environment has been created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  name:
                    type: string
                  sourceBranch:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: The branch used to build the environment
                  urls:
                    type: array
                    items:
                      type: string
                      format: uri
                    description: The URLs of the MCP server
                  createdAt:
                    type: string
                    format: date-time
                    x-native-type: date
                  projectId:
                    type: string
                    description: The ID of the project the environment belongs to
                required:
                  - id
                  - name
                  - sourceBranch
                  - urls
                  - createdAt
                  - projectId
        '400':
          description: '400'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: BAD_REQUEST
                      status:
                        const: 400
                      message:
                        type: string
                        default: Bad Request
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
        '404':
          description: '404'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: NOT_FOUND
                      status:
                        const: 404
                      message:
                        type: string
                        default: Not Found
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
components:
  securitySchemes:
    bearerAuth:
      type: http
      description: >-
        Bearer token for authentication. Use an API key from the API Keys page
        in team settings, or an OAuth access token.
      scheme: bearer

````