Guía de integración

Apunta el base_url a Y-API y deja el resto de tu código como está. Los ejemplos de abajo funcionan tal cual se copian, y los 21 modelos comparten el mismo patrón.

Paso 1

Configuración básica

Sustituye estos tres elementos en cualquier SDK compatible con OpenAI. El api_key lo obtienes en la página «Claves de API» de la consola; el model, con cualquier ID de «Modelos disponibles».

base_url
https://api.y-api.bestvirtualgoods.com/v1
api_key
sk-... (créala en la consola)
model
deepseek/deepseek-v4-pro

Paso 2

Haz tu primera petición

Los tres fragmentos son equivalentes: copia el que ya estés usando.

cURL
curl https://api.y-api.bestvirtualgoods.com/v1/chat/completions \
  -H "Authorization: Bearer $YAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek/deepseek-v4-pro",
    "messages": [{"role": "user", "content": "¡Hola!"}]
  }'
Python (SDK de openai)
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.y-api.bestvirtualgoods.com/v1",
    api_key=os.environ["YAPI_KEY"],  # clave creada en la consola
)

response = client.chat.completions.create(
    model="deepseek/deepseek-v4-pro",
    messages=[{"role": "user", "content": "¡Hola!"}],
)
print(response.choices[0].message.content)
Node.js (SDK de openai)
import OpenAI from 'openai'

const client = new OpenAI({
  baseURL: 'https://api.y-api.bestvirtualgoods.com/v1',
  apiKey: process.env.YAPI_KEY, // clave creada en la consola
})

const response = await client.chat.completions.create({
  model: 'deepseek/deepseek-v4-pro',
  messages: [{ role: 'user', content: '¡Hola!' }],
})
console.log(response.choices[0].message.content)

Avanzado

Streaming

Añade el parámetro stream: los fragmentos llegan en el mismo formato SSE que OpenAI, así que el cliente no necesita ningún tratamiento especial.

stream = client.chat.completions.create(
    model="deepseek/deepseek-v4-pro",
    messages=[{"role": "user", "content": "¡Hola!"}],
    stream=True,
)
for chunk in stream:
    print(chunk.choices[0].delta.content or "", end="")

Avanzado

Cambiar de modelo

Todos los modelos comparten el mismo base_url y la misma clave: cambiar solo significa modificar el campo model. El catálogo completo está en la página de modelos.

# barato, ideal para tareas frecuentes y por lotes
client.chat.completions.create(model="deepseek/deepseek-v4-flash", messages=msgs)

# más potente, ideal para razonamiento complejo
client.chat.completions.create(model="deepseek/deepseek-v4-pro", messages=msgs)
Ver el catálogo completo de modelos

Resolución de problemas

Gestión de errores

Dos errores son los más habituales, y ambos dejan rastro en el registro de peticiones de la consola.

Gestión de errores
401SignificadoLa clave no es válida o ha sido revocada.Qué hacerComprueba en la página «Claves de API» de la consola que la clave sigue existiendo, o crea una nueva.
429SignificadoEl crédito de la cuenta está agotado.Qué hacerRecarga en https://y-api.bestvirtualgoods.com/app/billing: se recupera de inmediato, las claves siguen siendo válidas y no hay que cambiar código.

Los demás códigos de estado y las formas del cuerpo de error siguen las convenciones de OpenAI, así que tu código de gestión de errores actual sirve tal cual.

¿Aún no tienes clave?

Inicia sesión con Google o GitHub: tu cuenta se abre automáticamente con una clave predeterminada.