Pure Tokens Image
Solo llama al endpoint fijo de la API de Pure Tokens Images: https://api.puretokensx.com/v1/images/generations. Edita solo cuando se declare explícitamente el perfil del modelo, llamando a /v1/images/generations o /v1/images/edits. Usa siempre la URL completa y fija; no uses una URL base configurada como destino de la solicitud, ni verifiques el nombre del proveedor.
El host actual utiliza su propia capacidad de autenticación HTTPS/API para completar la solicitud con las credenciales actualmente asociadas a Pure Tokens; las credenciales solo pueden estar en memoria para esta única solicitud fija. Tanto los CC Switch de terceros como la configuración manual del host pueden ser la fuente de esta conexión. No se debe mostrar, solicitar, guardar, registrar o reportar la clave, URL base, cabeceras, configuración completa del host, respuesta original o medios del usuario. No se debe usar Node, MCP, proxy, sidecar, subida independiente o endpoint alternativo.
Lectura bajo demanda de referencias
No cargues todos los modelos y todos los escenarios de excepción en cada solicitud. Lee mínimamente en el siguiente orden:
- Primero lee
references/model-index.json: resuelve el modelo por defecto o el alias único, y obtén la ruta exacta del perfil. - Lee solo el perfil del modelo seleccionado en
references/profiles/<model>.json: verifica parámetros, restricciones, operación y ciclo de vida. Los modelos exactos que no estén en el índice solo permiten campos básicos de texto a imagen; solo cuando el usuario solicite parámetros adicionales, imagen de referencia o edición, consulta el directorio en tiempo real bajo demanda. - Las solicitudes normales de tipo POST pueden ejecutarse basándose únicamente en esta Skill, el índice y el perfil seleccionado. Una vez recibida la respuesta, al entrar en la fase de sondeo/entrega, o al construir operaciones no básicas como ediciones, lee
references/execution-contract.jsonyreferences/task-receipt.json. - Solo cuando surja la excepción, ambigüedad, rechazo, adjunto o problema de entrega correspondiente, lee el escenario coincidente en
references/behavior-scenarios.json.
Modelos y solicitudes
- El modelo por defecto para texto a imagen normal es
gpt-image-2;image2es su único alias. Cuando el usuario proporcione un alias único, usa el mapeo del índice; con cero o múltiples candidatos, lista los ID exactos y pide al usuario que elija. Cuando el usuario proporcione un ID exacto, conserva ese ID. Las solicitudes básicas no deben leer el directorio por adelantado para confirmar permisos o capacidades. - Las solicitudes normales solo envían un
POST /v1/images/generations, siempre conmodel,promptyasync: true. Solo cuando el perfil exacto lo declare, incluyen,size,image_size,aspect_ratio,width,height,strengthu otros campos y valores opcionales. - Una sola solicitud de usuario solo puede crear una tarea de pago, nunca dividir el pedido.
ndebe estar explícitamente permitido por el perfil; de lo contrario, indica que solo se admite una imagen por solicitud o pide al usuario que seleccione un modelo que admita esa cantidad. - No se pueden enviar dimensiones físicas como
200cm × 230cma la API. Explica que no se puede garantizar la dimensión física exacta y lista las opciones de píxeles, dimensiones semánticas o proporciones realmente declaradas en el perfil. Cuandowidthyheightse declaren como un par obligatorio, la ausencia de uno detiene la solicitud. Si se proporcionan múltiples expresiones de tamaño al mismo tiempo, solo envía una según la prioridad del perfil. - Solo cuando el usuario pregunte explícitamente por el modelo actual, el parámetro/operación requerido no esté en el perfil local, el transporte del adjunto sea incompatible, o la API rechace la solicitud por modelo/parámetro/capacidad y se necesite una explicación, lee una vez
GET https://api.puretokensx.com/v1/media/models. Un fallo en la lectura del directorio no debe impedir una solicitud de texto a imagen básica que sea legítima, ni desencadenar reintentos automáticos.
Imagen de referencia y edición
- Si el usuario adjunta una imagen pero no especifica su propósito, primero pregúntale si es una referencia visual o una imagen a editar; no hagas suposiciones.
- Las imágenes de URL pública solo aceptan URLs
https://proporcionadas explícitamente por el usuario que sean conformes, y solo pueden colocarse en los campos y transportes declarados en el perfil. No descargues, sondees, reubiques, reescribas o generes URLs. - Las imágenes de referencia locales o las ediciones deben estar explícitamente soportadas por la operación
image_editmultipart del perfil seleccionado, utilizando estrictamente su ruta, campos, cantidad y transportemultipart_file. Envía solo el adjunto actual con esta solicitud de la API de Images; no lo subas a R2, no llames a una interfaz de subida independiente, no generes un file ID, no conviertas el contenido del adjunto en un prompt, ni lo degrades silenciosamente a texto a imagen. - Los prompts de imágenes de referencia conservan la intención de "referencia"; los prompts de edición deben especificar claramente "qué modificar y qué conservar". Las máscaras, fondos transparentes, múltiples imágenes de referencia no declaradas y otras extensiones no declaradas deben detenerse antes de la facturación y explicar la limitación.
Tareas asíncronas y entrega
- Como máximo un POST por cada nueva solicitud. Si el POST puede haberse iniciado pero no hay un resultado o ID de tarea analizable, reporta el resultado como desconocido: no reintentes, no cambies de modelo, no afirmes que no se creó, que no se cobró o que se reembolsó. Sin ID de tarea, cualquier nueva solicitud posterior debe obtener la confirmación explícita del usuario.
- Obtén el ID de tarea solo desde los campos de nivel superior declarados o desde
task_id/iddel nivel superior. Consulta solo la misma URLhttps://api.puretokensx.com/v1/images/{task_id}, y tras el éxito, entrega en ordencontent?index=0..n-1. Las URLs, texto de estado, HTML y SVG no constituyen una entrega exitosa. - Cada ventana de sondeo tiene un máximo de 6 lecturas de estado y un máximo de 120 segundos; las esperas regulares son de 3, 6, 12, 24, 30 segundos. En caso de 429, solo si el
Retry-Aftersigue dentro del presupuesto de la ronda actual, se continúa con la misma tarea. Sin sondeo en segundo plano, sin lecturas de estado concurrentes, sin reintentos automáticos. - Solo reporta éxito cuando el host entregue realmente los bytes de imagen nativos o el adjunto. Entrega una por una, no precargues, no leas repetidamente, no almacenes en caché los medios del usuario; tras el éxito, finaliza la respuesta actual.
Acuse de recibo de fallo
Cuando el host sea bloqueado antes del POST debido a la red, aprobación, entrega de adjuntos o incapacidad de entregar bytes de imagen nativos, devuelve failure_phase: validation, indicando claramente que la API de Images no se ejecutó, y sin adivinar la causa de la configuración. Para otros fallos, genera un acuse de recibo seguro según execution-contract.json y el escenario de comportamiento coincidente: solo reporta el estado HTTP y el código de error público que la API realmente devolvió; no expongas la respuesta original, URL interna, trazas de pila, credenciales, contenido de la solicitud o medios del usuario.