AI 服务/图像生成
生成图像
接口说明:同步生成图像,根据所选模型与提示词返回生成结果。
调用本接口前,请先请求「图像生成模型」接口(GET /api/ai/models/image/generation),获取当前可用的模型列表及各模型支持的尺寸、质量、风格与价格,再据此填写本接口参数。
图像生成为文生图:仅通过文字提示词生成全新图像,不传入图片。如需基于已有图片进行修改、重绘(图生图),请使用「编辑图像」接口。
如已在使用 OpenAI SDK 或生态工具,可改用 OpenAI 兼容端点「OpenAI 图像生成」。
POST
/
api
/
ai
/
image
/
generate
生成图像
curl --request POST \
--url https://aitoearn.cn/api/ai/image/generate \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"prompt": "A cute orange cat sitting by a window, soft natural light",
"model": "gpt-image-2"
}
'import requests
url = "https://aitoearn.cn/api/ai/image/generate"
payload = {
"prompt": "A cute orange cat sitting by a window, soft natural light",
"model": "gpt-image-2"
}
headers = {
"X-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: 'A cute orange cat sitting by a window, soft natural light',
model: 'gpt-image-2'
})
};
fetch('https://aitoearn.cn/api/ai/image/generate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://aitoearn.cn/api/ai/image/generate"
payload := strings.NewReader("{\n \"prompt\": \"A cute orange cat sitting by a window, soft natural light\",\n \"model\": \"gpt-image-2\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Api-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"code": 0,
"message": "请求成功",
"data": {
"created": 1,
"list": [
{
"url": "string",
"b64_json": "string",
"revised_prompt": "string"
}
],
"usage": {
"input_tokens": 1,
"output_tokens": 1,
"total_tokens": 1
},
"background": "string",
"output_format": "string",
"quality": "string",
"size": "string"
}
}授权
需要从 AiToEarn 获取 API Key。点击前往「API Key 获取教程」。
请求体
application/json
图片描述提示
Required string length:
1 - 4000示例:
"A cute orange cat sitting by a window, soft natural light"
返回格式
可用选项:
url, b64_json 示例:
"url"
响应
200 - application/json
请求已被服务处理。业务是否成功以响应体 code === 0 为准。
业务状态码。0 表示成功,非 0 表示业务错误。
响应消息。
Hide child attributes
Hide child attributes
创建时间戳
背景
输出格式
质量档位
图片尺寸
请求 ID。
错误响应时间戳,Unix 毫秒。
最后修改于 2026年9月29日
⌘I
生成图像
curl --request POST \
--url https://aitoearn.cn/api/ai/image/generate \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '
{
"prompt": "A cute orange cat sitting by a window, soft natural light",
"model": "gpt-image-2"
}
'import requests
url = "https://aitoearn.cn/api/ai/image/generate"
payload = {
"prompt": "A cute orange cat sitting by a window, soft natural light",
"model": "gpt-image-2"
}
headers = {
"X-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: 'A cute orange cat sitting by a window, soft natural light',
model: 'gpt-image-2'
})
};
fetch('https://aitoearn.cn/api/ai/image/generate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://aitoearn.cn/api/ai/image/generate"
payload := strings.NewReader("{\n \"prompt\": \"A cute orange cat sitting by a window, soft natural light\",\n \"model\": \"gpt-image-2\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Api-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"code": 0,
"message": "请求成功",
"data": {
"created": 1,
"list": [
{
"url": "string",
"b64_json": "string",
"revised_prompt": "string"
}
],
"usage": {
"input_tokens": 1,
"output_tokens": 1,
"total_tokens": 1
},
"background": "string",
"output_format": "string",
"quality": "string",
"size": "string"
}
}
