云修智能修图API_PRO
通过异步接口完成智能修图,支持预设 ID 和原始参数两种投递方式,可通过查询或回调获取处理结果。
公共参数
公共请求头
| 参数名称 | 类型 | 描述 | 是否必填 |
|---|
| Content-Type | string | application/json | 是 |
权限
使用前需申请 AccessKey 和 SecretKey,并按照开放平台接口签名完成请求签名。
公共响应体
| 参数名称 | 类型 | 描述 | 是否必填 | 备注 |
|---|
| reqid | string | 请求ID | 是 | |
| code | int | 响应码 | 是 | |
| data | object | 响应数据 | 是 | |
请求方法
POST
接口列表
为了满足不同业务场景下的修图需求,API 提供:预设ID和原始参数,两种投递方式。您可以根据团队的开发成本、使用场景自由选择其中一种。
预设ID投递
步骤 1:下载美图云修客户端
安装包下载地址:https://pan.baidu.com/s/1Ozs0-o8tH-2HSyKFLzWCNg
提取码: ib54
步骤 2:调试生成预设
在客户端界面上进行参数调优,而后将您的调整结果保存为预设,即可在调用接口时,传入预设ID进行修图
美图云修API PRO 版-预设ID获取
预设 code 参数查看器
步骤 3:选择您要使用的接口
美图云修API提供两种接口,处理的图片尺寸不同,对应的接口价格也不同,请您按需选择
步骤 4:投递参数
| 参数名称 | 类型 | 描述 | 是否必填 | 备注 |
|---|
| repost_url | string | 回调地址 | 否 | - |
| media_code | string | 预设口令 | 是 | 预设 code,例如 MTyunxiu135edf4125 |
| media_data | string | 待处理的图片地址 | 是 | 图片必须公网可访问,且不支持IP地址,不支持base64 |
| export_format | string | 结果图输出格式 | 否 | 可选 jpg、png,默认 jpg,需保留透明通道时使用 png |
请求示例
{
"repost_url": "https://www.example.com/callback.json",
"media_code": "MTyunxiu1e3b3453a5",
"media_data": "https://obs-open-platform-photo.obs.cn-north-4.myhuaweicloud.com/colorbyte_qt/photo/68760a99ed6616jv8vmfts2152.jpg"
}
响应参数
| 参数名称 | 类型 | 描述 | 是否必填 | 备注 |
|---|
| chain_id | string | 任务ID | 是 | |
响应示例
{
"reqid": "3b290f9b-9f36-4733-b8a1-6d4911ab341a",
"code": 0,
"data": {
"chain_id": "1837876704977174"
}
}
原始参数投递
投递方式说明:该方式推荐有自研前端界面或需要实时动态调整参数的用户使用,可在请求时自由定义参数及属性值。灵活度高,修图参数逻辑动态可控。
注意: 【预设ID】和【原始参数】两个参数有且仅有一个,不能同时存在,并且必须存在一个。如果同时存在,会优先使用【预设ID】参数。
请求参数(Body参数):
| 参数名称 | 类型 | 描述 | 是否必填 | 备注 |
|---|
| repost_url | string | 回调地址 | 否 | - |
| media_code | string | 预设口令 | 否 | - |
| media_data | string | 待处理的图片地址 | 是 | 图片必须公网可访问,且不支持IP地址,不支持base64 |
| export_format | string | 结果图输出格式 | 否 | 可选 jpg、png,默认 jpg,需保留透明通道时使用 png |
| parameter | object | 待处理的图片参数 | 是 | 查看下文 |
parameter字段的格式:
| 参数名称 | 类型 | 描述 | 是否必填 | 备注 |
|---|
| all_params | object | 待处理的图片参数 | 是 | 查看下文 |
详细参数
色彩调整
| 一级功能 | 二级功能 | 中文名称 | Pro参数(7.7.0版本) | Pro参数类型 | 取值范围 | 说明 |
|---|
| 全局调色 | - | AI滤镜-程度值 | aicolormatch_alpha | int | [0,100] | - |
| 全局调色 | - | AI滤镜-类别 | aicolormatch_type | int | [0,100] | - |
| 全局调色 | 白平衡 | 智能白平衡-常规背景 | awb_norm_coef | int | [0,100] | - |
| 全局调色 | 白平衡 | 智能白平衡-纯色背景 | awb_pure_coef | int | [0,100] | - |
| 全局调色 | 绿原色-色相 | 色相 | color_calibration_green_hue_alpha | int | [-100,100] | - |
| 全局调色 | 绿原色-饱和度 | 饱和度 | color_calibration_green_sat_alpha | int | [-100,100] | - |
| 全局调色 | 红原色-色相 | 色相 | color_calibration_red_hue_alpha | int | [-100,100] | - |
| 全局调色 | 红原色-饱和度 | 饱和度 | color_calibration_red_sat_alpha | int | [-100,100] | - |
| 全局调色 | 蓝原色-色相 | 色相 | color_calibration_blue_hue_alpha | int | [-100,100] | - |
| 全局调色 | 蓝原色-饱和度 | 饱和度 | color_calibration_blue_sat_alpha | int | [-100,100] | - |
| 全局调色 | 颜色分级 | 平衡 | color_grading_balance | int | [-100,100] | - |
| 全局调色 | 颜色分级 | 混合 | color_grading_blend | int | [0,100] | - |
| 全局调色 | 颜色分级 | 全局-开关 | color_grading_global_enable | bool | true/false | - |
| 全局调色 | 颜色分级 | 全局-色相 | color_grading_global_hue | int | [0,359] | - |
| 全局调色 | 颜色分级 | 全局-明度 | color_grading_global_light | int | [0,100] | - |
| 全局调色 | 颜色分级 | 全局-饱和度 | color_grading_global_sat | int | [0,100] | - |
| 全局调色 | 颜色分级 | 高光-开关 | color_grading_hightlight_enable | bool | true/false | - |
| 全局调色 | 颜色分级 | 高光-色相 | color_grading_hightlight_hue | int | [0,359] | - |
| 全局调色 | 颜色分级 | 高光-明度 | color_grading_hightlight_light | int | [0,100] | - |
| 全局调色 | 颜色分级 | 高光-饱和度 | color_grading_hightlight_sat | int | [0,100] | - |
| 全局调色 | 颜色分级 | 中间调-开关 | color_grading_midtone_enable | bool | true/false | - |
| 全局调色 | 颜色分级 | 中间调-色相 | color_grading_midtone_hue | int | [0,359] | - |
| 全局调色 | 颜色分级 | 中间调-明度 | color_grading_midtone_light | int | [0,100] | - |
| 全局调色 | 颜色分级 | 中间调-饱和度 | color_grading_midtone_sat | int | [0,100] | - |
| 全局调色 | 颜色分级 | 阴影-开关 | color_grading_shadow_enable | bool | true/false | - |
| 全局调色 | 颜色分级 | 阴影-色相 | color_grading_shadow_hue | int | [0,359] | - |
| 全局调色 | 颜色分级 | 阴影-明度 | color_grading_shadow_light | int | [0,100] | - |
| 全局调色 | 颜色分级 | 阴影-饱和度 | color_grading_shadow_sat | int | [0,100] | - |
| 全局调色 | 影调 | 对比度 | constrast | int | [-100,100] | - |
| 全局调色 | 影调 | 曝光 | exposure | int | [-500,500] | - |
| 全局调色 | 影调 | 高光 | highlight | int | [-100,100] | - |
| 全局调色 | 影调 | 智能影调-程度 | exposure_alpha | int | [0,100] | - |
| 全局调色 | 影调 | 智能影调-开关 | exposure_flag | int | [0,1] | - |
| 全局调色 | 影调 | 饱和度 | saturability | int | [-100,100] | - |
| 全局调色 | 影调 | 阴影 | shadow | int | [-100,100] | - |
| 全局调色 | 影调 | 自然饱和度 | vibrance | int | [-100,100] | - |
| 全局调色 | 影调 | 黑色 | blackness | int | [-100,100] | - |
| 全局调色 | 影调 | 白色 | whiteness | int | [-100,100] | - |
| 全局调色 | 影调 | 清晰度 | sharpness | int | [-100,100] | - |
| 全局调色 | 细节 | 智能去雾 | dehaze_coef | int | [0,100] | - |
| 全局调色 | 细节 | 颗粒 | film_granularity | int | [0,100] | - |
| 全局调色 | 细节 | 背景锐化 | highpass_background_coef | int | [0,100] | - |
| 全局调色 | 细节 | 人像锐化 | highpass_body_coef | int | [0,100] | - |
| 全局调色 | 细节 | 中点调节 | midpoint_adjustment | int | [0,100] | - |
| 全局调色 | 细节 | 暗角调节 | vignette_adjustment | int | [-100,100] | - |
| 全局调色 | - | 滤镜 | filter | dict | | 请查看「滤镜字段信息」 |
| 全局调色 | HSL-色相 | 浅绿色 | hsl_hue_aqua | int | [-100,100] | - |
| 全局调色 | HSL-色相 | 蓝色 | hsl_hue_blue | int | [-100,100] | - |
| 全局调色 | HSL-色相 | 绿色 | hsl_hue_green | int | [-100,100] | - |
| 全局调色 | HSL-色相 | 洋红色 | hsl_hue_magenta | int | [-100,100] | - |
| 全局调色 | HSL-色相 | 橙色 | hsl_hue_orange | int | [-100,100] | - |
| 全局调色 | HSL-色相 | 红色 | hsl_hue_red | int | [-100,100] | - |
| 全局调色 | HSL-色相 | 紫色 | hsl_hue_violet | int | [-100,100] | - |
| 全局调色 | HSL-色相 | 黄色 | hsl_hue_yellow | int | [-100,100] | - |
| 全局调色 | HSL-明亮度 | 浅绿色 | hsl_luma_aqua | int | [-100,100] | - |
| 全局调色 | HSL-明亮度 | 蓝色 | hsl_luma_blue | int | [-100,100] | - |
| 全局调色 | HSL-明亮度 | 绿色 | hsl_luma_green | int | [-100,100] | - |
| 全局调色 | HSL-明亮度 | 洋红色 | hsl_luma_magenta | int | [-100,100] | - |
| 全局调色 | HSL-明亮度 | 橙色 | hsl_luma_orange | int | [-100,100] | - |
| 全局调色 | HSL-明亮度 | 红色 | hsl_luma_red | int | [-100,100] | - |
| 全局调色 | HSL-明亮度 | 紫色 | hsl_luma_violet | int | [-100,100] | - |
| 全局调色 | HSL-明亮度 | 黄色 | hsl_luma_yellow | int | [-100,100] | - |
| 全局调色 | HSL-饱和度 | 浅绿色 | hsl_sat_aqua | int | [-100,100] | - |
| 全局调色 | HSL-饱和度 | 蓝色 | hsl_sat_blue | int | [-100,100] | - |
| 全局调色 | HSL-饱和度 | 绿色 | hsl_sat_green | int | [-100,100] | - |
| 全局调色 | HSL-饱和度 | 洋红色 | hsl_sat_magenta | int | [-100,100] | - |
| 全局调色 | HSL-饱和度 | 橙色 | hsl_sat_orange | int | [-100,100] | - |
| 全局调色 | HSL-饱和度 | 红色 | hsl_sat_red | int | [-100,100] | - |
| 全局调色 | HSL-饱和度 | 紫色 | hsl_sat_violet | int | [-100,100] | - |
| 全局调色 | HSL-饱和度 | 黄色 | hsl_sat_yellow | int | [-100,100] | - |
| 全局调色 | 白平衡 | 色温 | temperature | int | [-100,100] | - |
| 全局调色 | 白平衡 | 色调 | hue | int | [-100,100] | - |
| 全局调色 | 曲线 | 曲线-灰 | gray_point | list | [0,255] | 参考曲线传参 |
| 全局调色 | 曲线 | 曲线-红 | red_point | list | [0,255] | 参考曲线传参 |
| 全局调色 | 曲线 | 曲线-绿 | green_point | list | [0,255] | 参考曲线传参 |
| 全局调色 | 曲线 | 曲线-蓝 | blue_point | list | [0,255] | 参考曲线传参 |
人像美化
| 一级功能 | 二级功能 | 中文名称 | Pro参数(7.7.0版本) | Pro参数类型 | 取值范围 | 说明 |
|---|
| 面部丰盈 | 面部丰盈 | 卧蚕 | aegyosal_fill | list | [0,100] | - |
| 面部丰盈 | 面部丰盈 | 嘴角 | angulus_oris_fill | list | [0,100] | - |
| 面部丰盈 | 面部丰盈 | 苹果肌 | apple_cheek_fillers | list | [0,100] | - |
| 祛除瑕疵 | - | 祛妊娠纹0-1 | beauty_belly_alpha | list | [0,1] | - |
| 祛除瑕疵 | - | 祛双下巴 | double_chin | list | [0,100] | - |
| 祛除瑕疵 | - | 面部跑焦修复 | face_restore_alpha | list | [0,100] | - |
| 祛除瑕疵 | - | 身体祛瑕疵 | flaw_clean_alpha | list | [0,100] | - |
| 祛除瑕疵 | - | 祛唇纹 | lip_remove_alpha | list | [0,100] | - |
| 祛除瑕疵 | - | 妆容保护 | makeup_protect | list | [0,1] | - |
| 祛除瑕疵 | - | 祛痣(脸部) | nevus_removal_flag | list | [0,1] | - |
| 祛除瑕疵 | - | 祛副乳 | remove_axillary_breast | list | [0,100] | - |
| 祛除瑕疵 | - | 祛黑眼圈 | remove_pouch | list | [0,100] | - |
| 祛除瑕疵 | - | 祛油光 | shiny_clean_alpha | list | [0,100] | - |
| 祛除瑕疵 | - | 祛斑祛痘(脸部) | fleck_clean_flag | list | [0,100] | |
| 祛除瑕疵 | - | 祛斑祛痘(身体) | skin_fleck_clean_flag | list | [0,100] | - |
| 祛除瑕疵 | - | 祛面颊纹(含木偶纹) | wrinkle_cheek_removal_alpha | list | [0,100] | - |
| 祛除瑕疵 | - | 祛抬头纹 | wrinkle_forehead_removal_alpha | list | [0,100] | - |
| 祛除瑕疵 | - | 祛法令纹 | wrinkle_nasolabial_removal_alpha | list | [0,100] | - |
| 祛除瑕疵 | - | 祛颈纹 | wrinkle_neck_removal_alpha | list | [0,100] | - |
| 祛除瑕疵 | - | 祛眼周纹 | wrinkle_periorbital_removal_alpha | list | [0,100] | - |
| 身体美型 | - | 丰胸 | body_shape_chest_enlarge | list | [-100,100] | - |
| 身体美型 | - | AI增高 | body_shape_heighten | list | [0,100] | - |
| 身体美型 | - | 驼背 | body_shape_hunch_back | list | [0,100] | - |
| 身体美型 | - | 长腿 | body_shape_lengthen | list | [0,100] | - |
| 身体美型 | - | 直角肩 | body_shape_right_shoulder | list | [0,100] | - |
| 身体美型 | - | 小头 | body_shape_shrink_head | list | [0,100] | - |
| 身体美型 | - | 瘦身 | body_shape_slim | list | [-100,100] | - |
| 身体美型 | - | 瘦肚子 | body_shape_slim_belly | list | [0,100] | - |
| 身体美型 | - | 瘦手臂 | body_shape_slim_hand | list | [-100,100] | - |
| 身体美型 | - | 美臀 | body_shape_slim_hip | list | [-100,100] | - |
| 身体美型 | - | 瘦腿 | body_shape_slim_leg | list | [0,100] | - |
| 身体美型 | - | 瘦脖子-左 | body_shape_slim_neck_left | list | [0,100] | - |
| 身体美型 | - | 瘦脖子-右 | body_shape_slim_neck_right | list | [0,100] | - |
| 身体美型 | - | 美腰 | body_shape_slim_waist | list | [0,100] | - |
| 身体美型 | - | 天鹅颈-左 | body_shape_swan_neck_left | list | [0,100] | - |
| 身体美型 | - | 天鹅颈-右 | body_shape_swan_neck_right | list | [0,100] | - |
| 身体美型 | - | 肩膀宽度 | body_shape_thin_shoulders | list | [-100,100] | - |
| 身体美型 | - | 全身美型 | multibody_beauty | list | [0,100] | - |
| 面部重塑 | 脸型 | 小脸 | ai_shrink_head | list | [0,100] | - |
| 面部重塑 | 脸型 | 对称性液化-上半身对称 | body_symmetry | list | [0,100] | - |
| 面部重塑 | 脸型 | 下庭 | bottom_half_of_face | list | [-100,100] | - |
| 面部重塑 | 脸型 | 颧骨 | cheekbone | list | [-100,100] | - |
| 面部重塑 | 脸型 | 颧骨-左 | cheekbone_left | list | [-100,100] | - |
| 面部重塑 | 脸型 | 颧骨-右 | cheekbone_right | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼距 | eye_distance | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼距-左 | eye_distance_left | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼距-右 | eye_distance_right | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼高 | eye_height | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼高-左 | eye_height_left | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼高-右 | eye_height_right | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼睑-左 | eye_lid_left | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼睑-右 | eye_lid_right | list | [-100,100] | - |
| 面部重塑 | 鼻子 | 鼻梁 | bridge_nose | list | [-100,100] | - |
| 眼睛增强 | - | 亮眼 | bright_eye | list | [0,100] | - |
| 眼睛增强 | - | 亮眼-左 | bright_eye_left | list | [0,100] | - |
| 眼睛增强 | - | 亮眼-右 | bright_eye_right | list | [0,100] | - |
| 头发调整 | - | 发色加深 | black_hair | list | [0,100] | - |
| 头发调整 | - | 发缝填充 | hairline_fill | list | [0,100] | - |
| 头发调整 | - | 发色选择 | hair_color | list | - | 每个item是对象,参看发色选择字段信息 |
| 头发调整 | - | 祛碎发 | broken_hair | list | [0,100] | - |
| 头发调整 | 祛碎发 | 背景区域 | broken_hair_background_area | list | [0,100] | - |
| 头发调整 | 祛碎发 | 人像区域 | broken_hair_hair_area | list | [0,100] | - |
| 面部丰盈 | 面部丰盈 | 眉弓 | brow_arch_fill | list | [0,100] | - |
| 面部丰盈 | 面部丰盈 | 下巴 | chin_fillers | list | [0,100] | - |
| 面部丰盈 | 面部丰盈 | 眼窝 | eye_socket_fillers | list | [0,100] | - |
| 面部丰盈 | 面部丰盈 | 额头 | fore_head_fillers | list | [0,100] | - |
| 面部丰盈 | 面部丰盈 | 鼻基底 | nose_fillers | list | [0,100] | - |
| 面部丰盈 | 面部丰盈 | 泪沟 | tear_trough | list | [0,100] | - |
| 面部丰盈 | 面部丰盈 | 面颊 | jowl_fill | list | [0,100] | - |
| 面部丰盈 | 面部平整提拉 | 额头 | fore_head_smooth | list | [0,100] | - |
| 面部丰盈 | 面部平整提拉 | 口周 | perioral_smooth | list | [0,100] | - |
| 面部丰盈 | 面部平整提拉 | 眼周 | periorbital_smooth | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 程度-左 | eye_light_alpha_left | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 程度-右 | eye_light_alpha_right | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 水平翻转-左 | eye_light_h_flip_left | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 水平翻转-右 | eye_light_h_flip_right | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 旋转-左 | eye_light_rotate_left | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 旋转-右 | eye_light_rotate_right | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 缩放-左 | eye_light_size_left | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 缩放-右 | eye_light_size_right | list | [0,100] | - |
| 眼睛增强 | - | 眼神光 | eye_light_type_id | list | - | 每个item是字符串,参看眼神光素材 |
| 眼睛增强 | 眼神光 | 水平位置-左 | eye_light_x_pos_left | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 水平位置-右 | eye_light_x_pos_right | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 垂直位置-左 | eye_light_y_pos_left | list | [0,100] | - |
| 眼睛增强 | 眼神光 | 垂直位置-右 | eye_light_y_pos_right | list | [0,100] | - |
| 面部重塑 | 眼睛 | 倾斜-左 | eye_tilt_left | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 倾斜-右 | eye_tilt_right | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 大小 | eye_trans | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 大小-左 | eye_trans_left | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 大小-右 | eye_trans_right | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 上下-左 | eye_up_down_left | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 上下-右 | eye_up_down_right | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼宽 | eye_width | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼宽-左 | eye_width_left | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 眼宽-右 | eye_width_right | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 间距 | eyebrow_distance | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 间距-左 | eyebrow_distance_left | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 间距-右 | eyebrow_distance_right | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 上下 | eyebrow_height | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 上下-左 | eyebrow_height_left | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 上下-右 | eyebrow_height_right | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 眉峰 | eyebrow_ridge | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 眉峰-左 | eyebrow_ridge_left | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 眉峰-右 | eyebrow_ridge_right | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 粗细 | eyebrow_size | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 粗细-左 | eyebrow_size_left | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 粗细-右 | eyebrow_size_right | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 倾斜 | eyebrow_tilt | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 倾斜-左 | eyebrow_tilt_left | list | [-100,100] | - |
| 面部重塑 | 眉毛 | 倾斜-右 | eyebrow_tilt_right | list | [-100,100] | - |
| 妆容调整 | - | 眉毛增强 | eyebrow_deepen | list | [0,100] | - |
| 妆容调整 | - | 高光立体 | highlight_alpha | list | [0,100] | - |
| 妆容调整 | - | 眼妆增强 | eyeshadow_deepen | list | [0,100] | - |
| 妆容调整 | - | 腮红增强 | facial_deepen | list | [0,100] | - |
| 妆容调整 | - | 唇妆增强 | lipstick_deepen | list | [0,100] | - |
| 妆容调整 | - | 阴影立体 | shadow_light | list | [0,100] | - |
| 妆容调整 | - | 高光 | makeup_highlight | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 眼线 | eyeliner | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 唇彩 | mouth | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 妆饰 | facialdecals | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 修容 | feature | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 腮红 | blush | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 美瞳 | eye | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 眉毛 | eyebrow | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 睫毛 | eyelash | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 眼影 | eyeshadow | list | | 请查看「妆容调整字段信息」 |
| 妆容调整 | - | 卧蚕 | eyesocket | list | | 请查看「妆容调整字段信息」 |
| 肤色调整 | - | 质感磨皮 | face_balance_alpha | list | [0,100] | - |
| 肤色调整 | - | AI美颜(脸部) | face_beauty_alpha | list | [0,100] | - |
| 面部重塑 | 脸型 | 额头 | face_forehead | list | [-100,100] | - |
| 面部重塑 | 脸型 | V脸 | face_trans | list | [-100,100] | - |
| 面部重塑 | 脸型 | 脸部轮廓流畅 | facial_contour | list | [0,100] | - |
| 头发调整 | - | 颅顶高度 | fluffy_hair | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 开眼角-左 | inner_eye_corner_left | list | [-100,100] | - |
| 面部重塑 | 眼睛 | 开眼角-右 | inner_eye_corner_right | list | [-100,100] | - |
| 面部重塑 | 嘴巴 | 上下 | high_mouth | list | [-100,100] | - |
| 面部重塑 | 嘴巴 | 丰下唇 | lowerlip_enhance | list | [-100,100] | - |
| 面部重塑 | 嘴巴 | 宽度 | mouth_breadth | list | [-100,100] | - |
| 面部重塑 | 嘴巴 | 丰唇 | mouth_high | list | [-100,100] | - |
| 面部重塑 | 嘴巴 | 嘴角调整 | mouth_smile | list | [-100,100] | - |
| 面部重塑 | 嘴巴 | 倾斜 | mouth_tilted | list | [-100,100] | - |
| 面部重塑 | 嘴巴 | 大小 | mouth_trans | list | [-100,100] | - |
| 面部重塑 | 嘴巴 | 丰上唇 | upperlip_enhance | list | [-100,100] | - |
| 面部重塑 | 鼻子 | 山根 | nasal_root | list | [-100,100] | - |
| 面部重塑 | 鼻子 | 鼻尖 | nasal_tip | list | [-100,100] | - |
| 面部重塑 | 鼻子 | 长短 | nose_longer | list | [-100,100] | - |
| 面部重塑 | 鼻子 | 大小 | scale_nose | list | [-100,100] | - |
| 面部重塑 | 鼻子 | 鼻翼 | shrink_nose | list | [-100,100] | - |
| 面部重塑 | 脸型 | 下巴高度 | jaw_trans | list | [-100,100] | - |
| 面部重塑 | 脸型 | 下颌 | mandible | list | [-100,100] | - |
| 面部重塑 | 脸型 | 下颌-左 | mandible_left | list | [-100,100] | - |
| 面部重塑 | 脸型 | 下颌-右 | mandible_right | list | [-100,100] | - |
| 面部重塑 | 脸型 | 中庭 | middle_half_of_face | list | [-100,100] | - |
| 面部重塑 | 脸型 | 人中 | philtrum_warp | list | [-100,100] | - |
| 面部重塑 | 脸型 | 对称性液化 | run_symmetry_list | list | [0,1] | - |
| 面部重塑 | 脸型 | 对称性液化-五官对称 | face_symmetry | list | [0,100] | - |
| 面部重塑 | 脸型 | 脸部宽度 | narrow_face | list | [-100,100] | - |
| 面部重塑 | 脸型 | 太阳穴 | temple | list | [-100,100] | - |
| 面部重塑 | 脸型 | 太阳穴-左 | temple_left | list | [-100,100] | - |
| 面部重塑 | 脸型 | 太阳穴-右 | temple_right | list | [-100,100] | - |
| 面部重塑 | 3D塑颜 | 左右 | threed_left_right | list | [-100,100] | - |
| 面部重塑 | 3D塑颜 | 上下 | threed_up_down | list | [-100,100] | - |
| - | 面部平整提拉 | 面中 | malars_smooth | list | [0,100] | - |
| 皮肤调整 | - | 中性灰立体 | neutral_gray_enhance_alpha | list | [0,100] | - |
| 皮肤调整 | - | 中性灰平整 | neutral_gray_smooth_alpha | list | [0,100] | - |
| 眼睛增强 | - | 眼镜祛反光 | reduce_glass_light | list | [0,100] | - |
| 眼睛增强 | - | 祛红血丝 | reduce_redness | list | [0,100] | - |
| 肤色调整 | - | 皮肤纹理(脸部) | sharpen_alpha | list | [0,100] | - |
| 肤色调整 | - | 肤色偏好 | skin_color_hue_alpha | list | [-100,100] | - |
| 肤色调整 | - | 肤色选择-程度 | skin_color_lut_alpha | list | [0,100] | - |
| 肤色调整 | - | 肤色选择 | skin_color_lut_path | list | - | 肤色选择对应素材, ;原肤:"" ;冷调: "skin1.png" ;粉瓷 : "skin2.png" ;暖调: "skin3.png" ;小麦: "skin4.png" ;可可色: "skin5.png" |
| 肤色调整 | - | 皮肤透亮 | skin_hdr_alpha | list | [0,100] | - |
| 肤色调整 | - | 皮肤红润 | skin_red_alpha | list | [0,100] | - |
| 肤色调整 | - | 肤色统一(身体) | skin_tone_body_alpha | list | [0,100] | - |
| 肤色调整 | - | 肤色统一(脸部) | skin_tone_face_alpha | list | [0,100] | - |
| 肤色调整 | - | 肤色统一(多人) | skin_tone_multiple_alpha | list | [0,100] | - |
| 肤色调整 | - | 皮肤美白 | skin_white_alpha | list | [0,100] | - |
| 肤色调整 | - | 高低频(脸部) | smooth_face_skin_alpha | list | [0,100] | - |
| 肤色调整 | - | 高低频(脸部)-高频增强 | smooth_face_skin_hight_alpha | list | [-100,100] | - |
| 肤色调整 | - | 高低频(脸部)-低频平整 | smooth_face_skin_low_alpha | list | [0,100] | - |
| 肤色调整 | - | 高低频(身体) | smooth_not_face_skin_alpha | list | [0,100] | - |
| 肤色调整 | - | 高低频(身体)-高频增强 | smooth_not_face_skin_hight_alpha | list | [-100,100] | - |
| 肤色调整 | - | 高低频(身体)-低频平整 | smooth_not_face_skin_low_alpha | list | [0,100] | - |
| 牙齿美化 | - | 牙齿修复 | teeth_beauty | list | [0,1] | - |
| 牙齿美化 | - | 牙齿祛瑕疵 | teeth_clean_alpha | list | [0,100] | - |
| 牙齿美化 | - | 牙齿美白 | white_teeth | list | [0,100] | - |
| 牙齿美化 | 牙齿美白 | 明度 | white_teeth_luminance | list | [0,100] | - |
| 牙齿美化 | 牙齿美白 | 祛黄 | white_teeth_remove_yellow | list | [0,100] | - |
| 头发调整 | - | 头发柔顺 | smooth_hair | list | [0,100] | - |
背景处理
| 二级功能 | 三级功能 | 中文名称 | Pro参数(7.7.0版本) | Pro参数类型 | 取值范围 | 说明 |
|---|
| 背景调整 | 背景美化 | 背景增强 | radio | int | [0,100] | - |
| 背景调整 | 背景美化 | 纯色背景祛瑕疵 | background_detain_alpha | int | [0,100] | - |
| 背景调整 | 背景美化 | 纯色背景祛穿帮 | remove_background_mistake | int | [0,1] | - |
| 证件照换背景 | 证件照背景模式 | | id_photo_bg_mode | int | [0,2] | 0 无,1 纯色 |
| 证件照换背景 | 证件照颜色颜色/渐变色开始颜色 | (四通道的颜色数值) | id_photo_bg_color | [4]int | rgba-[0,255] | - |
| 证件照换背景 | 证件照颜色颜色/渐变色结束颜色 | (四通道的颜色数值) | id_photo_bg_dst_color | [4]int | rgba-[0,255] | - |
| 证件照换背景 | 证件照渐变色背景类型 | | id_photo_gradient_type | int | [0,1] | 0 上下渐变,1 中心点渐变 |
| 证件照换背景 | 证件照填充方式 | | id_photo_fill_type | int | [0,1] | 0纯色 1渐变 |
| 换天空 | 推荐背景 | 换天空 | sky_background | dict | [0,100] | - |
服饰美化
| 二级功能 | 三级功能 | 中文名称 | Pro参数(7.7.0版本) | Pro参数类型 | 取值范围 | 说明 |
|---|
| 衣服 | - | 衣服祛褶皱 | rmw_rink | int | [0,100] | - |
| 衣服 | - | 衣服边缘流畅 | cloth_edge_smooth | int | [0,100] | - |
特殊类型字段信息
妆容调整
妆容调整中部分字段的结构是list类型,其中每一个 item 是一个对象,对象结构如下:
| 一级功能 | 二级功能 | 中文名称 | Pro参数(7.2.0版本) | 数据类型 |
|---|
| 人像美化 | 妆容调整 | 唇彩 | mouth | list |
| 人像美化 | 妆容调整 | 妆饰 | facialdecals | list |
| 人像美化 | 妆容调整 | 修容 | feature | list |
| 人像美化 | 妆容调整 | 腮红 | blush | list |
| 人像美化 | 妆容调整 | 美瞳 | eye | list |
| 人像美化 | 妆容调整 | 眉毛 | eyebrow | list |
| 人像美化 | 妆容调整 | 睫毛 | eyelash | list |
| 人像美化 | 妆容调整 | 眼影 | eyeshadow | list |
| 人像美化 | 妆容调整 | 卧蚕 | eyesocket | list |
{
"mouth": [{
"id": "luozhuang",
"color": "0;0;0;255",
"alpha": 50
}, {
"id": "shuimitao",
"color": "0;0;0;255",
"alpha": 50
}, {
"id": "yingtao",
"color": "0;0;0;255",
"alpha": 50
}, {
"id": "zhenghong",
"color": "0;0;0;255",
"alpha": 50
}, {
"id": "meigui",
"color": "0;0;0;255",
"alpha": 50
}]
}
| 字段名称 | 描述 |
|---|
| id | 妆容ID |
| color | 颜色值 |
| alpha | 程度值0-100 |
发色选择
| 字段名称 | 描述 |
|---|
| id | 发色选择素材ID |
| color | 颜色值 |
| alpha | 程度值0-100 |
{
"hair_color": [{
"id": "shumeihong",
"color": "0;0;0;255",
"alpha": 50
}, {
"id": "shumeihong",
"color": "0;0;0;255",
"alpha": 50
}, {
"id": "shumeihong",
"color": "0;0;0;255",
"alpha": 50
}, {
"id": "shumeihong",
"color": "0;0;0;255",
"alpha": 50
}, {
"id": "shumeihong",
"color": "0;0;0;255",
"alpha": 50
}]
}
换天空
sky_background 换天空的字段是一个结构体的类型,该结构体的字段结构如下:
| 字段 | 名称 | 类型 |
|---|
| logic_id | 素材ID | string |
| params | 详细参数 | object |
params参数数据结构:
| 参数名 | 中文注释 | 值 | 范围 |
|---|
| sky_wap_flag | 天空WAP标志 | 1 | [1,1] |
| sky_shift_x_coef | 天空X轴偏移系数 | 0 | [-100,100] |
| sky_shift_y_coef | 天空Y轴偏移系数 | 0 | [-100,100] |
| sky_blip_flag | 天空闪烁标志 | 0 | [0,1] |
| sky_edge_dilate_coef | 天空边缘膨胀系数 | 0 | [-100,100] |
| sky_edge_blur_coef | 天空边缘模糊系数 | -10 | [-100,100] |
| blur_coef | 模糊系数 | 0 | [-100,100] |
| sky_alpha_coef | 天空透明度系数 | 100 | [0,100] |
| sky_exposure | 天空曝光 | 0 | [-100,100] |
| sky_saturability | 天空饱和度 | 0 | [-100,100] |
| sky_scale_coef | 天空缩放系数 | 0 | [0,100] |
| sky_temperature | 天空色温 | 0 | [-100,100] |
滤镜
filter滤镜的字段是一个结构体的类型,该结构体的字段结构如下:
| 字段 | 名称 | 类型 |
|---|
| filter_id | 滤镜ID,参考滤镜素材 | string |
| filters_lut_alpha | 程度值0-100 | int |
AI滤镜参数示例:(AI滤镜仅支持json参数投递,不支持预设投递)
{
"all_params": {
"filter": {
"filter_id": "AUTO_COMPOSITE",
"filters_lut_alpha": 100
}
}
}
曲线
曲线参数由二维平面的多个点构成,不同点之间通过贝塞尔曲线拟合,参数传递需要对二维的点数据拍平为一维的,举例灰度曲线定义有 3 个点:
[
[0, 0],
[220, 188],
[255, 255]
]
那么 gray_point 该字段的传参数为:
{
"gray_point": [
0,
0,
220,
188,
255,
255
]
}
请求示例
{
"repost_url": "https://www.example.com/callback.json",
"media_data": "https://obs-open-platform-photo.obs.cn-north-4.myhuaweicloud.com/colorbyte_qt/photo/68760a99ed6616jv8vmfts2152.jpg",
"parameter": {
"all_params": {}
}
}
响应参数
| 参数名称 | 类型 | 描述 | 是否必填 | 备注 |
|---|
| chain_id | string | 任务ID | 是 | - |
响应示例
{
"reqid": "3b290f9b-9f36-4733-b8a1-6d4911ab341a",
"code": 0,
"data": {
"chain_id": "1837876704977174"
}
}
结果查询
轮询请求查询
注意: 异步任务的结果只保存 12 个小时,请及时查询并转存效果图图片,过期后该异步任务 ID 将无法查询到结果。请求之后切记要解析响应的 Body 来做结果判断。
接口地址: https://openapi.meitu.com/yunxiu/openapi/query.json
请求方法: POST
请求参数(Body参数):
| 参数名称 | 类型 | 描述 | 是否必填 | 备注 |
|---|
| chain_id | string | 任务ID | 是 | - |
请求示例:
{
"chain_id": "1837860599903876"
}
响应参数:
| 参数名称 | 类型 | 描述 | 是否必填 | 备注 |
|---|
| chain_id | string | 任务ID | 是 | - |
| after_url | string | 效果图图片地址1 | 是 | 下载节点1 |
| after_url_backup | string | 效果图图片地址2 | 是 | 下载节点2 |
| status | string | 任务状态 | 是 | - |
| error_code | int | 错误码 | 是 | - |
| error_msg | string | 错误信息 | 是 | - |
注:查询和回调的接口会返回 2 个下载节点的图片地址,2 个节点的图片是一模一样的,建议业务侧优先使用节点1,在节点 1 下载失败后使用节点 2 来下载。投递时指定 export_format=png 时,效果图 URL 后缀为 .png,可保留 PNG 透明通道
| 状态值 | 描述 |
|---|
| waiting | 等待处理 |
| processing | 处理中 |
| success | 处理成功 |
| error | 处理失败 |
响应示例:
{
"reqid": "0a8fa7c3-edf4-4ed4-90a8-6b75a45c5e17",
"code": 0,
"data": {
"chain_id": "1837860599903876",
"after_url": "https://beauty-public.zone1.meitudata.com/Marvel/1680141903114.jpg",
"after_url_backup": "https://beauty-public.zone1.meitudata.com/Marvel/1680141903114.jpg",
"status": "success",
"error_code": 0,
"error_msg": "success"
}
}
结果回调通知
当异步的任务处理完成后,会通过业务侧请求中的 repost_url 参数来回调通知。业务侧在处理完成后,需响应一个状态码为 200 的响应,响应体不做要求。
注意1: 目前回调请求只会回调一次,业务方需做好服务保障,如在一段时间没有接收到回调请求后,可以通过主动查询来获取结果。
注意2: 同样的通知可能会多次回调给业务方,业务方的系统必须能够正确处理重复的通知。 推荐的做法是收到通知进行处理时,先检查对应业务数据的状态,并判断该通知是否已经处理。如果未处理,则再进行处理;如果已处理,则直接返回结果成功。
注意3: 处理回调的时候切记要判断回调内容是否正确后,再进行后续的业务逻辑处理,避免损失
通知地址: 业务方提供的 repost_url 参数
请求方法: POST
请求头: Content-Type:application/json
请求参数(Body参数):
| 参数名称 | 类型 | 描述 | 是否必填 | 备注 |
|---|
| chain_id | string | 任务ID | 是 | - |
| media_data | string | 效果图图片地址1 | 是 | 图片下载节点1 |
| media_data_backup | string | 效果图图片地址2 | 是 | 图片下载节点2 |
| status | string | 任务状态 | 是 | - |
| error_code | int | 错误码 | 是 | - |
| error_msg | string | 错误信息 | 是 | - |
请求示例:
curl --location --request POST 'https://www.example.com/callback.json' \
--header 'Content-Type: application/json' \
--data-raw '{
"chain_id": "1837860599903876",
"media_data": "https://beauty-public.zone1.meitudata.com/Marvel/1680141903114.jpg",
"status": "success",
"error_code": 0,
"error_msg": ""
}'
错误码
在请求的时候,需要先判断请求的状态码是否成功,如果HTTP状态码不是200那么表示请求失败了,需要提取响应体中的 code 来做进一步处理。具体的错误码如下:
业务错误码(code字段)
| 错误码 | 描述 |
|---|
| 11001 | 请求参数解析失败 |
| 11002 | 系统异常 |
| 25001 | 预设口令错误 |
| 25002 | 修图参数格式化错误 |
修图错误码(error_code字段)
该字段在轮询接口中,当图片修图失败的时候,会返回该字段
| 错误码 | 备注 |
|---|
| 20001 | 修图失败,需要重试 |
| 29900 | 任务超过24小时,查询结果失败 |
| 29901 | 正在修图中 |
| 29902 | 修图任务超时 |
| 90024 | QPS超限制 |
| 10015 | 服务故障 |
| 10007 | 图片编解码失败 |
| 21101 | 资源下载解析失败 |
| 21002 | 资源数据为空 |
| 21003 | 解析请求参数失败 |
| 21205 | 下载原图失败 |
| 21206 | 下载算法结果失败 |
| 21207 | zip包格式错误 |
| 20601 | 设置效果参数错误 |
| 20602 | 渲染失败 |
| 20603 | 获取结果图失败 |
| 20604 | 获取mask任务为空 |
| 20605 | 图像编码失败 |
| 20606 | 图像类型不支持 |
常见问题
图片是否会处理失败?
会。目前处理图片的过程中,会偶发出现失败的情况,目前整体的成功率是控制在 99.95%+ 的,业务代码也建议可以多做一步容错处理。
什么是 QPS?
QPS 就是限制每秒能请求的次数,假如设置为 10 的话,那么表示每秒可以发起 10 个请求,每个请求可以提交一张图片处理,后端图片的处理是并行的。
素材列表
以下保留素材编号及配置值,素材效果图可点击「查看预览」在原文档中查看。
妆容素材
眉毛(eyebrow)
| ID | 名称 | 颜色 | 图片 |
|---|
| biaozhunmei | 自然 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| yizimei | 直眉 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| yingqimei | 英气 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| wanyuemei | 弯月 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| gaotiaomei | 高挑 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| jianmei | 浓密 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| yeshengmei | 小挑眉 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| shuliumei | 野生 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| hengliumei | 原生 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| Mi0000yD1mozSrdF | 古典 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| Mi0000hGArIjPKqE | 丝雾 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| Mi0000OlZZZLg427 | 棕雾 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
| Mi0000JJ4k5NOuI9 | 毛绒 | BK01 0;0;0;255;BR01 108;66;24;255;LB01 137;100;41;255;RB01 156;58;39;255 | 查看预览 |
美瞳(eye)
卧蚕(eyesocket)
眼影(eyeshadow)
睫毛(eyelash)
修容(feature)
腮红(blush)
| ID | 名称 | 颜色 | 图片 |
|---|
| blush01 | 元气 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| blush02 | 眼下 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| blush03 | 法式 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| blush08 | 氛围 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| blush06 | 高原 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| blush05 | 面颊 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| Mi0000fKcDexSogs | 微醺 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005. 255;134;106;255 | 查看预览 |
| Mi00002yMqzH8Xnl | 冻伤 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| Mi0000hfMqZn8tkR | 晒伤 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| Mi0000gm5FZvaQj8 | 红润 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| Mi00006vvZFZmT76 | 桃粉 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| Mi0000Mfob60M0MY | 减龄 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
| Mi0000ChAgz4Zoyd | 海岛 | 001 255;116;178;255;002 255;227;98;255;003 210;128;122;255;004 198;130;145;255;005 255;134;106;255 | 查看预览 |
唇彩(mouth)
妆饰(facialdecals)
| ID | 名称 | 图片 |
|---|
| eyeshadow06 | 眼下钻石 | 查看预览 |
| queban | 雀斑 | 查看预览 |
| Mi0000FVHF7wqiNC | 度假雀斑 | 查看预览 |
| Mi0000qxnSbjKxgb | 慵懒雀斑 | 查看预览 |
| Mi0000SiOzeusi2U | 野生雀斑 | 查看预览 |
| meishiqueban | 美式雀斑 | 查看预览 |
| Mi0000EJKuYAUiWJ | 昭和雀斑 | 查看预览 |
| Mi00004nlc1o1zbM | 原生雀斑 | 查看预览 |
眼线(eyeliner)
| ID | 名称 | 颜色 | 图片 |
|---|
| Mi0000cUzfaAlQgx | 自然系 | 01 53;28;26;255; 02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi0000Kri3hozVzR | 深邃 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi0000m4pyNOR5wA | 甜酷 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi0000FpkyFTjEhY | 韩系 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi0000ArTobhIM9y | 狗狗眼 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi00008Pdys6ShW3 | 古典 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi0000mJDm4VZSZL | 全包 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi0000U8yopkvAQl | 开口下至 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi0000iIK9XUBFUc | 淡颜 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi0000WbLdWUO8Mn | 上扬 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;04 101;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
| Mi0000lMRW4bMbyN | 刀锋 | 01 53;28;26;255;02 0;0;0;255;03 101;80;64;255;041 01;66;23;255;05 157;36;28;255;06 150;3;101;255 | 查看预览 |
高光(makeup_highlight)
| ID | 名称 | 图片 |
|---|
| Mi0000aShpCmphEy | 眼下提亮 | 查看预览 |
| Mi0000d3Ti0TATej | 丰润 | 查看预览 |
| Mi0000CPhRXt5RoB | 平整 | 查看预览 |
| Mi00003bH6O8902g | 盈润 | 查看预览 |
| Mi0000qgUP6NxdZ5 | 丰盈 | 查看预览 |
| Mi0000TMtJhiPr77 | 笔挺 | 查看预览 |
| Mi0000IwiReFuX9r | 透亮 | 查看预览 |
| Mi00009a3Hwy6AyZ | 水光 | 查看预览 |
| Mi0000KNKZad2mUr | 小灯泡 | 查看预览 |
滤镜素材
| 名称 | 分类 | 滤镜ID | 默认值 |
|---|
| 藕色 | 历史 | Fa0000qhjvzrB6bk | 50 |
| 复古 | 历史 | Fa0000GIqjw2lTHs | 50 |
| 宫廷 | 历史 | Fa0000ka4QT8K4qu | 50 |
| 高级灰 | 历史 | Fa00006fhJ3N39BW | 60 |
| 黑白 | 历史 | Fam7OiW93OVqp7VZ | 100 |
| 幽夜 | 历史 | FaZQiqI8ivwXDO8V | 50 |
| 清冷 | 历史 | FaTrSSLhNVNl7fez | 50 |
| 静谧 | 历史 | FaSIJM59R7eIQNdb | 50 |
| 寂忆 | 历史 | FakN7AwtNBuTbbAg | 50 |
| 淅沥 | 历史 | Fai455PvRjZLgUas | 50 |
| 青葱 | 历史 | FaGt8R0xGCprQFOs | 50 |
| 旧梦 | 历史 | FaFgP87DcDJGi4mI | 50 |
| 年华 | 历史 | FaCDFG5M2NJDbzhE | 50 |
| 抹茶 | 历史 | Fa9EFqwgJB9SwW8d | 50 |
| 多彩 | 历史 | Fa5Ko6DFZ0M7LYq0 | 50 |
| 日系 | 历史 | Fa00005laGsjTUku | 50 |
| 森系 | 历史 | Fa00004ZuQuHKGS8 | 51 |
| 极简 | 历史 | Fa0000l4c2ZRdh74 | 50 |
| 黑白质感 | 历史 | Fa0000LB7OThWMDo | 100 |
| 东方 | 历史 | Fa0000zZmwsM7Nfl | 50 |
| 复古 | 历史 | Fa0000OyoLKHimmO | 50 |
| 温暖 | 历史 | Fa0000UksyrcZDzz | 50 |
| 白皙 | 历史 | Fa0000P2W1nfgpop | 50 |
| 白皙 | 历史 | Fa0000WvV9T5NlWV | 50 |
| 暖黄 | 历史 | Fa0000LKNAHh9PbV | 50 |
| 喜庆 | 历史 | Fa0000Tm94bdbZCX | 50 |
| 园林 | 历史 | Fa0000RGuP61MarE | 50 |
| 蓝色大海 | 历史 | Fa0000EzvY8aqbxR | 50 |
| 白色教堂 | 历史 | Fa00001mDiwf1m6n | 50 |
| 薄荷绿 | 历史 | Fa00001gSzM52xQC | 50 |
| 读书郎 | 历史 | Fa0000GoCAiFCxQy | 50 |
| 秘密花园 | 历史 | Fa00000crgokZT00 | 50 |
| 粉红宝宝 | 历史 | Fa0000Actdx2USmT | 50 |
| 黄牛宝宝 | 历史 | Fa00005HwwB7VhPZ | 50 |
| 奶牛宝宝 | 历史 | Fa0000EymDnzj6NT | 50 |
| 暖意 | 历史 | Fa0000F1ce3gv5Jj | 50 |
| 清新 | 历史 | Fa0000l7dQAKzlCU | 50 |
| 灰色内景 | 历史 | Fa0000KubcZugZ4e | 50 |
| 白色内景 | 历史 | Fa0000wBVTX9Jt4h | 50 |
| 黑色内景 | 历史 | Fa0000epgjUhXLrB | 50 |
| 森系园林 | 历史 | Fa00008KUR0HiadL | 50 |
| 简约韩式 | 历史 | Fa00008Xh3vS8BsQ | 50 |
| 中式韵味 | 历史 | Fa00006jrLeSJK8m | 50 |
| 休闲 | 历史 | Fa0000vKd89H9Kqv | 50 |
| 唯美 | 历史 | Fa0000rBAQvqB3eo | 50 |
| 红妆 | 历史 | Fa0000KmtNJgfmLO | 50 |
| 温暖 | 历史 | Fa0000cDzjDPwxmC | 50 |
| 清新 | 历史 | Fa0000pQAGXT1ZzH | 50 |
| 喜庆红 | 历史 | Fa0000ujWq4h3s3j | 50 |
| 夜景 | 历史 | Fa0000AcP6k81I2p | 50 |
| 明月清辉 | 历史 | Fa0000FQIZ2ZxBdI | 50 |
| 透亮 | 人像 | Fa0000ZO5eevvoev | 60 |
| 暖意I | 人像 | Fa0000UGIBMahr3w | 50 |
| 暖意II | 人像 | Fa0000sw8eCTX3AB | 80 |
| 质感人像 | 人像 | Fa0000BJzKzgEAJX | 50 |
| 白皙I | 人像 | Fa0000C0csBbBLGJ | 50 |
| 白皙II | 人像 | Fa0000hsMOoC6wHx | 80 |
| 室内跟拍 | 人像 | Fa0000m2c3wcLMKe | 80 |
| 室外跟拍 | 人像 | Fa0000UiikN0tEAN | 80 |
| 中式秀禾 | 人像 | Fa0000Ly2xGD9OHh | 80 |
| 中式暖调 | 人像 | Fa0000dWhwAG10Mt | 80 |
| 烟雨江南 | 人像 | Fa00009qkfva96ax | 50 |
| 焕彩假日 | 户外 | Fa0000skp99iK19d | 60 |
| 日系清新 | 户外 | Fa0000GwlRgJjWkp | 80 |
| 法式油画 | 户外 | Fa0000VoJWMs5IDW | 80 |
| 森系青调 | 户外 | Fa00007cZB1m8CH3 | 80 |
| 青葱草地 | 户外 | Fa00002CFtLbdAsN | 80 |
| 清冷江南 | 户外 | Fa0000ngg7xDaVqe | 80 |
| 敦煌I | 户外 | Fa0000nZwYBKbihl | 50 |
| 敦煌II | 户外 | Fa0000iDqHash0sP | 70 |
| 花海 | 户外 | Fa0000yQvOJtTKWf | 80 |
| 无尽夏 | 户外 | Fa0000HxecTNSCnj | 80 |
| 蓝色大海 | 户外 | Fa00004WmU47xXrf | 70 |
| 经典II | 胶片 | Fa00005Pa1RiA2fF | 80 |
| 粉胶 | 胶片 | Fa0000GzfSGpFf4k | 80 |
| 乐园 | 胶片 | Fa0000bqxcuYY5bb | 70 |
| 日系 | 胶片 | Fa0000Yq5faQ9nQa | 80 |
| 柯达金 | 胶片 | Fa0000UpsemzyADt | 80 |
| 黑金 | 城市 | Fa0000hnu5fysSnw | 50 |
| 夜景 | 城市 | Fa00006StiDCCXUQ | 50 |
| 夜景蓝调 | 城市 | Fa0000zPXcq6HaKm | 80 |
| 质感黑白 | 黑白 | Fa0000EOz3ZOATjI | 100 |
| 60年代 | 黑白 | Fa0000wxCJsSmkr4 | 100 |
| 复古黑白 | 黑白 | Fa0000dMNokcFbOP | 100 |
| 高对比 | 黑白 | Fa0000e02nxtPjgZ | 100 |
| 透亮 | 热门 | Fa0000Hpx9vvGngd | 60 |
| 经典卷I | 热门 | Fa0000pmMzflxryj | 80 |
| 中式秀禾 | 热门 | Fa0000NDn04T8Vp4 | 80 |
| 白皙I | 热门 | Fa0000aPQLtBufth | 50 |
| 无尽夏 | 热门 | Fa0000jIA9yz0wXt | 80 |
| 焕彩假日 | 热门 | Fa00008kCBX2bBc7 | 60 |
| 黑金 | 热门 | Fa0000yA1Lir2bdo | 80 |
| 经典I | 胶片 | Fa0000CWwYIyajdD | 80 |
| 花好月圆 | 历史 | Fa0000fZrH9dDXNu | 50 |
| 花海 | 户外 | Fa0000yQvOJtTKWf | 80 |
| 经典卷II | 胶片 | Fa00005Pa1RiA2fF | 80 |
| 高级灰 | 历史 | Fa00006fhJ3N39BW | 60 |
| 黑白 | 历史 | Fam7OiW93OVqp7VZ | 100 |
| 幽夜 | 历史 | FaZQiqI8ivwXDO8V | 50 |
| 清冷 | 历史 | FaTrSSLhNVNl7fez | 50 |
| 寂忆 | 历史 | FakN7AwtNBuTbbAg | 50 |
| 淅沥 | 历史 | Fai455PvRjZLgUas | 50 |
| 青葱 | 历史 | FaGt8R0xGCprQFOs | 50 |
| 年华 | 历史 | FaCDFG5M2NJDbzhE | 50 |
| 抹茶 | 历史 | Fa9EFqwgJB9SwW8d | 50 |
| 多彩 | 历史 | Fa5Ko6DFZ0M7LYq0 | 50 |
| 法式油画 | 户外 | Fa0000VoJWMs5IDW | 50 |
| 日系清新 | 户外 | Fa0000GwlRgJjWkp | 80 |
| 黑白质感 | 历史 | Fa0000LB7OThWMDo | 100 |
| 东方 | 历史 | Fa0000zZmwsM7Nfl | 50 |
| 复古 | 历史 | Fa0000OyoLKHimmO | 50 |
| 温暖 | 历史 | Fa0000UksyrcZDzz | 50 |
| 暖黄 | 历史 | Fa0000LKNAHh9PbV | 50 |
| 园林 | 历史 | Fa0000RGuP61MarE | 50 |
| 蓝色大海 | 历史 | Fa0000EzvY8aqbxR | 50 |
| 白色教堂 | 历史 | Fa00001mDiwf1m6n | 50 |
| 薄荷绿 | 历史 | Fa00001gSzM52xQC | 50 |
| 读书郎 | 历史 | Fa0000GoCAiFCxQy | 50 |
| 秘密花园 | 历史 | Fa00000crgokZT00 | 50 |
| 粉红宝宝 | 历史 | Fa0000Actdx2USmT | 50 |
| 黄牛宝宝 | 历史 | Fa00005HwwB7VhPZ | 50 |
| 清新 | 历史 | Fa0000l7dQAKzlCU | 50 |
| 灰色内景 | 历史 | Fa0000KubcZugZ4e | 50 |
| 黑色内景 | 历史 | Fa0000epgjUhXLrB | 50 |
| 森系青调 | 户外 | Fa00007cZB1m8CH3 | 80 |
| 简约韩式 | 历史 | Fa00008Xh3vS8BsQ | 50 |
| 休闲 | 历史 | Fa0000vKd89H9Kqv | 50 |
| 唯美 | 历史 | Fa0000rBAQvqB3eo | 50 |
| 红妆 | 历史 | Fa0000KmtNJgfmLO | 50 |
| 温暖 | 历史 | Fa0000cDzjDPwxmC | 50 |
| 清新 | 历史 | Fa0000pQAGXT1ZzH | 50 |
| 喜庆红 | 历史 | Fa0000ujWq4h3s3j | 50 |
| 夜景 | 城市 | Fa00006StiDCCXUQ | 50 |
| 敦煌I | 户外 | Fa0000nZwYBKbihl | 50 |
| 柯达金 | 胶片 | Fa0000UpsemzyADt | 80 |
| 蓝色大海 | 户外 | Fa00004WmU47xXrf | 70 |
| 乐园 | 胶片 | Fa0000bqxcuYY5bb | 70 |
| 60年代 | 黑白 | Fa0000wxCJsSmkr4 | 100 |
| 复古黑白 | 黑白 | Fa0000dMNokcFbOP | 100 |
| 质感黑白 | 黑白 | Fa0000EOz3ZOATjI | 100 |
| 暖意II | 人像 | Fa0000sw8eCTX3AB | 80 |
| 质感人像 | 人像 | Fa0000BJzKzgEAJX | 80 |
| 无尽夏 | 户外 | Fa0000HxecTNSCnj | 80 |
| 焕彩假日 | 户外 | Fa0000skp99iK19d | 60 |
| 敦煌II | 户外 | Fa0000iDqHash0sP | 70 |
| 黑金 | 城市 | Fa0000hnu5fysSnw | 80 |
| 透亮 | 人像 | Fa0000ZO5eevvoev | 60 |
| 白皙II | 人像 | Fa0000hsMOoC6wHx | 80 |
| 白皙I | 人像 | Fa0000C0csBbBLGJ | 50 |
| 室内跟拍 | 人像 | Fa0000m2c3wcLMKe | 80 |
| 清冷江南 | 户外 | Fa0000ngg7xDaVqe | 80 |
| 室外跟拍 | 人像 | Fa0000UiikN0tEAN | 80 |
| 青葱草地 | 户外 | Fa00002CFtLbdAsN | 80 |
| 粉胶 | 胶片 | Fa0000GzfSGpFf4k | 80 |
| 经典卷I | 胶片 | Fa0000CWwYIyajdD | 80 |
| 白皙I | 最新 | Fa0000aPQLtBufth | 50 |
| 无尽夏 | 最新 | Fa0000jIA9yz0wXt | 80 |
| 黑金 | 最新 | Fa0000yA1Lir2bdo | 80 |
| 高对比 | 黑白 | Fa0000e02nxtPjgZ | 100 |
| 夜景蓝调 | 城市 | Fa0000zPXcq6HaKm | 80 |
| 日系 | 胶片 | Fa0000Yq5faQ9nQa | 80 |
| 烟雨江南 | 人像 | Fa00009qkfva96ax | 50 |
| 中式秀禾 | 人像 | Fa0000Ly2xGD9OHh | 70 |
| 中式暖调 | 人像 | Fa0000dWhwAG10Mt | 80 |
| 喜庆 | 历史 | Fa0000Tm94bdbZCX | 50 |
| 暖意Ⅰ | 人像 | Fa0000UGIBMahr3w | 50 |
| 透亮 | 最新 | Fa0000Hpx9vvGngd | 60 |
| 焕彩假日 | 最新 | Fa00008kCBX2bBc7 | 60 |
| 森系 | 历史 | Fa00004ZuQuHKGS8 | 50 |
| 日系 | 历史 | Fa00005laGsjTUku | 50 |
| 极简 | 历史 | Fa0000l4c2ZRdh74 | 50 |
| 森系园林 | 历史 | Fa00008KUR0HiadL | 50 |
| 白色内景 | 历史 | Fa0000wBVTX9Jt4h | 50 |
| 旧梦 | 历史 | FaFgP87DcDJGi4mI | 50 |
| 宫廷 | 历史 | Fa0000ka4QT8K4qu | 50 |
| 白皙 | 历史 | Fa0000WvV9T5NlWV | 50 |
| 白皙 | 历史 | Fa0000P2W1nfgpop | 50 |
| 花好月圆 | 历史 | Fa0000fZrH9dDXNu | 50 |
| 明月清辉 | 历史 | Fa0000FQIZ2ZxBdI | 50 |
| 暖意 | 历史 | Fa0000F1ce3gv5Jj | 50 |
| 静谧 | 历史 | FaSIJM59R7eIQNdb | 50 |
| 夜景 | 历史 | Fa0000AcP6k81I2p | 50 |
| 中式韵味 | 历史 | Fa00006jrLeSJK8m | 50 |
| 奶牛宝宝 | 历史 | Fa0000EymDnzj6NT | 50 |
| 复古 | 历史 | Fa0000GIqjw2lTHs | 50 |
| 敦煌II | 最新 | Fa0000ddGjlHmJmt | 70 |
| 藕色 | 历史 | Fa0000qhjvzrB6bk | 50 |
| 朱砂 | 新中式 | Fa0000XsSNfzw8Iv | 80 |
| 画眉 | 新中式 | Fa0000PMFu1ymPrj | 80 |
| 青绿 | 新中式 | Fa00000Ncf1Y1Xpe | 80 |
| 奶油肌 | 人像 | Fa000067X1tIabF6 | 80 |
| 富士CC | 相机模拟 | Fa0000n39JYhOhBM | 80 |
| 富士NN | 相机模拟 | Fa0000uqfHKXomZf | 80 |
| 电商Ⅰ | 人像 | Fa0000T4RcvE18G0 | 80 |
| 电商Ⅱ | 人像 | Fa0000QYdwKZF7wL | 80 |
| 电商Ⅲ | 人像 | Fa0000KjRdHMn5Mr | 80 |
| 富士NC | 相机模拟 | Fa0000tJ6KxsAcfe | 80 |
| X100 | 相机模拟 | Fa0000s53M1s9jGx | 80 |
| 富士NC | 最新 | Fa0000ygyMjU1Ma0 | 80 |
| 青绿 | 最新 | Fa0000CLst7Ai0T8 | 80 |
| 摩登 | 城市 | Fa0000C4Jp6RLqqn | 50 |
| 港风 | 城市 | Fa0000q0Og7jsV5h | 50 |
| 侘寂Ⅰ | 人像 | Fa0000OdwdQXpb8K | 50 |
| 侘寂Ⅱ | 人像 | Fa0000qSV4CD8wiA | 70 |
| 复古美式 | 人像 | Fa00003dLXLQtrKC | 50 |
| 复古日系 | 人像 | Fa0000HQiZpHMO8r | 70 |
| 哈苏 | 胶片 | Fa0000qwhHdBqot9 | 60 |
| 日光卷 | 胶片 | Fa0000JxRrBX6azN | 60 |
| 浓郁 | 胶片 | Fa0000IX999CcTJF | 80 |
| 菲林 | 胶片 | Fa0000DLropO1ZjD | 60 |
| 复古画报 | 人像 | Fa00008e573MgZjy | 60 |
| 柔粉 | 人像 | Fa00005JdxFdFGdi | 80 |
| 春日粉樱 | 户外 | Fa0000T762IwrzT6 | 50 |
| 春和 | 胶片 | Fa0000n1TcETBLqi | 50 |
| 热带雨林 | 户外 | Fa0000EylPpqvN8A | 75 |
| 盛夏 | 胶片 | Fa0000wZMjJDkJQw | 50 |
| 绿野 | 户外 | Fa0000s2oLwiefuK | 70 |
| 鎏光 | 胶片 | Fa0000OIJLRukbio | 80 |
| 暖胶 | 最新 | Fa0000s5KPcqwa2q | 50 |
| 青野 | 最新 | Fa0000ykWawJisVT | 70 |
| 中调 | 最新 | Fa0000OM8ZuTHT7y | 70 |
| AI滤镜 | - | AUTO_COMPOSITE | 100 |
整妆素材
注:整妆素材并不是一个实际的参数,是一组参数的集合,这里列出每一个整妆包含的具体参数。
伪素颜
| 妆容类型 | 妆容名称 | 参数值 |
|---|
| 眉毛 | 标准眉 | 2 |
| 眼影 | 裸杏 | 6 |
| 美瞳 | 星星眼 | 4 |
| 卧蚕 | 素颜 | 4 |
| 睫毛 | 11 | 10 |
| 修容 | 立体 | 10 |
| 腮红 | 09 | 8 |
| 唇彩 | 水润 | 4 |
中式新娘
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 标准眉 | BK01 | 30 |
| 眼影 | 钓系 | | 50 |
| 卧蚕 | 自然 | | 50 |
| 睫毛 | 01 | | 80 |
| 修容 | V脸 | 001 | 20 |
| 腮红 | 07 | 001 | 20 |
| 唇彩 | 正红 | | 20 |
清新韩式
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 一字眉 | BK01 | 30 |
| 眼影 | 自然 | | 60 |
| 卧蚕 | 下垂 | | 50 |
| 睫毛 | 05 | | 40 |
| 修容 | 鼻影 | | 70 |
| 腮红 | 05 | 002 | 20 |
| 唇彩 | 樱桃 | | 50 |
法式复古
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 高挑眉 | BK01 | 50 |
| 眼影 | 浅棕 | | 100 |
| 卧蚕 | 成熟 | | 50 |
| 睫毛 | 06 | | 50 |
| 修容 | 古铜 | | 50 |
| 腮红 | 07 | 003 | 60 |
| 唇彩 | 姨妈色 | | 80 |
御姐范儿
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 英气眉 | BK01 | 50 |
| 眼影 | 性感 | | 100 |
| 卧蚕 | 成熟 | | 60 |
| 睫毛 | 06 | | 70 |
| 修容 | 气质 | | 70 |
| 腮红 | 06 | 003 | 50 |
| 唇彩 | 玫瑰 | | 80 |
裸妆
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 标准眉 | BK01 | 10 |
| 眼影 | 自然 | | 40 |
| 卧蚕 | 日常 | | 50 |
| 修容 | 日常 | | 60 |
| 腮红 | 06 | 001 | 30 |
| 唇彩 | 裸妆 | | 50 |
高级脸
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 标准眉 | BK01 | 20 |
| 眼影 | 浅棕 | | 50 |
| 卧蚕 | 月牙 | | 50 |
| 睫毛 | 01 | | 70 |
| 修容 | 减龄 | | 80 |
| 腮红 | 07 | 003 | 30 |
| 唇彩 | 正红 | | 40 |
可爱甜美
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 弯月眉 | BK01 | 50 |
| 眼影 | 浅橘 | | 60 |
| 卧蚕 | 可爱 | | 70 |
| 睫毛 | 05 | | 70 |
| 修容 | 减龄 | | 70 |
| 腮红 | 01 | 001 | 50 |
| 唇彩 | 水蜜桃 | | 80 |
日杂妆
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 标准眉 | BR01 | 50 |
| 眼影 | 深橘 | | 60 |
| 卧蚕 | 可爱 | | 70 |
| 睫毛 | 01 | | 60 |
| 修容 | 日常 | | 50 |
| 腮红 | 07 | 005 | 80 |
| 唇彩 | 焦糖 | | 60 |
新年妆
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 标准眉 | BK01 | 40 |
| 眼影 | 新年 | | 90 |
| 卧蚕 | 月牙 | | 50 |
| 睫毛 | 02 | | 80 |
| 修容 | 提拉 | | 100 |
| 腮红 | 07 | 001 | 40 |
| 唇彩 | 姨妈色 | | 70 |
田园
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 唇彩 | 02 | | 28 |
| 眉毛 | 02 | BR01 | 35 |
| 眼影 | 01 | | 56 |
| 美瞳 | 03 | | 35 |
| 卧蚕 | 02 | | 21 |
| 腮红 | 03 | 001 | 38.5 |
| 修容 | 07 | | 35 |
| 高光 | 眼下提亮 | | 14 |
| 睫毛 | 02 | | 49 |
| 妆饰 | 06 | | 52 |
轻泰妆
| 妆容类型 | 妆容名称 | 妆容颜色 | 参数值 |
|---|
| 眉毛 | 06 | BK01 | 28 |
| 眼影 | 16 | | 56 |
| 眼线 | 01 | 01 | 49 |
| 美瞳 | 07 | | 14 |
| 卧蚕 | 02 | | 42 |
| 腮红 | 06 | 005 | 28 |
| 修容 | 12 | | 35 |
| 高光 | 平整 | | 28 |
| 唇彩 | 13 | | 21 |
| 睫毛 | 13 | | 56 |
AI滤镜
换天空素材
多云
晴空
黄昏
夜空
肤色选择
| 名称 | 值 |
|---|
| 原肤 | 0 |
| 冷调 | skin1.png |
| 粉瓷 | skin2.png |
| 暖调 | skin3.png |
| 小麦 | skin4.png |
| 可可色 | skin5.png |
眼神光
发色选择
SDK 调用示例
安装对应语言的签名 SDK。Python 还需安装 requests,PHP 需将 signer.php 放在示例同目录,Java 文件名为 Main.java。
填入 AK、SK、预设 ID 和图片地址即可提交任务。查询时使用提交返回的 data.chain_id。
Python
import json
import requests
from sign_sdk import sign
def api_call_example():
key = "your_access_key"
secret = "your_secret_key"
url = "https://openapi.meitu.com/yunxiu/openapi/chain.json"
method = "POST"
headers = {
"Content-Type": "application/json",
sign.HeaderHost: "openapi.meitu.com",
}
payload = {"media_code": "YOUR_PRESET_ID", "media_data": "https://example.com/portrait.jpg"}
body = json.dumps(payload, ensure_ascii=False)
signer = sign.Signer(key, secret)
signed_request = signer.sign(url, method, headers, body)
with requests.Session() as session:
response = session.send(signed_request, timeout=60)
print("Status:", response.status_code)
print("Response:", response.text)
if __name__ == "__main__":
api_call_example()
Go
package main
import (
"fmt"
"github.com/mtlab/api/signer"
"io"
"net/http"
"time"
)
func main() {
key := "your_access_key"
secret := "your_secret_key"
signObj := signer.NewSigner(key, secret)
url := "https://openapi.meitu.com/yunxiu/openapi/chain.json"
headers := make(http.Header)
headers.Set(signer.HeaderHost, "openapi.meitu.com")
headers.Set("Content-Type", "application/json")
body := `{"media_code":"YOUR_PRESET_ID","media_data":"https://example.com/portrait.jpg"}`
req, err := signObj.Sign(url, http.MethodPost, headers, body)
if err != nil {
fmt.Println("Failed to sign request:", err)
return
}
client := &http.Client{Timeout: 60 * time.Second}
resp, err := client.Do(req)
if err != nil {
fmt.Println("Failed to send request:", err)
return
}
defer resp.Body.Close()
responseBody, err := io.ReadAll(resp.Body)
if err != nil {
fmt.Println("Failed to read response:", err)
return
}
fmt.Println("Status:", resp.StatusCode)
fmt.Println("Response:", string(responseBody))
}
PHP
<?php
require_once __DIR__ . '/signer.php';
$key = 'your_access_key';
$secret = 'your_secret_key';
$url = 'https://openapi.meitu.com/yunxiu/openapi/chain.json';
$headers = [
'Content-Type' => 'application/json',
'Host' => 'openapi.meitu.com',
];
$payload = ['media_code' => 'YOUR_PRESET_ID', 'media_data' => 'https://example.com/portrait.jpg'];
$body = json_encode($payload, JSON_UNESCAPED_SLASHES | JSON_THROW_ON_ERROR);
$signer = new Signer($key, $secret);
$curl = $signer->sign($url, 'POST', $headers, $body);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_TIMEOUT, 60);
$response = curl_exec($curl);
if ($response === false) {
echo 'Error: ' . curl_error($curl);
} else {
echo 'Status: ' . curl_getinfo($curl, CURLINFO_HTTP_CODE) . PHP_EOL;
echo 'Response: ' . $response . PHP_EOL;
}
curl_close($curl);
Java
import com.meitu.openai.common.Signer;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) throws Exception {
Signer signer = new Signer("your_access_key", "your_secret_key");
String url = "https://openapi.meitu.com/yunxiu/openapi/chain.json";
String method = "POST";
Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/json");
headers.put(Signer.HeaderHost, "openapi.meitu.com");
String body = "{\"media_code\": \"YOUR_PRESET_ID\", \"media_data\": \"https://example.com/portrait.jpg\"}";
Map<String, String> signedHeaders = signer.sign(url, method, headers, body);
HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
try {
connection.setRequestMethod(method);
connection.setConnectTimeout(10000);
connection.setReadTimeout(60000);
connection.setInstanceFollowRedirects(false);
for (Map.Entry<String, String> header : signedHeaders.entrySet()) {
connection.setRequestProperty(header.getKey(), header.getValue());
}
connection.setDoOutput(true);
try (OutputStream output = connection.getOutputStream()) {
output.write(body.getBytes(StandardCharsets.UTF_8));
}
int status = connection.getResponseCode();
InputStream stream = status >= 400
? connection.getErrorStream()
: connection.getInputStream();
System.out.println("Status: " + status);
if (stream != null) {
try (InputStream input = stream;
ByteArrayOutputStream output = new ByteArrayOutputStream()) {
byte[] buffer = new byte[4096];
int length;
while ((length = input.read(buffer)) != -1) {
output.write(buffer, 0, length);
}
System.out.println("Response: " + output.toString("UTF-8"));
}
}
} finally {
connection.disconnect();
}
}
}
原始参数提交示例
将上文的完整原始请求体保存为 params.json,替换图片地址和处理参数。
Python
import json
import requests
from sign_sdk import sign
def api_call_example():
key = "your_access_key"
secret = "your_secret_key"
url = "https://openapi.meitu.com/yunxiu/openapi/chain.json"
method = "POST"
headers = {
"Content-Type": "application/json",
sign.HeaderHost: "openapi.meitu.com",
}
with open("params.json", encoding="utf-8") as source:
body = source.read()
signer = sign.Signer(key, secret)
signed_request = signer.sign(url, method, headers, body)
with requests.Session() as session:
response = session.send(signed_request, timeout=60)
print("Status:", response.status_code)
print("Response:", response.text)
if __name__ == "__main__":
api_call_example()
Go
package main
import (
"fmt"
"github.com/mtlab/api/signer"
"io"
"net/http"
"os"
"time"
)
func main() {
key := "your_access_key"
secret := "your_secret_key"
signObj := signer.NewSigner(key, secret)
url := "https://openapi.meitu.com/yunxiu/openapi/chain.json"
headers := make(http.Header)
headers.Set(signer.HeaderHost, "openapi.meitu.com")
headers.Set("Content-Type", "application/json")
data, err := os.ReadFile("params.json")
if err != nil { panic(err) }
body := string(data)
req, err := signObj.Sign(url, http.MethodPost, headers, body)
if err != nil {
fmt.Println("Failed to sign request:", err)
return
}
client := &http.Client{Timeout: 60 * time.Second}
resp, err := client.Do(req)
if err != nil {
fmt.Println("Failed to send request:", err)
return
}
defer resp.Body.Close()
responseBody, err := io.ReadAll(resp.Body)
if err != nil {
fmt.Println("Failed to read response:", err)
return
}
fmt.Println("Status:", resp.StatusCode)
fmt.Println("Response:", string(responseBody))
}
PHP
<?php
require_once __DIR__ . '/signer.php';
$key = 'your_access_key';
$secret = 'your_secret_key';
$url = 'https://openapi.meitu.com/yunxiu/openapi/chain.json';
$headers = [
'Content-Type' => 'application/json',
'Host' => 'openapi.meitu.com',
];
$body = file_get_contents(__DIR__ . '/params.json');
if ($body === false) { throw new RuntimeException('Cannot read params.json'); }
$signer = new Signer($key, $secret);
$curl = $signer->sign($url, 'POST', $headers, $body);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_TIMEOUT, 60);
$response = curl_exec($curl);
if ($response === false) {
echo 'Error: ' . curl_error($curl);
} else {
echo 'Status: ' . curl_getinfo($curl, CURLINFO_HTTP_CODE) . PHP_EOL;
echo 'Response: ' . $response . PHP_EOL;
}
curl_close($curl);
Java
import com.meitu.openai.common.Signer;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) throws Exception {
Signer signer = new Signer("your_access_key", "your_secret_key");
String url = "https://openapi.meitu.com/yunxiu/openapi/chain.json";
String method = "POST";
Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/json");
headers.put(Signer.HeaderHost, "openapi.meitu.com");
String body = new String(java.nio.file.Files.readAllBytes(java.nio.file.Paths.get("params.json")), StandardCharsets.UTF_8);
Map<String, String> signedHeaders = signer.sign(url, method, headers, body);
HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
try {
connection.setRequestMethod(method);
connection.setConnectTimeout(10000);
connection.setReadTimeout(60000);
connection.setInstanceFollowRedirects(false);
for (Map.Entry<String, String> header : signedHeaders.entrySet()) {
connection.setRequestProperty(header.getKey(), header.getValue());
}
connection.setDoOutput(true);
try (OutputStream output = connection.getOutputStream()) {
output.write(body.getBytes(StandardCharsets.UTF_8));
}
int status = connection.getResponseCode();
InputStream stream = status >= 400
? connection.getErrorStream()
: connection.getInputStream();
System.out.println("Status: " + status);
if (stream != null) {
try (InputStream input = stream;
ByteArrayOutputStream output = new ByteArrayOutputStream()) {
byte[] buffer = new byte[4096];
int length;
while ((length = input.read(buffer)) != -1) {
output.write(buffer, 0, length);
}
System.out.println("Response: " + output.toString("UTF-8"));
}
}
} finally {
connection.disconnect();
}
}
}
查询结果(Query)
将提交响应中的 data.chain_id 填入以下示例的 YOUR_CHAIN_ID,签名后发送 POST 请求查询结果。
Python
import json
import requests
from sign_sdk import sign
def api_call_example():
key = "your_access_key"
secret = "your_secret_key"
url = "https://openapi.meitu.com/yunxiu/openapi/query.json"
method = "POST"
headers = {
"Content-Type": "application/json",
sign.HeaderHost: "openapi.meitu.com",
}
payload = {"chain_id": "YOUR_CHAIN_ID"}
body = json.dumps(payload, ensure_ascii=False)
signer = sign.Signer(key, secret)
signed_request = signer.sign(url, method, headers, body)
with requests.Session() as session:
response = session.send(signed_request, timeout=60)
print("Status:", response.status_code)
print("Response:", response.text)
if __name__ == "__main__":
api_call_example()
Go
package main
import (
"fmt"
"github.com/mtlab/api/signer"
"io"
"net/http"
"time"
)
func main() {
key := "your_access_key"
secret := "your_secret_key"
signObj := signer.NewSigner(key, secret)
url := "https://openapi.meitu.com/yunxiu/openapi/query.json"
headers := make(http.Header)
headers.Set(signer.HeaderHost, "openapi.meitu.com")
headers.Set("Content-Type", "application/json")
body := `{"chain_id":"YOUR_CHAIN_ID"}`
req, err := signObj.Sign(url, http.MethodPost, headers, body)
if err != nil {
fmt.Println("Failed to sign request:", err)
return
}
client := &http.Client{Timeout: 60 * time.Second}
resp, err := client.Do(req)
if err != nil {
fmt.Println("Failed to send request:", err)
return
}
defer resp.Body.Close()
responseBody, err := io.ReadAll(resp.Body)
if err != nil {
fmt.Println("Failed to read response:", err)
return
}
fmt.Println("Status:", resp.StatusCode)
fmt.Println("Response:", string(responseBody))
}
PHP
<?php
require_once __DIR__ . '/signer.php';
$key = 'your_access_key';
$secret = 'your_secret_key';
$url = 'https://openapi.meitu.com/yunxiu/openapi/query.json';
$headers = [
'Content-Type' => 'application/json',
'Host' => 'openapi.meitu.com',
];
$payload = ['chain_id' => 'YOUR_CHAIN_ID'];
$body = json_encode($payload, JSON_UNESCAPED_SLASHES | JSON_THROW_ON_ERROR);
$signer = new Signer($key, $secret);
$curl = $signer->sign($url, 'POST', $headers, $body);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_TIMEOUT, 60);
$response = curl_exec($curl);
if ($response === false) {
echo 'Error: ' . curl_error($curl);
} else {
echo 'Status: ' . curl_getinfo($curl, CURLINFO_HTTP_CODE) . PHP_EOL;
echo 'Response: ' . $response . PHP_EOL;
}
curl_close($curl);
Java
import com.meitu.openai.common.Signer;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) throws Exception {
Signer signer = new Signer("your_access_key", "your_secret_key");
String url = "https://openapi.meitu.com/yunxiu/openapi/query.json";
String method = "POST";
Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/json");
headers.put(Signer.HeaderHost, "openapi.meitu.com");
String body = "{\"chain_id\":\"YOUR_CHAIN_ID\"}";
Map<String, String> signedHeaders = signer.sign(url, method, headers, body);
HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
try {
connection.setRequestMethod(method);
connection.setConnectTimeout(10000);
connection.setReadTimeout(60000);
connection.setInstanceFollowRedirects(false);
for (Map.Entry<String, String> header : signedHeaders.entrySet()) {
connection.setRequestProperty(header.getKey(), header.getValue());
}
connection.setDoOutput(true);
try (OutputStream output = connection.getOutputStream()) {
output.write(body.getBytes(StandardCharsets.UTF_8));
}
int status = connection.getResponseCode();
InputStream stream = status >= 400
? connection.getErrorStream()
: connection.getInputStream();
System.out.println("Status: " + status);
if (stream != null) {
try (InputStream input = stream;
ByteArrayOutputStream output = new ByteArrayOutputStream()) {
byte[] buffer = new byte[4096];
int length;
while ((length = input.read(buffer)) != -1) {
output.write(buffer, 0, length);
}
System.out.println("Response: " + output.toString("UTF-8"));
}
}
} finally {
connection.disconnect();
}
}
}