API
CLUB

GPT Image 2.5 Flare

GPT Image 2.5 Flare · 图片编辑已收录于企业 API 模型库。

openai/gpt-image-2.5-flare/image-to-image

能力

最适合

  • •概念艺术与情绪板
  • •产品与营销视觉素材
  • •大规模批量生成

不适合

  • •小字号文字的精确渲染
  • •品牌标志的精确还原
  • •矢量输出

身份验证

API 密钥标头

Uika API 使用 API 密钥来验证请求。将您的密钥发送到 X-API 密钥 标题。API 密钥必须保密,不要暴露在浏览器或其他客户端代码中。请从服务端调用 API。登录后的试玩使用控制台会话,不会发送你的 API 密钥。

标题
X-API-Key: YOUR_API_KEY

端点

异步·轮询结果

发布https://api.dev.pika.art/v1/media/openai/gpt-image-2.5-flare/image-to-image生成端点
获取https://api.dev.pika.art/v1/media/jobs/{request_id}民意调查直至完成
获取https://api.dev.pika.art/v1/media/jobs/{request_id}/content输出 URL,适用于仅保留 id 的客户端
删除https://api.dev.pika.art/v1/media/jobs/{request_id}删除存储的媒体并提示

参考上传

媒体输入

媒体输入接受任何公共 URL。要使用本地文件,请将其 content_type 和 size_bytes 发布到 /v1/media/uploads,将文件放入返回的 upload_url,然后传递 url.

上传
# 1. Request a presigned upload URL. Send the file's content
# type and its exact size in bytes.
curl -X POST https://api.dev.pika.art/v1/media/uploads \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"content_type": "image/png", "size_bytes": 12345}'
# The response returns two URLs:
# upload_url: a temporary URL to upload the file to. Expires in 5 minutes.
# url: the permanent Uika URL. Pass it to the model as the input.
# {
# "upload_url": "https://upload.r2.pika.art/...?X-Amz-Signature=...",
# "url": "https://cdn.pika.art/v2/media/uploads/org_abc/9f8e7d.png"
# }
# 2. Upload the file to upload_url, then pass url to the model.
curl -X PUT "<upload_url>" \
-H "Content-Type: image/png" \
--data-binary @input.png

生成

POST /v1/media/openai/gpt-image-2.5-flare/image-to-image

请求

curl -X POST https://api.dev.pika.art/v1/media/openai/gpt-image-2.5-flare/image-to-image \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Replace the oxblood patent loafer with a woman's high-heeled ankle boot with a sharply pointed toe. The boot is the same deep oxblood patent leather with the same wet gloss, and it sits at the same enormous scale in the same position and orientation, toe to the left, standing on the same car-wash track. It has a long pointed toe, a tall slim stiletto heel, a shaft rising above the ankle and a slim zip up the inner side. The same soap foam, suds, streaming water and reflections run over its patent surface and pool at its base. The gloved hands in yellow rubber gloves still wipe the same spot on it with the same cream cloth. The blue rotary brushes, tiled bay and wet floor are unchanged. \nChange ONLY what is described below. Everything else in the frame must stay pixel-identical to the supplied image: the same camera angle, framing, crop and aspect ratio, the same background, the same lighting direction, quality and colour, the same grade, grain and depth of field, and every other object, surface and person unchanged in position, scale and appearance. Do not restyle, recompose, recolour, relight or clean up the photograph.",
"num_images": 1,
"aspect_ratio": "16:9",
"output_format": "png",
"resolution": "1K",
"image_urls": [
"https://cdn.pika.art/v2/media/uploads/a7112d4d-62ed-4a11-8dee-74e89c2ec037/2ef5ffbf9d414738b639721e3ad17aa2.png"
],
"quality": "medium"
}'

返回数据

{
"id": "media_8f3a2c91-5b7d-4e0a-9c26-31d4f2a8e6b0",
"status": "queued"
}

请求正文

提示词字符串需要
描述你想生成的图片。
num_images整数1 – 10默认: 1
要生成的图片数量。
aspect_ratioenum
输出纵横比。设置“大小”时将被忽略。
output_formatenum
输出图片的文件格式。
分辨率枚举
输出分辨率。
背景枚举
输出的背景。 “透明”需要 png 或 webp output_format。
尺寸字符串
显式输出大小为“WxH”(例如“1024x1024”)或“auto”以供提供商选择。覆盖 aspect_ratio 和分辨率。
image_urlsstring[]1 – 16需要
要编辑的原始图片链接。
mask_image_urlstring
标记编辑区域的蒙版链接,透明部分会被编辑。必须为带 Alpha 通道的 PNG,否则厂商会拒绝。
质量枚举
输出的渲染质量。

接受的值

aspect_ratio
output_format
分辨率
背景
质量

输入模式

图片链接image_urls

可直接使用公开链接。若文件在本地,先向 /v1/media/uploads 提交 { content_type, size_bytes },再带上返回的请求头,使用 PUT 将图片上传至 upload_url,最后使用返回的 url。

蒙版图片链接mask_image_url

可直接使用公开链接。若文件在本地,先向 /v1/media/uploads 提交 { content_type, size_bytes },再带上返回的请求头,使用 PUT 将图片上传至 upload_url,最后使用返回的 url。

返回

返回一个 工作对象 状态 ,不是最终输出。存储响应中的 ID 并轮询作业直至完成。

民意调查状态

获取/v1/media/jobs/{request_id}

请求

curl https://api.dev.pika.art/v1/media/jobs/{request_id} \
-H "X-API-Key: YOUR_API_KEY"

返回数据

{
"id": "media_8f3a2c91-5b7d-4e0a-9c26-31d4f2a8e6b0",
"status": "running"
}

按 ID 轮询作业,直到达到最终状态:已完成或失败。已完成的作业在输出中携带其下载 URL,并且 GET /v1/media/jobs/{request_id}/content 返回与 { "url" } 对于只保留 ID 的客户端。

DELETE /v1/media/jobs/{request_id} 删除作业的存储介质以及提交时捕获的请求(提示和参数)。然后作业报告 deleted_at 并且没有输出,内容端点回答410。

作业对象

id字符串
作业的唯一标识符。
状态枚举
作业的状态。其中之一:
对象
生成输出。工作完成后立即出现。
错误字符串
如果作业失败,则失败的原因。
deleted_atnumber
当您删除作业的存储媒体时,以纪元秒为单位。在此之前为空,一旦设置后输出为空。
用法对象
提供者为作业报告的单位,例如 video_output_tokens 或 image_output_tokens。一旦作业终止就存在,仅携带作业报告的单位,并且当没有报告任何内容时为空。
对象
工作收费。工作结束后在场;提交响应和 webhooks 上为 null。

错误

在通话中共享

错误使用传统的 HTTP 状态代码以及形状的 JSON 主体 {"message": "..."}. 参数校验失败时返回 422 并带有一条命名有问题字段的消息。作业行存在后提交拒绝(余额、速率限制)返回失败的作业信封 — 分支 error.code.

状态当身体
401 未经授权API 密钥丢失或无效。{"message":"Invalid API key"}
403 禁止非活动密钥被拒绝 {"message"} 身体。作业行存在并返回失败的作业信封后,组织余额或后付费周期限制无法覆盖的提交将被拒绝。 GET /billing/balance 将两者分开: 200 表示密钥处于活动状态,因此拒绝的是余额或循环限制。{"id":"media_8f3a2c91-5b7d-4e0a-9c26-31d4f2a8e6b0","status":"failed","error":{"code":"insufficient_balance","message":"Insufficient org balance"}}
404 未找到您的组织中不存在具有该 ID 的作业,或者媒体路径名称未知的供应商/型号/功能。{"message":"media job not found"}
409冲突在作业完成之前请求结果,或者将 Idempotency-Key 标头与不同的正文重用。{"message":"media job is not ready"}
422 无法处理的实体请求正文验证失败:枚举值无效、缺少必填字段、类型错误或 JSON 格式错误。 JSON 消息命名有问题的字段。无法定价的架构有效参数组合在创建作业后失败,并返回失败的作业信封和错误代码 invalid_input.{"message":"duration: Input should be less than or equal to 15"}
429 请求太多您已达到每分钟或每天的请求限制,或者您组织的作业队列已满。作为失败的作业信封返回。如果存在 Retry-After 标头,请等待那么长时间,然后使用新的 Idempotency-Key 重试。{"id":"media_8f3a2c91-5b7d-4e0a-9c26-31d4f2a8e6b0","status":"failed","error":{"code":"rate_limited","message":"rate limit exceeded: rpm"}}
503服务不可用模型导轨或后端依赖项暂时不可用。作为失败的作业信封退回;使用退避和新的幂等密钥重试。{"id":"media_8f3a2c91-5b7d-4e0a-9c26-31d4f2a8e6b0","status":"failed","error":{"code":"provider_unavailable","message":"media dispatch unavailable"}}