图片上传
更新时间:2025.08.20通过本接口上传图片后可获得图片URL地址。图片URL可在微信支付商家名片会员相关的API使用,包括会员卡模板、用户会员卡等。
接口说明
支持商户:【品牌商户】
请求方式:【POST】/brand/card-member/media/image-upload
请求域名:【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点
【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点 ,指引点击查看
接口限频:100/秒(品牌ID维度)
请求参数
Header HTTP头参数
Authorization 必填 string
请参考签名认证生成认证信息
Accept 必填 string
请设置为application/json
Content-Type 必填 string
请设置为multipart/form-data
Wechatpay-Serial 必填 string
【微信支付公钥ID】 请传入brand_id对应的微信支付公钥ID,接口将会校验两者的关联关系,参考微信支付公钥产品简介及使用说明获取微信支付公钥ID和相关的介绍。以下两种场景将使用到微信支付公钥: 1、接收到接口的返回内容,需要使用微信支付公钥进行验签; 2、调用含有敏感信息参数(如姓名、身份证号码)的接口时,需要使用微信支付公钥加密敏感信息后再传输参数,加密指引请参考微信支付公钥加密敏感信息指引。
Form 表单
file 必填 file
【图片文件】 将媒体图片进行二进制转换,得到的媒体图片二进制内容,在请求body中上传此二进制内容。媒体图片只支持JPG、BMP、PNG格式,文件大小不能超过2M。
meta 必填 object
【媒体文件元信息】 媒体文件元信息,使用json表示,包含两个对象:filename、file_digest。
| 属性 | |
filename 必填 string(128) 【文件名称】 商户上传的媒体图片的名称,商户自定义,必须以JPG、BMP、PNG为后缀。 file_digest 必填 string(256) 【文件摘要】 图片文件的文件摘要,即对图片文件的二进制内容进行sha256计算得到的值。 |
请求示例
POST
应答参数
200 OK
media_url 必填 string
【媒体文件URL地址】 微信返回的媒体文件链接,有效期为永久。
应答示例
200 OK
错误码
以下是本接口返回的错误码列表。详细错误码规则,请参考微信支付接口规则-错误码和错误提示
状态码 | 错误码 | 描述 | 解决方案 |
|---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
400 | INVALID_REQUEST | 上传的图片大小大于2M | 上传的图片大小不能大于2M |
400 | INVALID_REQUEST | 图片尺寸不能超过5000*5000 | 请检查并传入正确尺寸的图片 |
400 | INVALID_REQUEST | 图片摘要错误 | 请检查图片摘要是否正确 |
400 | INVALID_REQUEST | 文件名错误 | 请检查图片文件名称是否正确 |
400 | INVALID_REQUEST | 图片格式无效 | 图片类型必须为JPG、BMP、PNG |
400 | PARAM_ERROR | 上传的图片内容为空 | 图片内容不能为空,请重新上传 |
400 | PARAM_ERROR | Http header中缺少必填参数Wechatpay-Serial | 缺少必要商品券图片,请补充上传后重试 |
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
429 | RATELIMIT_EXCEEDED | 接口请求频率达到限制 | 请降低请求接口频率 |
400 | PARAM_ERROR | 参数错误 | 请参考文档中对每个字段的要求以及组合要求,确认请求参数是否满足 |
401 | SIGN_ERROR | Http头Authorization值格式错误,请参考《微信支付商户REST API签名规则》 | Http头Authorization值格式错误,请参考《APIv3如何签名和验签》,检查传递的Authorization值是否符合规则 |
401 | SIGN_ERROR | Authorization不合法 | Http头未传递Authorization值或Authorization值格式错误,请参考《APIv3如何签名和验签》,检查传递的Authorization值是否符合规则 |
400 | INVALID_REQUEST | Http头缺少Accept或User-Agent | Http头缺少Accept或User-Agent,请根据API文档在请求头中补充该参数 |
400 | PARAM_ERROR | 请求中含有未在API文档中定义的参数 | 请求中含有未在API文档中定义的参数,请检查传递的参数列表是否有编写错误的字段名 |
401 | SIGN_ERROR | Http头Authorization认证类型不正确 | Http头Authorization认证类型不正确,请将认证类型修改为WECHATPAY-BRAND-SHA256-RSA2048 |
