Tema
Idioma

Modelos

A lista de modelos da GetVibe API e como endereçar modelos no campo model. Variantes de rota por meio dos sufixos :network, :nexus, :sub5 — rota, preço e comportamento de cache diferentes.

O campo model recebe o nome exato do modelo. A lista completa, com preços e suporte a cache, está na página do catálogo.

  • Os IDs usam vendor/model (no estilo do OpenRouter), por exemplo, anthropic/claude-opus-5; claude-opus-5 é aceito como um alias de entrada com cobrança idêntica.
  • model:alias fixa um canal, por exemplo, openai/gpt-5.6-sol:yellow. GET /v1/models lista um ID por modelo; ?variants=1 retorna a lista completa.

Como uma solicitação é cobrada

A maioria dos canais são livros de marketplace: vários vendedores oferecem o mesmo modelo a preços diferentes. Sua solicitação é atendida pela oferta mais barata que a aceitar, e você paga o custo desse atendimento mais nossa comissão. Portanto, a tarifa por token é um intervalo, não um número único: ela depende de qual nível do livro foi preenchido.

GET /api/catalog e GET /v1/pricing publicam esse intervalo por modelo (pricing) e por canal (channels[]), lido da mesma escada GET /api/model-ladder?model=<model> que disponibiliza com suas contagens de ofertas.

GEThttps://getvibeapi.com/api/model-ladder?model=claude-opus-5.5
Campos de preços (USD por 1M de tokens)
ParâmetroTipoDescrição
basis"fill" | "fixed" | "mixed""fill": cobrado no degrau que preencher, mais a comissão. "fixed": cobrado na tarifa listada (from = typical = to). "mixed" (somente no nível do modelo): alguns canais de cada tipo.
priceFrom{input, output}O nível mais barato: a menor tarifa pela qual uma solicitação pode ser cobrada.
priceTypical{input, output}O nível mediano ponderado pelas ofertas: metade das ofertas do livro está nele ou abaixo dele. Ele descreve onde a oferta está concentrada, não uma previsão do seu próximo preenchimento. No nível do modelo, ele é o do canal padrão.
priceTo{input, output}O nível mais caro do livro de ofertas: o máximo que uma solicitação sem max_price pode ser cobrada.
poolstring | nullApenas por canal. O livro do qual o canal compra, conforme impresso pela ladder. Cada pool é publicado exatamente como um canal.
maxPriceCeiling{input, output} | nullApenas por canal. Quando uma solicitação contém max_price, este canal não será preenchido acima do menor valor entre max_price e este limite. Sem max_price, nenhum limite será enviado.
minChargePerRequestnumberUSD por REQUEST, não por 1M. Presente apenas em um canal cujo fornecedor cobra um mínimo por solicitação (regra do fornecedor): pelo menos uma solicitação bem-sucedida é cobrada, por exemplo, $0.0000143. Uma solicitação cujos tokens custariam menos — uma solicitação curta ou uma que seja composta principalmente por leituras do cache — é cobrada nesse valor. No nível do modelo (nullable), é o valor padrão do canal padrão.
fill{"24h", "7d"} | nullApenas por canal (e em cada pool atendido de /api/model-ladder). Onde nossas solicitações pagas neste canal foram efetivamente preenchidas: por nível, a participação das solicitações e dos tokens; avgPrice, o preço médio pago ponderado por token — o preço típico que você realmente pagará; e as participações preenchidas abaixo ou acima da ladder de hoje (os livros mudam) ou cobradas pelo mínimo por solicitação. null para uma janela com menos de 20 solicitações.
ladderstringSomente o modelo. A URL /api/model-ladder com a lista completa de níveis e a contagem de ofertas.
inputUsd / outputUsdnumberMantido por compatibilidade. Em um canal fill, eles são iguais a priceFrom: o valor mínimo, não um preço fixo.
"pricing": {
  "basis": "fill",
  "unit": "USD per 1M tokens",
  "priceFrom":    { "input": 0.465, "output": 2.325 },
  "priceTypical": { "input": 0.5,   "output": 2.5 },
  "priceTo":      { "input": 1.5,   "output": 7.5 },
  "minChargePerRequest": 0.0000125,
  "ladder": "/api/model-ladder?model=claude-opus-5.5",
  "ladderUpdatedAt": "2026-09-25T08:45:01.522Z",
  "ladderStale": false
},
"channels": [
  { "address": "claude-opus-5.5:claude-code", "isDefault": true,
    "inputUsd": 0.465, "outputUsd": 2.325,
    "basis": "fill", "pool": "cc/claude-opus-5-5",
    "priceFrom": { "input": 0.465, "output": 2.325 },
    "priceTypical": { "input": 0.5, "output": 2.5 },
    "priceTo": { "input": 1.5, "output": 7.5 },
    "maxPriceCeiling": { "input": 0.6, "output": 3 },
    "minChargePerRequest": 0.0000125 }
]
Um pool é um canal com uma única escada de preços — por exemplo, claude-code: uma solicitação é atendida pelo degrau que a aceitar, entre priceFrom e priceTo. Para limitar quanto uma solicitação pode custar, envie max_price — sem ele, qualquer degrau da escada pode ser usado; com ele, a solicitação nunca será atendida acima do seu teto. Para ver a profundidade por trás de um preço, leia a escada; para ver onde as solicitações realmente são atendidas, leia seu fill. Cada solicitação em /v1/generations inclui cost_detail.realisedRate, o preço por 1M pelo qual foi cobrada, para que você possa posicioná-la na escada. Toda solicitação bem-sucedida custa pelo menos o minChargePerRequest do canal, portanto uma solicitação muito pequena ou predominantemente armazenada em cache é cobrada por esse mínimo, e não pelo valor por token.

Variantes de um modelo

A maioria dos modelos tem várias variantes públicas. A variante padrão é escolhida automaticamente (a prioridade segue as configurações da sua conta ou chave). Para fixar uma variante específica em uma solicitação, adicione o alias dela após dois-pontos ao nome do modelo:

"model": "gpt-6.1-sol"           // default variant (auto)
"model": "gpt-6.1-sol:yellow"    // explicit public variant
"model": "claude-opus-5.5"     // use an id from the catalog

Exemplo de solicitação com uma variante explícita:

curl https://getvibeapi.com/v1/chat/completions \
  -H "Authorization: Bearer $GETVIBE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-opus-4.8:yellow",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'
# :yellow — pin a public variant for this request

Aliases de variantes

Use apenas aliases do catálogo. Sufixos disponíveis:

ParâmetroTipoDescrição
:yellowsuffixVariante pública; a disponibilidade e o preço dependem do modelo.
:codex / :claude-codesuffixPools de assinatura; os modelos atendidos por cada um estão listados no catálogo.
:pixelsuffixVariante pública para modelos de mídia.
Verifique os sufixos exatos de cada modelo na coluna “In API” da página Models — somente as variantes realmente disponíveis são exibidas ali. Se você passar um sufixo indisponível, a solicitação retornará 400.

Liste modelos pela API

Você pode obter programaticamente a lista completa de ids de modelos disponíveis:

GEThttps://getvibeapi.com/v1/models
curl https://getvibeapi.com/v1/models \
  -H "Authorization: Bearer $GETVIBE_API_KEY"

Além de id/object/created/owned_by, cada entrada contém type (chat, embedding, rerank, image, video, audio, music, 3d), architecture.input_modalities / output_modalities e endpoints — para onde enviar uma solicitação para esse modelo.

  • A lista padrão contém apenas modelos de chat, embedding e rerank, para que um seletor de modelos de IDE nunca ofereça um modelo que não possa conversar.
  • Os modelos de mídia (imagem, vídeo, áudio, música, 3D) são listados mediante solicitação: ?type=image (ou uma lista: ?type=image,video), ?output_modalities=image; ?modality= e ?category= são sinônimos de type.
  • Tudo de uma vez: ?all=true, ?type=all ou GET /v1/models/all. A mídia é listada junto com suas variantes (model:alias), exatamente o id a ser enviado.
  • GET /v1/models/{id} retorna um modelo; um ID desconhecido resulta em 404 com code: "model_not_found".
curl "https://getvibeapi.com/v1/models?type=image,video" \
  -H "Authorization: Bearer $GETVIBE_API_KEY"

Assine as atualizações do catálogo (RSS e JSON Feed)

Cada modelo adicionado ao catálogo e nossas publicações de novidades são publicados em um feed aberto — sem necessidade de chave. Leia-o em um leitor de RSS ou por meio de um agente, para que ele possa mudar sua abordagem conforme os modelos mudam. O feed contém todo o histórico, página por página, e cada evento traz o que um agente precisa para chamar o modelo imediatamente.

  • /rss.xml (alias /feed.xml) é RSS 2.0; /feed.json é JSON Feed 1.1 com um bloco _meta no nível do feed e um bloco _catalog por evento.
  • Páginas: 50 eventos cada, ?limit= até 100, dos mais recentes para os mais antigos. A próxima página (mais antiga) é next_url no JSON Feed e <atom:link rel="next"> no RSS (RFC 5005, também com rel="first" e rel="previous"). Os links contêm um cursor, de modo que um modelo publicado enquanto você percorre as páginas nunca desloca um evento que você já leu. Use os links conforme retornados.
  • Filtros: ?kind=text|image|video|audio|music|3d|news e ?since=YYYY-MM-DD — somente eventos a partir desse dia em UTC, inclusive. Os filtros funcionam em conjunto com a paginação e são mantidos nos links.
  • Um evento model_added traz o título, a data em que o modelo apareceu no catálogo, um link para a página do modelo, uma descrição e, em _catalog: os ids públicos para enviar como model (sem as formas de rota :alias e sem nomes de fornecedores), os endpoints, as modalidades de entrada e saída, a janela de contexto e o limite máximo de saída, os recursos (ferramentas, JSON / saída estruturada, visão, raciocínio e seus níveis, cache), o preço inicial público em USD com sua unidade, para mídia cada parâmetro de requisição com seus valores permitidos, uma requisição pronta (curl e JSON) e um link para a documentação. Um evento news é uma publicação de novidades.
  • O guid de um evento nunca muda. O feed não contém resultados de geração registrados, apenas uma solicitação de exemplo.
  • Consulte no máximo a cada poucos minutos: cada página tem seus próprios ETag e Last-Modified; envie If-None-Match / If-Modified-Since e uma página sem alterações responde 304 sem corpo. Para buscar apenas as novidades, guarde a data do último evento que você processou e faça uma requisição a ?since= com essa data.
curl -sS "https://getvibeapi.com/feed.json?since=2026-10-01&limit=100"
curl -sS -i https://getvibeapi.com/feed.json -H 'If-None-Match: "<ETag from the previous response>"'   # -> 304
Modelos da GetVibe API — lista de modelos e variantes de rota | GetVibe API