Autenticación
Cada endpoint de Starmodel requiere una API key, enviada en la cabecera Authorization.
Obtén una API key
- Abre la página API Keys — Inicia sesión en la consola de Starmodel y abre la página API Keys.
- Genera una nueva key — Haz clic en Nueva key. La key completa (
sk-…) se muestra una sola vez — cópiala de inmediato a un gestor de secretos. - Nombra y gestiona la key — Añade una descripción para recordar para qué sirve la key. Puedes desactivar, reactivar o eliminar cualquier key en cualquier momento desde la misma página.
La key completa se muestra una sola vez, al crearla. Si la pierdes no podrás recuperarla — desactiva la anterior y genera una nueva.
Envía peticiones autenticadas
Incluye la key como token Bearer en la cabecera Authorization:
Authorization: Bearer <API Key>Una petición mínima:
curl https://api.starmodel.ai/v1/chat/completions \ -H "Authorization: Bearer $API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "el ID de tu modelo", "messages": [ { "role": "user", "content": "Hola" } ] }'La misma cabecera funciona en todos los endpoints — chat, imágenes, vídeo, voz y GET /v1/models.
Configuración del SDK
La mayoría de los SDK compatibles con OpenAI aceptan sobrescribir base_url. Apúntalo a Starmodel y pasa tu key:
from openai import OpenAIclient = OpenAI( api_key=os.environ["API_KEY"], base_url="https://api.starmodel.ai/v1",)import OpenAI from "openai";const client = new OpenAI({ apiKey: process.env.API_KEY, baseURL: "https://api.starmodel.ai/v1",});Buenas prácticas
- Nunca subas las keys al control de versiones. Usa variables de entorno, archivos
.enven gitignore o un gestor de secretos. - Rota con frecuencia. Genera una nueva key y desactiva la anterior cuando alguien deja el equipo, ante sospecha de fuga o de forma periódica.
- Una key por carga de trabajo. Las keys por servicio facilitan acotar y desactivar fugas sin afectar al resto del tráfico.
- Solo en el servidor. Trata la key como la contraseña de una base de datos — nunca la incluyas en un bundle de navegador o una app móvil.
Errores
Los fallos de autenticación devuelven un cuerpo de error JSON:
{ "error": { "code": "unauthorized", "message": "unauthorized", "type": "error" }}Códigos de estado:
| Estado | Significado |
|---|---|
401 | API key ausente o no válida. |
403 | La key está desactivada o no tiene acceso al recurso solicitado. |
429 | Límite de tasa superado — reintenta tras el tiempo indicado en la cabecera Retry-After. |

