OpenRouter
Visão geral
Seção intitulada “Visão geral”OpenRouter é uma plataforma que oferece uma API unificada para acessar diferentes modelos de linguagem (LLMs) de múltiplos provedores, permitindo que desenvolvedores integrem e alternem entre modelos de IA de forma simples. Com a integração OpenRouter no SquadOS, seus agentes podem gerar completions de chat, consultar catálogos de modelos, verificar saldo de créditos e rotear requisições para o provedor mais adequado.
- Site oficial: https://openrouter.ai/
- Documentação na Composio: docs.composio.dev/toolkits/openrouter
Autenticação
Seção intitulada “Autenticação”Esta ferramenta utiliza chave de API (API_KEY) para conectar.
Você vai precisar dos seguintes campos:
| Campo | Obrigatório | Descrição |
|---|---|---|
api_key | Sim | Chave de API gerada no painel do OpenRouter, usada para autenticar todas as requisições à plataforma. |
Como obter a credencial
Seção intitulada “Como obter a credencial”- Acesse openrouter.ai e crie uma conta ou faça login.
- Após autenticar, vá em openrouter.ai/keys.
- Clique em Create Key, dê um nome descritivo à chave (ex.: “SquadOS”) e confirme.
- Copie o valor exibido — ele só aparece uma vez.
Como conectar no SquadOS
Seção intitulada “Como conectar no SquadOS”- Acesse Ferramentas no menu lateral (
/admin/tools). - Abra a aba Disponíveis e procure por
OpenRouter. - Clique no card para abrir o modal de detalhes e em Conectar.
- Você é levado para a página de conexão segura hospedada pela Composio, onde informa a chave de API obtida acima.
- Ao concluir, você volta para o SquadOS com a conta conectada e a ferramenta disponível para os agentes. (Detalhes do fluxo em Ferramentas da Organização.)
Ações disponíveis
Seção intitulada “Ações disponíveis”Criar completion de chat
Seção intitulada “Criar completion de chat”OPENROUTER_CREATE_CHAT_COMPLETION
Gera uma completion no formato de chat. Use após montar as mensagens e selecionar o modelo. Suporta streaming e chamadas de função. O formato da resposta varia entre modelos; use instruções explícitas no prompt para padronizar a saída. Limites de taxa e políticas de moderação diferem por modelo e provedor.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
n | integer | Não | Número de opções de completion a gerar. |
stop | string | Não | Sequências em que a API para de gerar tokens. |
user | string | Não | Identificador único do usuário final para auxiliar na detecção de abusos. |
model | string | Sim | ID do modelo a usar para a completion de chat. Deve corresponder exatamente a um ID retornado por OPENROUTER_LIST_AVAILABLE_MODELS; erros de digitação ou nomes aproximados causam falha na requisição. |
top_p | number | Não | Probabilidade de nucleus sampling, entre 0 e 1. |
stream | boolean | Não | Se deve transmitir os deltas parciais da mensagem de volta. |
messages | array | Sim | Lista de mensagens de conversa fornecidas como contexto. |
functions | array | Não | Lista de funções que o modelo pode chamar. Suportado apenas por modelos que anunciam capacidade de function calling via OPENROUTER_LIST_AVAILABLE_MODELS. Cada schema de função deve ser JSON válido; schemas malformados causam falhas em tempo de execução. |
logit_bias | object | Não | Ajusta a probabilidade de tokens específicos. |
max_tokens | integer | Não | Número máximo de tokens a gerar. |
temperature | number | Não | Temperatura de amostragem, entre 0 e 2. |
function_call | string | Não | Controla o comportamento de chamada de função: none, auto ou especifique {'name': nome_da_funcao}. |
presence_penalty | number | Não | Penalidade para novos tokens com base em sua presença no texto até o momento. |
frequency_penalty | number | Não | Penalidade para novos tokens com base em sua frequência no texto até o momento. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Criar cobrança Coinbase
Seção intitulada “Criar cobrança Coinbase”OPENROUTER_CREATE_COINBASE_CHARGE
Cria uma cobrança Coinbase para pagamento em criptomoeda e adição de créditos à sua conta OpenRouter. Use quando precisar adquirir créditos com criptomoedas. Retorna os dados necessários para concluir a transação na blockchain especificada.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
amount | number | Sim | Valor em USD a cobrar. Será convertido para o equivalente em criptomoeda. |
sender | string | Sim | Endereço de carteira Ethereum do remetente (deve ser um endereço hexadecimal válido de 42 caracteres, começando com 0x). |
X_Title | string | Não | Nome de exibição do app, personalizando como ele aparece no painel do OpenRouter. |
chain_id | integer | Sim | ID da blockchain a usar para a transação. Opções: 1 (Ethereum), 137 (Polygon), 8453 (Base). |
HTTP_Referer | string | Não | Identificador do app (URL do seu app) usado como identificador principal para rankings e rastreamento de uso da API por aplicação. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Criar mensagem (formato Anthropic)
Seção intitulada “Criar mensagem (formato Anthropic)”OPENROUTER_CREATE_MESSAGE
Cria uma mensagem usando o formato da API Anthropic Messages via OpenRouter. Use quando precisar de completion de chat compatível com Claude, com suporte a texto, imagens, PDFs, ferramentas e pensamento estendido.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
user | string | Não | Identificador único do usuário final (máximo 128 caracteres). |
model | string | Sim | Identificador do modelo a usar para geração. Exemplo: anthropic/claude-4.5-sonnet-20250929. |
tools | array | Não | Lista de ferramentas disponíveis para o modelo chamar. |
top_k | integer | Não | Parâmetro de amostragem top-k. |
top_p | number | Não | Probabilidade de nucleus sampling, entre 0 e 1. |
models | array | Não | Lista de modelos de fallback a usar se o modelo principal falhar. |
stream | boolean | Não | Se deve transmitir a resposta. Padrão: false. |
system | string | Não | Mensagem de sistema para orientar o comportamento do modelo. |
plugins | array | Não | Plugins a habilitar para esta requisição. |
x_title | string | Não | Nome de exibição do app para o painel do OpenRouter. |
messages | array | Sim | Lista de mensagens de conversa. Cada mensagem tem um papel (user ou assistant) e conteúdo. |
metadata | object | Não | Metadados para a requisição. |
provider | object | Não | Preferências de roteamento de provedor. |
thinking | object | Não | Configuração para pensamento estendido. |
max_tokens | integer | Sim | Número máximo de tokens a gerar na resposta. |
session_id | string | Não | Identificador único para agrupar requisições relacionadas (máximo 128 caracteres). |
temperature | number | Não | Temperatura de amostragem, entre 0 e 2. |
tool_choice | object | Não | Configuração de escolha de ferramenta. |
http_referer | string | Não | URL do app usada para rastreamento de uso da API por aplicação. |
service_tier | string | Não | Nível de serviço para a requisição. Opções: auto ou standard_only. |
output_config | object | Não | Configuração para controlar o comportamento da saída. |
stop_sequences | array | Não | Sequências em que a geração deve parar. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Consultar créditos
Seção intitulada “Consultar créditos”OPENROUTER_GET_CREDITS
Obtém o saldo atual de créditos de API para o usuário autenticado. Use antes de jobs grandes ou em lote para verificar saldo suficiente. Uma resposta bem-sucedida pode retornar total_credits=0, confirmando autenticação, mas causará falha em todas as gerações de modelos pagos. Evite fazer polling neste endpoint; chame somente quando necessário.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Consultar chave atual
Seção intitulada “Consultar chave atual”OPENROUTER_GET_CURRENT_KEY
Obtém informações sobre a chave de API autenticada atualmente. Use para verificar limites de uso, gastos e metadados da chave.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
x_title | string | Não | Nome de exibição do app para o painel do OpenRouter. |
http_referer | string | Não | Identificador do app (URL) usado para rastreamento de uso da API por aplicação. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Consultar geração
Seção intitulada “Consultar geração”OPENROUTER_GET_GENERATION
Recupera o resultado de uma geração pelo seu ID único. Use após a conclusão de uma geração para buscar metadados como contagem de tokens, custo e latência.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id | string | Sim | Identificador único da geração a recuperar. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Consultar contagem de modelos
Seção intitulada “Consultar contagem de modelos”OPENROUTER_GET_MODELS_COUNT
Obtém a contagem total de modelos disponíveis no OpenRouter. Use quando precisar saber quantos modelos estão disponíveis sem buscar a lista completa.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
x_title | string | Não | Nome de exibição do app para o painel do OpenRouter. |
http_referer | string | Não | Identificador do app (URL) usado para rastreamento de uso da API por aplicação. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Listar modelos disponíveis
Seção intitulada “Listar modelos disponíveis”OPENROUTER_LIST_AVAILABLE_MODELS
Lista os modelos disponíveis via API do OpenRouter. Use após confirmar a autenticação para buscar o catálogo de modelos. Utilize os IDs exatos retornados aqui nas chamadas de OPENROUTER_CREATE_CHAT_COMPLETION ou OPENROUTER_CREATE_COMPLETION — IDs fixos no código podem quebrar quando o catálogo mudar. Use os valores exatos de author e slug desta resposta como entradas para OPENROUTER_LIST_MODEL_ENDPOINTS. Os modelos têm capacidades variadas (ex.: ferramentas, raciocínio); verifique as capacidades individuais antes de uso posterior. Metadados de precificação e latência podem ser nulos ou aproximados — trate valores ausentes na lógica de roteamento.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
use_rss | boolean | Não | Retornar feed RSS em XML em vez de JSON (BETA). |
category | string | Não | Categorias válidas para filtrar modelos. Opções: programming, roleplay, marketing, marketing/seo, technology, science, translation, legal, finance, health, trivia, academia. |
use_rss_chat_links | boolean | Não | Usar URLs de chat em vez de URLs de página de modelo nos itens RSS (aplica-se apenas quando use_rss=true) (BETA). |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Listar modelos de embedding
Seção intitulada “Listar modelos de embedding”OPENROUTER_LIST_EMBEDDING_MODELS
Lista todos os modelos de embeddings disponíveis via API do OpenRouter. Retorna uma lista de modelos de embeddings com suas propriedades, incluindo arquitetura, precificação e capacidades.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
X-Title | string | Não | Nome de exibição do app para o painel do OpenRouter. |
HTTP-Referer | string | Não | Identificador do app (URL) usado para rastreamento de uso da API por aplicação. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Listar endpoints de modelo
Seção intitulada “Listar endpoints de modelo”OPENROUTER_LIST_MODEL_ENDPOINTS
Lista os endpoints de um modelo específico. Use após especificar o autor e o slug do modelo para obter detalhes de endpoint, incluindo precificação, tamanho de contexto e parâmetros suportados. Alguns campos de metadados (ex.: latência, precificação) podem ser nulos ou aproximados; trate valores ausentes na lógica de roteamento.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
slug | string | Sim | Slug único do modelo no namespace do autor (ex.: gpt4). |
author | string | Sim | Nome de usuário do autor do modelo como aparece na URL do modelo (ex.: anon). Use o valor exato de OPENROUTER_LIST_AVAILABLE_MODELS — valores aproximados ou incorretos retornam resultados vazios. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Listar provedores
Seção intitulada “Listar provedores”OPENROUTER_LIST_PROVIDERS
Lista todos os provedores de modelos de IA disponíveis via API do OpenRouter. Use após autenticação para recuperar as opções de provedores disponíveis para configuração de roteamento. Provedores diferem em latência, tamanhos de janela de contexto e limites de taxa — trocar de provedor afeta essas restrições. Provedores recém-adicionados podem não aparecer imediatamente devido a atrasos de propagação do catálogo.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Listar modelos do usuário
Seção intitulada “Listar modelos do usuário”OPENROUTER_LIST_USER_MODELS
Lista modelos filtrados pelas preferências de provedor, configurações de privacidade e salvaguardas do usuário. Use após autenticar para obter modelos adaptados à configuração do usuário.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
x_title | string | Não | Nome de exibição do app para o painel do OpenRouter. |
http_referer | string | Não | Identificador do app (URL) usado para rastreamento de uso da API por aplicação. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Listar endpoints ZDR
Seção intitulada “Listar endpoints ZDR”OPENROUTER_LIST_ZDR_ENDPOINTS
Pré-visualiza o impacto da Retenção Zero de Dados (ZDR) sobre os endpoints disponíveis. Use para ver quais endpoints de modelo permanecem acessíveis quando ZDR está habilitado.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
x_title | string | Não | Nome de exibição do app para o painel do OpenRouter. |
http_referer | string | Não | Identificador do app (URL) usado para rastreamento de uso da API por aplicação. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |