本文将介绍一种 AI证件照制作 API 对接说明,它是可以通过输入人像照片URL以及自己喜欢的模板来制作各种风格的证件照。
接下来介绍下 AI证件照制作 API 的对接说明。
申请流程
要使用 API,需要先到 AI证件照制作 API 对应页面申请对应的服务,进入页面之后,点击「Acquire」按钮,如图所示:
如果你尚未登录或注册,会自动跳转到登录页面邀请您来注册和登录,登录注册之后会自动返回当前页面。
在首次申请时会有免费额度赠送,可以免费使用该 API。
基本使用
首先先了解下基本的使用方式,就是输入需要处理人像图像以及喜欢的AI证件照模板,便可获得处理后的结果,首先需要简单地传递一个 image_urls
字段,这个就是需要处理人像图像链接数组,如图所示:
然后我们还需要输入自己喜欢的模板,本文提供了八种受欢迎的模板,具体的模板可参考下文:
json { "male_portrait": 男形象照 "male_portrait2": 男形象照(另一个版本) "kindergarten": 幼儿园入园照 "logo_tshirt": 企业LogoT恤照 "wedding": 结婚登记照 "business_photo": 商务风写真 "bob_suit": 黑西装波波头 "female_portrait": 女性形象照 }
之后我们还可以指定生成的速度参数 mode
,一般分为俩种慢速 relax
和 快速 fast
,具体的内容如下:
可以看到这里我们设置了 Request Headers,包括:
accept
:想要接收怎样格式的响应结果,这里填写为application/json
,即 JSON 格式。authorization
:调用 API 的密钥,申请之后可以直接下拉选择。
另外设置了 Request Body,包括:
mode
:生成证件照的通道,主要有fast快速和relax慢速俩种,当使用relax强烈推荐使用下面的参数callback_url
。template
:证件照模板的风格。image_urls
:需要上传的证件照人像链接。callback_url
:需要回调结果的URL。
选择之后,可以发现右侧也生成了对应代码,如图所示:
点击「Try」按钮即可进行测试,如上图所示,这里我们就得到了如下结果:
json { "success": true, "task_id": "ae1e4948-dba1-4a6f-87af-67961b647428", "data": [ { "id": "202411031951124776", "image_url": "https://platform.cdn.acedata.cloud/headshots/ae1e4948-dba1-4a6f-87af-67961b647428.png", "template": "男形象照" }, { "id": "202411031951128490", "image_url": "https://platform.cdn.acedata.cloud/headshots/ae1e4948-dba1-4a6f-87af-67961b647428.png", "template": "男形象照" } ] }
返回结果一共有多个字段,介绍如下:
success
,此时证件照生成任务的状态情况。task_id
,此时证件照生成任务ID。data
,此时证件照生成任务的结果列表。id
,此时证件照生成任务的照片ID。image_url
,此时证件照生成任务的图片链接。template
,此时证件照生成任务的证件照模板名称。
可以看到我们得到了根据模板与人像图片得到满意的证件照信息,我们只需要根据结果中 data
的图片链接地址获取证件照即可。
另外如果想生成对应的对接代码,可以直接复制生成,例如 CURL 的代码如下:
shell curl -X POST 'https://api.acedata.cloud/headshots/generate' \ -H 'accept: application/json' \ -H 'authorization: Bearer {token}' \ -H 'content-type: application/json' \ -d '{ "mode": "fast", "template": "male_portrait", "image_urls": ["https://cdn.zhishuyun.com/2024-11-03-d23744954ca4819503469f04f2268aa0.jpg"] }'
异步回调
由于 AI证件照生成的时间相对较长,大约需要 1-2 分钟,如果 API 长时间无响应,HTTP 请求会一直保持连接,导致额外的系统资源消耗,所以本 API 也提供了异步回调的支持。
整体流程是:客户端发起请求的时候,额外指定一个 callback_url
字段,客户端发起 API 请求之后,API 会立马返回一个结果,包含一个 task_id
的字段信息,代表当前的任务 ID。当任务完成之后,生成证件照的结果会通过 POST JSON 的形式发送到客户端指定的 callback_url
,其中也包括了 task_id
字段,这样任务结果就可以通过 ID 关联起来了。
下面我们通过示例来了解下具体怎样操作。
首先,Webhook 回调是一个可以接收 HTTP 请求的服务,开发者应该替换为自己搭建的 HTTP 服务器的 URL。此处为了方便演示,使用一个公开的 Webhook 样例网站 https://webhook.site/,打开该网站即可得到一个 Webhook URL,如图所示:
将此 URL 复制下来,就可以作为 Webhook 来使用,此处的样例为 https://webhook.site/00f38b26-4289-4899-83d6-0cea7308850a
。
接下来,我们可以设置字段 callback_url
为上述 Webhook URL,同时填入人像图片链接以及模板,本文推荐在参数 mode
为 relax
时使用异步回调,具体的内容如图所示:
点击运行,可以发现会立即得到一个结果,如下:
{ "task_id": "763b1450-8804-434f-acc7-d713be73a28f" }
稍等片刻,我们可以在 https://webhook.site/00f38b26-4289-4899-83d6-0cea7308850a
上观察到生成歌曲的结果,如图所示:
内容如下:
json { "success": true, "task_id": "763b1450-8804-434f-acc7-d713be73a28f", "data": [ { "id": "202411032010131366", "image_url": "https://platform.cdn.acedata.cloud/headshots/763b1450-8804-434f-acc7-d713be73a28f.png", "template": "男形象照" }, { "id": "202411032010132420", "image_url": "https://platform.cdn.acedata.cloud/headshots/763b1450-8804-434f-acc7-d713be73a28f.png", "template": "男形象照" } ] }
可以看到结果中有一个 task_id
字段,其他的字段都和上文类似,通过该字段即可实现任务的关联。
错误处理
在调用 API 时,如果遇到错误,API 会返回相应的错误代码和信息。例如:
400 token_mismatched
:Bad request, possibly due to missing or invalid parameters.400 api_not_implemented
:Bad request, possibly due to missing or invalid parameters.401 invalid_token
:Unauthorized, invalid or missing authorization token.429 too_many_requests
:Too many requests, you have exceeded the rate limit.500 api_error
:Internal server error, something went wrong on the server.
错误响应示例
json { "success": false, "error": { "code": "api_error", "message": "fetch failed" }, "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89" }
结论
通过本文档,您已经了解了如何使用 AI证件照制作 API 可通过输入人像照片URL以及自己喜欢的模板来制作各种风格的证件照。希望本文档能帮助您更好地对接和使用该 API。如有任何问题,请随时联系我们的技术支持团队。