Plandex Models API

Model packs, custom models, custom providers, default settings.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

plandex-models-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Plandex Server Accounts Models API
  description: Management and orchestration REST API exposed by the Plandex server (open-source, Go) used by the Plandex CLI/REPL to drive long-running coding plans across organizations, projects, plans, branches, context, conversation, model packs, and configuration. The same API powered Plandex Cloud (winding down 2025-10-03) and now powers self-hosted / local-mode deployments via Docker. Default local-mode bind is http://localhost:8099.
  version: '2'
  contact:
    name: Plandex AI
    url: https://plandex.ai
  license:
    name: MIT
    url: https://github.com/plandex-ai/plandex/blob/main/LICENSE
  termsOfService: https://plandex.ai/terms
servers:
- url: http://localhost:8099
  description: Default self-hosted / local-mode Plandex server (Docker)
- url: https://api.plandex.ai
  description: Plandex Cloud (winding down as of 2025-10-03; no longer accepting new users)
security:
- BearerAuth: []
tags:
- name: Models
  description: Model packs, custom models, custom providers, default settings.
paths:
  /custom_models:
    get:
      tags:
      - Models
      summary: List Custom Models
      description: List user-defined custom models.
      operationId: listCustomModels
      responses:
        '200':
          description: Custom models.
    post:
      tags:
      - Models
      summary: Upsert Custom Models
      description: Create or update one or more custom models.
      operationId: upsertCustomModels
      responses:
        '200':
          description: Custom models upserted.
  /custom_models/{modelId}:
    get:
      tags:
      - Models
      summary: Get Custom Model
      description: Get a single user-defined custom model.
      operationId: getCustomModel
      parameters:
      - in: path
        name: modelId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Custom model.
  /custom_providers:
    get:
      tags:
      - Models
      summary: List Custom Providers
      description: List custom (OpenAI-compatible) model providers.
      operationId: listCustomProviders
      responses:
        '200':
          description: Custom providers.
  /custom_providers/{providerId}:
    get:
      tags:
      - Models
      summary: Get Custom Provider
      description: Get a custom provider by ID.
      operationId: getCustomProvider
      parameters:
      - in: path
        name: providerId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Custom provider.
  /model_sets:
    get:
      tags:
      - Models
      summary: List Model Packs
      description: List available model packs (daily, strong, cheap, oss, planner-specific, custom).
      operationId: listModelPacks
      responses:
        '200':
          description: Model packs.
    post:
      tags:
      - Models
      summary: Create Model Pack
      description: Create a new model pack composition.
      operationId: createModelPack
      responses:
        '201':
          description: Model pack created.
  /model_sets/{setId}:
    put:
      tags:
      - Models
      summary: Update Model Pack
      description: Update an existing model pack.
      operationId: updateModelPack
      parameters:
      - in: path
        name: setId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Model pack updated.
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Bearer token issued by the Plandex server on sign-in. Used by the CLI/REPL for all authenticated API calls.