Gemini nativo
Gerar Conteúdo
Gera conteúdo usando o formato da API Google Gemini
Use os formatos de solicitação e resposta Gemini com um modelo retornado pela Gemini Models API. Nomes de campos ProtoJSON lowerCamelCase e os equivalentes proto snake_case são aceitos. Os campos opcionais e valores aceitos dependem do modelo escolhido.
Parâmetros de Caminho
Nome do modelo (ex: gemini-2.5-pro, gemini-3.5-flash).
Parâmetros de Consulta
Chave de API (alternativa à autenticação por cabeçalho).
Autenticação
Os endpoints do Gemini suportam múltiplos métodos de autenticação:
?key=YOUR_API_KEYparâmetro de consultax-goog-api-key: YOUR_API_KEYcabeçalhoAuthorization: Bearer YOUR_API_KEYcabeçalho
Corpo da Requisição
Conteúdo da conversa com parts e um role opcional. Mídias usam inlineData / inline_data ou fileData / file_data. IDs de Files e Cache criados pela TokenLab só podem ser usados no Workspace ao qual pertencem.
Instrução de sistema para o modelo.
Configurações de geração como temperature, topP, topK, maxOutputTokens, stopSequences, candidateCount, responseModalities, responseMimeType, responseSchema e thinkingConfig. Os nomes snake_case correspondentes também são aceitos. Valores e combinações dependem do modelo.
Configurações de filtro de segurança.
Resposta
Candidatos de conteúdo gerado.
Informações de uso de tokens.
Requisição
curl -X POST "https://api.tokenlab.sh/v1beta/models/gemini-2.5-pro:generateContent?key=sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"parts": [{"text": "Hello, Gemini!"}]
}
],
"generationConfig": {
"temperature": 0.7,
"maxOutputTokens": 1024
}
}'Exemplos de entrada multimodal
Para requisições multimodais do Gemini, coloque a mídia dentro de contents[].parts[] usando bytes inline ou referências de arquivo baseadas em URL.
Categorias de mídia atualmente suportadas nos detalhes do modelo do Gemini:
- image
- audio
- video
Para mídia inline, use inlineData ou inline_data e envie os bytes do arquivo codificados em Base64.
Para mídia via URL, use fileData ou file_data e envie uma URL pública em https.
Exemplo de entrada de imagem
{
"contents": [
{
"role": "user",
"parts": [
{ "text": "Descreva esta imagem." },
{
"inlineData": {
"mimeType": "image/jpeg",
"data": "/9j/4AAQSkZJRgABAQ..."
}
}
]
}
]
}Exemplo de entrada de áudio
{
"contents": [
{
"role": "user",
"parts": [
{ "text": "Transcreva e resuma este áudio." },
{
"file_data": {
"mime_type": "audio/mpeg",
"file_uri": "https://example.com/sample.mp3"
}
}
]
}
]
}Exemplo de entrada de vídeo
{
"contents": [
{
"role": "user",
"parts": [
{ "text": "Descreva brevemente este vídeo." },
{
"fileData": {
"mimeType": "video/mp4",
"fileUri": "https://example.com/sample.mp4"
}
}
]
}
]
}Resposta
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{"text": "Hello! How can I assist you today?"}
]
},
"finishReason": "STOP",
"safetyRatings": [
{"category": "HARM_CATEGORY_HARASSMENT", "probability": "NEGLIGIBLE"}
]
}
],
"usageMetadata": {
"promptTokenCount": 5,
"candidatesTokenCount": 10,
"totalTokenCount": 15
}
}Exemplo de Entrada de Vídeo
{
"contents": [
{
"role": "user",
"parts": [
{ "text": "Please describe this video." },
{
"fileData": {
"mimeType": "video/mp4",
"fileUri": "https://example.com/demo.mp4"
}
}
]
}
]
}Exemplo de Entrada de Áudio
{
"contents": [
{
"role": "user",
"parts": [
{ "text": "Please describe this audio." },
{
"fileData": {
"mimeType": "audio/mpeg",
"fileUri": "https://example.com/demo.mp3"
}
}
]
}
]
}Autorização
BearerAuth Autenticação por Chave de API. Crie ou gerencie chaves de API em Dashboard > API > API Keys.
Local: header
Parâmetros de caminho
Nome do modelo (ex: gemini-2.5-pro)
Parâmetros de consulta
Chave de API (alternativa à autenticação via cabeçalho)
Cabeçalhos
Política de entrega por solicitação. Substitui os padrões da API key e do Workspace. Tenta automaticamente o TokenLab Verified primeiro e pode alternar uma vez para Official apenas antes da saída, aceitação da solicitação ou criação de recurso persistente.
Valores permitidos
- "auto"
- "verified"
- "official"
Corpo da requisição
application/json
Solicitação nativa Gemini GenerateContent. Nomes em lowerCamelCase do ProtoJSON e nomes originais em snake_case do proto são aceitos e preservados, incluindo solicitações mistas. Se ambas as grafias de um campo estiverem presentes, o TokenLab não as mescla nem escolhe uma precedência local. Campos desconhecidos são encaminhados com base no melhor esforço.
Resposta
application/json
application/json
application/json
application/json
application/json
application/json