Felo API PlatformFelo API Platform
v0.4.0
OpenAPI 3.1.0

Criar uma conclusão de chat

Servidor:https://openapi.felo.ai
Bibliotecas Cliente

Criar uma conclusão de chat

​

API Chat Completions compatível com a OpenAI. Defina stream=true para receber Server-Sent Events. A resposta e o envelope de erro seguem o formato Chat Completions/compatível com a OpenAI.

Cabeçalhos
  • X-Felo-Channel
    Tipo: string

    Códigos de canal público separados por vírgula, em ordem. Omita este cabeçalho para usar default; default deve ser usado sozinho. No modo carteira, default percorre a ordem efetiva de canais públicos do modelo em ordem inversa, ignora canais não publicados ou indisponíveis e seleciona o provedor do primeiro canal disponível. Inclui os endpoints disponíveis desse provedor com o mesmo ID de modelo upstream e o mesmo service tier. Canais explícitos são validados na ordem especificada pelo cliente; somente o grupo de provedores do primeiro canal é enviado. Não há fallback automático para outros provedores. Cabeçalhos legados de provedor não podem substituir o roteamento por canal.

Corpo·ChatCompletionRequest
obrigatório
application/json
  • messages
    Tipo: array object[] · ChatMessage[] 1…
    obrigatório
    • content
      aceita nulo
      obrigatório
      • Tipo: string
    • role
      Tipo: string enum
      obrigatório
      valores
      • system
      • developer
      • user
      • assistant
      • tool
    • name
      Tipo: string
    • tool_call_id
      Tipo: string
    • tool_calls
      Tipo: array object[]
      • propertyName
        Tipo: anything
    • propertyName
      Tipo: anything
  • model
    Tipo: string
    obrigatório
  • max_completion_tokens
    Tipo: integer
    mín:  
    1

    Integer numbers.

  • max_tokens
    Tipo: integer
    mín:  
    1

    Integer numbers.

  • n
    Tipo: integer
    mín:  
    1

    Integer numbers.

  • response_format
    Tipo: object
    • propertyName
      Tipo: anything
  • service_tier
    Tipo: string | null

    Atualmente, apenas default (standard) é suportado. Valores omitidos, null, aliases e strings não suportadas usam default; outros tipos retornam HTTP 400. Os canais e preços configurados permanecem inalterados. As APIs de texto enviam o valor padrão do provedor; as APIs Decisions e de geração omitem o campo upstream.

  • stop
    aceita nulo
    • Tipo: string
  • stream
    Tipo: boolean
  • temperature
    Tipo: number
    mín:  
    0
  • tool_choice
    • Tipo: string
  • tools
    Tipo: array object[]
    • propertyName
      Tipo: anything
  • propertyName
    Tipo: anything
  • top_p
    Tipo: number
    mín:  
    0
    máx:  
    1
  • user
    Tipo: string
  • propertyName
    Tipo: anything
Respostas
  • 200
    Tipo: object · ChatCompletionResponse

    Conclusão de chat ou resposta em streaming

    • choices
      Tipo: array object[] · ChatChoice[]
      obrigatório
      • finish_reason
        Tipo: string | null
      • index
        Tipo: integer

        Integer numbers.

      • logprobs
        Tipo: object | null
        • propertyName
          Tipo: anything
      • message
        Tipo: object · ChatMessage
        • content
          aceita nulo
          obrigatório
          • Tipo: string
        • role
          Tipo: string enum
          obrigatório
          valores
          • system
          • developer
          • user
          • assistant
          • tool
        • name
          Tipo: string
        • tool_call_id
          Tipo: string
        • tool_calls
          Tipo: array object[]
          • propertyName
            Tipo: anything
        • propertyName
          Tipo: anything
      • propertyName
        Tipo: anything
    • id
      Tipo: string
      obrigatório
    • object
      Tipo: string
      obrigatório

      Normalmente chat.completion em respostas sem streaming.

    • created
      Tipo: integer Formato: int64

      Signed 64-bit integers (long type).

    • model
      Tipo: string
    • system_fingerprint
      Tipo: string
    • usage
      Tipo: object · Usage

      Objeto de uso do provedor. Os campos variam conforme o endpoint e o provedor.

      • propertyName
        Tipo: anything
    • propertyName
      Tipo: anything
  • 400
    Tipo: object · OpenAIErrorResponse

    Requisição, modelo ou mapeamento de provedor inválido

    Envelope de erro compatível com a OpenAI. O Router pode incluir code e message sem todos os campos upstream opcionais.

    • error
      Tipo: object
      obrigatório
      • message
        Tipo: string
        obrigatório
      • code
        Tipo: string | null
      • param
        Tipo: string | null
      • type
        Tipo: string

        Tipo de erro compatível com a OpenAI, quando fornecido.

      • propertyName
        Tipo: anything
    • propertyName
      Tipo: anything
    application/json
  • 401
    Tipo: object · OpenAIErrorResponse

    Chave de API da Felo inválida ou ausente

    Envelope de erro compatível com a OpenAI. O Router pode incluir code e message sem todos os campos upstream opcionais.

    • error
      Tipo: object
      obrigatório
      • message
        Tipo: string
        obrigatório
      • code
        Tipo: string | null
      • param
        Tipo: string | null
      • type
        Tipo: string

        Tipo de erro compatível com a OpenAI, quando fornecido.

      • propertyName
        Tipo: anything
    • propertyName
      Tipo: anything
    application/json
  • 402
    Tipo: object · OpenAIErrorResponse

    Saldo insuficiente

    Envelope de erro compatível com a OpenAI. O Router pode incluir code e message sem todos os campos upstream opcionais.

    • error
      Tipo: object
      obrigatório
      • message
        Tipo: string
        obrigatório
      • code
        Tipo: string | null
      • param
        Tipo: string | null
      • type
        Tipo: string

        Tipo de erro compatível com a OpenAI, quando fornecido.

      • propertyName
        Tipo: anything
    • propertyName
      Tipo: anything
    application/json
  • 403
    Tipo: object · OpenAIErrorResponse

    A conta não tem permissão para usar o modelo. Modelos desativados também são rejeitados antes das chamadas upstream. Requisições e tarefas já aceitas continuam.

    Envelope de erro compatível com a OpenAI. O Router pode incluir code e message sem todos os campos upstream opcionais.

    • error
      Tipo: object
      obrigatório
      • message
        Tipo: string
        obrigatório
      • code
        Tipo: string | null
      • param
        Tipo: string | null
      • type
        Tipo: string

        Tipo de erro compatível com a OpenAI, quando fornecido.

      • propertyName
        Tipo: anything
    • propertyName
      Tipo: anything
    application/json
  • 429
    Tipo: object · OpenAIErrorResponse

    Limite de gastos ou de requisições atingido

    Envelope de erro compatível com a OpenAI. O Router pode incluir code e message sem todos os campos upstream opcionais.

    • error
      Tipo: object
      obrigatório
      • message
        Tipo: string
        obrigatório
      • code
        Tipo: string | null
      • param
        Tipo: string | null
      • type
        Tipo: string

        Tipo de erro compatível com a OpenAI, quando fornecido.

      • propertyName
        Tipo: anything
    • propertyName
      Tipo: anything
    application/json
  • 502
    Tipo: object · OpenAIErrorResponse

    Falha na requisição ao provedor upstream

    Envelope de erro compatível com a OpenAI. O Router pode incluir code e message sem todos os campos upstream opcionais.

    • error
      Tipo: object
      obrigatório
      • message
        Tipo: string
        obrigatório
      • code
        Tipo: string | null
      • param
        Tipo: string | null
      • type
        Tipo: string

        Tipo de erro compatível com a OpenAI, quando fornecido.

      • propertyName
        Tipo: anything
    • propertyName
      Tipo: anything
    application/json
  • 503
    Tipo: object · OpenAIErrorResponse

    Provedor ou serviço de cobrança indisponível

    Envelope de erro compatível com a OpenAI. O Router pode incluir code e message sem todos os campos upstream opcionais.

    • error
      Tipo: object
      obrigatório
      • message
        Tipo: string
        obrigatório
      • code
        Tipo: string | null
      • param
        Tipo: string | null
      • type
        Tipo: string

        Tipo de erro compatível com a OpenAI, quando fornecido.

      • propertyName
        Tipo: anything
    • propertyName
      Tipo: anything
    application/json
Request Example for post/api/v1/chat/completions
curl https://openapi.felo.ai/api/v1/chat/completions \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '{
  "model": "gpt-5.5",
  "messages": [
    {
      "role": "user",
      "content": "Write a one-sentence greeting."
    }
  ],
  "stream": false
}'
{
  "id": "string",
  "object": "string",
  "created": 1,
  "model": "string",
  "choices": [
    {
      "index": 1,
      "message": {
        "role": "system",
        "content": "string",
        "name": "string",
        "tool_call_id": "string",
        "tool_calls": [
          {
            "additionalProperty": "anything"
          }
        ],
        "additionalProperty": "anything"
      },
      "finish_reason": null,
      "logprobs": null,
      "additionalProperty": "anything"
    }
  ],
  "usage": {
    "additionalProperty": "anything"
  },
  "system_fingerprint": "string",
  "additionalProperty": "anything"
}
Create a chat completion