发送客服消息
发送客服消息
当用户主动发消息给认证账号的时候(包括发送信息、关注事件、扫描二维码事件),微博将会把消息数据推送给开发者,开发者在一段时间内(目前为7天)可以调用客服消息接口3次,通过POST一个JSON数据包来发送消息给普通用户。此接口主要用于客服等有人工消息处理环节的功能,方便开发者为用户提供更加优质的服务。
URL
https://m.api.weibo.com/2/messages/reply.json
HTTP请求方式
POST
是否需要登录
是
关于登录授权,参见 如何登录授权
接口请求参数
必选 | 类型及范围 | 说明 | |
---|---|---|---|
source | false | string | 采用OAuth授权方式不需要此参数,其他授权方式为必填参数,数值为应用的AppKey。 |
access_token | false | string | 采用OAuth授权方式为必填参数,其他授权方式不需要此参数,OAuth授权后获得。 |
type | true | string | 需要以何种类型的消息进行响应,text:纯文本、articles:图文、position:位置。 |
data | true | string | 消息数据,具体内容严格遵循type类型对应格式,必须为json做URLEncode后的字符串格式,采用UTF-8编码。 |
receiver_id | false | int64 | 消息接收方的ID。 |
id | false | int64 | 需要响应的消息ID,该字段仅仅针对使用message/receive长连接服务接收到的消息;如果使用消息推送服务,则必须使用receiver_id参数而不是id参数 |
注意事项
- 1、接口调用支持两种方式,一是采用OAuth方式调用,二是使用appkey所有者帐号通过Base Auth的方式调用;
- 2、如果调用走OAuth方式,则access_token参数必填,id参数和receiver_id参数必填一个;
- 3、如果调用走Base Auth方式,则调用接口的登录帐号必须为当前应用的所有者,并且source参数必填,id参数必填;
- 4、使用message/receive长连接服务接收上行信息的开发者才能获取到消息id参数,使用消息推送服务的开发者无法获取消息id参数,因此需要通过receiver_id来指定消息接收方,而消息发送方的uid微博会从access_token中获取;
- 5、调用接口时,需要消息发送方有针对于消息接收方的消息配额;一般来说,如果消息接收方给消息发送方主动发送过消息,则在7天内,消息发送方具备针对于消息接收方的主动配额一条;
- 6、调用时如果指定了id参数,则需要
- 指定ID的新消息对应的原接收者已指定当前应用为其开发,且该接收者已开启“开发模式”,详见:粉丝服务开发模式指南;
- 指定ID的新消息对应的原接收者身份发出此消息;
- 指定ID的新消息对应的原发送者将收到此消息;
- 发送者未被屏蔽或拉黑时消息进私信箱;
此接口不得用于推广或引导用户使用任何与新浪微博有直接竞争关系的公司的服务,否则将永久关停指定应用或V用户使用资格。
PHP示例代码
PHP示例代码下载:下载
蓝V可回复的私信类型
当前支持蓝V回复的私信类型(type)中,data参数支持的参数:
1、纯文本类型私信消息:text
{ "text": "纯文本回复" }
data参数支持的参数 | |||
---|---|---|---|
参数名称 | 值的类型 | 是否必填 | 说明描述 |
text | string | true | 要回复的私信文本内容。文本大小必须小于300个汉字。 |
举例: 当data对应json为{"text": "纯文本响应"} 时,则进行URLEncode后对应data参数值为:"%7b%0a++++%22text%22%3a+%22%e7%ba%af%e6%96%87%e6%9c%ac%e5%93%8d%e5%ba%94%22%0a%7d"。
则对应的调用为:
curl -u "USERNAME:PASSWORD" -d "source=YOUR_APPKEY&id=1307180000*****&type=text&data=%7b%0a++++%22text%22%3a+%22%e7%ba%af%e6%96%87%e6%9c%ac%e5%93%8d%e5%ba%94%22%0a%7d" "https://m.api.weibo.com/2/messages/reply.json" -k
2、图文类型私信消息:articles
{ "articles": [ { "display_name": "两个故事", "summary": "今天讲两个故事,分享给你。谁是公司?谁又是中国人?", "image": "http://storage.mcp.weibo.cn/0JlIv.jpg", "url": "http://e.weibo.com/mediaprofile/article/detail?uid=1722052204&aid=983319" }, ... //最多支持8个图文,建议为1或3个 ] }
data参数支持的参数 | |||
---|---|---|---|
参数名称 | 值的类型 | 是否必填 | 说明描述 |
articles:display_name | string | true | 图文的显示名称标题 |
articles:summary | string | true | 图文的文字描述,大于等于2个图文时,仅显示第一个图文的描述 |
articles:image | string | true | 图文的缩略显示图片,需为JPG、PNG格式,单图及多图第一张推荐使用280*155,多图非第一张推荐使用64*64 |
articles:url | string | true | 图文的URL地址,点击后跳转 |
3、位置类型私信消息:position
{ "longitude": "116.308586", "latitude": "39.982525" }
data参数支持的参数 | |||
---|---|---|---|
参数名称 | 值的类型 | 是否必填 | 说明描述 |
longitude | string | true | 经度 |
latitude | string | true | 纬度 |
返回结果
// 成功返回 { "id": 1211260020031347, "type": "TYPE", "receiver_id": 1902538057, "sender_id": 2489518277, "created_at": "Mon Jul 16 18:09:20 +0800 2012", "text": "您的余额还剩2元。", "data": {} } // 失败返回 { "request": "/2/messages/reply.json", "error_code": 264XX, "error": "error message." }