SkillJavaScriptv1.0.0

geometry

Generate AI images from text prompts.

0 downloads
geometrydotsh
Updated Feb 20, 2026

Geometry — AI Image Generation API

Generate images from text prompts. Pay per request with USDC on Solana via x402. No API keys, no accounts.

Payment

FieldValue
Protocolx402 (version 2)
Networksolana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
Schemeexact
CurrencyUSDC
Facilitatorhttps://facilitator.payai.network
Pay To79BLYwUdsNpPzDktxjibFR4DKMhHV2Q8iBu7Fk7R9fuU

Endpoints

GET /api/x402/generate/quote

Get the USDC price for a model. Free — no payment required.

ParameterTypeRequiredDescription
modelstringnoModel slug (default: flux-dev)

Example response:

{
  "success": true,
  "data": {
    "model": "flux-dev",
    "costUsdc": 0.0325,
    "paymentNetwork": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "payTo": "79BLYwUdsNpPzDktxjibFR4DKMhHV2Q8iBu7Fk7R9fuU"
  }
}

POST /api/x402/generate

Generate an AI image from a text prompt. Requires x402 USDC payment.

ParameterTypeRequiredDescription
promptstringyesText prompt (1–1000 chars)
modelstringnoModel slug (default: flux-dev)

Example request:

{
  "prompt": "A neon-lit Tokyo alley in the rain",
  "model": "flux-dev"
}

Example response:

{
  "success": true,
  "data": {
    "id": "ab0e4a1b-179f-4a6e-b505-53206a3e2e4b",
    "status": "completed",
    "prompt": "A neon-lit Tokyo alley in the rain",
    "model": "flux-dev",
    "costUsdc": 0.0325,
    "imageUrl": "https://cdn.geometry.sh/generations/user-id/gen-id.png",
    "createdAt": "2026-02-15T17:29:17.256Z"
  }
}

Available Models

SlugNamePrice (USDC)
bagelBagel$0.1300
bytedance-seedream-v4.5-text-to-imageBytedance$0.0520
bytedance-seedream-v3-text-to-imageBytedance$0.0390
bytedance-dreamina-v3.1-text-to-imageBytedance$0.0390
bytedance-seedream-v4-text-to-imageBytedance Seedream v4$0.0390
emu-3.5-image-text-to-imageEmu 3.5 Image$0.1950
flux-pro-kontext-max-text-to-imageFLUX.1 Kontext [max]$0.1040
flux-pro-kontext-text-to-imageFLUX.1 Kontext [pro]$0.0520
flux-devFLUX.1 [dev]$0.0325
flux-pro-v1.1-ultraFLUX1.1 [pro] ultra$0.0780
bria-fibo-generateFibo$0.0520
bria-fibo-lite-generateFibo Lite$0.0468
gemini-25-flash-imageGemini 2.5 Flash Image$0.0517
gemini-3-pro-image-previewGemini 3 Pro Image Preview$0.1950
xai-grok-imagine-imageGrok Imagine Image$0.0260
ideogram-v3Ideogram Text to Image$0.0390
ideogram-v2Ideogram V2$0.1040
imagen4-previewImagen 4$0.0520
imagen4-preview-fastImagen 4$0.0260
imagen4-preview-ultraImagen 4 Ultra$0.0780
kling-image-v3-text-to-imageKling Image$0.0364
kling-image-o3-text-to-imageKling Image$0.0364
minimax-image-01MiniMax (Hailuo AI) Text to Image$0.0130
nano-bananaNano Banana$0.0517
nano-banana-proNano Banana Pro$0.1950
qwen-image-max-text-to-imageQwen Image Max$0.0975
recraft-v3-text-to-imageRecraft V3$0.0520
reve-text-to-imageReve$0.0520
vidu-q2-text-to-imageVidu$0.0650
wan-v2.2-5b-text-to-imageWan$0.0208
wan-v2.2-a14b-text-to-imageWan$0.0325
wan-25-preview-text-to-imageWan 2.5 Text to Image$0.0650
wan-v2.2-a14b-text-to-image-loraWan v2.2 A14B Text-to-Image A14B with LoRAs$0.0650

Quick Start

JavaScript

import { createKeyPairSignerFromBytes } from "@solana/kit";
import { wrapFetchWithPayment, x402Client } from "@x402/fetch";
import { ExactSvmScheme } from "@x402/svm/exact/client";

const signer = await createKeyPairSignerFromBytes(keypairBytes);
const client = new x402Client();
client.register("solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp", new ExactSvmScheme(signer));

const fetchWithPay = wrapFetchWithPayment(fetch, client);

const res = await fetchWithPay("https://api.geometry.sh/api/x402/generate", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ prompt: "A cat in space" }),
});

const { data } = await res.json();
console.log(data.imageUrl);

cURL

# Step 1: Get a quote (free)
curl https://api.geometry.sh/api/x402/generate/quote?model=flux-dev

# Step 2: POST to generate (returns 402 with payment instructions)
curl -X POST https://api.geometry.sh/api/x402/generate \
  -H "Content-Type: application/json" \
  -d '{"prompt": "A cat in space", "model": "flux-dev"}'

# Step 3: Use an x402 client to handle payment automatically
# npm install @x402/fetch @x402/svm
Free
Installation
Reviews

Sign in to leave a review.

No reviews yet. Be the first.