API
CLUB

GPT Image 2.5 Sunburst

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

openai/gpt-image-2.5-sunburst/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-sunburst/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-sunburst/image-to-image

请求

curl -X POST https://api.dev.pika.art/v1/media/openai/gpt-image-2.5-sunburst/image-to-image \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Using the supplied photograph as the base, keep its composition, camera angle, framing and lighting, and keep every element not named below exactly as it is. Keep the torn cut-paper collage treatment and the\ntopiary garden. Change only the following. Keep the transparent background and edge of the artwork.\n\nThe existing figure is now in full profile to camera, mid-stride and not looking at the camera, walking a great dane on a lead. Their coat changes from royal blue to a black-and-white cow-print coat.\n\nAdd a second figure walking in the opposite direction: an invented man walking a fluffy ginger cat on a lead, wearing an oversized charcoal peacoat and baggy pale-pink corduroy trousers.\n\nBoth figures and both animals are built from the same torn cut-paper collage material as the rest of the scene — layered fragments of coloured paper with visible torn fibrous edges, slightly offset and\nmis-registered.\n\nLighting stays as it is: one enormous softbox, fully diffused, soft and even, no hard shadows. Fine medium-format film grain. Colour soft but vibrant, never oversaturated, never dull. Any people are entirely fictional invented individuals, anatomically correct and complete. No text, no logos, no\nwatermark.",
"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/7364d1f8a24840408bedc908790be67e.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"}}