请求类型: HTTP/HTTPS
接口地址: http://apicall.id-photo-verify.com/api/cut_pic
请求方式: POST
数据类型: JSON
响应类型: JSON
接口状态: 启用
制作证件照,推荐使用制作并检测接口
调用此接口不会增加已调用次数
带水印图片存储时间为 1 天,无水印图片存储时间为 7 天
通过名字获取带水印图片不会增加已调用次数
(通过获取图片的api获取无水印图片或无水印已排版图片会增加 1 次调用次数)
官网上对应的app_key应用类型必须为证件照制作
| 参数名称 | 是否必须 | 类型 | 描述 |
|---|---|---|---|
| file | 是 | str | 图片的base64数据(注意不包含base64的头部数据),或者图片在oss的key(见第十三个接口) |
| app_key | 是 | str | 已申请的app_key |
| spec_id | 是 | int | 已有的规格ID,见页面上方的‘照片规格列表’ |
| is_fair | 否 | int | 是否美颜,0代表不美颜,1代表美颜,默认为美颜 |
| fair_level | 否 | int | 美颜等级,分为1,2,3,4,5等级,支持字典形式传输详见参数说明3, 默认为1 |
| original | 否 | int | 程序会按照px = mm/25.4*original去设定照片的像素大小 |
| face_width_min | 否 | int | 人脸脸颊宽度(不包含耳朵)与照片宽度的最小比例 |
| face_width_max | 否 | int | 人脸脸颊宽度(不包含耳朵)与照片宽度的最大比例 |
| print_type | 否 | int | 排版类型,1表示默认(一寸8张),2表示紧凑型(一寸10张) |
| hor_align_type | 否 | int | 裁剪方式 0表示中心裁剪(默认) 1表示耳朵裁剪 |
| pose_fix | 否 | int | 是否需要做姿态调整 0表示否(默认,头像摆正依据双眼水平) 1表示是(会矫正双眼水平和肩膀水平) |
| out_endpoint | 否 | str | 控制返回链接的域名,见参数说明7 |
| origin_max_length | 否 | int | 原图缩放参数,传此参数时,原图最长边像素大于此值时会被等比例缩放到此值,此时接口耗时会相对较短,且更加稳定,推荐传此参数为1500;不传此参数时不缩放(默认不缩放). |
| 参数名称 | 类型 | 示例 | 描述 |
|---|---|---|---|
| code | int | 200 | 状态码 |
| result | object | 结果参数 | |
| file_name_wm | list | ["56cf9c3...63e06132ablue2_wm", ...] | 带水印图片名字,包括多种可选颜色 |
| file_name_print_wm | list | ["56cf9c38...6132ablue2_print_wm", ...] | 带水印排版图片名字,包括多种可选颜色 |
| file_name | list | ["56cf9c...2a68798blue2", ...] | 无水印图片名字,包括多种可选颜色 |
| file_name_print | list | 1 | 无水印排版图片名字,包括多种可选颜色 |
| is_print | int | 1 | 有无排版 |
| size | list | [295, 413] | 证件照尺寸 |
| size_print | list | [1795, 1205] | 排版图尺寸 |
| one_sheet_num | int | 8 | 排版的照片数量 |
| img_wm_url_list | list | ["https://...",...], | 带水印单张照url |
| print_wm_url_list | list | ["https://...",...], | 带水印排版照url列表 |
import requests, json, base64
url = "http://apicall.id-photo-verify.com/api/cut_pic"
with open("test.png", 'rb') as f:
pic = f.read()
headers = {"Content-Type": "application/json"}
data = {
"spec_id": 391, # 规格ID
"app_key": "对应的app_key",
"file": base64.b64encode(pic).decode(),
# 可选参数还有: is_fair int 是否美颜 0 or 1,默认 1
# fair_level int ~~美颜等级1~5~~,传其他数字默认是1,只有is_fair是1才生效
# original int 程序会按照px = mm/25.4*original去设定照片的像素大小
# face_width_min string/int 人脸脸颊宽度(不包含耳朵)与照片宽度的最小比例
# face_width_max string/int 人脸脸颊宽度(不包含耳朵)与照片宽度的最大比例
}
data_json = json.dumps(data)
response = requests.post(url, headers=headers, data=data_json)
print(response.text)
{
"code": 200,
"result": {
"file_name": [
"1dfea61a967811ea9cf900163e0070b651966blue2",
"1dfea61a967811ea9cf900163e0070b645912white2",
"1dfea61a967811ea9cf900163e0070b636201red2",
"1dfea61a967811ea9cf900163e0070b660723blue22",
"1dfea61a967811ea9cf900163e0070b610453grey2",
"1dfea61a967811ea9cf900163e0070b610308blue32"
],
"file_name_print": [
"1dfea61a967811ea9cf900163e0070b651966blue2_print",
"1dfea61a967811ea9cf900163e0070b645912white2_print",
"1dfea61a967811ea9cf900163e0070b636201red2_print",
"1dfea61a967811ea9cf900163e0070b660723blue22_print",
"1dfea61a967811ea9cf900163e0070b610453grey2_print",
"1dfea61a967811ea9cf900163e0070b610308blue32_print"
],
"file_name_print_wm": [
"1dfea61a967811ea9cf900163e0070b6blue2_print_wm",
"1dfea61a967811ea9cf900163e0070b6white2_print_wm",
"1dfea61a967811ea9cf900163e0070b6red2_print_wm",
"1dfea61a967811ea9cf900163e0070b6blue22_print_wm",
"1dfea61a967811ea9cf900163e0070b6grey2_print_wm",
"1dfea61a967811ea9cf900163e0070b6blue32_print_wm"
],
"file_name_wm": [
"1dfea61a967811ea9cf900163e0070b6blue2_wm",
"1dfea61a967811ea9cf900163e0070b6white2_wm",
"1dfea61a967811ea9cf900163e0070b6red2_wm",
"1dfea61a967811ea9cf900163e0070b6blue22_wm",
"1dfea61a967811ea9cf900163e0070b6grey2_wm",
"1dfea61a967811ea9cf900163e0070b6blue32_wm"
],
"img_wm_url_list": ["https://...","..."],
"is_print": 1,
"one_sheet_num": 8,
"print_wm_url_list": ["https://...","..."],
"size": [
260,
378
],
"size_print": [
1795,
1205
]
}
}