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

# /v1/apps/create

> This endpoint creates a new application.

<Warning>
  This endpoint has a rate limit of 1 request every 3 seconds.
</Warning>


## OpenAPI

````yaml POST /v1/apps/create
openapi: 3.1.0
info:
  title: CamposCloud API Documentation
  description: >-
    This documentation provides an overview of the CamposCloud API, including
    authentication, endpoints, and data structures. It is designed to help
    developers integrate with the CamposCloud platform effectively.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.camposcloud.com
security:
  - bearerAuth: []
paths:
  /v1/apps/create:
    post:
      description: Creates a new application
      requestBody:
        description: Application data to create
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CreateApplication'
        required: true
      responses:
        '201':
          description: Application created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationDataCreatedResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    CreateApplication:
      required:
        - file
        - appName
        - mainFile
        - memoryMB
        - runtimeEnvironment
      type: object
      properties:
        file:
          type: string
          format: binary
          description: Application file to upload (.zip only!!)
        appName:
          type: string
          description: The name of the application
          example: My Application
        mainFile:
          type: string
          description: The main file of the application
          example: index.py
        exposedViaWeb:
          type: boolean
          description: Indicates if the application is exposed via the web
          default: false
          example: false
        memoryMB:
          type: integer
          format: int32
          description: The amount of memory allocated to the application in MB
          example: 256
        autoRestartEnabled:
          type: boolean
          description: Indicates if auto-restart is enabled for the application
          default: false
          example: true
        startupCommand:
          type: string
          description: The command used to start the application
          example: ''
        runtimeEnvironment:
          type: string
          description: The runtime environment of the application
          example: python
          enum:
            - python
            - nodejs
        team:
          type: string
          description: >-
            The unique identifier of the team associated with the application,
            if you want to create the application in a team
          example: 60c72b2f9b1e8d001c8e4f3b
    ApplicationDataCreatedResponse:
      type: object
      properties:
        _id:
          type: string
          description: The unique identifier of the application
          example: 60c72b2f9b1e8d001c8e4f3a
        containerId:
          type: string
          description: The unique identifier of the container
          example: da886ad3-88e9-4012-b893-130e87f6b747
        teamId:
          type:
            - string
            - 'null'
          description: The unique identifier of the team associated with the application
          example: 60c72b2f9b1e8d001c8e4f3b
        restartRequired:
          type: boolean
          description: Indicates if a restart is required for the application
          example: false
        userId:
          type: string
          description: The unique identifier of the user who owns the application
          example: 60c72b2f9b1e8d001c8e4f3a
        name:
          type: string
          description: The name of the application
          example: My Application
        allocatedMemoryMB:
          type: integer
          format: int32
          description: The amount of memory allocated to the application in MB
          example: 256
        allocatedVCpu:
          type: integer
          format: int32
          description: The number of virtual CPUs allocated to the application
          example: 8
        workerNodeId:
          type: object
          properties:
            _id:
              type: string
              description: The unique identifier of the worker node
              example: 60c72b2f9b1e8d001c8e4f3c
            nodeName:
              type: string
              description: The name of the worker node
              example: ODIN
        containerImage:
          type: string
          description: The Docker image used for the application
          example: kevencampos/camposcloud-python
        exposedViaWeb:
          type: boolean
          description: Indicates if the application is exposed via the web
          example: false
        startupCommand:
          type: string
          description: The command used to start the application
          example: python -u index.py
        installDependenciesCmd:
          type: string
          description: The command used to install dependencies for the application
          example: pip install -r requirements.txt
        runtimeEnvironment:
          type: string
          description: The runtime environment of the application
          example: python
        autoRestartEnabled:
          type: boolean
          description: Indicates if auto-restart is enabled for the application
          example: false
        status:
          type: string
          description: The current status of the application
          example: active
        environmentVariables:
          type: array
          description: List of environment variables set for the application
          items:
            type: object
            properties:
              key:
                type: string
                description: The name of the environment variable
                example: API_PORT
              value:
                type: string
                description: The value of the environment variable
                example: '3005'
              _id:
                type: string
                description: The unique identifier of the environment variable
                example: 60c72b2f9b1e8d001c8e4f3d
        createdAt:
          type: string
          format: date-time
          description: The date and time when the application was created
          example: '2025-07-19T00:02:54.455Z'
        updatedAt:
          type: string
          format: date-time
          description: The date and time when the application was last updated
          example: '2025-07-19T17:57:05.069Z'
        externalPort:
          type:
            - integer
            - 'null'
          description: >-
            The external port exposed by the application, null if the
            application is not exposed via the web
        assignedCustomDomain:
          type:
            - string
            - 'null'
          description: >-
            The custom domain assigned to the application, null if no custom
            domain is assigned
          example: myapp.domain.com
    Error:
      required:
        - error
        - message
      type: object
      properties:
        error:
          type: string
          example: Not found
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````