Introducción
Bytgon API es una pasarela unificada: una API key, un saldo prepago y todos los grandes modelos (OpenAI, Anthropic, Google, DeepSeek, Zhipu, Moonshot, Alibaba, xAI, MiniMax…) bajo api.bytgon.com. Es compatible con los SDK oficiales de OpenAI, Anthropic y Gemini: en la mayoría de proyectos basta con cambiar la base_url y la key.
Compatibilidad
OpenAI Chat Completions y Responses, Anthropic Messages, Gemini generateContent, imágenes, voz, transcripción, embeddings y vídeo.
Cobro
Por tokens reales (entrada, salida, caché); por llamada en imagen; por caracteres en voz; al coste exacto en transcripción y vídeo. Precios en la tabla; los modelos Gratis no descuentan saldo.
Seguridad
Ninguna petición sale sin saldo. Keys con modelos permitidos, rpm y tope mensual.
Inicio rápido
- Crea tu cuenta en el panel (correo o Google). Tu primera key se genera sola.
- Recarga saldo (desde $5, cobro en USD). Sin suscripción.
- Haz tu primera petición:
model es el «nombre de endpoint». En la tabla de precios cada modelo lleva un botón para copiarlo con un clic (también en su ficha y en tu panel). Pégalo tal cual: no hace falta prefijo de fabricante.Autenticación
Todas las peticiones llevan tu API key. Acepta cualquiera de estas formas (usa la que espere tu cliente):
| Authorization: Bearer sk-byt-… | OpenAI, Responses, embeddings, imágenes, Gemini (también válido) |
| x-api-key: sk-byt-… | Clientes Anthropic (SDK, Claude Code) |
| x-goog-api-key: sk-byt-… | Clientes Gemini (o ?key= en la URL) |
Las keys empiezan por sk-byt-. Se muestran una sola vez al crearlas; en el panel puedes desactivarlas o borrarlas al instante.
Base URLs
| OpenAI SDK / REST | https://api.bytgon.com/v1 | |
| Anthropic SDK / Claude Code | https://api.bytgon.com | el SDK añade /v1/messages |
| Gemini | https://api.bytgon.com/v1beta |
Chat completions (OpenAI)
POST /v1/chat/completions — el endpoint más universal. Soporta stream, tools/tool_choice, response_format, imágenes en content (modelos con visión), max_tokens, temperature, etc. Los parámetros se reenvían tal cual al modelo.
Respuesta idéntica a OpenAI, con usage (prompt_tokens, completion_tokens, prompt_tokens_details.cached_tokens). En streaming, el último chunk trae usage (activamos stream_options.include_usage automáticamente).
Responses API
POST /v1/responses — la API moderna de OpenAI (agentes, herramientas integradas cuando el modelo las soporta). Se reenvía tal cual; el cobro usa usage.input_tokens/output_tokens y, en streaming, el evento response.completed.
Anthropic Messages
POST /v1/messages — formato nativo de Claude: system, messages, max_tokens (obligatorio), tools, thinking, cache_control (caché de prompts: lectura y escritura se cobran a su precio). POST /v1/messages/count_tokens es gratuito.
Gemini
POST /v1beta/models/{modelo}:generateContent y :streamGenerateContent?alt=sse. Cobro por usageMetadata (prompt, candidatos, pensamiento y caché).
Imágenes
POST /v1/images/generations (JSON) y POST /v1/images/edits (multipart como el SDK de OpenAI, o JSON). Mismo cuerpo que OpenAI más las opciones nativas de cada modelo: tamaño, calidad, formato, semilla, imágenes de referencia o streaming. Cada imagen queda guardada en tu cuenta (Archivos generados) y su URL va en la propia respuesta.
| prompt | obligatorio. |
| n | número de imágenes (1–10; cada una se cobra). |
| size | estilo OpenAI: 1024x1024, 1536x1024, 1024x1536, auto… Se traduce al aspect_ratio más parecido que tenga el modelo y a la resolution de ese tamaño. |
| aspect_ratio | formato nativo: 1:1, 16:9, 9:16, 4:3, 3:2, 21:9… (los de cada modelo en bytgon.options.aspect_ratio; otro valor → 400 con la lista). |
| resolution | 512 · 768 · 1K · 1.5K · 2K · 4K (según modelo). Si no la indicas, el modelo usa su valor por defecto, normalmente 1K. Un valor que el modelo no tiene devuelve 400 con la lista válida. La familia gpt-image no tiene resolution: su tamaño lo fijan aspect_ratio y quality; si la envías, se omite y la respuesta lo indica en bytgon.ignored_options. |
| quality | auto · low · medium · high · xhigh · max (aceptamos también standard→medium, hd→high, ultra→max). Cambia el precio: la tabla muestra cada línea de calidad × tamaño. |
| background · output_format · output_compression · seed | transparent/opaque; png/jpeg/webp/svg; compresión 0–100; semilla para repetir resultados. Solo cuando el modelo los tiene (si no, se ignoran). |
| image · images · input_references | imágenes de referencia (edición, estilo, personaje): hasta 16, como data URL (data:image/png;base64,…), URL https o base64 puro. En multipart, el campo image (uno o varios archivos). Solo modelos con image-edit en caps; si el modelo no las acepta, 400 con alternativas. |
| stream | true → SSE con eventos image_generation.partial_image (previas), image_generation.completed (imagen final + media_id + url) y bytgon.media; termina con [DONE]. Solo modelos con "stream": true en bytgon.options. |
Respuesta: data[i].b64_json (base64, intacto) más data[i].url (URL nuestra, válida mientras dure la retención) y data[i].media_id; bytgon.media[] con la ficha de cada archivo, bytgon.model con el modelo usado, bytgon.ignored_options si alguna opción no existía en ese modelo y bytgon.request_id. Si tu agente se desconecta antes de recibirla, la imagen se guarda igual: recupérala en GET /v1/media.
Precio: por imagen, según la calidad y el tamaño pedidos (las líneas están en la tabla; con referencias, algunos modelos añaden un pequeño coste por imagen de entrada). Antes de enviar se reserva el peor caso de lo que pides y al terminar se cobra el coste exacto (cabecera x-bytgon-cost).
gpt-image-2.5). Si pides esas opciones con ese id, usamos automáticamente la variante del mismo modelo que sí las admite (gpt-image-2.5-flare) y lo decimos en bytgon.model, bytgon.model_requested y la cabecera x-bytgon-model-requested. Para no depender del aviso, pide la variante directamente: su ficha en GET /v1/models/{id} lleva todas las opciones y precios.Voz (texto a voz)
POST /v1/audio/speech — cuerpo { model, input, voice, response_format } como en OpenAI. La respuesta es el audio en binario (mp3, wav, opus… según response_format): guárdala directamente en un archivo. Se cobra por caracteres de input; en la tabla el precio de los modelos de voz va por 1.000 caracteres. Filtra por «Voz» en la tabla para ver los modelos disponibles.
Transcripción (voz a texto)
POST /v1/audio/transcriptions — acepta multipart (file + model, como el SDK de OpenAI) o JSON con el audio en base64 ({ "model", "file": "<base64>" }). Responde { "text": … }. Se cobra el coste exacto que informa el proveedor según la duración del audio (antes de enviar reservamos una estimación, que se ajusta al terminar). En la tabla figura como «según duración (coste exacto)».
Embeddings
POST /v1/embeddings — { model, input } (un texto o una lista). Se cobran solo los tokens de entrada; la tabla muestra ese único precio.
Vídeo
POST /v1/videos crea un trabajo y responde al instante con { id, status, bytgon: { status_url, content_url, events_url, request_id } }. Luego eliges cómo seguirlo: sondeo, progreso en vivo o aviso a tu webhook. El vídeo terminado se guarda en tu cuenta (Archivos generados) aunque nadie vuelva a preguntar por él.
| prompt | descripción (obligatorio salvo en vídeo→vídeo). |
| duration · seconds | segundos; cada modelo tiene su rango y valores (bytgon.options.duration). Sin indicar: la mínima del modelo. |
| resolution | 480p · 720p · 768p · 1080p · 4K… según modelo (bytgon.options.resolution); también size tipo 1280x720 si el modelo lo admite. Cambia el precio por segundo. |
| aspect_ratio | 16:9, 9:16, 1:1… (los del modelo). |
| generate_audio · audio | true/false en modelos con audio (bytgon.options.generate_audio). |
| image · first_frame · last_frame | imagen de inicio y de fin (data URL, https o base64) → frame_images. Solo modelos con frame_images en sus opciones. |
| references · video · audio_url | referencias de imagen, vídeo o audio (vídeo→vídeo, voz, estilo) según bytgon.options.input_references; también el nativo input_references[]. |
| seed · upscale_factor · creativity · previous_job_id | opciones nativas cuando el modelo las tiene (continuar un vídeo, escalar, creatividad). |
| provider.options | parámetros avanzados del modelo que no están en esta lista: se reenvían tal cual. |
| webhook_url · webhook_secret | tu URL https pública: al terminar (completado o fallido) recibes un POST con el mismo JSON que GET /v1/videos/{id} (tipo video.completed/video.failed, enlaces, media_id, coste). Con webhook_secret, cabecera x-bytgon-signature: sha256=HMAC-SHA256(secret, cuerpo). Un solo aviso (hasta 3 intentos si tu servidor no responde 2xx). |
| GET /v1/videos/{id} | estado (queued · in_progress · completed · failed…) y bytgon: media_id, media_url, content_url, events_url, cost (exacto al completarse), refunded. |
| GET /v1/videos/{id}/content | descarga el vídeo (desde nuestro archivo guardado si ya está; si no, del proveedor, y se guarda). |
| GET /v1/videos/{id}/events | progreso en vivo por SSE: un evento bytgon.video.progress cada vez que cambia el estado (y cada 20 s como latido) hasta el estado final y [DONE]. Sin coste. Hasta 30 min por conexión (reconecta si lo necesitas). |
| DELETE /v1/videos/{id} | cancela o borra el trabajo en el proveedor cuando lo permite. |
Precio: por segundo según la resolución (y el modo: con audio, con vídeo de entrada…) pedidos; la tabla muestra cada línea. Al crear el trabajo se reserva ese importe; al completarse se ajusta al coste exacto; si falla, se devuelve. Revisamos los trabajos pendientes cada 2 minutos, así que el ajuste y la devolución llegan aunque tu agente nunca vuelva a consultar.
Archivos generados (/v1/media)
Todo lo que generas con imagen o vídeo queda guardado en tu cuenta durante 30 días (hasta 2 GB por usuario; lo más antiguo se retira primero). Así nada se pierde si tu agente se desconecta, se queda sin contexto o el proveedor caduca su enlace.
| GET /v1/media | lista tus archivos (más reciente primero): ?kind=image|video, ?limit=50, ?before=<created_at> (paginación), ?video_job_id=. Incluye usage (archivos, bytes, cuota, retención). |
| GET /v1/media/{id} | los bytes (Content-Type real; ?download=1 para descarga). Cabeceras x-bytgon-media y x-bytgon-model. |
| GET /v1/media/{id}/meta | ficha JSON: kind, model, mime, size, prompt, created_at, expires_at, url, request_id, video_job_id. |
| DELETE /v1/media/{id} | borra el archivo (definitivo). |
Cada archivo es privado: solo tus keys pueden verlo. Las URLs de data[i].url y bytgon.media[].url apuntan aquí.
Modelos
GET /v1/models devuelve la lista en formato OpenAI; cada entrada lleva un objeto bytgon con estos campos:
| endpoint | el nombre de endpoint (igual que id): lo que va en el campo model. Es el que copias con un clic desde la tabla de precios. |
| type · modalities | chat, image, video, tts (voz), stt (transcripción), embedding, audio; modalities lista las entradas y salidas que admite el modelo. |
| pricing | precios en la moneda de la plataforma: input / output por 1M tokens, per_call (imagen), per_second (vídeo), per_1k_chars (voz) y caché. |
| free | true si el modelo es gratuito (ver Modelos gratuitos): no descuenta saldo, con cuota compartida y límites por usuario. |
| privacy | { status, label, note, sources[] } con status = private · trains · unknown (ver Privacidad de tus datos). |
| stability | alta · media · baja (o null): estabilidad observada del mejor proveedor que sirve el modelo. |
| caps · context · max_output · savings_pct | capacidades, ventana de contexto, salida máxima y ahorro frente a la tarifa oficial. |
| options | imagen y vídeo: opciones que admite el modelo y sus valores válidos (ver Opciones por modelo). GET /v1/models/{id} devuelve la ficha de uno solo. |
Los ids son los de la tabla. Aceptamos también prefijos de fabricante (openai/gpt-5.5 → gpt-5.5). Si un id no existe, la respuesta 404 sugiere parecidos.
Opciones por modelo (bytgon.options)
Cada modelo de imagen y vídeo declara en GET /v1/models/{id} (y en la lista) qué opciones admite y con qué valores, para que un agente elija sin adivinar:
| lista | valores válidos: "resolution": ["1K","2K","4K"], "aspect_ratio": […], "quality": […], "output_format": […]. Otro valor → 400 con la lista. |
| rango | { "min", "max" } (n, seed; duration añade values si son discretos). |
| true | la opción existe sin lista cerrada (stream, seed, background…). |
| input_references | imagen: { "max": 16 }; vídeo: tipos admitidos (["image","video","audio"]). frame_images: ["first_frame","last_frame"]. |
| null | el modelo acepta solo el cuerpo estándar de OpenAI (size, quality, n); lo demás se ignora. |
Las opciones que un modelo no tiene se omiten (por ejemplo quality en un modelo que no la usa), así el mismo cuerpo vale para varios modelos; la respuesta lo dice en bytgon.ignored_options (y en la cabecera x-bytgon-ignored-options). Las que sí tiene se validan y, si el valor no existe, la respuesta 400 te da los válidos.
Saldo y key
GET /v1/me (alias /v1/usage, /v1/key) devuelve tu saldo (balance, remaining, unit), la key usada y su gasto del mes. Útil para mostrar el saldo en tu propia app o en herramientas que leen /v1/usage.
Streaming
Pasamos cada byte del modelo en cuanto llega (SSE), sin buffering. Si tu cliente se desconecta a mitad de un texto, se cobra solo lo generado hasta ese momento. Las respuestas largas pueden durar hasta 10 minutos.
- Texto:
stream: trueen chat, Responses, Messages y Gemini (alt=sse). - Imagen:
stream: trueen los modelos con"stream": trueen sus opciones → previas parciales y la imagen final con suurl. Si te desconectas, la imagen se completa, se guarda y se cobra (el proveedor factura la imagen entera). - Vídeo:
GET /v1/videos/{id}/events(progreso por SSE, gratis) owebhook_urlpara que te avisemos al terminar.
Cómo se cobra
Moneda: los precios oficiales, tu saldo y los cobros con tarjeta son en USD. Si eliges otra moneda en el menú, lo que ves es una conversión estimada con el tipo de cambio del BCE; el importe que se descuenta de tu saldo es siempre el oficial.
- Reserva: antes de enviar, estimamos entrada +
max_tokens(o 4096 por defecto) al precio del modelo. Si tu saldo disponible no cubre esa reserva, respondemos402sin enviar nada. Reducemax_tokenssi quieres peticiones más pequeñas con poco saldo. - Cobro real: al terminar, cobramos los tokens que informa el modelo (entrada, salida incluido razonamiento, caché lectura/escritura) o las llamadas de imagen. La reserva se libera.
- Por tipo de modelo: voz (
/v1/audio/speech) por caracteres del texto; transcripción y vídeo al coste exacto que informa el proveedor (con una reserva previa que se ajusta al terminar); embeddings solo entrada; imagen por imagen según calidad y tamaño pedidos (coste exacto; guardarla en/v1/mediano cuesta nada). Los modelos Gratis no descuentan saldo. - Errores: si el proveedor falla (5xx, sin saldo, timeout) no se cobra nada.
- Sin usage: en el raro caso de que el modelo no informe tokens, estimamos por caracteres y lo marcamos como «estimado» en tu registro.
- Cada petición queda en tu registro con id, tokens, coste y duración. Exportable a CSV.
Cómo se calcula lo que pagas
La regla es siempre la misma: antes de enviar tu petición reservamos el peor caso posible para ella; al terminar cobramos exactamente lo que ha costado y liberamos el resto. Así nunca se envía nada que no puedas pagar y tu saldo nunca queda en negativo.
| Reserva de peor caso | Se calcula con lo que pides: tokens de entrada estimados (con un pequeño margen) + max_tokens, o la calidad/tamaño o resolución/duración indicados; si no indicas nada, se toma la línea de precio más cara del modelo. Si tu saldo disponible no la cubre, respondemos 402 sin enviar nada. Lo no usado se libera al instante al terminar. |
| Cobro exacto | Al terminar se cobra el coste real que informa el modelo (tokens de entrada, salida y caché; llamadas de imagen; segundos de audio o vídeo). Si el proveedor falla, no se cobra nada. |
| Imágenes | El precio depende de la calidad y el tamaño: en la tabla verás «desde X» (el precio de la calidad por defecto) y, en la ficha del modelo, la tabla completa por calidad y tamaño y los extras (imagen de entrada, referencia, mínimo por generación). Ejemplo: un modelo «desde $0,03» cuesta $0,03 en calidad estándar 1024×1024 y más en alta calidad o tamaños grandes; se reserva la línea que encaje con tu petición (o la más cara si no la indicas) y se cobra la real. |
| Vídeo | Se cobra por segundo según la resolución. Al crear el trabajo (POST /v1/videos) el cobro es provisional e igual a la reserva; al completarse se ajusta al coste exacto y se te devuelve la diferencia. GET /v1/videos/{id} muestra ese ajuste. Si el trabajo falla, se devuelve todo. |
| Voz (texto a voz) | Si el modelo tiene precio por segundo de audio, se cobran los segundos generados (los verás en la cabecera x-bytgon-audio-seconds); si no, se cobra por caracteres del texto (precio por 1.000 caracteres). La tabla muestra el precio por segundo y, como orientación, la estimación por 1.000 caracteres. |
| Saldo nunca negativo | La reserva previa garantiza que ninguna petición empieza sin saldo suficiente para su peor caso. Si por un ajuste posterior (p. ej. un vídeo) tu saldo llegara a cero, las siguientes llamadas reciben 402 hasta que recargues. |
| Comparador | El comparador casa los nombres de otra plataforma con nuestro catálogo y calcula el ahorro modelo a modelo con tu mezcla de tokens. Puedes escribir modelos concretos para ver su comparación. Los nombres valen en cualquier formato («GPT 6 Astra», «gpt-6-astra», «openai/gpt-6-astra»). |
Modelos gratuitos
Algunos modelos llevan la insignia Gratis en la tabla: se sirven con una cuota compartida entre todos los usuarios y no descuentan saldo. Para que un solo usuario no agote la cuota hay límites por usuario: —. Si superas tu límite recibes 429 con retry-after; si la cuota compartida del día se agota, el modelo responde 429 hasta el día siguiente.
- Necesitas cuenta y API key (o la sesión del panel). No hace falta saldo.
- La lista puede cambiar sin aviso: los modelos gratuitos dependen de la disponibilidad de los proveedores. Consulta
bytgon.freeenGET /v1/modelso el filtro «Gratis» de la tabla. - Privacidad: algunos proveedores gratuitos pueden usar tus peticiones para entrenar. Mira siempre la insignia de privacidad del modelo antes de enviar datos sensibles.
Privacidad de tus datos
Nosotros no guardamos el contenido de tus peticiones ni de las respuestas (solo metadatos de facturación). Lo que hagan los proveedores que sirven cada modelo lo indicamos con honestidad en su ficha con una de estas tres insignias:
| Privado | El modelo se sirve solo por proveedores que declaran no recoger ni entrenar con tus datos. El filtro se aplica en cada petición. «Declaran» es la palabra clave: nos basamos en sus políticas publicadas (enlazadas en la ficha del modelo); no podemos auditar sus servidores. |
| Puede entrenar con tus datos | Al menos un proveedor que sirve el modelo declara que puede usar tus peticiones para entrenar. No envíes datos sensibles. Es habitual en los modelos gratuitos. |
| Privacidad sin verificar | No hemos podido verificar la política de datos de todos los proveedores que sirven el modelo, o conviven políticas distintas. No lo damos por seguro. |
En GET /v1/models lo tienes en bytgon.privacy (status, note y sources con los enlaces a las políticas). La ficha de cada modelo en la tabla muestra la nota completa y las fuentes.
Límites
| Peticiones por minuto | 120 por key (configurable por key en el panel) |
| Modelos gratuitos | límites por usuario y cuota compartida (ver Modelos gratuitos) |
| Tope mensual por key | opcional, lo fijas tú |
| Tamaño de la petición | 25 MB |
| Tiempo máximo | 10 minutos (3 min hasta el primer byte) |
| Keys por cuenta | 20 |
| Imágenes de referencia | hasta 16 por petición (data URL, https o base64); el cuerpo completo cuenta en los 25 MB |
| Archivos generados | 30 días de retención y 2 GB por usuario (los más antiguos se retiran primero) |
Errores
Formato OpenAI ({"error":{"message","type","code"}}), Anthropic ({"type":"error","error":{…}}) o Gemini, según el endpoint.
| 401 | key ausente o inválida |
| 402 | saldo insuficiente para la reserva de esta petición |
| 403 | key desactivada, cuenta desactivada o modelo no permitido para la key |
| 404 | modelo inexistente (con sugerencias) |
| 413 | cuerpo demasiado grande |
| 429 | límite por minuto o tope mensual (retry-after) |
| 502 / 503 / 504 | proveedor inaccesible, sin saldo o lento — no se cobra |
Cabeceras de respuesta
| x-request-id | id de la petición (búscalo en tu registro) |
| x-bytgon-cost | coste de esta petición (respuestas no-stream) |
| x-bytgon-balance | saldo tras la petición |
| x-bytgon-model | modelo resuelto |
| x-ratelimit-limit / -remaining | límite por minuto y restantes |
| x-bytgon-audio-seconds | segundos de audio generados en /v1/audio/speech (lo que se cobra cuando el modelo de voz tiene precio por segundo) |
| x-bytgon-model-requested | id que pediste cuando se ha usado su variante equivalente (imagen con referencias u opciones avanzadas; ver Imágenes) |
| x-bytgon-media | id del archivo servido en /v1/media/{id} y /v1/videos/{id}/content |
Claude Code, Codex, Cursor, Cline, Chatbox…
Cualquier cliente que permita cambiar la base URL funciona. En el panel (API Access) tienes el fragmento con tu key real; aquí van los patrones:
Bytgon SuperAgente
En tu Bytgon: panel → Proveedores & LLMs → Bytgon API Router → pega tu key y elige modelo. O, desde API Access, pulsa «Usar en mi Bytgon»: abre tu panel con la key ya rellena.
LangChain, Vercel AI SDK, LlamaIndex…
Usa el proveedor OpenAI del framework con base_url = https://api.bytgon.com/v1.
Preguntas frecuentes
¿Los modelos son los originales?
Sí. Mismos identificadores, mismas capacidades. Enrutamos hacia proveedores con capacidad contratada al por mayor.
¿Guardáis mis prompts?
No. Solo metadatos de facturación (modelo, tokens, coste, duración, id). El chat del panel vive en tu navegador.
¿Puedo pedir factura?
Sí: Stripe emite recibo en cada recarga y puedes solicitar factura con tus datos fiscales desde Cuenta.
¿Qué pasa si el saldo se agota a mitad de una respuesta en streaming?
No ocurre: la reserva previa cubre la respuesta completa hasta max_tokens. Si la reserva no cabe, la petición se rechaza antes de empezar (402).
¿Hay modelos gratuitos?
Sí, cuando los proveedores los ofrecen: llevan la insignia Gratis en la tabla, no descuentan saldo y tienen cuota compartida con límites por usuario. Detalles en Modelos gratuitos. Para el resto, ofrecemos los precios más bajos posibles y un panel donde ves cada céntimo.
¿Hay precios más baratos en diferido, por lotes o asíncrono?
Hoy no: los proveedores con los que trabajamos no ofrecen tarifa reducida por lotes o diferido en estos modelos, y no prometemos descuentos que no existen. Lo que sí tienes, sin coste extra, es el modo asíncrono completo: vídeo con webhook_url o /events, imágenes y vídeos guardados en /v1/media y cobro exacto. Si un proveedor lo habilita, aparecerá como opción con su precio.
Mi agente pidió una imagen y no la recibió (se cortó, se quedó sin contexto…). ¿Se ha perdido?
No. Toda imagen o vídeo generado se guarda en tu cuenta 30 días: GET /v1/media lista los últimos y GET /v1/media/{id} la devuelve. En la respuesta original también va data[i].url.
¿Por qué la respuesta trae bytgon.model_requested?
Porque el id que pediste tiene una fuente plana que no entiende referencias ni 2K/4K y se usó su variante equivalente (el mismo modelo con todas las opciones). Pide esa variante directamente y el aviso desaparece.
¿Qué significa la insignia de privacidad de un modelo?
Privado: solo proveedores que declaran no entrenar con tus datos. Puede entrenar: el proveedor lo declara. Sin verificar: no lo damos por seguro. Más en Privacidad de tus datos.
Términos de servicio
El servicio se presta «tal cual» como pasarela hacia proveedores de modelos de IA. El saldo prepago no es reembolsable salvo lo indicado por la ley aplicable y las condiciones de la plataforma; el saldo no caduca mientras la cuenta esté activa. Está prohibido el uso para actividades ilegales, el abuso de los proveedores o la reventa no autorizada. Podemos limitar o suspender cuentas que incumplan estas normas. Los precios pueden cambiar; los cambios se publican en la tabla de precios y se aplican a partir de ese momento.
Privacidad
Guardamos: correo, nombre opcional, saldo y movimientos, keys (solo el hash), metadatos de cada petición (modelo, tokens, coste, duración, IP y agente de usuario abreviados) y registros de acceso. No guardamos el contenido de prompts ni respuestas. Los pagos los procesa Stripe; no vemos ni almacenamos tu tarjeta. Puedes borrar tu cuenta desde el panel.