aisplice

GPT Image 2.5 Ext

OpenAIImage generationper-requestTiered pricingsave 39% vs official

Image generation and editing. 1K returns the generated image; 2K and 4K add an upscaling pass. Generates one image per task and supports up to 15 reference images. Final billing includes generation and completed upscale passes.

Price

$0.0065/ call

Endpoint

/images/tasks

Delivery pattern

Async task lifecycle

Availability

Available now

API documentation

Build and copy the request

Choose the options this model accepts. The code below updates as you choose.

Step-by-step in the docs
POSThttps://www.aisplice.store/v1/images/tasksBearer API keyAsync task

OptionsOnly options published for this model are shown.

# Requires curl and jq
API_KEY="${API_KEY:-YOUR_API_KEY}"

# 1. Submit once
SUBMITTED=$(curl --fail-with-body -sS https://www.aisplice.store/v1/images/tasks \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: model-docs-$(date +%s)-$$" \\
  -d '{
  "model": "GPT Image 2.5 Ext",
  "prompt": "A cinematic scene with careful composition",
  "size": "1:1",
  "resolution": "1K",
  "quality": "auto",
  "n": 1
}')
TASK_ID=$(printf '%s' "$SUBMITTED" | jq -r '.task_id // .id // empty')
if [ -z "$TASK_ID" ]; then
  printf '%s\n' "$SUBMITTED" >&2
  exit 1
fi
echo "task_id=$TASK_ID"

# 2. Poll until terminal
while true; do
  STATUS_JSON=$(curl --fail-with-body -sS \
    "https://www.aisplice.store/v1/images/tasks/$TASK_ID" \
    -H "Authorization: Bearer $API_KEY")
  STATUS=$(printf '%s' "$STATUS_JSON" | jq -r '.status // empty' | tr '[:upper:]' '[:lower:]')
  echo "status=$STATUS"
  case "$STATUS" in
    completed|succeeded|success) break ;;
    failed|failure|cancelled|canceled)
      printf '%s\n' "$STATUS_JSON" | jq .
      exit 1
      ;;
  esac
  sleep 3
done

# 3. Fetch the final result
curl --fail-with-body -sS \
  "https://www.aisplice.store/v1/images/tasks/$TASK_ID/content" \
  -H "Authorization: Bearer $API_KEY" | jq .
  1. 1Submit the task
  2. 2Poll the status
  3. 3Fetch the content

This model requires public media URLs. Upload a local file first, then put public_url into the model request. Avoid large Base64 bodies.

Read the upload guide

Parameter reference

model
stringrequired

Exact model identifier for this request.

gpt-image-2.5-ext
prompt
stringrequired

Instruction describing the desired result.

size
stringoptional

Output aspect ratio or dimensions.

auto1:13:22:34:33:45:44:516:99:162:11:23:11:321:99:21
resolution
stringoptional

Requested output resolution.

1K2K4K
quality
stringoptional

For 2K/4K: low uses standard upscaling, auto/medium professional, and high enhanced. 1K returns the original image.

autolowmediumhigh
n
integeroptional
1
images
string[]optional

Optional reference images for editing.

Response lifecycle

Task status, terminal states, and result response examples.

Submit
{
  "id": "task_xxx",
  "task_id": "task_xxx",
  "object": "image.task",
  "model": "GPT Image 2.5 Ext",
  "status": "queued"
}
Content
{
  "created": 1720000000,
  "data": [
    {
      "url": "https://media.example/result.png"
    }
  ]
}

Waiting

queued · submitted · in_progress · processing

Success

completed · succeeded · success

Failure

failed · failure · cancelled · canceled

Errors and production

Retry rules, idempotency, and the minimum production checklist.

400 / 422

Fix the request fields or unsupported option; do not retry unchanged.

401

Check that the API key is present, active, and sent as a Bearer token.

402

The account balance is insufficient.

409

The Idempotency-Key is processing or was reused with another body.

429

Back off according to Retry-After before retrying.

5xx

Retry with exponential backoff and keep the original Idempotency-Key.

  • Keep API keys on your server for public mobile and browser applications.
  • Set a unique Idempotency-Key for every billable async operation.
  • Persist task_id so polling can resume after a restart.
  • Use a timeout for every HTTP request and surface the request ID in support reports.
  • Read live model metadata instead of hard-coding prices and supported options.

Price and tiers

save 39% vs official

Request price

$0.0065/ call

$0.010625

Tiered pricing

Base price $0.0065

Tier pricing — the final price depends on the options you request. Unlisted tiers bill at the base price.

SizePrice
  • 16:9×1$0.0065
  • 1:1×1$0.0065
  • 1:2×1$0.0065
  • 1:3×1$0.0065
  • 21:9×1$0.0065
  • 2:1×1$0.0065
  • 2:3×1$0.0065
  • 3:1×1$0.0065
  • 3:2×1$0.0065
  • 3:4×1$0.0065
  • 4:3×1$0.0065
  • 4:5×1$0.0065
  • 5:4×1$0.0065
  • 9:16×1$0.0065
  • 9:21×1$0.0065
  • auto×1$0.0065
ResolutionPrice
  • 1k×1$0.0065
  • 2k×2.138040769231$0.013897
  • 4k×2.138040769231$0.013897
Quality / resolutionPrice
  • auto:1k×1$0.0065
  • high:1k×1$0.0065
  • low:1k×1$0.0065
  • medium:1k×1$0.0065
  • low:2k×1.189673461538$0.007733
  • low:4k×1.189673461538$0.007733
  • auto:2k×2.138040769231$0.013897
  • auto:4k×2.138040769231$0.013897
  • medium:2k×2.138040769231$0.013897
  • medium:4k×2.138040769231$0.013897
  • high:2k×8.586938461538$0.055815
  • high:4k×8.586938461538$0.055815
With referencePrice
  • 1k×1$0.0065
  • 2k×2.138040769231$0.013897
  • 4k×2.138040769231$0.013897

The price shown here is exactly what you are billed — failed calls are refunded automatically.

Related models