Flowra LLM API

List AI models and generate completions

GitHub OpenAPI

Operations 3

POST /api/v1/ai/llm/chat Chat with conversation history #
POST /api/v1/ai/llm/generate Generate text #
GET /api/v1/ai/models AI model controller get models #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/flowra-dev:flowra-dev-llm-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

flowra-dev-llm-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Flowra API (API Key Endpoints) LLM API
  description: '**Flowra** is an AI-powered platform for building agents, workflows, and integrations.


    ### Capabilities

    - **Tools & Toolkits** – Define and group tools for agents and workflows.

    - **Workflows** – Orchestrate steps and automate processes.

    - **Triggers** – Schedule or event-based execution.

    - **Auth & Connections** – OAuth, API keys, and connected accounts.

    - **MCP** – Model Context Protocol server integration.

    - **Knowledge / RAG** – Add files and URLs for retrieval-augmented generation.


    ### Authentication

    Use the **x-api-key** header with a project API key to access endpoints that support API Key auth. Create and manage API keys in the dashboard under your project settings.


    Only endpoints that support API Key authentication via the @ApiKeyEnabled() decorator.


    Send x-api-key (required). On multi-tenant endpoints, optionally send x-username to act as an external user.'
  version: '1.0'
  contact:
    name: Flowra
    url: https://flowra.dev
servers:
- url: https://flowra.dev
  description: Flowra API
tags:
- name: LLM
  description: List AI models and generate completions
paths:
  /api/v1/ai/llm/chat:
    post:
      operationId: LLMController_chat
      x-apiKeyEnabled: true
      summary: Chat with conversation history
      description: Send a list of messages (user/assistant/system) and get the next assistant reply. Use for multi-turn conversations.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChatDto'
      responses:
        '200':
          description: Assistant reply text
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringSuccessResponse'
              example:
                success: true
                message: Operation completed successfully
                data: ''
      tags:
      - LLM
      security:
      - x-api-key: []
  /api/v1/ai/llm/generate:
    post:
      operationId: LLMController_generate
      x-apiKeyEnabled: true
      summary: Generate text
      description: Send a prompt and receive generated text from the configured LLM. Use for one-off completions, chat replies, or any task that needs AI-generated text. Supports long prompts.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenerateTextDto'
      responses:
        '200':
          description: Generated text
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringSuccessResponse'
              example:
                success: true
                message: Operation completed successfully
                data: ''
      tags:
      - LLM
      security:
      - x-api-key: []
  /api/v1/ai/models:
    get:
      operationId: AIModelController_getModels
      x-apiKeyEnabled: true
      summary: AI model controller get models
      description: Get models - returns all for admin, active only for others
      parameters:
      - name: kind
        required: false
        in: query
        description: Catalog to list. Default chat (LLM brains). Use image, video, tts, or stt for media models.
        schema:
          default: chat
          example: chat
          enum:
          - chat
          - image
          - video
          - tts
          - stt
          type: string
      responses:
        '200':
          description: List of AI models retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AiModelResponseDtoArraySuccessResponse'
              example:
                success: true
                message: Operation completed successfully
                data:
                - id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                  modelId: openai/gpt-4o-mini
                  canonicalSlug: openai/gpt-4o-mini
                  name: GPT-4o Mini
                  provider: openai
                  contextLength: 128000
                  knowledgeCutoff: 2024-06
                  architecture:
                    modality: text->text
                    inputModalities:
                    - text
                    outputModalities:
                    - text
                  supportedParameters:
                  - temperature
                  - max_tokens
                  pricing:
                    prompt: '0.000001'
                    completion: '0.000002'
                    input: '0.000001'
                    output: '0.000002'
                    cachedInputTokens: '0.0000005'
                    cacheCreationInputTokens: '0.000001'
                  mediaKind: null
                  reserveUsdPerUnit: 0.06
                  mediaCapabilities:
                    unit: second
                    supportsEdit: true
                    defaultVoice: alloy
                    supportedVoices:
                    - alloy
                    - verse
                    durations:
                    - 4
                    - 8
                    resolutions:
                    - 720p
                    - 1080p
                    aspectRatios:
                    - '16:9'
                    - '9:16'
                    sizes:
                    - 1024x1024
                  isActive: true
                  description: ''
                  supportsReasoning: true
                  supportsEffort: true
      tags:
      - LLM
      security:
      - x-api-key: []
      x-summary-source: derived
components:
  schemas:
    StringSuccessResponse:
      type: object
      properties:
        success:
          type: boolean
          description: Success status
          example: true
        message:
          type: string
          description: Success message
          example: Operation completed successfully
        data:
          type: string
          description: Response data
          example: ''
      required:
      - success
      - message
      - data
    ChatDto:
      type: object
      properties:
        messages:
          description: Conversation history
          example:
          - role: user
            content: What is Flowra?
          type: array
          items:
            $ref: '#/components/schemas/ChatMessageDto'
        model:
          type: string
          description: Model ID
          example: openai/gpt-4o-mini
        temperature:
          type: number
          description: Temperature (0-2)
          example: 0.7
        maxTokens:
          type: number
          description: Max tokens in response
          example: 1024
        systemPrompt:
          type: string
          description: System prompt (prepended if no system message in history)
          example: Answer in one sentence.
      required:
      - messages
    AiModelResponseDtoArraySuccessResponse:
      type: object
      properties:
        success:
          type: boolean
          description: Success status
          example: true
        message:
          type: string
          description: Success message
          example: Operation completed successfully
        data:
          description: Response data
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                description: Model row UUID
                example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
              modelId:
                type: string
                description: Model id used in API calls
                example: openai/gpt-4o-mini
              canonicalSlug:
                type:
                - string
                - 'null'
                example: openai/gpt-4o-mini
              name:
                type: string
                example: GPT-4o Mini
              provider:
                type: string
                example: openai
              contextLength:
                type:
                - number
                - 'null'
                example: 128000
              knowledgeCutoff:
                type:
                - string
                - 'null'
                example: 2024-06
              architecture:
                type: object
                properties:
                  modality:
                    type:
                    - string
                    - 'null'
                    description: OpenRouter modality string (e.g. text->text)
                    example: text->text
                  inputModalities:
                    description: Accepted input modalities
                    example:
                    - text
                    type: array
                    items:
                      type: string
                  outputModalities:
                    description: Produced output modalities
                    example:
                    - text
                    type: array
                    items:
                      type: string
              supportedParameters:
                example:
                - temperature
                - max_tokens
                type:
                - array
                - 'null'
                items:
                  type: string
              pricing:
                type: object
                properties:
                  prompt:
                    type: string
                    description: USD per prompt token
                    example: '0.000001'
                  completion:
                    type: string
                    description: USD per completion token
                    example: '0.000002'
                  input:
                    type: string
                    description: UI alias for prompt
                    example: '0.000001'
                  output:
                    type: string
                    description: UI alias for completion
                    example: '0.000002'
                  cachedInputTokens:
                    type: string
                    description: USD per cached input token
                    example: '0.0000005'
                  cacheCreationInputTokens:
                    type: string
                    description: USD per cache-creation input token
                    example: '0.000001'
              mediaKind:
                type:
                - string
                - 'null'
                enum:
                - image
                - video
                - tts
                - stt
                - null
                description: Dedicated media endpoint kind. Null = chat/LLM.
                example: null
              reserveUsdPerUnit:
                type:
                - number
                - 'null'
                description: Worst-case USD per billing unit for credit reserve
                example: 0.06
              mediaCapabilities:
                type: object
                properties:
                  unit:
                    type: string
                    enum:
                    - image
                    - second
                    - char
                    - minute
                    description: Billing unit for credit reserve
                    example: second
                  supportsEdit:
                    type: boolean
                    description: Supports image-to-image / image-to-video edit
                  defaultVoice:
                    type: string
                    example: alloy
                  supportedVoices:
                    example:
                    - alloy
                    - verse
                    type: array
                    items:
                      type: string
                  durations:
                    example:
                    - 4
                    - 8
                    type: array
                    items:
                      type: number
                  resolutions:
                    example:
                    - 720p
                    - 1080p
                    type: array
                    items:
                      type: string
                  aspectRatios:
                    example:
                    - '16:9'
                    - '9:16'
                    type: array
                    items:
                      type: string
                  sizes:
                    example:
                    - 1024x1024
                    type: array
                    items:
                      type: string
              isActive:
                type: boolean
                example: true
              description:
                type:
                - string
                - 'null'
              supportsReasoning:
                type: boolean
                description: Whether the model supports a reasoning/thinking mode
              supportsEffort:
                type: boolean
                description: Whether reasoning effort can be set for this model
            required:
            - id
            - modelId
            - name
            - provider
            - isActive
            - supportsReasoning
            - supportsEffort
          example:
          - id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
            modelId: openai/gpt-4o-mini
            canonicalSlug: openai/gpt-4o-mini
            name: GPT-4o Mini
            provider: openai
            contextLength: 128000
            knowledgeCutoff: 2024-06
            architecture:
              modality: text->text
              inputModalities:
              - text
              outputModalities:
              - text
            supportedParameters:
            - temperature
            - max_tokens
            pricing:
              prompt: '0.000001'
              completion: '0.000002'
              input: '0.000001'
              output: '0.000002'
              cachedInputTokens: '0.0000005'
              cacheCreationInputTokens: '0.000001'
            mediaKind: null
            reserveUsdPerUnit: 0.06
            mediaCapabilities:
              unit: second
              supportsEdit: true
              defaultVoice: alloy
              supportedVoices:
              - alloy
              - verse
              durations:
              - 4
              - 8
              resolutions:
              - 720p
              - 1080p
              aspectRatios:
              - '16:9'
              - '9:16'
              sizes:
              - 1024x1024
            isActive: true
            description: ''
            supportsReasoning: true
            supportsEffort: true
      required:
      - success
      - message
      - data
    GenerateTextDto:
      type: object
      properties:
        prompt:
          type: string
          maxLength: 400000
          description: Prompt for text generation
          example: Summarize this meeting in three bullets.
        model:
          type: string
          description: Model ID (e.g. openai/gpt-4o-mini)
          example: openai/gpt-4o-mini
        temperature:
          type: number
          description: Temperature (0-2)
          default: 0.7
          example: 0.7
        maxTokens:
          type: number
          description: Max tokens in response
          default: 4096
          example: 1024
        systemPrompt:
          type: string
          description: System prompt to set context
          example: You are a concise meeting assistant.
      required:
      - prompt
    ChatMessageDto:
      type: object
      properties:
        role:
          type: string
          enum:
          - user
          - assistant
          - system
          description: Message role
        content:
          type: string
          maxLength: 400000
          description: Message content
          example: Hello
      required:
      - role
      - content
  securitySchemes:
    x-api-key:
      type: apiKey
      in: header
      name: x-api-key
      description: 'Project API key. Create and manage keys in the dashboard under Project → API Keys. Send as header: x-api-key: <your-key>'
    x-username:
      type: apiKey
      in: header
      name: x-username
      description: 'Optional. External user username. If omitted, Flowra uses the project’s default external user. Send as header: x-username: <username>'