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

# List apps

> Returns paginated app list with filtering. Response schema varies by API version.



## OpenAPI

````yaml /openapi.json get /api/v1/apps
openapi: 3.1.0
info:
  title: Phala Cloud API
  version: 0.1.0
servers:
  - url: https://cloud-api.phala.com
security: []
tags:
  - name: CVMs
    description: Confidential Virtual Machine (CVM) lifecycle management on Phala Network
  - name: Apps
    description: App template management and CVM deployment from app blueprints
  - name: Webhooks
    description: Manage webhook endpoints and monitor delivery history
  - name: SSH Keys
    description: SSH public key management for CVM access
  - name: KMS
    description: >-
      Key Management Service — key derivation, on-chain anchoring, and
      inspection
  - name: Instance Types
    description: Available hardware configurations for CVM deployment
  - name: Attestations
    description: Remote attestation and TEE verification endpoints
paths:
  /api/v1/apps:
    get:
      tags:
        - Apps
      summary: List apps
      description: >-
        Returns paginated app list with filtering. Response schema varies by API
        version.
      operationId: list_dstack_apps_api_v1_apps_get
      parameters:
        - name: page
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            description: Page number (1-indexed)
            default: 1
            title: Page
          description: Page number (1-indexed)
        - name: page_size
          in: query
          required: false
          schema:
            type: integer
            maximum: 100
            minimum: 1
            description: Items per page
            default: 20
            title: Page Size
          description: Items per page
        - name: search
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: Search name, app_id, vm_uuid, instance_id
            title: Search
          description: Search name, app_id, vm_uuid, instance_id
        - name: status
          in: query
          required: false
          schema:
            anyOf:
              - items:
                  type: string
                type: array
              - type: 'null'
            description: CVM status filter
            title: Status
          description: CVM status filter
        - name: listed
          in: query
          required: false
          schema:
            anyOf:
              - type: boolean
              - type: 'null'
            description: Listed status filter
            title: Listed
          description: Listed status filter
        - name: base_image
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: OS image name filter
            title: Base Image
          description: OS image name filter
        - name: instance_type
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: Instance type filter
            title: Instance Type
          description: Instance type filter
        - name: kms_slug
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: KMS slug filter
            title: Kms Slug
          description: KMS slug filter
        - name: kms_type
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: KMS type filter
            title: Kms Type
          description: KMS type filter
        - name: node
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: Node name filter (matches teepod or node name)
            title: Node
          description: Node name filter (matches teepod or node name)
        - name: region
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: Region identifier filter
            title: Region
          description: Region identifier filter
      responses:
        '200':
          description: Paginated app list
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: >-
                      #/components/schemas/teehouse__api__routes__apps__v20251028__schemas__DstackAppListResponse
                  - $ref: >-
                      #/components/schemas/teehouse__api__routes__apps__v20260121__schemas__DstackAppListResponse
                title: Response List Dstack Apps Api V1 Apps Get
        '401':
          description: Not authenticated
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    teehouse__api__routes__apps__v20251028__schemas__DstackAppListResponse:
      properties:
        dstack_apps:
          items:
            anyOf:
              - $ref: >-
                  #/components/schemas/teehouse__api__routes__apps__v20251028__schemas__DstackAppFullResponse
              - $ref: '#/components/schemas/DstackAppMinimalResponse'
          type: array
          title: Dstack Apps
        page:
          type: integer
          title: Page
        page_size:
          type: integer
          title: Page Size
        total:
          type: integer
          title: Total
        total_pages:
          type: integer
          title: Total Pages
      type: object
      required:
        - dstack_apps
        - page
        - page_size
        - total
        - total_pages
      title: DstackAppListResponse
    teehouse__api__routes__apps__v20260121__schemas__DstackAppListResponse:
      properties:
        dstack_apps:
          items:
            anyOf:
              - $ref: >-
                  #/components/schemas/teehouse__api__routes__apps__v20260121__schemas__DstackAppFullResponse
              - $ref: '#/components/schemas/DstackAppMinimalResponse'
          type: array
          title: Dstack Apps
        page:
          type: integer
          title: Page
        page_size:
          type: integer
          title: Page Size
        total:
          type: integer
          title: Total
        total_pages:
          type: integer
          title: Total Pages
      type: object
      required:
        - dstack_apps
        - page
        - page_size
        - total
        - total_pages
      title: DstackAppListResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    teehouse__api__routes__apps__v20251028__schemas__DstackAppFullResponse:
      properties:
        id:
          type: string
          pattern: ^prj_.+
          format: hashid
          title: HashedId[projects]
          description: A hashed identifier that maps to an internal database ID
          examples:
            - prj_0123abcd
        name:
          type: string
          title: Name
        app_id:
          type: string
          title: App Id
        app_provision_type:
          anyOf:
            - type: string
            - type: 'null'
          title: App Provision Type
        app_icon_url:
          anyOf:
            - type: string
            - type: 'null'
          title: App Icon Url
        created_at:
          type: string
          title: Created At
        kms_type:
          type: string
          title: Kms Type
        profile:
          anyOf:
            - $ref: '#/components/schemas/ProfileGetResponse'
            - type: 'null'
        current_cvm:
          anyOf:
            - $ref: >-
                #/components/schemas/teehouse__api__routes__apps__v20251028__schemas__CvmBasicInfo
            - type: 'null'
        cvms:
          items:
            $ref: >-
              #/components/schemas/teehouse__api__routes__apps__v20251028__schemas__CvmBasicInfo
          type: array
          title: Cvms
        cvm_count:
          type: integer
          title: Cvm Count
          default: 0
        team_slug:
          anyOf:
            - type: string
            - type: 'null'
          title: Team Slug
        team_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Team Name
      type: object
      required:
        - id
        - name
        - app_id
        - created_at
        - kms_type
      title: DstackAppFullResponse
    DstackAppMinimalResponse:
      properties:
        id:
          type: 'null'
          title: Id
        app_id:
          type: string
          title: App Id
        name:
          type: 'null'
          title: Name
        app_provision_type:
          type: 'null'
          title: App Provision Type
        app_icon_url:
          type: 'null'
          title: App Icon Url
        created_at:
          type: 'null'
          title: Created At
        kms_type:
          type: 'null'
          title: Kms Type
        profile:
          type: 'null'
          title: Profile
        current_cvm:
          type: 'null'
          title: Current Cvm
        cvms:
          type: 'null'
          title: Cvms
        cvm_count:
          type: 'null'
          title: Cvm Count
      type: object
      required:
        - app_id
      title: DstackAppMinimalResponse
    teehouse__api__routes__apps__v20260121__schemas__DstackAppFullResponse:
      properties:
        id:
          type: string
          pattern: ^prj_.+
          format: hashid
          title: HashedId[projects]
          description: A hashed identifier that maps to an internal database ID
          examples:
            - prj_0123abcd
        name:
          type: string
          title: Name
        app_id:
          type: string
          title: App Id
        app_provision_type:
          anyOf:
            - type: string
            - type: 'null'
          title: App Provision Type
        app_icon_url:
          anyOf:
            - type: string
            - type: 'null'
          title: App Icon Url
        created_at:
          type: string
          title: Created At
        kms_type:
          type: string
          title: Kms Type
        profile:
          anyOf:
            - $ref: '#/components/schemas/ProfileGetResponse'
            - type: 'null'
        current_cvm:
          anyOf:
            - $ref: >-
                #/components/schemas/teehouse__api__routes__cvms__v20260121__schemas__CVMInfo
            - type: 'null'
        cvms:
          items:
            $ref: >-
              #/components/schemas/teehouse__api__routes__cvms__v20260121__schemas__CVMInfo
          type: array
          title: Cvms
        cvm_count:
          type: integer
          title: Cvm Count
          default: 0
      type: object
      required:
        - id
        - name
        - app_id
        - created_at
        - kms_type
      title: DstackAppFullResponse
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    ProfileGetResponse:
      properties:
        display_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Display Name
        avatar_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Avatar Url
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
        custom_domain:
          anyOf:
            - type: string
            - type: 'null'
          title: Custom Domain
      type: object
      title: ProfileGetResponse
      description: Response model for entity profile - only public display data.
    teehouse__api__routes__apps__v20251028__schemas__CvmBasicInfo:
      properties:
        vm_uuid:
          anyOf:
            - type: string
            - type: 'null'
          title: Vm Uuid
        app_id:
          type: string
          title: App Id
        name:
          type: string
          title: Name
          default: ''
        status:
          type: string
          title: Status
        vcpu:
          type: integer
          title: Vcpu
        memory:
          type: integer
          title: Memory
        disk_size:
          type: integer
          title: Disk Size
        teepod_id:
          type: integer
          title: Teepod Id
        teepod_name:
          type: string
          title: Teepod Name
        region_identifier:
          anyOf:
            - type: string
            - type: 'null'
          title: Region Identifier
        kms_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Kms Type
        instance_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Instance Type
        listed:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Listed
        base_image:
          anyOf:
            - type: string
            - type: 'null'
          title: Base Image
        kms_slug:
          anyOf:
            - type: string
            - type: 'null'
          title: Kms Slug
        kms_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Kms Id
        instance_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Instance Id
        machine_info:
          anyOf:
            - $ref: '#/components/schemas/MachineInfo'
            - type: 'null'
        updated_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Updated At
      type: object
      required:
        - vm_uuid
        - app_id
        - status
        - vcpu
        - memory
        - disk_size
        - teepod_id
        - teepod_name
        - region_identifier
        - kms_type
        - instance_type
      title: CvmBasicInfo
    teehouse__api__routes__cvms__v20260121__schemas__CVMInfo:
      properties:
        id:
          type: string
          pattern: ^cvm_.+
          format: hashid
          title: HashedId[cvms]
          description: A hashed identifier that maps to an internal database ID
          examples:
            - cvm_0123abcd
        name:
          type: string
          title: Name
        app_id:
          anyOf:
            - type: string
            - type: 'null'
          title: App Id
        vm_uuid:
          anyOf:
            - type: string
            - type: 'null'
          title: Vm Uuid
        instance_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Instance Id
        resource:
          $ref: '#/components/schemas/CVMResourceInfo'
        node_info:
          anyOf:
            - $ref: '#/components/schemas/NodeRef'
            - type: 'null'
        os:
          anyOf:
            - $ref: '#/components/schemas/CVMOSInfo'
            - type: 'null'
        kms_type:
          anyOf:
            - $ref: '#/components/schemas/KmsType'
            - type: 'null'
        kms_info:
          anyOf:
            - $ref: '#/components/schemas/CVMKmsInfo'
            - type: 'null'
        status:
          type: string
          title: Status
        in_progress:
          type: boolean
          title: In Progress
          default: false
        progress:
          anyOf:
            - $ref: '#/components/schemas/CVMProgressInfo'
            - type: 'null'
        compose_hash:
          anyOf:
            - type: string
            - type: 'null'
          title: Compose Hash
        docker_compose_hash:
          anyOf:
            - type: string
            - type: 'null'
          title: Docker Compose Hash
        pre_launch_script_hash:
          anyOf:
            - type: string
            - type: 'null'
          title: Pre Launch Script Hash
        gateway:
          $ref: '#/components/schemas/CVMGatewayInfo'
        logs:
          $ref: '#/components/schemas/CVMLogUrls'
        services:
          items:
            additionalProperties: true
            type: object
          type: array
          title: Services
        endpoints:
          anyOf:
            - items:
                $ref: '#/components/schemas/CvmNetworkUrls'
              type: array
            - type: 'null'
          title: Endpoints
        public_logs:
          type: boolean
          title: Public Logs
          default: false
        public_sysinfo:
          type: boolean
          title: Public Sysinfo
          default: false
        public_tcbinfo:
          type: boolean
          title: Public Tcbinfo
          default: true
        gateway_enabled:
          type: boolean
          title: Gateway Enabled
          default: false
        secure_time:
          type: boolean
          title: Secure Time
          default: false
        storage_fs:
          type: string
          title: Storage Fs
          default: zfs
        workspace:
          anyOf:
            - $ref: '#/components/schemas/WorkspaceRef'
            - type: 'null'
        creator:
          anyOf:
            - $ref: '#/components/schemas/UserRef'
            - type: 'null'
        created_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Created At
        deleted_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Deleted At
        listed:
          type: boolean
          title: Listed
          default: false
        project_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Project Type
      type: object
      required:
        - id
        - name
        - resource
        - status
        - gateway
      title: CVMInfo
    MachineInfo:
      properties:
        vcpu:
          type: integer
          title: Vcpu
          description: Virtual CPU count
        memory:
          type: integer
          title: Memory
          description: Memory in MB
        disk_size:
          type: integer
          title: Disk Size
          description: Disk size in GB
        gpu_count:
          type: integer
          title: Gpu Count
          description: GPU count (0 if none)
      type: object
      required:
        - vcpu
        - memory
        - disk_size
        - gpu_count
      title: MachineInfo
      description: CVM hardware configuration.
    CVMResourceInfo:
      properties:
        instance_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Instance Type
        vcpu:
          anyOf:
            - type: integer
            - type: 'null'
          title: Vcpu
        memory_in_gb:
          anyOf:
            - type: number
            - type: 'null'
          title: Memory In Gb
        disk_in_gb:
          anyOf:
            - type: integer
            - type: 'null'
          title: Disk In Gb
        gpus:
          anyOf:
            - type: integer
            - type: 'null'
          title: Gpus
        compute_billing_price:
          anyOf:
            - type: string
              format: decimal
              description: A monetary value with precise decimal arithmetic
              examples:
                - '19.99'
                - '123.456000'
            - type: 'null'
          title: Compute Billing Price
        billing_period:
          anyOf:
            - $ref: '#/components/schemas/BillingPeriod'
            - type: 'null'
      type: object
      title: CVMResourceInfo
    NodeRef:
      properties:
        object_type:
          type: string
          const: node
          title: Object Type
          description: Fixed value 'node'
          default: node
        id:
          anyOf:
            - type: integer
            - type: 'null'
          title: Id
          description: Teepod numeric ID
        node_id:
          anyOf:
            - type: integer
            - type: 'null'
          title: Node Id
          description: Physical node numeric ID
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
          description: Node display name
        region:
          anyOf:
            - type: string
            - type: 'null'
          title: Region
          description: Region identifier
        device_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Device Id
          description: Device ID
        ppid:
          anyOf:
            - type: string
            - type: 'null'
          title: Ppid
          description: PPID
        status:
          anyOf:
            - $ref: '#/components/schemas/TeepodStatus'
            - type: 'null'
          description: Node status
        version:
          anyOf:
            - type: string
            - type: 'null'
          title: Version
          description: Teepod version
      type: object
      title: NodeRef
      description: Minimal node/teepod reference for embedding in responses.
    CVMOSInfo:
      properties:
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        version:
          anyOf:
            - type: string
            - type: 'null'
          title: Version
        is_dev:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Is Dev
        os_image_hash:
          anyOf:
            - type: string
            - type: 'null'
          title: Os Image Hash
      type: object
      title: CVMOSInfo
    KmsType:
      type: string
      enum:
        - phala
        - ethereum
        - base
        - legacy
      title: KmsType
    CVMKmsInfo:
      properties:
        chain_id:
          anyOf:
            - type: integer
            - type: 'null'
          title: Chain Id
        dstack_kms_address:
          anyOf:
            - type: string
            - type: 'null'
          title: Dstack Kms Address
        dstack_app_address:
          anyOf:
            - type: string
            - type: 'null'
          title: Dstack App Address
        deployer_address:
          anyOf:
            - type: string
            - type: 'null'
          title: Deployer Address
        rpc_endpoint:
          anyOf:
            - type: string
            - type: 'null'
          title: Rpc Endpoint
        encrypted_env_pubkey:
          anyOf:
            - type: string
            - type: 'null'
          title: Encrypted Env Pubkey
      type: object
      title: CVMKmsInfo
    CVMProgressInfo:
      properties:
        target:
          anyOf:
            - type: string
            - type: 'null'
          title: Target
        started_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Started At
        correlation_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Correlation Id
      type: object
      title: CVMProgressInfo
    CVMGatewayInfo:
      properties:
        base_domain:
          anyOf:
            - type: string
            - type: 'null'
          title: Base Domain
        cname:
          anyOf:
            - type: string
            - type: 'null'
          title: Cname
      type: object
      title: CVMGatewayInfo
    CVMLogUrls:
      properties:
        serial:
          anyOf:
            - type: string
            - type: 'null'
          title: Serial
        stdout:
          anyOf:
            - type: string
            - type: 'null'
          title: Stdout
        stderr:
          anyOf:
            - type: string
            - type: 'null'
          title: Stderr
        container_log_base:
          anyOf:
            - type: string
            - type: 'null'
          title: Container Log Base
      type: object
      title: CVMLogUrls
    CvmNetworkUrls:
      properties:
        app:
          type: string
          title: App
        instance:
          type: string
          title: Instance
      type: object
      required:
        - app
        - instance
      title: CvmNetworkUrls
      description: Model representing public URLs for a CVM port
    WorkspaceRef:
      properties:
        object_type:
          type: string
          const: workspace
          title: Object Type
          description: Fixed value 'workspace'
          default: workspace
        id:
          type: string
          pattern: ^wks_.+
          format: hashid
          title: HashedId[teams]
          description: Hashed workspace ID
          examples:
            - wks_0123abcd
        name:
          type: string
          title: Name
          description: Workspace display name
        slug:
          anyOf:
            - type: string
            - type: 'null'
          title: Slug
          description: URL-safe workspace identifier
        avatar_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Avatar Url
          description: Workspace avatar URL from profile
      type: object
      required:
        - id
        - name
      title: WorkspaceRef
      description: Minimal workspace reference for embedding in responses.
    UserRef:
      properties:
        object_type:
          type: string
          const: user
          title: Object Type
          description: Fixed value 'user'
          default: user
        id:
          anyOf:
            - type: string
              pattern: ^usr_.+
              format: hashid
              title: HashedId[users]
              description: A hashed identifier that maps to an internal database ID
              examples:
                - usr_0123abcd
            - type: 'null'
          title: Id
          description: Hashed user ID
        username:
          anyOf:
            - type: string
            - type: 'null'
          title: Username
          description: Display username
        avatar_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Avatar Url
          description: Gravatar or OAuth provider avatar URL
      type: object
      title: UserRef
      description: Minimal user reference for embedding in responses.
    BillingPeriod:
      type: string
      enum:
        - skip
        - hourly
        - monthly
      title: BillingPeriod
    TeepodStatus:
      type: string
      enum:
        - ONLINE
        - OFFLINE
        - MAINTENANCE
      title: TeepodStatus

````