Skip to main content
POST
/
v1
/
images
/
generations
POST /v1/images/generations
curl --request POST \
  --url https://api.geekhub.mx/v1/images/generations \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "<string>",
  "prompt": "<string>",
  "n": 123,
  "size": "<string>",
  "quality": "<string>"
}
'

Request body

model
string
required
El ID namespaced del modelo, ej. fal/flux-1.1-pro.
prompt
string
required
Descripción de la imagen. Máximo 4000 caracteres.
n
integer
default:"1"
Número de imágenes a generar (1–8). Cada imagen cobra independiente.
size
string
Tamaño deseado. Lo soportado depende del modelo:
  • OpenAI gpt-image-1: 1024x1024, 1536x1024, 1024x1536
  • OpenAI dall-e-3: 1024x1024, 1792x1024, 1024x1792
  • fal/Recraft/Ideogram: 1024x1024, 1024x768, 768x1024, etc.
quality
string
standard | hd para OpenAI. Otros modelos lo ignoran.

Response

{
  "id": "req_xxx",
  "object": "list",
  "created": 1782412958,
  "model": "fal/flux-1.1-pro",
  "data": [
    {
      "url": "https://supabase.geekhub.mx/storage/v1/object/public/generated-images/<org>/<req>/0.jpg"
    }
  ]
}
La URL es nuestra (Supabase Storage), no la del proveedor. Es persistente y no expira. Mismo modelo de seguridad que fal.media, Cloudinary o S3 unsigned: la URL incluye 2 UUIDs (org_id + request_id) que la hacen imposible de adivinar.

Ejemplos

from openai import OpenAI

client = OpenAI(
    base_url="https://api.geekhub.mx/v1",
    api_key="ghub_sk_live_xxx",
)

response = client.images.generate(
    model="fal/flux-1.1-pro",
    prompt="Un astronauta meditando en una nube de tacos al pastor, estilo cinematográfico",
    n=1,
    size="1024x1024",
)

print(response.data[0].url)

Latencia esperada

ModeloP50P95
DALL·E 38s20s
GPT Image 115s45s
Imagen 46s18s
Grok 2 Image10s30s
Flux 1.1 Pro7s25s
Flux 1.1 Pro Ultra12s40s
Recraft V38s28s
Ideogram V212s35s
SD 3.5 Large10s30s
Si tu request tarda > 60s, asume que falló — manda otro.

Costos

Cada imagen se cobra al precio del modelo × 1.05 (markup) × FX MXN/USD. Ver Modelos imágenes. Ejemplo: 1 imagen con Flux 1.1 Pro al FX de $20 MXN/USD:
$0.040 × 1.05 × 20 = $0.84 MXN por imagen