Convai Custom LLM API

Register, update, deregister, and list OpenAI-compatible custom LLM endpoints to use as the reasoning backbone for Convai characters. Lets Enterprise customers route character responses through their own model deployments. Enterprise tier.

Convai Custom LLM API is one of 10 APIs that Convai publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 machine-runnable capability that can be deployed as REST, MCP, or Agent Skill surfaces via Naftiko.

Tagged areas include AI, Conversational AI, LLM, and BYO Model. The published artifact set on APIs.io includes API documentation, an OpenAPI specification, and 1 Naftiko capability spec.

OpenAPI Specification

convai-custom-llm-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Convai Custom LLM API
  version: "1.0"
  description: |
    Register and manage custom OpenAI-compatible LLM endpoints to use as the
    reasoning backbone for Convai characters. Lets Enterprise customers route
    character responses through their own model deployments. Enterprise tier.
servers:
- url: https://api.convai.com
security:
- ConvaiApiKey: []
paths:
  /custom-llm/register:
    post:
      summary: Register Custom LLM
      operationId: registerCustomLLM
      tags: [Custom LLM]
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [model_group_name, model_name, api_key, base_url]
              properties:
                model_group_name: { type: string }
                model_name: { type: string }
                api_key: { type: string }
                base_url: { type: string, format: uri }
                is_uncensored: { type: boolean, default: false }
      responses:
        '200': { description: Registered }
  /custom-llm/update:
    post:
      summary: Update Custom LLM
      operationId: updateCustomLLM
      tags: [Custom LLM]
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [model_group_name]
              properties:
                model_group_name: { type: string }
                model_name: { type: string }
                api_key: { type: string }
                base_url: { type: string, format: uri }
                is_uncensored: { type: boolean }
      responses:
        '200': { description: Updated }
  /custom-llm/deregister:
    post:
      summary: Deregister Custom LLM
      operationId: deregisterCustomLLM
      tags: [Custom LLM]
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [model_group_name]
              properties:
                model_group_name: { type: string }
      responses:
        '200': { description: Deregistered }
  /custom-llm/list:
    post:
      summary: List Custom LLMs
      operationId: listCustomLLMs
      tags: [Custom LLM]
      responses:
        '200':
          description: Custom LLM list
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    model_group_name: { type: string }
                    model_name: { type: string }
                    base_url: { type: string }
components:
  securitySchemes:
    ConvaiApiKey:
      type: apiKey
      in: header
      name: CONVAI-API-KEY