微信公共平台Node库 API
上传Logo
Examples:
api.uploadLogo('filepath', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"ok",
"url":"http://mmbiz.qpic.cn/mmbiz/iaL1LJM1mF9aRKPZJkmG8xXhiaHqkKSVMMWeN3hLut7X7hicFNjakmxibMLGWpXrEXB33367o7zHN0CwngnQY7zb7g/0"
}
方法签名
方法 | make() | ||
名字 | uploadLogo | ||
参数 | filepath(String) | 文件路径 |
|
参数 | callback(Function) | 回调函数 |
方法签名
方法 | make() | ||
名字 | addLocations | ||
参数 | locations(Array) | 位置 |
|
参数 | callback(Function) | 回调函数 |
创建用于投放的卡卷二维码,支持投放单张卡卷和多张卡卷
Examples:
api.createCardQRCode('info', 'expire_seconds', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "ok",
"ticket": "gQHB8DoAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL0JIV3lhX3psZmlvSDZmWGVMMTZvAAIEsNnKVQMEIAMAAA==",//获取ticket后需调用换取二维码接口获取二维码图片,详情见字段说明。
"expire_seconds": 1800,
"url": "http://weixin.qq.com/q/BHWya_zlfioH6fXeL16o ",
"show_qrcode_url": " https://mp.weixin.qq.com/cgi-bin/showqrcode? ticket=gQH98DoAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL0czVzRlSWpsamlyM2plWTNKVktvAAIE6SfgVQMEgDPhAQ%3D%3D"
}
方法签名
方法 | make() | ||
名字 | createCardQRCode | ||
参数 | info(Object) | 卡卷信息,支持单张和多张模式 二维码投放单张卡卷
|
|
参数 | expire_seconds(number) | 二维码的有效时间,范围是60 ~ 1800秒。不填默认为永久有效。 |
|
参数 | callback(Function) | 回调函数 |
设置开卡字段接口
Examples:
api.activateMembercardUserForm(info, callback);
Callback:
- `err`, 调用失败时得到的异常
- `result`, 调用正常时得到的对象
Result:
{
"errcode":0,
"errmsg":"ok"
}
方法签名
方法 | make() | ||
名字 | activateMembercardUserForm | ||
参数 | info(Object) | 参数 |
|
参数 | callback(Function) | 回调函数 |
导入code接口
接口说明
开发者可调用该接口将自定义code导入微信卡券后台,由微信侧代理存储并下发code,本接口仅用于支持自定义code的卡券参与互通。
code:
[
"11111",
"22222",
"33333"
]
Examples:
api.importCustomizedCodes('cardId', code, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"ok"
}
方法签名
方法 | make() | ||
名字 | importCustomizedCodes | ||
参数 | cardId(String) | 卡券ID |
|
参数 | code(Array) | 待导入自定义code |
|
参数 | callback(Function) | 回调函数 |
核查code接口
接口说明
支持开发者调用该接口查询code导入微信后台的情况。
code:
[
"11111",
"22222",
"33333"
]
Examples:
api.checkCustomizedCodes('cardId', code, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"ok",
"exist_code":["11111","22222"],
"not_exist_code":["33333"]
}
方法签名
方法 | make() | ||
名字 | checkCustomizedCodes | ||
参数 | cardId(String) | 卡券ID |
|
参数 | code(Array) | 待核查自定义code |
|
参数 | callback(Function) | 回调函数 |
查询导入code数目接口
接口说明
支持开发者调用该接口查询code导入微信后台成功的数目。
Examples:
api.getDepositCodesCount('cardId', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"ok",
"count":123
}
方法签名
方法 | make() | ||
名字 | getDepositCodesCount | ||
参数 | cardId(String) | 卡券ID |
|
参数 | callback(Function) | 回调函数 |
拉取卡券概况数据
方法签名
方法 | make() | ||
参数 | beginDate(String) | 开始时间 |
|
参数 | endDate(String) | 结束时间(结束时间不能为当天,不然会报错,可设为昨天) |
|
参数 | source(int) | 卡券来源,0为公众平台创建的卡券数据、1是API创建的卡券数据 |
获取免费券数据
方法签名
方法 | make() | ||
参数 | cardId(String) | cardId 卡券ID |
|
参数 | beginDate(String) | 开始时间 |
|
参数 | endDate(String) | 结束时间(结束时间不能为当天,不然会报错,可设为昨天) |
|
参数 | source(int) | 卡券来源,0为公众平台创建的卡券数据、1是API创建的卡券数据 |
设置商户的核销员
接口说明
开发者需调用该接口设置商户的核销员,并指定核销员的门店。
Examples:
api.addConsumer('username', 'locationId', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"ok"
}
方法签名
方法 | make() | ||
名字 | addConsumer | ||
参数 | username(String) | 店员的微信号,开发者须确认该微信号在设置之前已 经关注”卡券商户助手公众号“ |
|
参数 | locationId(String) | 当前核销员关联的门店值 |
|
参数 | callback(Function) | 回调函数 |
卡券开放类目查询接口
接口说明
通过调用该接口查询卡券开放的类目ID,类目会随业务发展变更,请每次用接口去查询获取实时卡券类目。
注意:
api.getApplyProtocol(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"category": [
{
"primary_category_id": 1,
"category_name": "美食",
"secondary_category": [
{
"secondary_category_id": 101,
"category_name": "粤菜",
"need_qualification_stuffs": [
"food_service_license_id",
"food_service_license_bizmedia_id"
],
"can_choose_prepaid_card": 1,
"can_choose_payment_card": 1
},
}
],
"errcode":0,
"errmsg":"ok"
}
方法签名
方法 | make() | ||
名字 | getApplyProtocol | ||
参数 | options(Object) | 子商户相关资料 |
|
参数 | callback(Function) | 回调函数 |
创建子商户接口
接口说明
支持母商户调用该接口传入子商户的相关资料,并获取子商户ID,用于子商户的卡券功能管理。
子商户的资质包括:商户名称、商户logo(图片)、卡券类目、授权函(扫描件或彩照)、授权函有效期截止时间。
Examples:
api.submitSubmerchant(options, callback);
options:
{
"brand_name": "aaaaaa",
"app_id":"xxxxxxxxxxx",
"logo_url": "http://mmbiz.xxxx",
"protocol": "xxxxxxxxxx",
"agreement_media_id":"xxxxxxxxxx",
"operator_media_id":"xxxxxxxx",
"end_time": 1438990559,
"primary_category_id": 1,
"secondary_category_id": 101
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | make() | ||
名字 | submitSubmerchant | ||
参数 | options(Object) | 子商户相关资料 |
|
参数 | callback(Function) | 回调函数 |
更新子商户接口
接口说明
支持调用该接口更新子商户信息。
Examples:
api.updateSubmerchant(options, callback);
options:
{
"merchant_id": 12,
"brand_name": "aaaaaa",
"app_id":"xxxxxxxxxxx",
"logo_url": "http://mmbiz.xxxx",
"protocol": "xxxxxxxxxx",
"agreement_media_id":"xxxxxxxxxx",
"operator_media_id":"xxxxxxxx",
"end_time": 1438990559,
"primary_category_id": 1,
"secondary_category_id": 101
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | make() | ||
名字 | updateSubmerchant | ||
参数 | options(Object) | 子商户相关资料 |
|
参数 | callback(Function) | 回调函数 |
拉取单个子商户信息接口
接口说明
通过指定的子商户merchant_id,拉取该子商户的基础信息。
注意,用母商户去调用接口,但接口内传入的是子商户的merchant_id。
Examples:
api.getSubmerchant('merchantId', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | make() | ||
名字 | getSubmerchant | ||
参数 | merchantId(String) | 子商户相关资料 |
|
参数 | callback(Function) | 回调函数 |
批量拉取子商户信息接口
接口说明
母商户可以通过该接口批量拉取子商户的相关信息,一次调用最多拉取100个子商户的信息,可以通过多次拉去满足不同的查询需求
Examples:
api.batchgetSubmerchant(data, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | make() | ||
名字 | batchgetSubmerchant | ||
参数 | data(Object) | 查询条件 {"begin_id": 0,"limit": 50,"status": "CHECKING"} |
|
参数 | callback(Function) | 回调函数 |
拉取拉取会员信息接口
接口说明
支持开发者根据CardID和Code查询会员信息。
Examples:
api.getMemberCardUserInfo({"card_id": abd5e78412e5d12ff,"code": 5566778811002233}, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | make() | ||
名字 | getMemberCardUserInfo | ||
参数 | info(Object) | 查询条件 {"card_id": abd5e78412e5d12ff,"code": 5566778811002233} |
|
参数 | callback(Function) | 回调函数 |
更新会员信息
接口说明
当会员持卡消费后,支持开发者调用该接口更新会员信息。会员卡交易后的每次信息变更需通过该接口通知微信,便于后续消息通知及其他扩展功能。
Examples:
api.updateMemberCardUserInfo(data, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | make() | ||
名字 | getMemberCardUserInfo | ||
参数 | data(Object) | 查询条件 {"card_id": abd5e78412e5d12ff,"code": 5566778811002233, "record_bonus" : 3000} |
|
参数 | callback(Function) | 回调函数 |
根据appid和appsecret创建API的构造函数
如需跨进程跨机器进行操作Wechat API(依赖access token),access token需要进行全局维护
使用策略如下:
Tips:
Examples:
var API = require('wechat-api');
var api = new API('appid', 'secret');
以上即可满足单进程使用。
当多进程时,token需要全局维护,以下为保存token的接口。
var api = new API('appid', 'secret', function (callback) {
// 传入一个获取全局token的方法
fs.readFile('access_token.txt', 'utf8', function (err, txt) {
if (err) {return callback(err);}
callback(null, JSON.parse(txt));
});
}, function (token, callback) {
// 请将token存储到全局,跨进程、跨机器级别的全局,比如写到数据库、redis等
// 这样才能在cluster模式及多机情况下使用,以下为写入到文件的示例
fs.writeFile('access_token.txt', JSON.stringify(token), callback);
});
方法签名
函数 | API() | ||
参数 | appid(String) | 在公众平台上申请得到的appid |
|
参数 | appsecret(String) | 在公众平台上申请得到的app secret |
|
参数 | getToken(Function) | 可选的。获取全局token对象的方法,多进程模式部署时需在意 |
|
参数 | saveToken(Function) | 可选的。保存全局token对象的方法,多进程模式部署时需在意 |
用于设置接入点
Examples:
api.setEndpoint('api.weixin.qq.com');
方法签名
方法 | API.prototype.setEndpoint() | ||
参数 | domain(String) | 域名,默认为api.weixin.qq.com |
用于设置urllib的默认options
Examples:
api.setOpts({timeout: 15000});
方法签名
方法 | API.prototype.setOpts() | ||
参数 | opts(Object) | 默认选项 |
设置urllib的hook
Examples:
api.setHook(function (options) {
// options
});
方法签名
方法 | API.prototype.request() | ||
参数 | beforeRequest(Function) | 需要封装的方法 |
获取最新的token
Examples:
api.getLatestToken(callback);
Callback:
err
, 获取access token出现异常时的异常对象token
, 获取的token方法签名
方法 | API.prototype.getLatestToken() | ||
参数 | method(Function) | 需要封装的方法 |
|
参数 | args(Array) | 方法需要的参数 |
用于支持对象合并。将对象合并到API.prototype上,使得能够支持扩展
Examples:
// 媒体管理(上传、下载)
API.mixin(require('./lib/api_media'));
方法签名
方法 | API.mixin() | ||
参数 | obj(Object) | 要合并的对象 |
用于扩展API.
作用是:当微信的官方 API 添加新功能,而wechat-api没有来得及升级时,用这个方法快速添加此功能。
当 api 升级后应该用 API 内提供的方法。
Examples:
// 为 API 添加一个 createQr 方法。
API.ext("createQr", "https://api.weixin.qq.com/card/qrcode/create");
Usage:
// 调用这个 createQr 方法。
api.createQr({'card_id': ’dkjeuDfsfeu3242w3dnjlq23i'}, callback);
方法签名
方法 | API.patch() | ||
参数 | functionName(String) | 用户调用的方法名 |
|
参数 | apiUrl(String) | 此 API 的 url 地址 |
|
参数 | override(Bool) | 如果填写 true 则覆盖原来 api 已有的方法, false 或不传,则抛错。 |
获取客服聊天记录
详细请看:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1464937269_mUtmK&token=&lang=zh_CN
Opts:
{
"starttime" : 123456789, 起始时间,unix时间戳
"endtime" : 987654321, 结束时间,unix时间戳,每次查询时段不能超过24小时
"msgid" : 1, 消息id顺序从小到大,从1开始
"number" : 10000 每次获取条数,最多10000条
}
Examples:
api.getRecords(opts, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"recordlist": [
{
"worker": " test1",
"openid": "oDF3iY9WMaswOPWjCIp_f3Bnpljk",
"opercode": 2002,
"time": 1400563710,
"text": " 您好,客服test1为您服务。"
},
{
"worker": " test1",
"openid": "oDF3iY9WMaswOPWjCIp_f3Bnpljk",
"opercode": 2003,
"time": 1400563731,
"text": " 你好,有什么事情? "
},
]
}
方法签名
方法 | make() | ||
参数 | opts(Object) | 查询条件 |
|
参数 | callback(Function) | 回调函数 |
获取客服基本信息
详细请看:http://dkf.qq.com/document-3_1.html
Examples:
api.getCustomServiceList(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"kf_list": [
{
"kf_account": "test1@test",
"kf_nick": "ntest1",
"kf_id": "1001"
},
{
"kf_account": "test2@test",
"kf_nick": "ntest2",
"kf_id": "1002"
},
{
"kf_account": "test3@test",
"kf_nick": "ntest3",
"kf_id": "1003"
}
]
}
方法签名
方法 | make() | ||
参数 | callback(Function) | 回调函数 |
获取在线客服接待信息
详细请看:http://dkf.qq.com/document-3_2.html
Examples:
api.getOnlineCustomServiceList(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"kf_online_list": [
{
"kf_account": "test1@test",
"status": 1,
"kf_id": "1001",
"auto_accept": 0,
"accepted_case": 1
},
{
"kf_account": "test2@test",
"status": 1,
"kf_id": "1002",
"auto_accept": 0,
"accepted_case": 2
}
]
}
方法签名
方法 | make() | ||
参数 | callback(Function) | 回调函数 |
添加客服账号
详细请看:http://mp.weixin.qq.com/wiki/9/6fff6f191ef92c126b043ada035cc935.html
Examples:
api.addKfAccount('test@test', 'nickname', 'password', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode" : 0,
"errmsg" : "ok",
}
方法签名
方法 | make() | ||
参数 | account(String) | 账号名字,格式为:前缀@公共号名字 |
|
参数 | nick(String) | 昵称 |
|
参数 | password(String) | 密码,可以直接传递明文,wechat模块自动进行md5加密 |
|
参数 | callback(Function) | 回调函数 |
设置客服账号
详细请看:http://mp.weixin.qq.com/wiki/9/6fff6f191ef92c126b043ada035cc935.html
Examples:
api.updateKfAccount('test@test', 'nickname', 'password', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode" : 0,
"errmsg" : "ok",
}
方法签名
方法 | make() | ||
参数 | account(String) | 账号名字,格式为:前缀@公共号名字 |
|
参数 | nick(String) | 昵称 |
|
参数 | password(String) | 密码,可以直接传递明文,wechat模块自动进行md5加密 |
|
参数 | callback(Function) | 回调函数 |
删除客服账号
详细请看:http://mp.weixin.qq.com/wiki/9/6fff6f191ef92c126b043ada035cc935.html
Examples:
api.deleteKfAccount('test@test', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode" : 0,
"errmsg" : "ok",
}
方法签名
方法 | make() | ||
参数 | account(String) | 账号名字,格式为:前缀@公共号名字 |
|
参数 | callback(Function) | 回调函数 |
设置客服头像
详细请看:http://mp.weixin.qq.com/wiki/9/6fff6f191ef92c126b043ada035cc935.html
Examples:
api.setKfAccountAvatar('test@test', '/path/to/avatar.png', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode" : 0,
"errmsg" : "ok",
}
方法签名
方法 | make() | ||
参数 | account(String) | 账号名字,格式为:前缀@公共号名字 |
|
参数 | filepath(String) | 头像路径 |
|
参数 | callback(Function) | 回调函数 |
创建会话
详细请看:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044820&token=&lang=zh_CN
Examples:
api.createKfSession('test@test', 'openidxxx', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode" : 0,
"errmsg" : "ok",
}
方法签名
方法 | make() | ||
参数 | account(String) | 完整客服帐号,格式为:帐号前缀@公众号微信号 |
|
参数 | openid(String) | 粉丝的openid |
|
参数 | callback(Function) | 回调函数 |
关闭会话
详细请看:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044820&token=&lang=zh_CN
Examples:
api.closeKfSession('test@test', 'openidxxx', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode" : 0,
"errmsg" : "ok",
}
方法签名
方法 | make() | ||
参数 | account(String) | 完整客服帐号,格式为:帐号前缀@公众号微信号 |
|
参数 | openid(String) | 粉丝的openid |
|
参数 | callback(Function) | 回调函数 |
获取客户会话状态
详细请看:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044820&token=&lang=zh_CN
Examples:
api.getKfSession('openidxxx', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"createtime" : 123456789,
"kf_account" : "test1@test"
}
方法签名
方法 | make() | ||
参数 | openid(String) | 粉丝的openid |
|
参数 | callback(Function) | 回调函数 |
获取客服会话列表
详细请看:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044820&token=&lang=zh_CN
Examples:
api.getKfSessionList('openidxxx', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"sessionlist" : [
{
"createtime" : 123456789,
"openid" : "OPENID"
},
{
"createtime" : 123456789,
"openid" : "OPENID"
}
]
}
方法签名
方法 | make() | ||
参数 | account(String) | 完整客服帐号,格式为:帐号前缀@公众号微信号 |
|
参数 | callback(Function) | 回调函数 |
获取未接入会话列表
详细请看:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1458044820&token=&lang=zh_CN
Examples:
api.getKfSessionWaitCase(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"count" : 150, //未接入会话数量
"waitcaselist" : [ //未接入会话列表,最多返回100条数据,按照来访顺序
{
"latest_time" : 123456789,
"openid" : "OPENID"
},
{
"latest_time" : 123456789,
"openid" : "OPENID"
}
]
}
方法签名
方法 | make() | ||
参数 | callback(Function) | 回调函数 |
标记客户的投诉处理状态
Examples:
api.updateFeedback(openid, feedbackId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.updateFeedback() | ||
参数 | openid(String) | 用户ID |
|
参数 | feedbackId(String) | 投诉ID |
|
参数 | callback(Function) | 回调函数 |
获取分组列表
详情请见:http://mp.weixin.qq.com/wiki/0/56d992c605a97245eb7e617854b169fc.html
Examples:
api.getGroups(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"groups": [
{"id": 0, "name": "未分组", "count": 72596},
{"id": 1, "name": "黑名单", "count": 36}
]
}
方法签名
方法 | make() | ||
参数 | callback(Function) | 回调函数 |
查询用户在哪个分组
详情请见:http://mp.weixin.qq.com/wiki/0/56d992c605a97245eb7e617854b169fc.html
Examples:
api.getWhichGroup(openid, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"groupid": 102
}
方法签名
方法 | make() | ||
参数 | openid(String) | Open ID |
|
参数 | callback(Function) | 回调函数 |
创建分组
详情请见:http://mp.weixin.qq.com/wiki/0/56d992c605a97245eb7e617854b169fc.html
Examples:
api.createGroup('groupname', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"group": {"id": 107, "name": "test"}}
方法签名
方法 | make() | ||
参数 | name(String) | 分组名字 |
|
参数 | callback(Function) | 回调函数 |
更新分组名字
详情请见:http://mp.weixin.qq.com/wiki/0/56d992c605a97245eb7e617854b169fc.html
Examples:
api.updateGroup(107, 'new groupname', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode": 0, "errmsg": "ok"}
方法签名
方法 | make() | ||
参数 | id(Number) | 分组ID |
|
参数 | name(String) | 新的分组名字 |
|
参数 | callback(Function) | 回调函数 |
移动用户进分组
详情请见:http://mp.weixin.qq.com/wiki/0/56d992c605a97245eb7e617854b169fc.html
Examples:
api.moveUserToGroup(openid, groupId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode": 0, "errmsg": "ok"}
方法签名
方法 | make() | ||
参数 | openid(String) | 用户的openid |
|
参数 | groupId(Number) | 分组ID |
|
参数 | callback(Function) | 回调函数 |
删除分组
详情请见:http://mp.weixin.qq.com/wiki/0/56d992c605a97245eb7e617854b169fc.html
Examples:
api.removeGroup(groupId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode": 0, "errmsg": "ok"}
方法签名
方法 | make() | ||
参数 | groupId(Number) | 分组ID |
|
参数 | callback(Function) | 回调函数 |
获取微信服务器IP地址
详情请见:http://mp.weixin.qq.com/wiki/0/2ad4b6bfd29f30f71d39616c2a0fcedc.html
Examples:
api.getIp(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"ip_list":["127.0.0.1","127.0.0.1"]
}
方法签名
方法 | make() | ||
参数 | callback(Function) | 回调函数 |
多台服务器负载均衡时,ticketToken需要外部存储共享。
需要调用此registerTicketHandle来设置获取和保存的自定义方法。
Examples:
api.registerTicketHandle(getTicketToken, saveTicketToken);
// getTicketToken
function getTicketToken(type, callback) {
settingModel.getItem(type, {key: 'weixin_ticketToken'}, function (err, setting) {
if (err) return callback(err);
callback(null, setting.value);
});
}
// saveTicketToken
function saveTicketToken(type, _ticketToken, callback) {
settingModel.setItem(type, {key:'weixin_ticketToken', value: ticketToken}, function (err) {
if (err) return callback(err);
callback(null);
});
}
方法签名
方法 | exports.registerTicketHandle() | ||
参数 | getTicketToken(Function) | 获取外部ticketToken的函数 |
|
参数 | saveTicketToken(Function) | 存储外部ticketToken的函数 |
获取js sdk所需的有效js ticket
Callback:
err
, 异常对象result
, 正常获取时的数据Result:
errcode
, 0为成功errmsg
, 成功为'ok',错误则为详细错误信息ticket
, js sdk有效票据,如:bxLdikRXVbTPdHSM05e5u5sUoXNKd8-41ZO3MhKoyN5OfkWITDGgnr2fwJ0m9E8NYzWKVZvdVtaUgWvsdshFKAexpires_in
, 有效期7200秒,开发者必须在自己的服务全局缓存jsapi_ticket方法签名
方法 | exports.getTicket() | ||
参数 | callback(Function) | 回调函数 |
获取微信JS SDK Config的所需参数
Examples:
var param = {
debug: false,
jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage'],
url: 'http://www.xxx.com'
};
api.getJsConfig(param, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的js sdk config所需参数方法签名
方法 | exports.getJsConfig() | ||
参数 | param(Object) | 参数 |
|
参数 | callback(Function) | 回调函数 |
获取微信JS SDK Config的所需参数
Examples:
var param = {
card_id: 'p-hXXXXXXX',
code: '1234',
openid: '111111',
balance: 100
};
api.getCardExt(param, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的card_ext对象,包含所需参数方法签名
方法 | exports.getCardExt() | ||
名字 | getCardExt | ||
参数 | param(Object) | 参数 |
|
参数 | callback(Function) | 回调函数 |
获取最新的js api ticket
Examples:
api.getLatestTicket(callback);
Callback:
err
, 获取js api ticket出现异常时的异常对象ticket
, 获取的ticket方法签名
方法 | exports.getLatestTicket() | ||
参数 | callback(Function) | 回调函数 |
上传多媒体文件,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb)
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.uploadNews(news, callback);
News:
{
"articles": [
{
"thumb_media_id":"qI6_Ze_6PtV7svjolgs-rN6stStuHIjs9_DidOHaj0Q-mwvBelOXCFZiq2OsIU-p",
"author":"xxx",
"title":"Happy Day",
"content_source_url":"www.qq.com",
"content":"content",
"digest":"digest",
"show_cover_pic":"1"
},
{
"thumb_media_id":"qI6_Ze_6PtV7svjolgs-rN6stStuHIjs9_DidOHaj0Q-mwvBelOXCFZiq2OsIU-p",
"author":"xxx",
"title":"Happy Day",
"content_source_url":"www.qq.com",
"content":"content",
"digest":"digest",
"show_cover_pic":"0"
}
]
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"type":"news",
"media_id":"CsEf3ldqkAYJAU6EJeIkStVDSvffUJ54vqbThMgplD-VJXXof6ctX5fI6-aYyUiQ",
"created_at":1391857799
}
方法签名
方法 | exports.uploadNews() | ||
参数 | news(Object) | 图文消息对象 |
|
参数 | callback(Function) | 回调函数 |
将通过上传下载多媒体文件得到的视频media_id变成视频素材
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.uploadMPVideo(opts, callback);
Opts:
{
"media_id": "rF4UdIMfYK3efUfyoddYRMU50zMiRmmt_l0kszupYh_SzrcW5Gaheq05p_lHuOTQ",
"title": "TITLE",
"description": "Description"
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"type":"video",
"media_id":"IhdaAQXuvJtGzwwc0abfXnzeezfO0NgPK6AQYShD8RQYMTtfzbLdBIQkQziv2XJc",
"created_at":1391857799
}
方法签名
方法 | exports.uploadMPVideo() | ||
参数 | opts(Object) | 待上传为素材的视频 |
|
参数 | callback(Function) | 回调函数 |
群发消息,分别有图文(news)、文本(text)、语音(voice)、图片(image)和视频(video)
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.massSend(opts, receivers, callback);
opts:
{
"image":{
"media_id":"123dsdajkasd231jhksad"
},
"msgtype":"image"
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id":34182
}
方法签名
方法 | exports.massSend() | ||
参数 | opts(Object) | 待发送的数据 |
|
参数 | receivers(String,Array) | 接收人。一个组,或者openid列表 |
|
参数 | callback(Function) | 回调函数 |
群发图文(news)消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.massSendNews(mediaId, receivers, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id":34182
}
方法签名
方法 | exports.massSendNews() | ||
参数 | mediaId(String) | 图文消息的media id |
|
参数 | receivers(String,Array,Boolean) | 接收人。一个组,或者openid列表, 或者true(群发给所有人) |
|
参数 | callback(Function) | 回调函数 |
群发文字(text)消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.massSendText(content, receivers, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id":34182
}
方法签名
方法 | exports.massSendText() | ||
参数 | content(String) | 文字消息内容 |
|
参数 | receivers(String,Array) | 接收人。一个组,或者openid列表 |
|
参数 | callback(Function) | 回调函数 |
群发声音(voice)消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.massSendVoice(media_id, receivers, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id":34182
}
方法签名
方法 | exports.massSendVoice() | ||
参数 | mediaId(String) | 声音media id |
|
参数 | receivers(String,Array) | 接收人。一个组,或者openid列表 |
|
参数 | callback(Function) | 回调函数 |
群发图片(image)消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.massSendImage(media_id, receivers, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id":34182
}
方法签名
方法 | exports.massSendImage() | ||
参数 | mediaId(String) | 图片media id |
|
参数 | receivers(String,Array) | 接收人。一个组,或者openid列表 |
|
参数 | callback(Function) | 回调函数 |
群发视频(video)消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.massSendVideo(mediaId, receivers, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id":34182
}
方法签名
方法 | exports.massSendVideo() | ||
参数 | mediaId(String) | 视频media id |
|
参数 | receivers(String,Array) | 接收人。一个组,或者openid列表 |
|
参数 | callback(Function) | 回调函数 |
群发视频(video)消息,直接通过上传文件得到的media id进行群发(自动生成素材)
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.massSendMPVideo(data, receivers, callback);
Data:
{
"media_id": "rF4UdIMfYK3efUfyoddYRMU50zMiRmmt_l0kszupYh_SzrcW5Gaheq05p_lHuOTQ",
"title": "TITLE",
"description": "Description"
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id":34182
}
方法签名
方法 | exports.massSendMPVideo() | ||
参数 | data(Object) | 视频数据 |
|
参数 | receivers(String,Array) | 接收人。一个组,或者openid列表 |
|
参数 | callback(Function) | 回调函数 |
删除群发消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.deleteMass(message_id, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"ok"
}
方法签名
方法 | exports.deleteMass() | ||
参数 | messageId(String) | 待删除群发的消息id |
|
参数 | callback(Function) | 回调函数 |
预览接口,预览图文消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.previewNews(openid, mediaId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id": 34182
}
方法签名
方法 | exports.previewNews() | ||
参数 | openid(String) | 用户openid |
|
参数 | mediaId(String) | 图文消息mediaId |
|
参数 | callback(Function) | 回调函数 |
预览接口,预览文本消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.previewText(openid, content, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id": 34182
}
方法签名
方法 | exports.previewText() | ||
参数 | openid(String) | 用户openid |
|
参数 | content(String) | 文本消息 |
|
参数 | callback(Function) | 回调函数 |
预览接口,预览语音消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.previewVoice(openid, mediaId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id": 34182
}
方法签名
方法 | exports.previewVoice() | ||
参数 | openid(String) | 用户openid |
|
参数 | mediaId(String) | 语音mediaId |
|
参数 | callback(Function) | 回调函数 |
预览接口,预览图片消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.previewImage(openid, mediaId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id": 34182
}
方法签名
方法 | exports.previewImage() | ||
参数 | openid(String) | 用户openid |
|
参数 | mediaId(String) | 图片mediaId |
|
参数 | callback(Function) | 回调函数 |
预览接口,预览视频消息
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.previewVideo(openid, mediaId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"send job submission success",
"msg_id": 34182
}
方法签名
方法 | exports.previewVideo() | ||
参数 | openid(String) | 用户openid |
|
参数 | mediaId(String) | 视频mediaId |
|
参数 | callback(Function) | 回调函数 |
查询群发消息状态
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.getMassMessageStatus(messageId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"msg_id":201053012,
"msg_status":"SEND_SUCCESS"
}
方法签名
方法 | exports.getMassMessageStatus() | ||
参数 | messageId(String) | 消息ID |
|
参数 | callback(Function) | 回调函数 |
上传永久素材,分别有图片(image)、语音(voice)、和缩略图(thumb)
详情请见:http://mp.weixin.qq.com/wiki/14/7e6c03263063f4813141c3e17dd4350a.html
Examples:
api.uploadMaterial('filepath', type, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"type":"TYPE","media_id":"MEDIA_ID","created_at":123456789}
Shortcut:
exports.uploadImageMaterial(filepath, callback);
exports.uploadVoiceMaterial(filepath, callback);
exports.uploadThumbMaterial(filepath, callback);
方法签名
方法 | make() | ||
参数 | filepath(String) | 文件路径 |
|
参数 | type(String) | 媒体类型,可用值有image、voice、video、thumb |
|
参数 | callback(Function) | 回调函数 |
上传永久素材,视频(video)
详情请见:http://mp.weixin.qq.com/wiki/14/7e6c03263063f4813141c3e17dd4350a.html
Examples:
var description = {
"title":VIDEO_TITLE,
"introduction":INTRODUCTION
};
api.uploadVideoMaterial('filepath', description, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"media_id":"MEDIA_ID"}
方法签名
方法 | make() | ||
参数 | filepath(String) | 视频文件路径 |
|
参数 | description(Object) | 描述 |
|
参数 | callback(Function) | 回调函数 |
新增永久图文素材
News:
{
"articles": [
{
"title": TITLE,
"thumb_media_id": THUMB_MEDIA_ID,
"author": AUTHOR,
"digest": DIGEST,
"show_cover_pic": SHOW_COVER_PIC(0 / 1),
"content": CONTENT,
"content_source_url": CONTENT_SOURCE_URL
},
//若新增的是多图文素材,则此处应还有几段articles结构
]
}
Examples:
api.uploadNewsMaterial(news, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode":0,"errmsg":"ok"}
方法签名
方法 | exports.uploadNewsMaterial() | ||
参数 | news(Object) | 图文对象 |
|
参数 | callback(Function) | 回调函数 |
更新永久图文素材
详情请见:http://mp.weixin.qq.com/wiki/14/7e6c03263063f4813141c3e17dd4350a.html
News:
{
"media_id":MEDIA_ID,
"index":INDEX,
"articles": {
"title": TITLE,
"thumb_media_id": THUMB_MEDIA_ID,
"author": AUTHOR,
"digest": DIGEST,
"show_cover_pic": SHOW_COVER_PIC(0 / 1),
"content": CONTENT,
"content_source_url": CONTENT_SOURCE_URL
}
}
Examples:
api.updateNewsMaterial(news, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode":0,"errmsg":"ok"}
方法签名
方法 | exports.updateNewsMaterial() | ||
参数 | news(Object) | 图文对象 |
|
参数 | callback(Function) | 回调函数 |
根据媒体ID获取永久素材
详情请见:http://mp.weixin.qq.com/wiki/4/b3546879f07623cb30df9ca0e420a5d0.html
Examples:
api.getMaterial('media_id', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的文件Buffer对象res
, HTTP响应对象方法签名
方法 | exports.getMaterial() | ||
参数 | mediaId(String) | 媒体文件的ID |
|
参数 | callback(Function) | 回调函数 |
删除永久素材
详情请见:http://mp.weixin.qq.com/wiki/5/e66f61c303db51a6c0f90f46b15af5f5.html
Examples:
api.removeMaterial('media_id', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的文件Buffer对象res
, HTTP响应对象方法签名
方法 | exports.removeMaterial() | ||
参数 | mediaId(String) | 媒体文件的ID |
|
参数 | callback(Function) | 回调函数 |
获取素材总数
详情请见:http://mp.weixin.qq.com/wiki/16/8cc64f8c189674b421bee3ed403993b8.html
Examples:
api.getMaterialCount(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的文件Buffer对象res
, HTTP响应对象Result:
{
"voice_count":COUNT,
"video_count":COUNT,
"image_count":COUNT,
"news_count":COUNT
}
方法签名
方法 | exports.getMaterialCount() | ||
参数 | callback(Function) | 回调函数 |
获取永久素材列表
详情请见:http://mp.weixin.qq.com/wiki/12/2108cd7aafff7f388f41f37efa710204.html
Examples:
api.getMaterials(type, offset, count, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的文件Buffer对象res
, HTTP响应对象Result:
{
"total_count": TOTAL_COUNT,
"item_count": ITEM_COUNT,
"item": [{
"media_id": MEDIA_ID,
"name": NAME,
"update_time": UPDATE_TIME
},
//可能会有多个素材
]
}
方法签名
方法 | exports.getMaterials() | ||
参数 | type(String) | 素材的类型,图片(image)、视频(video)、语音 (voice)、图文(news) |
|
参数 | offset(Number) | 从全部素材的该偏移位置开始返回,0表示从第一个素材 返回 |
|
参数 | count(Number) | 返回素材的数量,取值在1到20之间 |
|
参数 | callback(Function) | 回调函数 |
新增临时素材,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb)
详情请见:http://mp.weixin.qq.com/wiki/5/963fc70b80dc75483a271298a76a8d59.html
Examples:
api.uploadMedia('filepath', type, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"type":"TYPE","media_id":"MEDIA_ID","created_at":123456789}
Shortcut:
exports.uploadImage(filepath, callback);
exports.uploadVoice(filepath, callback);
exports.uploadVideo(filepath, callback);
exports.uploadThumb(filepath, callback);
方法签名
方法 | exports.uploadMedia() | ||
参数 | filepath(String) | 文件路径 |
|
参数 | type(String) | 媒体类型,可用值有image、voice、video、thumb |
|
参数 | callback(Function) | 回调函数 |
流式新增临时素材,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb)
拓展自uploadMedia,实现上游上传的流数据重定向到微信服务器,省去自己服务器的文件缓存。
Examples:
api.uploadMediaStream(req, type, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"type":"TYPE","media_id":"MEDIA_ID","created_at":123456789}
Shortcut:
exports.uploadImageStream(req, callback);
exports.uploadVoiceStream(req, callback);
exports.uploadVideoStream(req, callback);
exports.uploadThumbStream(req, callback);
方法签名
方法 | exports.uploadMediaStream() | ||
参数 | req(String) | 上游Stream对象,必须包含headers属性;例如expressjs中request对象。 |
|
参数 | type(String) | 媒体类型,可用值有image、voice、video、thumb |
|
参数 | callback(Function) | 回调函数 |
获取临时素材
详情请见:http://mp.weixin.qq.com/wiki/11/07b6b76a6b6e8848e855a435d5e34a5f.html
Examples:
api.getMedia('media_id', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的文件Buffer对象res
, HTTP响应对象方法签名
方法 | exports.getMedia() | ||
参数 | mediaId(String) | 媒体文件的ID |
|
参数 | callback(Function) | 回调函数 |
上传图文消息内的图片获取URL
详情请见:http://mp.weixin.qq.com/wiki/15/5380a4e6f02f2ffdc7981a8ed7a40753.html
Examples:
api.uploadImage('filepath');
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"url": "http://mmbiz.qpic.cn/mmbiz/gLO17UPS6FS2xsypf378iaNhWacZ1G1UplZYWEYfwvuU6Ont96b1roYsCNFwaRrSaKTPCUdBK9DgEHicsKwWCBRQ/0"}
方法签名
方法 | exports.uploadImage() | ||
参数 | filepath(String) | 图片文件路径 |
|
参数 | callback(Function) | 回调函数 |
上传来自上游管道的图文消息内的图片,并获取URL。
拓展于uploadImage,用于客户端直接上传文件管道重定向到微信服务器,不经过自身缓存服务器文件。
Examples:
api.uploadImageStream(req, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"url": "http://mmbiz.qpic.cn/mmbiz/gLO17UPS6FS2xsypf378iaNhWacZ1G1UplZYWEYfwvuU6Ont96b1roYsCNFwaRrSaKTPCUdBK9DgEHicsKwWCBRQ/0"}
方法签名
方法 | exports.uploadImageStream() | ||
参数 | req(Object) | 上游Stream对象,必须包含headers属性;例如expressjs中request对象。 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送文字消息
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendText('openid', 'Hello world', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendText() | ||
参数 | openid(String) | 用户的openid |
|
参数 | text(String) | 发送的消息内容 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送文字消息,带客服账号
方法签名
方法 | exports.sendTextFromCs() | ||
参数 | openid(String) | 用户的openid |
|
参数 | cs_account(String) | 客服账号 |
|
参数 | text(String) | 发送的消息内容 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送图片消息
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendImage('openid', 'media_id', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendImage() | ||
参数 | openid(String) | 用户的openid |
|
参数 | mediaId(String) | 媒体文件的ID,参见uploadMedia方法 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送图片消息,带客服账号
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendImage('openid', 'media_id', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendImageFromCs() | ||
参数 | openid(String) | 用户的openid |
|
参数 | cs_account(String) | 客服账号 |
|
参数 | mediaId(String) | 媒体文件的ID,参见uploadMedia方法 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送语音消息
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendVoice('openid', 'media_id', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendVoice() | ||
参数 | openid(String) | 用户的openid |
|
参数 | mediaId(String) | 媒体文件的ID |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送语音消息,带客服账号
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendVoice('openid', 'media_id', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendVoiceFromCs() | ||
参数 | openid(String) | 用户的openid |
|
参数 | cs_account(String) | 客服账号 |
|
参数 | mediaId(String) | 媒体文件的ID |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送视频消息
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendVideo('openid', 'media_id', 'thumb_media_id', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendVideo() | ||
参数 | openid(String) | 用户的openid |
|
参数 | mediaId(String) | 媒体文件的ID |
|
参数 | thumbMediaId(String) | 缩略图文件的ID |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送视频消息,带客服账号
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendVideo('openid', 'media_id', 'thumb_media_id', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendVideoFromCs() | ||
参数 | openid(String) | 用户的openid |
|
参数 | cs_account(String) | 客服账号 |
|
参数 | mediaId(String) | 媒体文件的ID |
|
参数 | thumbMediaId(String) | 缩略图文件的ID |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送音乐消息
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
var music = {
title: '音乐标题', // 可选
description: '描述内容', // 可选
musicurl: 'http://url.cn/xxx', 音乐文件地址
hqmusicurl: "HQ_MUSIC_URL",
thumb_media_id: "THUMB_MEDIA_ID"
};
api.sendMusic('openid', music, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendMusic() | ||
参数 | openid(String) | 用户的openid |
|
参数 | music(Object) | 音乐文件 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送音乐消息,带客服账号
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
var music = {
title: '音乐标题', // 可选
description: '描述内容', // 可选
musicurl: 'http://url.cn/xxx', 音乐文件地址
hqmusicurl: "HQ_MUSIC_URL",
thumb_media_id: "THUMB_MEDIA_ID"
};
api.sendMusic('openid', music, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendMusicFromCs() | ||
参数 | openid(String) | 用户的openid |
|
参数 | cs_account(String) | 客服账号 |
|
参数 | music(Object) | 音乐文件 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送图文消息(点击跳转到外链)
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
var articles = [
{
"title":"Happy Day",
"description":"Is Really A Happy Day",
"url":"URL",
"picurl":"PIC_URL"
},
{
"title":"Happy Day",
"description":"Is Really A Happy Day",
"url":"URL",
"picurl":"PIC_URL"
}];
api.sendNews('openid', articles, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendNews() | ||
参数 | openid(String) | 用户的openid |
|
参数 | articles(Array) | 图文列表 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送图文消息(点击跳转到外链),带客服账号
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
var articles = [
{
"title":"Happy Day",
"description":"Is Really A Happy Day",
"url":"URL",
"picurl":"PIC_URL"
},
{
"title":"Happy Day",
"description":"Is Really A Happy Day",
"url":"URL",
"picurl":"PIC_URL"
}];
api.sendNews('openid', articles, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendNewsFromCs() | ||
参数 | openid(String) | 用户的openid |
|
参数 | cs_account(String) | 客服账号 |
|
参数 | articles(Array) | 图文列表 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送图文消息(点击跳转到图文消息页面)
详细细节 http://mp.weixin.qq.com/wiki/14/d9be34fe03412c92517da10a5980e7ee.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendMpNews('openid', 'mediaId' , callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendMpNews() | ||
参数 | openid(String) | 用户的openid |
|
参数 | mediaId(String) | 图文消息的id |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送图文消息(点击跳转到图文消息页面),带客服账号
详细细节 http://mp.weixin.qq.com/wiki/14/d9be34fe03412c92517da10a5980e7ee.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendMpNews('openid', 'mediaId' , callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendMpNewsFromCs() | ||
参数 | openid(String) | 用户的openid |
|
参数 | cs_account(String) | 客服账号 |
|
参数 | mediaId(String) | 图文消息的id |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送卡卷消息
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendCard('openid', 'card', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendCard() | ||
参数 | openid(String) | 用户的openid |
|
参数 | wxcard(Object) | 卡卷相关信息 |
|
参数 | callback(Function) | 回调函数 |
客服消息,发送卡卷消息,带客服账号
详细细节 http://mp.weixin.qq.com/wiki/1/70a29afed17f56d537c833f89be979c9.html#.E5.AE.A2.E6.9C.8D.E6.8E.A5.E5.8F.A3-.E5.8F.91.E6.B6.88.E6.81.AF
Examples:
api.sendCard('openid', 'card', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendCardFromCs() | ||
参数 | openid(String) | 用户的openid |
|
参数 | cs_account(String) | 客服账号 |
|
参数 | card(Object) | 卡卷相关信息 |
|
参数 | callback(Function) | 回调函数 |
微信公众号支付: 发货通知
详情请见:http://mp.weixin.qq.com/htmledition/res/bussiness-faq/wx_mp_pay.zip 接口文档订单发货通知
Data:
{
"appid" : "wwwwb4f85f3a797777",
"openid" : "oX99MDgNcgwnz3zFN3DNmo8uwa-w",
"transid" : "111112222233333",
"out_trade_no" : "555666uuu",
"deliver_timestamp" : "1369745073",
"deliver_status" : "1",
"deliver_msg" : "ok",
"app_signature" : "53cca9d47b883bd4a5c85a9300df3da0cb48565c",
"sign_method" : "sha1"
}
Examples:
api.deliverNotify(data, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode":0, "errmsg":"ok"}
方法签名
方法 | exports.deliverNotify() | ||
参数 | package(Object) | package对象 |
|
参数 | callback(Function) | 回调函数 |
微信公众号支付: 订单查询
详情请见:http://mp.weixin.qq.com/htmledition/res/bussiness-faq/wx_mp_pay.zip 接口文档订单查询部分
Package:
{
"appid" : "wwwwb4f85f3a797777",
"package" : "out_trade_no=11122&partner=1900090055&sign=4e8d0df3da0c3d0df38f",
"timestamp" : "1369745073",
"app_signature" : "53cca9d47b883bd4a5c85a9300df3da0cb48565c",
"sign_method" : "sha1"
}
Examples:
api.orderQuery(query, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"ok",
"order_info": {
"ret_code":0,
"ret_msg":"",
"input_charset":"GBK",
"trade_state":"0",
"trade_mode":"1",
"partner":"1900000109",
"bank_type":"CMB_FP",
"bank_billno":"207029722724",
"total_fee":"1",
"fee_type":"1",
"transaction_id":"1900000109201307020305773741",
"out_trade_no":"2986872580246457300",
"is_split":"false",
"is_refund":"false",
"attach":"",
"time_end":"20130702175943",
"transport_fee":"0",
"product_fee":"1",
"discount":"0",
"rmb_total_fee":""
}
}
方法签名
方法 | exports.orderQuery() | ||
参数 | query(Object) | query对象 |
|
参数 | callback(Function) | 回调函数 |
创建门店
Tips:
Poi:
{
"sid": "5794560",
"business_name": "肯打鸡",
"branch_name": "东方路店",
"province": "上海市",
"city": "上海市",
"district": "浦东新区",
"address": "东方路88号",
"telephone": "021-5794560",
"categories": ["美食,快餐小吃"],
"offset_type": 1,
"longitude": 125.5794560,
"latitude": 45.5794560,
"photo_list": [{
"photo_url": "https://5794560.qq.com/1"
}, {
"photo_url": "https://5794560.qq.com/2"
}],
"recommend": "脉娜鸡腿堡套餐,脉乐鸡,全家捅",
"special": "免费WIFE,外卖服务",
"introduction": "肯打鸡是全球大型跨国连锁餐厅,2015年创立于米国,在世界上大约拥有3 亿间分店,主要售卖肯打鸡等垃圾食品",
"open_time": "10:00-18:00",
"avg_price": 88
}
Examples:
api.addPoi(poi, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode":0,"errmsg":"ok"}
方法签名
方法 | make() | ||
名字 | addPoi | ||
参数 | poi(Object) | 门店对象 |
|
参数 | callback(Function) | 回调函数 |
获取门店信息
Examples:
api.getPoi(POI_ID, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"sid": "5794560",
"business_name": "肯打鸡",
"branch_name": "东方路店",
"province": "上海市",
"city": "上海市",
"district": "浦东新区",
"address": "东方路88号",
"telephone": "021-5794560",
"categories": ["美食,快餐小吃"],
"offset_type": 1,
"longitude": 125.5794560,
"latitude": 45.5794560,
"photo_list": [{
"photo_url": "https://5794560.qq.com/1"
}, {
"photo_url": "https://5794560.qq.com/2"
}],
"recommend": "脉娜鸡腿堡套餐,脉乐鸡,全家捅",
"special": "免费WIFE,外卖服务",
"introduction": "肯打鸡是全球大型跨国连锁餐厅,2015年创立于米国,在世界上大约拥有3 亿间分店,主要售卖肯打鸡等垃圾食品",
"open_time": "10:00-18:00",
"avg_price": 88,
"available_state": 3,
"update_status": 0
}
方法签名
方法 | make() | ||
名字 | getPoi | ||
参数 | poiId(Number) | 门店ID |
|
参数 | callback(Function) | 回调函数 |
获取门店列表
Examples:
api.getPois(0, 20, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "ok"
"business_list": [{
"base_info": {
"sid": "100",
"poi_id": "5794560",
"business_name": "肯打鸡",
"branch_name": "东方路店",
"address": "东方路88号",
"available_state": 3
}
}, {
"base_info": {
"sid": "101",
"business_name": "肯打鸡",
"branch_name": "西方路店",
"address": "西方路88号",
"available_state": 4
}
}],
"total_count": "2",
}
方法签名
方法 | make() | ||
名字 | getPois | ||
参数 | begin(Number) | 开始位置,0即为从第一条开始查询 |
|
参数 | limit(Number) | 返回数据条数,最大允许50,默认为20 |
|
参数 | callback(Function) | 回调函数 |
删除门店
Tips:
Examples:
api.delPoi(POI_ID, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | make() | ||
名字 | delPoi | ||
参数 | poiId(Number) | 门店ID |
|
参数 | callback(Function) | 回调函数 |
修改门店服务信息
Tips:
Poi:
{
"poi_id": "5794560",
"telephone": "021-5794560",
"photo_list": [{
"photo_url": "https://5794560.qq.com/1"
}, {
"photo_url": "https://5794560.qq.com/2"
}],
"recommend": "脉娜鸡腿堡套餐,脉乐鸡,全家捅",
"special": "免费WIFE,外卖服务",
"introduction": "肯打鸡是全球大型跨国连锁餐厅,2015年创立于米国,在世界上大约拥有3 亿间分店,主要售卖肯打鸡等垃圾食品",
"open_time": "10:00-18:00",
"avg_price": 88
}
特别注意,以上7个字段,若有填写内容则为覆盖更新,若无内容则视为不修改,维持原有内容。
photo_list字段为全列表覆盖,若需要增加图片,需将之前图片同样放入list中,在其后增加新增图片。
Examples:
api.updatePoi(poi, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode":0,"errmsg":"ok"}
方法签名
方法 | make() | ||
名字 | updatePoi | ||
参数 | poi(Object) | 门店对象 |
|
参数 | callback(Function) | 回调函数 |
门店类目表
Tips:
Examples:
api.getWXCategory(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | make() | ||
名字 | getWXCategory | ||
参数 | callback(Function) | 回调函数 |
创建临时二维码
详细请看:http://mp.weixin.qq.com/wiki/18/28fc21e7ed87bec960651f0ce873ef8a.html
Examples:
api.createTmpQRCode(10000, 1800, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"ticket":"gQG28DoAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL0FuWC1DNmZuVEhvMVp4NDNMRnNRAAIEesLvUQMECAcAAA==",
"expire_seconds":1800
}
方法签名
方法 | exports.createTmpQRCode() | ||
参数 | sceneId(Number,String) | 场景ID。字符串ID长度限制为1到64 |
|
参数 | expire(Number) | 过期时间,单位秒。最大不超过2592000(即30天) |
|
参数 | callback(Function) | 回调函数 |
创建永久二维码
详细请看:http://mp.weixin.qq.com/wiki/18/28fc21e7ed87bec960651f0ce873ef8a.html
Examples:
api.createLimitQRCode(100, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"ticket":"gQG28DoAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL0FuWC1DNmZuVEhvMVp4NDNMRnNRAAIEesLvUQMECAcAAA=="
}
方法签名
方法 | exports.createLimitQRCode() | ||
参数 | sceneId(Number,String) | 场景ID。数字ID不能大于100000,字符串ID长度限制为1到64 |
|
参数 | callback(Function) | 回调函数 |
生成显示二维码的链接。微信扫描后,可立即进入场景
Examples:
api.showQRCodeURL(ticket);
// => https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=TICKET
方法签名
方法 | exports.showQRCodeURL() | ||
参数 | ticket(String) | 二维码Ticket |
|
返回 | String | 显示二维码的URL地址,通过img标签可以显示出来 |
用于清零调用频次限制
方法签名
方法 | make() | ||
名字 | clearQuota | ||
参数 | appid(String) | 应用id |
|
参数 | callback(Function) | 回调函数 |
发送语义理解请求
详细请看:http://mp.weixin.qq.com/wiki/0/0ce78b3c9524811fee34aba3e33f3448.html
Opts:
{
"query":"查一下明天从北京到上海的南航机票",
"city":"北京",
"category": "flight,hotel"
}
Examples:
api.semantic(uid, opts, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"query":"查一下明天从北京到上海的南航机票",
"type":"flight",
"semantic":{
"details":{
"start_loc":{
"type":"LOC_CITY",
"city":"北京市",
"city_simple":"北京",
"loc_ori":"北京"
},
"end_loc": {
"type":"LOC_CITY",
"city":"上海市",
"city_simple":"上海",
"loc_ori":"上海"
},
"start_date": {
"type":"DT_ORI",
"date":"2014-03-05",
"date_ori":"明天"
},
"airline":"中国南方航空公司"
},
"intent":"SEARCH"
}
方法签名
方法 | exports.semantic() | ||
参数 | openid(String) | 用户ID |
|
参数 | opts(Object) | 查询条件 |
|
参数 | callback(Function) | 回调函数 |
申请开通功能
接口说明:
申请开通摇一摇周边功能。成功提交申请请求后,工作人员会在三个工作日内完成审核。若审核不通过,可以重新提交申请请求。
若是审核中,请耐心等待工作人员审核,在审核中状态不能再提交申请请求。
详情请参见:http://mp.weixin.qq.com/wiki/13/025f1d471dc999928340161c631c6635.html
Options:
{
"name": "zhang_san",
"phone_number": "13512345678",
"email": "weixin123@qq.com",
"industry_id": "0118",
"qualification_cert_urls": [
"http://shp.qpic.cn/wx_shake_bus/0/1428565236d03d864b7f43db9ce34df5f720509d0e/0",
"http://shp.qpic.cn/wx_shake_bus/0/1428565236d03d864b7f43db9ce34df5f720509d0e/0"
],
"apply_reason": "test"
}
Examples:
api.registerShakeAccount(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : { },
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | registerShakeAccount | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
查询审核状态
接口说明:
查询已经提交的开通摇一摇周边功能申请的审核状态。在申请提交后,工作人员会在三个工作日内完成审核。
详情请参见:http://mp.weixin.qq.com/wiki/13/025f1d471dc999928340161c631c6635.html
Examples:
api.checkShakeAccountStatus(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
"apply_time": 1432026025,
"audit_comment": "test",
"audit_status": 1, //审核状态。0:审核未通过、1:审核中、2:审核已通过;审核会在三个工作日内完成
"audit_time": 0
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | checkShakeAccountStatus | ||
参数 | callback(Function) | 回调函数 |
设备管理: 申请设备ID。
接口说明:
申请配置设备所需的UUID、Major、Minor。若激活率小于50%,不能新增设备。单次新增设备超过500个,
需走人工审核流程。审核通过后,可用返回的批次ID用“查询设备列表”接口拉取本次申请的设备ID。
详情请参见:http://mp.weixin.qq.com/wiki/15/b9e012f917e3484b7ed02771156411f3.html
Options:
{
"quantity":3,
"apply_reason":"测试",
"comment":"测试专用",
"poi_id":1234
}
Examples:
api.applyBeacons(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : { ... },
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | applyBeacons | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
设备管理: 查询设备ID申请审核状态。
接口说明:
查询设备ID申请的审核状态。若单次申请的设备ID数量小于等于500个,系统会进行快速审核;
若单次申请的设备ID数量大于500个,则在三个工作日内完成审核。
详情请参见:http://mp.weixin.qq.com/wiki/10/9926857d34ef8cea6bcd6cffb6cea80a.html
Options:
{
"apply_id": 12345
}
Examples:
api.applyBeaconsStatus(apply_id, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : { ... },
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | applyBeaconsStatus | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
设备管理: 编辑设备的备注信息。
接口说明:
可用设备ID或完整的UUID、Major、Minor指定设备,二者选其一。
详情请参见:http://mp.weixin.qq.com/wiki/15/b9e012f917e3484b7ed02771156411f3.html
Options:
{
"device_identifier": {
// 设备编号,若填了UUID、major、minor,则可不填设备编号,若二者都填,则以设备编号为优先
"device_id": 10011,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": 1002,
"minor": 1223
},
"comment": "test"
}
Examples:
api.updateBeacon(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | updateBeacon | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
设备管理: 配置设备与门店的关联关系。
接口说明:
修改设备关联的门店ID、设备的备注信息。可用设备ID或完整的UUID、Major、Minor指定设备,二者选其一。
详情请参见:http://mp.weixin.qq.com/wiki/15/b9e012f917e3484b7ed02771156411f3.html
Options:
{
"device_identifier": {
"device_id": 10011,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": 1002,
"minor": 1223
},
"poi_id": 1231
}
Examples:
api.bindBeaconLocation(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | bindBeaconLocation | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
设备管理: 查询设备列表
接口说明:
查询已有的设备ID、UUID、Major、Minor、激活状态、备注信息、关联门店、关联页面等信息。
可指定设备ID或完整的UUID、Major、Minor查询,也可批量拉取设备信息列表。
详情请参见:http://mp.weixin.qq.com/wiki/15/b9e012f917e3484b7ed02771156411f3.html
Options:
{
"device_identifier": [
{
"device_id":10011,
"uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major":1002,
"minor":1223
}
]
}
{
"begin": 0,
"count": 3
}
{
"apply_id": 1231,
"begin": 0,
"count": 3
}
Examples:
api.getBeacons(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data": {
"devices": [
{
"comment": "",
"device_id": 10097,
"major": 10001,
"minor": 12102,
"page_ids": "15369",
"status": 1, //激活状态,0:未激活,1:已激活(但不活跃),2:活跃
"poi_id": 0,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825"
},
{
"comment": "",
"device_id": 10098,
"major": 10001,
"minor": 12103,
"page_ids": "15368",
"status": 1,
"poi_id": 0,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825"
}
],
"total_count": 151
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | getBeacons | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
页面管理: 新增页面
接口说明:
新增摇一摇出来的页面信息,包括在摇一摇页面出现的主标题、副标题、图片和点击进去的超链接。
其中,图片必须为用素材管理接口(uploadPageIcon函数)上传至微信侧服务器后返回的链接。
详情请参见:http://mp.weixin.qq.com/wiki/5/6626199ea8757c752046d8e46cf13251.html
Page:
{
"title":"主标题",
"description":"副标题",
"page_url":" https://zb.weixin.qq.com",
"comment":"数据示例",
"icon_url":"http://shp.qpic.cn/wx_shake_bus/0/14288351768a23d76e7636b56440172120529e8252/120"
//调用uploadPageIcon函数获取到该URL
}
Examples:
api.createPage(page, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
"page_id": 28840
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | createPage | ||
参数 | page(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
页面管理: 编辑页面信息
接口说明:
编辑摇一摇出来的页面信息,包括在摇一摇页面出现的主标题、副标题、图片和点击进去的超链接。
详情请参见:http://mp.weixin.qq.com/wiki/5/6626199ea8757c752046d8e46cf13251.html
Page:
{
"page_id":12306,
"title":"主标题",
"description":"副标题",
"page_url":" https://zb.weixin.qq.com",
"comment":"数据示例",
"icon_url":"http://shp.qpic.cn/wx_shake_bus/0/14288351768a23d76e7636b56440172120529e8252/120"
//调用uploadPageIcon函数获取到该URL
}
Examples:
api.updatePage(page, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
"page_id": 28840
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | updatePage | ||
参数 | page(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
页面管理: 删除页面
接口说明:
删除已有的页面,包括在摇一摇页面出现的主标题、副标题、图片和点击进去的超链接。
只有页面与设备没有关联关系时,才可被删除。
详情请参见:http://mp.weixin.qq.com/wiki/5/6626199ea8757c752046d8e46cf13251.html
page_id:
{
"page_id": 34567
}
Examples:
api.deletePage(page_id, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | deletePage | ||
参数 | page_id(Object) | 指定页面的id |
|
参数 | callback(Function) | 回调函数 |
页面管理: 查询页面列表
接口说明:
查询已有的页面,包括在摇一摇页面出现的主标题、副标题、图片和点击进去的超链接。提供两种查询方式,可指定页面ID查询,也可批量拉取页面列表。
详情请参见:http://mp.weixin.qq.com/wiki/5/6626199ea8757c752046d8e46cf13251.html
Options:
{
"page_ids":[12345, 23456, 34567]
}
{
"begin": 0,
"count": 3
}
Examples:
api.getBeacons(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data": {
"pages": [
{
"comment": "just for test",
"description": "test",
"icon_url": "https://www.baidu.com/img/bd_logo1",
"page_id": 28840,
"page_url": "http://xw.qq.com/testapi1",
"title": "测试1"
},
{
"comment": "just for test",
"description": "test",
"icon_url": "https://www.baidu.com/img/bd_logo1",
"page_id": 28842,
"page_url": "http://xw.qq.com/testapi2",
"title": "测试2"
}
],
"total_count": 2
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | getPages | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
上传图片素材
接口说明:
上传在摇一摇页面展示的图片素材,素材保存在微信侧服务器上。
格式限定为:jpg,jpeg,png,gif,图片大小建议120px*120 px,限制不超过200 px *200 px,图片需为正方形。
详情请参见:http://mp.weixin.qq.com/wiki/5/e997428269ff189d8f9a4b9e177be2d9.html
Examples:
api.uploadPageIcon('filepath', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
"pic_url": "http://shp.qpic.cn/wechat_shakearound_pic/0/1428377032e9dd2797018cad79186e03e8c5aec8dc/120"
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | uploadPageIcon | ||
参数 | filepath(String) | 文件路径 |
|
参数 | callback(Function) | 回调函数 |
配置设备与页面的关联关系
接口说明:
配置设备与页面的关联关系。支持建立或解除关联关系,也支持新增页面或覆盖页面等操作。
配置完成后,在此设备的信号范围内,即可摇出关联的页面信息。若设备配置多个页面,则随机出现页面信息。
详情请参见:http://mp.weixin.qq.com/wiki/6/c449687e71510db19564f2d2d526b6ea.html
Options:
{
"device_identifier": {
// 设备编号,若填了UUID、major、minor,则可不填设备编号,若二者都填,则以设备编号为优先
"device_id":10011,
"uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major":1002,
"minor":1223
},
"page_ids":[12345, 23456, 334567]
}
Examples:
api.bindBeaconWithPages(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | bindBeaconWithPages | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
查询设备与页面的关联关系
接口说明:
查询设备与页面的关联关系。提供两种查询方式,可指定页面ID分页查询该页面所关联的所有的设备信息;
也可根据设备ID或完整的UUID、Major、Minor查询该设备所关联的所有页面信息。
详情请参见:http://mp.weixin.qq.com/wiki/6/c449687e71510db19564f2d2d526b6ea.html
Options:
{
"type": 1,
"device_identifier": {
// 设备编号,若填了UUID、major、minor,则可不填设备编号,若二者都填,则以设备编号为优先
"device_id":10011,
"uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major":1002,
"minor":1223
}
}
api.searchBeaconPageRelation(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data": {
"relations": [
{
"device_id": 797994,
"major": 10001,
"minor": 10023,
"page_id": 50054,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825"
},
{
"device_id": 797994,
"major": 10001,
"minor": 10023,
"page_id": 50055,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825"
}
],
"total_count": 2
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | searchBeaconPageRelation | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
获取摇周边的设备及用户信息
接口说明:
获取设备信息,包括UUID、major、minor,以及距离、openID等信息。
详情请参见:http://mp.weixin.qq.com/wiki/3/34904a5db3d0ec7bb5306335b8da1faf.html
Ticket:
{
"ticket":”6ab3d8465166598a5f4e8c1b44f44645”
}
Examples:
api.getShakeInfo(ticket, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | getShakeInfo | ||
参数 | ticket(Object) | 摇周边业务的ticket,可在摇到的URL中得到,ticket生效时间为30分钟 |
|
参数 | callback(Function) | 回调函数 |
数据统计: 以设备为维度的数据统计接口
接口说明:
查询单个设备进行摇周边操作的人数、次数,点击摇周边消息的人数、次数;查询的最长时间跨度为30天。
详情请参见:http://mp.weixin.qq.com/wiki/0/8a24bcacad40fe7ee98d1573cb8a6764.html
Options:
{
"device_identifier": {
"device_id":10011, //设备编号,若填了UUID、major、minor,则可不填设备编号,若二者都填,则以设备编号为优先
"uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825", //UUID、major、minor,三个信息需填写完整,若填了设备编号,则可不填此信息。
"major":1002,
"minor":1223
},
"begin_date": 12313123311,
"end_date": 123123131231
}
Examples:
api.getDeviceStatistics(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
{
"click_pv": 0,
"click_uv": 0,
"ftime": 1425052800,
"shake_pv": 0,
"shake_uv": 0
},
{
"click_pv": 0,
"click_uv": 0,
"ftime": 1425139200,
"shake_pv": 0,
"shake_uv": 0
}
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | getDeviceStatistics | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
数据统计: 批量查询设备统计数据接口
接口说明:
查询指定时间商家帐号下的每个设备进行摇周边操作的人数、次数,点击摇周边消息的人数、次数。
只能查询最近90天内的数据,且一次只能查询一天。
此接口无法获取当天的数据,最早只能获取前一天的数据。由于系统在凌晨处理前一天的数据,
太早调用此接口可能获取不到数据,建议在早上8:00之后调用此接口。
注意:对于摇周边人数、摇周边次数、点击摇周边消息的人数、点击摇周边消息的次数都为0的设备,不在结果列表中返回。
详情请参见:http://mp.weixin.qq.com/wiki/1/e0b035c89b0a9c95a8210204087fec69.html
Options:
{
date: 1438704000,
page_index: 1
}
Examples:
api.getDeviceStatisticsList(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data": {
"devices": [
{
"device_id": 10097,
"major": 10001,
"minor": 12102,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825"
"shake_pv": 1
"shake_uv": 2
"click_pv": 3
"click_uv":4
},
{
"device_id": 10097,
"major": 10001,
"minor": 12102,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825"
"shake_pv":1
"shake_uv":2
"click_pv":3
"click_uv":4
}
],
},
"date":1435075200
"total_count": 151
"page_index":1
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | getDeviceStatisticsList | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
数据统计: 以页面为维度的数据统计接口
接口说明:
查询单个页面通过摇周边摇出来的人数、次数,点击摇周边页面的人数、次数;查询的最长时间跨度为30天。
详情请参见:http://mp.weixin.qq.com/wiki/0/8a24bcacad40fe7ee98d1573cb8a6764.html
Options:
{
"page_id": 12345,
"begin_date": 12313123311,
"end_date": 123123131231
}
Examples:
api.getPageStatistics(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
{
"click_pv": 0,
"click_uv": 0,
"ftime": 1425052800,
"shake_pv": 0,
"shake_uv": 0
},
{
"click_pv": 0,
"click_uv": 0,
"ftime": 1425139200,
"shake_pv": 0,
"shake_uv": 0
}
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | getPageStatistics | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
数据统计: 批量查询页面统计数据接口
接口说明:
查询指定时间商家帐号下的每个页面进行摇周边操作的人数、次数,点击摇周边消息的人数、次数。
只能查询最近90天内的数据,且一次只能查询一天。
此接口无法获取当天的数据,最早只能获取前一天的数据。由于系统在凌晨处理前一天的数据,
太早调用此接口可能获取不到数据,建议在早上8:00之后调用此接口。
注意:对于摇周边人数、摇周边次数、点击摇周边消息的人数、点击摇周边消息的次数都为0的设备,不在结果列表中返回。
详情请参见:http://mp.weixin.qq.com/wiki/1/e0b035c89b0a9c95a8210204087fec69.html
Options:
{
date: 1425139200,
page_index: 1
}
Examples:
api.getPageStatisticsList(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data": {
"pages": [
{
"page_id": 1,
"shake_pv": 1,
"shake_uv": 2,
"click_pv": 3,
"click_uv":4
},
{
"page_id": 2,
"shake_pv":1,
"shake_uv":2,
"click_pv":3,
"click_uv":4
}
],
},
"date":1435075200
"total_count": 151
"page_index":1
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | getPageStatisticsList | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
查询分组列表
接口说明:
查询账号下所有的分组。
options:
{
begin: 0,
count: 10
}
Examples:
api.listBeaconGroup(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
"total_count": 100,
"groups":[
{
"group_id" : 123,
"group_name" : "test1"
},
{
"group_id" : 124,
"group_name" : "test2"
}
]
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | listBeaconGroup | ||
参数 | options(String) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
查询分组详情
接口说明:
查询分组详情,包括分组名,分组id,分组里的设备列表
options:
{
group_id: 123,
begin: 0,
count: 10
}
Examples:
api.queryGroupBeacons(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
"group_id" : 123,
"group_name" : "test",
"total_count": 100,
"devices":[
{
"device_id" : 123456,
"uuid" : "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major" : 10001,
"minor" : 10001,
"comment" : "test device1",
"poi_id" : 12345,
},
{
"device_id" : 123457,
"uuid" : "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major" : 10001,
"minor" : 10002,
"comment" : "test device2",
"poi_id" : 12345,
}
]
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | queryGroupBeacons | ||
参数 | options(String) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
新增分组
接口说明:
新建设备分组,每个帐号下最多只有100个分组。
group:
{
group_name: 'test'
}
Examples:
api.addBeaconGroup(group, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
"group_id": 123,
"group_name": 'test'
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | addBeaconGroup | ||
参数 | group(Object) | 分组信息 |
|
参数 | callback(Function) | 回调函数 |
编辑分组信息
接口说明:
编辑设备分组信息,目前只能修改分组名。
group:
{
group_id: 123,
group_name: 'test update'
}
Examples:
api.updateBeaconGroup(group, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
"group_id": 123,
"group_name": 'test update'
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | updateBeaconGroup | ||
参数 | group(Object) | 分组信息 |
|
参数 | callback(Function) | 回调函数 |
删除分组信息
接口说明:
删除设备分组,若分组中还存在设备,则不能删除成功。需把设备移除以后,才能删除。
group:
{
group_id: 123
}
Examples:
api.deleteBeaconGroup(group_id, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | deleteBeaconGroup | ||
参数 | group(Object) | 分组信息 |
|
参数 | callback(Function) | 回调函数 |
添加设备到分组
接口说明:
添加设备到分组,每个分组能够持有的设备上限为10000,并且每次添加操作的添加上限为1000。只有在摇周边申请的设备才能添加到分组。
Options:
{
"group_id": 123,
"device_identifier": [
{
// 设备编号,若填了UUID、major、minor,则可不填设备编号,若二者都填,则以设备编号为优先
"device_id": 10011,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": 1002,
"minor": 1223
}
]
}
Examples:
api.addGroupBeacons(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | addGroupBeacons | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
从分组中移除设备
接口说明:
从分组中移除设备,每次删除操作的上限为1000。
Options:
{
"group_id": 123,
"device_identifier": [
{
// 设备编号,若填了UUID、major、minor,则可不填设备编号,若二者都填,则以设备编号为优先
"device_id": 10011,
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": 1002,
"minor": 1223
}
]
}
Examples:
api.deleteGroupBeacons(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"data" : {
},
"errcode": 0,
"errmsg": "success."
}
方法签名
方法 | make() | ||
名字 | deleteGroupBeacons | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
创建红包活动
接口说明:
创建红包活动,设置红包活动有效期,红包活动开关等基本信息,返回活动id。
详情请参见:http://mp.weixin.qq.com/wiki/12/9738788d171724b080b52f6e41490cb4.html
Options:
{
"use_template": 1,
"logo_url": "https://lodejs.org/images/qr.jpg"
}
Body:
{
"title": "抽奖活动名称",
"desc": "抽奖活动描述",
"onoff": 1,
"begin_time": 1428854400,
"expire_time": 1428940800,
"sponsor_appid": "wx476f028272e53c62",
"total": 10,
"jump_url": "https://lodejs.org",
"key": "u5pPq38tQP97yGn8iZxbBsfWvbn37poP"
}
Examples:
api.addLotteryInfo(options, body, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "",
"lottery_id": "5794560",
"page_id": 1,
}
方法签名
方法 | make() | ||
名字 | addLotteryInfo | ||
参数 | options(Object) | 请求参数 |
|
参数 | body(Object) | JSON格式的结构体 |
|
参数 | callback(Function) | 回调函数 |
录入红包信息
接口说明:
在调用"创建红包活动"接口之后,调用此接口录入红包信息。
详情请参见:http://mp.weixin.qq.com/wiki/12/9738788d171724b080b52f6e41490cb4.html
Options:
{
"lottery_id": "5794560",
"mchid": "1234567890",
"sponsor_appid": "wx476f028272e53c62"
"prize_info_list": [{
"ticket": "v1|ZiPs2l0hpMBp3uwGI1rwp45vOdz/V/zQ/00jP9MeWT+e47/q1FJjwCIP34frSjzOxAEzJ7k2CtAg1pmcShvkChBWqbThxPm6MBuzceoHtj79iHuHaEn0WAO+j4sXnXnbGswFOlDYWg1ngvrRYnCY3g==",
}]
}
Examples:
api.setPrizeBucket(options, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "",
"success_num": 1,
"repeat_ticket_list": [{
"ticket": "v1|ZiPs2l0hpMBp3uwGI1rwp45vOdz/V/zQ/00jP9MeWT+e47/q1FJjwCIP34frSjzOxAEzJ7k2CtAg1pmcShvkChBWqbThxPm6MBuzceoHtj79iHuHaEn0WAO+j4sXnXnbGswFOlDYWg1ngvrRYnCY3g==",
}]
}
方法签名
方法 | make() | ||
名字 | setPrizeBucket | ||
参数 | options(Object) | 请求参数 |
|
参数 | callback(Function) | 回调函数 |
设置红包活动抽奖开关
接口说明:
开发者实时控制红包活动抽奖的开启和关闭。
详情请参见:http://mp.weixin.qq.com/wiki/12/9738788d171724b080b52f6e41490cb4.html
Examples:
api.setLotterySwitch(lotteryId, onoff, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": ""
}
方法签名
方法 | make() | ||
名字 | setLotterySwitch | ||
参数 | lotteryId(String) | 红包抽奖id |
|
参数 | onoff(Number) | 活动抽奖开关,0:关闭,1:开启 |
|
参数 | callback(Function) | 回调函数 |
获取红包JSAPI参数
接口说明:
用于在第三方页面中,通过调用JSAPI来触发用户抽红包的操作。
详情请参见:http://mp.weixin.qq.com/wiki/12/9738788d171724b080b52f6e41490cb4.html
Examples:
api.getShakehbConfig(openid, lotteryId, key);
Return:
{
"openid": "o-hVKuNknQQBZFDlbE8eibQzIX3o",
"lottery_id": "5794560"
"noncestr": "5K8264ILTKCH16CQ2502SI8ZNMTM67VS"
"sign": "D6F2078841D003C09BF5263EDA3CD5F9"
}
方法签名
方法 | exports.getShakehbConfig() | ||
名字 | getShakehbConfig | ||
参数 | openid(String) | 用户openid |
|
参数 | lotteryId(String) | 红包抽奖id |
|
参数 | key(String) | “创建红包活动”接口设置的key |
上传图片
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.uploadPicture('/path/to/your/img.jpg', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
"image_url": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2ibl4JWwwnW3icSJGqecVtRiaPxwWEIr99eYYL6AAAp1YBo12CpQTXFH6InyQWXITLvU4CU7kic4PcoXA/0"
}
方法签名
方法 | exports.uploadPicture() | ||
参数 | filepath(String) | 文件路径 |
|
参数 | callback(Function) | 回调函数 |
增加邮费模板
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.addExpress(express, callback);
Express:
{
"delivery_template": {
"Name": "testexpress",
"Assumer": 0,
"Valuation": 0,
"TopFee": [
{
"Type": 10000027,
"Normal": {
"StartStandards": 1,
"StartFees": 2,
"AddStandards": 3,
"AddFees": 1
},
"Custom": [
{
"StartStandards": 1,
"StartFees": 100,
"AddStandards": 1,
"AddFees": 3,
"DestCountry": "中国",
"DestProvince": "广东省",
"DestCity": "广州市"
}
]
},
{
"Type": 10000028,
"Normal": {
"StartStandards": 1,
"StartFees": 3,
"AddStandards": 3,
"AddFees": 2
},
"Custom": [
{
"StartStandards": 1,
"StartFees": 10,
"AddStandards": 1,
"AddFees": 30,
"DestCountry": "中国",
"DestProvince": "广东省",
"DestCity": "广州市"
}
]
},
{
"Type": 10000029,
"Normal": {
"StartStandards": 1,
"StartFees": 4,
"AddStandards": 3,
"AddFees": 3
},
"Custom": [
{
"StartStandards": 1,
"StartFees": 8,
"AddStandards": 2,
"AddFees": 11,
"DestCountry": "中国",
"DestProvince": "广东省",
"DestCity": "广州市"
}
]
}
]
}
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
"template_id": 123456
}
方法签名
方法 | exports.addExpressTemplate() | ||
参数 | express(Object) | 邮费模版 |
|
参数 | callback(Function) | 回调函数 |
修改邮费模板
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.deleteExpressTemplate(templateId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.deleteExpressTemplate() | ||
参数 | templateId(Number) | 邮费模版ID |
|
参数 | callback(Function) | 回调函数 |
修改邮费模板
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.updateExpressTemplate(template, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Express:
{
"template_id": 123456,
"delivery_template": ...
}
Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.updateExpressTemplate() | ||
参数 | template(Object) | 邮费模版 |
|
参数 | callback(Function) | 回调函数 |
获取指定ID的邮费模板
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getExpressTemplateById(templateId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"template_info": {
"Id": 103312916,
"Name": "testexpress",
"Assumer": 0,
"Valuation": 0,
"TopFee": [
{
"Type": 10000027,
"Normal": {
"StartStandards": 1,
"StartFees": 2,
"AddStandards": 3,
"AddFees": 1
},
"Custom": [
{
"StartStandards": 1,
"StartFees": 1000,
"AddStandards": 1,
"AddFees": 3,
"DestCountry": "中国",
"DestProvince": "广东省",
"DestCity": "广州市"
}
]
},
...
]
}
}
方法签名
方法 | exports.getExpressTemplateById() | ||
参数 | templateId(Number) | 邮费模版Id |
|
参数 | callback(Function) | 回调函数 |
获取所有邮费模板的未封装版本
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getAllExpressTemplates(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"templates_info": [
{
"Id": 103312916,
"Name": "testexpress1",
"Assumer": 0,
"Valuation": 0,
"TopFee": [...],
},
{
"Id": 103312917,
"Name": "testexpress2",
"Assumer": 0,
"Valuation": 2,
"TopFee": [...],
},
{
"Id": 103312918,
"Name": "testexpress3",
"Assumer": 0,
"Valuation": 1,
"TopFee": [...],
}
]
}
方法签名
方法 | exports.getAllExpressTemplates() | ||
参数 | callback(Function) | 回调函数 |
增加商品
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.createGoods(goods, callback);
Goods:
{
"product_base":{
"category_id":[
"537074298"
],
"property":[
{"id":"1075741879","vid":"1079749967"},
{"id":"1075754127","vid":"1079795198"},
{"id":"1075777334","vid":"1079837440"}
],
"name":"testaddproduct",
"sku_info":[
{
"id":"1075741873",
"vid":["1079742386","1079742363"]
}
],
"main_img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic0FD3vN0V8PILcibEGb2fPfEOmw/0",
"img":[
"http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic0FD3vN0V8PILcibEGb2fPfEOmw/0"
],
"detail":[
{"text":"testfirst"},
{"img": 4whpV1VZl2iccsvYbHvnphkyGtnvjD3ul1UcLcwxrFdwTKYhH9Q5YZoCfX4Ncx655ZK6ibnlibCCErbKQtReySaVA/0"},
{"text":"testagain"}
],
"buy_limit":10
},
"sku_list":[
{
"sku_id":"1075741873:1079742386",
"price":30,
"icon_url": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl28bJj62XgfHPibY3ORKicN1oJ4CcoIr4BMbfA8LqyyjzOZzqrOGz3f5K Wq1QGP3fo6TOTSYD3TBQjuw/0",
"product_code":"testing",
"ori_price":9000000,
"quantity":800
},
{
"sku_id":"1075741873:1079742363",
"price":30,
"icon_url": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl28bJj62XgfHPibY3ORKicN1oJ4CcoIr4BMbfA8LqyyjzOZzqrOGz3f5K Wq1QGP3fo6TOTSYD3TBQjuw/0",
"product_code":"testingtesting",
"ori_price":9000000,
"quantity":800
}
],
"attrext":{
"location":{
"country":"中国",
"province":"广东省",
"city":"广州市",
"address":"T.I.T创意园"
},
"isPostFree":0,
"isHasReceipt":1,
"isUnderGuaranty":0,
"isSupportReplace":0
},
"delivery_info":{
"delivery_type":0,
"template_id":0,
"express":[
{"id":10000027,"price":100},
{"id":10000028,"price":100},
{"id":10000029,"price":100}
]
}
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"product_id": "pDF3iYwktviE3BzU3BKiSWWi9Nkw"
}
方法签名
方法 | exports.createGoods() | ||
参数 | goods(Object) | 商品信息 |
|
参数 | callback(Function) | 回调函数 |
删除商品
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.deleteGoods(productId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
}
方法签名
方法 | exports.deleteGoods() | ||
参数 | productId(String) | 商品Id |
|
参数 | callback(Function) | 回调函数 |
修改商品
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.updateGoods(goods, callback);
Goods:
{
"product_id":"pDF3iY6Kr_BV_CXaiYysoGqJhppQ",
"product_base":{
"category_id":[
"537074298"
],
"property":[
{"id":"1075741879","vid":"1079749967"},
{"id":"1075754127","vid":"1079795198"},
{"id":"1075777334","vid":"1079837440"}
],
"name":"testaddproduct",
"sku_info":[
{
"id":"1075741873",
"vid":["1079742386","1079742363"]
}
],
"main_img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic0FD3vN0V8PILcibEGb2fPfEOmw/0",
"img":[
"http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic0FD3vN0V8PILcibEGb2fPfEOmw/0"
],
"detail":[
{"text":"testfirst"},
{"img": 4whpV1VZl2iccsvYbHvnphkyGtnvjD3ul1UcLcwxrFdwTKYhH9Q5YZoCfX4Ncx655ZK6ibnlibCCErbKQtReySaVA/0"},
{"text":"testagain"}
],
"buy_limit":10
},
"sku_list":[
{
"sku_id":"1075741873:1079742386",
"price":30,
"icon_url": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl28bJj62XgfHPibY3ORKicN1oJ4CcoIr4BMbfA8LqyyjzOZzqrOGz3f5K Wq1QGP3fo6TOTSYD3TBQjuw/0",
"product_code":"testing",
"ori_price":9000000,
"quantity":800
},
{
"sku_id":"1075741873:1079742363",
"price":30,
"icon_url": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl28bJj62XgfHPibY3ORKicN1oJ4CcoIr4BMbfA8LqyyjzOZzqrOGz3f5K Wq1QGP3fo6TOTSYD3TBQjuw/0",
"product_code":"testingtesting",
"ori_price":9000000,
"quantity":800
}
],
"attrext":{
"location":{
"country":"中国",
"province":"广东省",
"city":"广州市",
"address":"T.I.T创意园"
},
"isPostFree":0,
"isHasReceipt":1,
"isUnderGuaranty":0,
"isSupportReplace":0
},
"delivery_info":{
"delivery_type":0,
"template_id":0,
"express":[
{"id":10000027,"price":100},
{"id":10000028,"price":100},
{"id":10000029,"price":100}
]
}
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.updateGoods() | ||
参数 | goods(Object) | 商品信息 |
|
参数 | callback(Function) | 回调函数 |
查询商品
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getGoods(productId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"product_info":{
"product_id":"pDF3iY6Kr_BV_CXaiYysoGqJhppQ",
"product_base":{
"name":"testaddproduct",
"category_id":[537074298],
"img":[
"http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic0FD3vN0V8PILcibEGb2fPfEOmw/0"
],
"property":[
{"id":"品牌","vid":"Fujifilm/富⼠士"},
{"id":"屏幕尺⼨寸","vid":"1.8英⼨寸"},
{"id":"防抖性能","vid":"CCD防抖"}
],
"sku_info":[
{
"id":"1075741873",
"vid":[
"1079742386",
"1079742363"
]
}
],
"buy_limit":10,
"main_img": 4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic 0FD3vN0V8PILcibEGb2fPfEOmw/0",
"detail_html": "<div class=\"item_pic_wrp\" style= \"margin-bottom:8px;font-size:0;\"><img class=\"item_pic\" style= \"width:100%;\" alt=\"\" src=\"http://mmbiz.qpic.cn/mmbiz/ 4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic 0FD3vN0V8PILcibEGb2fPfEOmw/0\" ></div><p style=\"margin-bottom: 11px;margin-top:11px;\">test</p><div class=\"item_pic_wrp\" style=\"margin-bottom:8px;font-size:0;\"><img class=\"item_pic\" style=\"width:100%;\" alt=\"\" src=\"http://mmbiz.qpic.cn/mmbiz/ 4whpV1VZl2iccsvYbHvnphkyGtnvjD3ul1UcLcwxrFdwTKYhH9Q5YZoCfX4Ncx655 ZK6ibnlibCCErbKQtReySaVA/0\" ></div><p style=\"margin-bottom: 11px;margin-top:11px;\">test again</p>"
},
"sku_list":[
{
"sku_id":"1075741873:1079742386",
"price":30,
"icon_url": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic0FD3vN0V8PILcibEGb2fPfEOmw/0",
"quantity":800,
"product_code":"testing",
"ori_price":9000000
},
{
"sku_id":"1075741873:1079742363",
"price":30,
"icon_url": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl28bJj62XgfHPibY3ORKicN1oJ4CcoIr4BMbfA8LqyyjzOZzqrOGz3f5KWq1QGP3fo6TOTSYD3TBQjuw/0",
"quantity":800,
"product_code":"testingtesting",
"ori_price":9000000
}
],
"attrext":{
"isPostFree":0,
"isHasReceipt":1,
"isUnderGuaranty":0,
"isSupportReplace":0,
"location":{
"country":"中国",
"province":"广东省",
"city":"⼲州市",
"address":"T.I.T创意园"
}
},
"delivery_info":{
"delivery_type":1,
"template_id":103312920
}
}
}
方法签名
方法 | exports.getGoods() | ||
参数 | productId(String) | 商品Id |
|
参数 | callback(Function) | 回调函数 |
获取指定状态的所有商品
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.deleteGoods(productId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"products_info": [
{
"product_base": ...,
"sku_list": ...,
"attrext": ...,
"delivery_info": ...,
"product_id": "pDF3iY-mql6CncpbVajaB_obC321",
"status": 1
}
]
}
方法签名
方法 | exports.getGoodsByStatus() | ||
参数 | status(Number) | 状态码。(0-全部, 1-上架, 2-下架) |
|
参数 | callback(Function) | 回调函数 |
商品上下架
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.updateGoodsStatus(productId, status, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.updateGoodsStatus() | ||
参数 | productId(String) | 商品Id |
|
参数 | status(Number) | 状态码。(0-全部, 1-上架, 2-下架) |
|
参数 | callback(Function) | 回调函数 |
获取指定分类的所有子分类
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getSubCats(catId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
"cate_list": [!
{"id": "537074292","name": "数码相机"},
{"id": "537074293","name": "家⽤用摄像机"},
{"id": "537074298",! "name": "单反相机"}
]
}
方法签名
方法 | exports.getSubCats() | ||
参数 | catId(Number) | 大分类ID |
|
参数 | callback(Function) | 回调函数 |
获取指定子分类的所有SKU
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getSKUs(catId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
"sku_table": [
{
"id": "1075741873",
"name": "颜⾊色",
"value_list": [
{"id": "1079742375", "name": "撞⾊色"},
{"id": "1079742376","name": "桔⾊色"}
]
}
]
}
方法签名
方法 | exports.getSKUs() | ||
参数 | catId(Number) | 大分类ID |
|
参数 | callback(Function) | 回调函数 |
获取指定分类的所有属性
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getProperties(catId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
"properties": [
{
"id": "1075741879",
"name": "品牌",
"property_value": [
{"id": "200050867","name": "VIC&"},
{"id": "200050868","name": "Kate&"},
{"id": "200050971","name": "M&"},
{"id": "200050972","name": "Black&"}
]
},
{
"id": "123456789",
"name": "颜⾊色",
"property_value": ...
}
]
}
方法签名
方法 | exports.getProperties() | ||
参数 | catId(Number) | 分类ID |
|
参数 | callback(Function) | 回调函数 |
创建商品分组
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.createGoodsGroup(groupName, productList, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"group_id": 19
}
方法签名
方法 | exports.createGoodsGroup() | ||
参数 | groupName(String) | 分组名 |
|
参数 | productList(Array) | 该组商品列表 |
|
参数 | callback(Function) | 回调函数 |
删除商品分组
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.deleteGoodsGroup(groupId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.deleteGoodsGroup() | ||
参数 | groupId(String) | 分组ID |
|
参数 | callback(Function) | 回调函数 |
修改商品分组属性
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.updateGoodsGroup(groupId, groupName, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.updateGoodsGroup() | ||
参数 | groupId(String) | 分组ID |
|
参数 | groupName(String) | 分组名 |
|
参数 | callback(Function) | 回调函数 |
修改商品分组内的商品
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.updateGoodsForGroup(groupId, addProductList, delProductList, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.updateGoodsForGroup() | ||
参数 | groupId(Object) | 分组ID |
|
参数 | addProductList(Array) | 待添加的商品数组 |
|
参数 | delProductList(Array) | 待删除的商品数组 |
|
参数 | callback(Function) | 回调函数 |
获取所有商品分组
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getAllGroups(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
"groups_detail": [
{
"group_id": 200077549,
"group_name": "新品上架"
},{
"group_id": 200079772,
"group_name": "全球热卖"
}
]
}
方法签名
方法 | exports.getAllGroups() | ||
参数 | callback(Function) | 回调函数 |
根据ID获取商品分组
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getGroupById(groupId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
"group_detail": {
"group_id": 200077549,
"group_name": "新品上架",
"product_list": [
"pDF3iYzZoY-Budrzt8O6IxrwIJAA",
"pDF3iY3pnWSGJcO2MpS2Nxy3HWx8",
"pDF3iY33jNt0Dj3M3UqiGlUxGrio"
]
}
}
方法签名
方法 | exports.getGroupById() | ||
参数 | groupId(String) | 分组ID |
|
参数 | callback(Function) | 回调函数 |
根据订单Id获取订单详情
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getOrderById(orderId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"order": {
"order_id": "7197417460812533543",
"order_status": 6,
"order_total_price": 6,
"order_create_time": 1394635817,
"order_express_price": 5,
"buyer_openid": "oDF3iY17NsDAW4UP2qzJXPsz1S9Q",
"buyer_nick": "likeacat",
"receiver_name": "张小猫",
"receiver_province": "广东省",
"receiver_city": "广州市",
"receiver_address": "华景路一号南方通信大厦5楼",
"receiver_mobile": "123456789",
"receiver_phone": "123456789",
"product_id": "pDF3iYx7KDQVGzB7kDg6Tge5OKFo",
"product_name": "安莉芳E-BRA专柜女士舒适内衣蕾丝3/4薄杯聚拢上托性感文胸KB0716",
"product_price": 1,
"product_sku": "10000983:10000995;10001007:10001010",
"product_count": 1,
"product_img": "http://img2.paipaiimg.com/00000000/item-52B87243-63CCF66C00000000040100003565C1EA.0.300x300.jpg",
"delivery_id": "1900659372473",
"delivery_company": "059Yunda",
"trans_id": "1900000109201404103172199813"
}
}
方法签名
方法 | exports.getOrderById() | ||
参数 | orderId(String) | 订单Id |
|
参数 | callback(Function) | 回调函数 |
根据订单状态/创建时间获取订单详情
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getOrdersByStatus([status,] [beginTime,] [endTime,] callback);
Usage:
当只传入callback参数时,查询所有状态,所有时间的订单
当传入两个参数,第一个参数为Number类型,第二个参数为callback时,查询指定状态,所有时间的订单
当传入两个参数,第一个参数为Date类型,第二个参数为callback时,查询所有状态,指定订单创建起始时间的订单(待测试)
当传入三个参数,第一参数为订单状态码,第二参数为订单创建起始时间,第三参数为callback
当传入四个参数,第一参数为订单状态码,第二参数为订单创建起始时间,第三参数为订单创建终止时间,第四参数为callback
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"order_list": [
{
"order_id": "7197417460812533543",
"order_status": 6,
"order_total_price": 6,
"order_create_time": 1394635817,
"order_express_price": 5,
"buyer_openid": "oDF3iY17NsDAW4UP2qzJXPsz1S9Q",
"buyer_nick": "likeacat",
"receiver_name": "张小猫",
"receiver_province": "广东省",
"receiver_city": "广州市",
"receiver_address": "华景路一号南方通信大厦5楼",
"receiver_mobile": "123456",
"receiver_phone": "123456",
"product_id": "pDF3iYx7KDQVGzB7kDg6Tge5OKFo",
"product_name": "安莉芳E-BRA专柜女士舒适内衣蕾丝3/4薄杯聚拢上托性感文胸KB0716",
"product_price": 1,
"product_sku": "10000983:10000995;10001007:10001010",
"product_count": 1,
"product_img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2icND8WwMThBEcehjhDv2icY4GrDSG5RLM3B2qd9kOicWGVJcsAhvXfibhWRNoGOvCfMC33G9z5yQr2Qw/0",
"delivery_id": "1900659372473",
"delivery_company": "059Yunda",
"trans_id": "1900000109201404103172199813"
},
{
"order_id": "7197417460812533569",
"order_status": 8,
"order_total_price": 1,
"order_create_time": 1394636235,
"order_express_price": 0,
"buyer_openid": "oDF3iY17NsDAW4UP2qzJXPsz1S9Q",
"buyer_nick": "likeacat",
"receiver_name": "张小猫",
"receiver_province": "广东省",
"receiver_city": "广州市",
"receiver_address": "华景路一号南方通信大厦5楼",
"receiver_mobile": "123456",
"receiver_phone": "123456",
"product_id": "pDF3iYx7KDQVGzB7kDg6Tge5OKFo",
"product_name": "项坠333",
"product_price": 1,
"product_sku": "1075741873:1079742377",
"product_count": 1,
"product_img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2icND8WwMThBEcehjhDv2icY4GrDSG5RLM3B2qd9kOicWGVJcsAhvXfibhWRNoGOvCfMC33G9z5yQr2Qw/0",
"delivery_id": "1900659372473",
"delivery_company": "059Yunda",
"trans_id": "1900000109201404103172199813"
}
]
}
方法签名
方法 | exports.getOrdersByStatus() | ||
参数 | status(Number) | 状态码。(无此参数-全部状态, 2-待发货, 3-已发货, 5-已完成, 8-维权中) |
|
参数 | beginTime(Date) | 订单创建时间起始时间。(无此参数则不按照时间做筛选) |
|
参数 | endTime(Date) | 订单创建时间终止时间。(无此参数则不按照时间做筛选) |
|
参数 | callback(Function) | 回调函数 |
设置订单发货信息
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.setExpressForOrder(orderId, deliveryCompany, deliveryTrackNo, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.setExpressForOrder() | ||
参数 | orderId(String) | 订单Id |
|
参数 | deliveryCompany(String) | 物流公司 (物流公司Id请参考微信小店API手册) |
|
参数 | deliveryTrackNo(String) | 运单Id |
|
参数 | callback(Function) | 回调函数 |
关闭订单
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.closeOrder(orderId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.closeOrder() | ||
参数 | orderId(String) | 订单Id |
|
参数 | callback(Function) | 回调函数 |
增加货架
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.createShelf(shelf, callback);
Shelf:
{
"shelf_data": {
"module_infos": [
{
"group_info": {
"filter": {
"count": 2
},
"group_id": 50
},
"eid": 1
},
{
"group_infos": {
"groups": [
{
"group_id": 49
},
{
"group_id": 50
},
{
"group_id": 51
}
]
},
"eid": 2
},
{
"group_info": {
"group_id": 52,
"img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5Jm64z4I0TTicv0TjN7Vl9bykUUibYKIOjicAwIt6Oy0Y6a1Rjp5Tos8tg/0"
},
"eid": 3
},
{
"group_infos": {
"groups": [
{
"group_id": 49,
"img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5uUQx7TLx4tB9qZfbe3JmqR4NkkEmpb5LUWoXF1ek9nga0IkeSSFZ8g/0"
},
{
"group_id": 50,
"img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5G1kdy3ViblHrR54gbCmbiaMnl5HpLGm5JFeENyO9FEZAy6mPypEpLibLA/0"
},
{
"group_id": 52,
"img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5uUQx7TLx4tB9qZfbe3JmqR4NkkEmpb5LUWoXF1ek9nga0IkeSSFZ8g/0"
}
]
},
"eid": 4
},
{
"group_infos": {
"groups": [
{
"group_id": 43
},
{
"group_id": 44
},
{
"group_id": 45
},
{
"group_id": 46
}
],
"img_background": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5uUQx7TLx4tB9qZfbe3JmqR4NkkEmpb5LUWoXF1ek9nga0IkeSSFZ8g/0"
},
"eid": 5
}
]
},
"shelf_banner": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2ibrWQn8zWFUh1YznsMV0XEiavFfLzDWYyvQOBBszXlMaiabGWzz5B2KhNn2IDemHa3iarmCyribYlZYyw/0",
"shelf_name": "测试货架"
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"shelf_id": 12
}
方法签名
方法 | exports.createShelf() | ||
参数 | shelf(Object) | 货架信息 |
|
参数 | callback(Function) | 回调函数 |
删除货架
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.deleteShelf(shelfId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.deleteShelf() | ||
参数 | shelfId(String) | 货架Id |
|
参数 | callback(Function) | 回调函数 |
修改货架
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.updateShelf(shelf, callback);
Shelf:
{
"shelf_id": 12345,
"shelf_data": ...,
"shelf_banner": "http://mmbiz.qpic.cn/mmbiz/ 4whpV1VZl2ibrWQn8zWFUh1YznsMV0XEiavFfLzDWYyvQOBBszXlMaiabGWzz5B2K hNn2IDemHa3iarmCyribYlZYyw/0",
"shelf_name": "货架名称"
}
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.updateShelf() | ||
参数 | shelf(Object) | 货架信息 |
|
参数 | callback(Function) | 回调函数 |
获取所有货架
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getAllShelf(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"shelves": [
{
"shelf_info": {
"module_infos": [
{
"group_infos": {
"groups": [
{
"group_id": 200080093
},
{
"group_id": 200080118
},
{
"group_id": 200080119
},
{
"group_id": 200080135
}
],
"img_background": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl294FzPwnf9dAcaN7ButStztAZyy2yHY8pW6sTQKicIhAy5F0a2CqmrvDBjMFLtc2aEhAQ7uHsPow9A/0"
},
"eid": 5
}
]
},
"shelf_banner": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl294FzPwnf9dAcaN7ButStztAZyy2yHY8pW6sTQKicIhAy5F0a2CqmrvDBjMFLtc2aEhAQ7uHsPow9A/0",
"shelf_name": "新新人类",
"shelf_id": 22
},
{
"shelf_info": {
"module_infos": [
{
"group_info": {
"group_id": 200080119,
"filter": {
"count": 4
}
},
"eid": 1
}
]
},
"shelf_banner": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl294FzPwnf9dAcaN7ButStztAZyy2yHY8pW6sTQKicIhAy5F0a2CqmrvDBjMFLtc2aEhAQ7uHsPow9A/0",
"shelf_name": "店铺",
"shelf_id": 23
}
]
}
方法签名
方法 | exports.getAllShelves() | ||
参数 | callback(Function) | 回调函数 |
根据货架ID获取货架信息
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.getShelfById(shelfId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success",
"shelf_info": {
"module_infos": [...]
},
"shelf_banner": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2ibp2DgDXiaic6WdflMpNdInS8qUia2BztlPu1gPlCDLZXEjia2qBdjoLiaCGUno9zbs1UyoqnaTJJGeEew/0",
"shelf_name": "新建货架",
"shelf_id": 97
}
方法签名
方法 | exports.getShelfById() | ||
参数 | shelfId(String) | 货架Id |
|
参数 | callback(Function) | 回调函数 |
增加库存
详细请看:http://mp.weixin.qq.com/wiki/8/703923b7349a607f13fb3100163837f0.html
Examples:
api.updateStock(10, productId, sku, callback); // 增加10件库存
api.updateStock(-10, productId, sku, callback); // 减少10件库存
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode": 0,
"errmsg": "success"
}
方法签名
方法 | exports.updateStock() | ||
参数 | number(Number) | 增加或者删除的数量 |
|
参数 | productId(String) | 商品ID |
|
参数 | sku(String) | SKU信息 |
|
参数 | callback(Function) | 回调函数 |
创建标签
详情请见:http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN
Examples:
api.createTag(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"tag": [
"id": 134, // 标签id
"name": "广东"
]
}
方法签名
方法 | exports.createTag() | ||
参数 | name(String) | tag name |
|
参数 | callback(Function) | 回调函数 |
获取公众号已创建的标签
详情请见:http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN
Examples:
api.getTags(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"tags":[{
'id':1,
'name': '黑名单',
'count': 0 // 此标签下粉丝数
},{
'id':2,
'name': '星标组',
'count':0
}]
}
方法签名
方法 | exports.getTags() | ||
参数 | openid(String) | Open ID |
|
参数 | callback(Function) | 回调函数 |
编辑标签
详情请见:http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN
Examples:
api.editTag(id, name, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode": 0, "errmsg": "ok"}}
方法签名
方法 | exports.editTag() | ||
参数 | id(Number) | 标签ID |
|
参数 | name(String) | 标签新名字 |
|
参数 | callback(Function) | 回调函数 |
删除标签
详情请见:http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN
Examples:
api.deleteTag(id, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode": 0, "errmsg": "ok"}
方法签名
方法 | exports.deleteTag() | ||
参数 | id(Number) | 标签ID |
|
参数 | callback(Function) | 回调函数 |
获取标签下粉丝列表
详情请见:http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN
Examples:
api.getTagUsers(tagid, openid, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"count": 2,
"data":{
"openid":[
...
]
},
"next_openid": "..."
}
方法签名
方法 | exports.getTagUsers() | ||
参数 | tagId(Number) | 标签ID |
|
参数 | openid(String) | 分页起始openid |
|
参数 | callback(Function) | 回调函数 |
批量为用户打标签
详情请见:http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN
Examples:
api.memberBatchtagging(tagId, openList, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode": 0, "errmsg": "ok"}
方法签名
方法 | exports.membersBatchtagging() | ||
参数 | tagId(Number) | 标签ID |
|
参数 | openList(Array) | 用户openids |
|
参数 | callback(Function) | 回调函数 |
批量为用户取消标签
详情请见:http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN
Examples:
api.memberBatchuntagging(tagId, openList, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"errcode": 0, "errmsg": "ok"}
方法签名
方法 | exports.membersBatchuntagging() | ||
参数 | tagId(Number) | 标签ID |
|
参数 | openList(Array) | 用户openids |
|
参数 | callback(Function) | 回调函数 |
获取用户身上的标签列表
详情请见:http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140837&token=&lang=zh_CN
Examples:
api.getUserTags(openid, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{"tagid_list": [134, 2]}
方法签名
方法 | exports.getUserTags() | ||
参数 | 用户openid(openid) | ||
参数 | callback(Function) | 回调函数 |
设置所属行业
Examples:
var industryIds = {
"industry_id1":'1',
"industry_id2":"4"
};
api.setIndustry(industryIds, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.setIndustry() | ||
参数 | industryIds(Object) | 公众号模板消息所属行业编号 |
获取设置的行业信息
Examples:
api.getIndustry(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
// 结果示例
{
"primary_industry":{"first_class":"运输与仓储","second_class":"快递"},
"secondary_industry":{"first_class":"IT科技","second_class":"互联网|电子商务"}
}
方法签名
方法 | exports.getIndustry() | ||
参数 | callback(Function) | 回调函数 |
获得模板ID
Examples:
var templateIdShort = 'TM00015';
api.addTemplate(templateIdShort, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.addTemplate() | ||
参数 | templateIdShort(String) | 模板库中模板的编号,有“TM**”和“OPENTMTM**”等形式 |
获取模板列表
Examples:
api.getAllPrivateTemplate(callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
// 结果示例
{
"template_list": [{
"template_id": "iPk5sOIt5X_flOVKn5GrTFpncEYTojx6ddbt8WYoV5s",
"title": "领取奖金提醒",
"primary_industry": "IT科技",
"deputy_industry": "互联网|电子商务",
"content": "{ {result.DATA} }\n\n领奖金额:{ {withdrawMoney.DATA} }\n领奖 时间:{ {withdrawTime.DATA} }\n银行信息:{ {cardInfo.DATA} }\n到账时间: { {arrivedTime.DATA} }\n{ {remark.DATA} }",
"example": "您已提交领奖申请\n\n领奖金额:xxxx元\n领奖时间:2013-10-10 12:22:22\n银行信息:xx银行(尾号xxxx)\n到账时间:预计xxxxxxx\n\n预计将于xxxx到达您的银行卡"
}]
}
方法签名
方法 | exports.getAllPrivateTemplate() | ||
参数 | callback(Function) | 回调函数 |
删除模板
Examples:
var templateId = ”Dyvp3-Ff0cnail_CDSzk1fIc6-9lOkxsQE7exTJbwUE”
api.delPrivateTemplate(templateId, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.delPrivateTemplate() | ||
参数 | templateId(String) | 公众帐号下模板消息ID |
发送模板消息
详细细节: http://mp.weixin.qq.com/wiki/17/304c1885ea66dbedf7dc170d84999a9d.html
Examples:
var templateId: '模板id';
// URL置空,则在发送后,点击模板消息会进入一个空白页面(ios), 或无法点击(android)
var url: 'http://weixin.qq.com/download';
var data = {
"first": {
"value":"恭喜你购买成功!",
"color":"#173177"
},
"keyword1":{
"value":"巧克力",
"color":"#173177"
},
"keyword2": {
"value":"39.8元",
"color":"#173177"
},
"keyword3": {
"value":"2014年9月22日",
"color":"#173177"
},
"remark":{
"value":"欢迎再次购买!",
"color":"#173177"
}
};
api.sendTemplate('openid', templateId, url, data, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.sendTemplate() | ||
参数 | openid(String) | 用户的openid |
|
参数 | templateId(String) | 模板ID |
|
参数 | url(String) | URL置空,则在发送后,点击模板消息会进入一个空白页面(ios),或无法点击(android) |
|
参数 | data(Object) | 渲染模板的数据 |
|
参数 | callback(Function) | 回调函数 |
duplicated interface function (openid, templateId, url, topColor, data, callback)
方法签名
声明 | apiUrl |
短网址服务
详细细节 http://mp.weixin.qq.com/wiki/10/165c9b15eddcfbd8699ac12b0bd89ae6.html
Examples:
api.shorturl('http://mp.weixin.com', callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象方法签名
方法 | exports.shorturl() | ||
参数 | longUrl(String) | 需要转换的长链接,支持http://、https://、weixin://wxpay格式的url |
|
参数 | callback(Function) | 回调函数 |
获取用户基本信息。可以设置lang,其中zh_CN 简体,zh_TW 繁体,en 英语。默认为en
详情请见:http://mp.weixin.qq.com/wiki/14/bb5031008f1494a59c6f71fa0f319c66.html
Examples:
api.getUser(openid, callback);
api.getUser({openid: 'openid', lang: 'en'}, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"subscribe": 1,
"openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M",
"nickname": "Band",
"sex": 1,
"language": "zh_CN",
"city": "广州",
"province": "广东",
"country": "中国",
"headimgurl": "http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0",
"subscribe_time": 1382694957
}
方法签名
方法 | exports.getUser() | ||
参数 | options(String,Object) | 用户的openid。或者配置选项,包含openid和lang两个属性。 |
|
参数 | callback(Function) | 回调函数 |
批量获取用户基本信息
Example:
api.batchGetUsers(['openid1', 'openid2'], callback)
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"user_info_list": [{
"subscribe": 1,
"openid": "otvxTs4dckWG7imySrJd6jSi0CWE",
"nickname": "iWithery",
"sex": 1,
"language": "zh_CN",
"city": "Jieyang",
"province": "Guangdong",
"country": "China",
"headimgurl": "http://wx.qlogo.cn/mmopen/xbIQx1GRqdvyqkMMhEaGOX802l1CyqMJNgUzKP8MeAeHFicRDSnZH7FY4XB7p8XHXIf6uJA2SCunTPicGKezDC4saKISzRj3nz/0",
"subscribe_time": 1434093047,
"unionid": "oR5GjjgEhCMJFyzaVZdrxZ2zRRF4",
"remark": "",
"groupid": 0
}, {
"subscribe": 0,
"openid": "otvxTs_JZ6SEiP0imdhpi50fuSZg",
"unionid": "oR5GjjjrbqBZbrnPwwmSxFukE41U",
}]
}
方法签名
方法 | exports.batchGetUsers() | ||
参数 | openids(Array) | 用户的openid数组。 |
|
参数 | callback(Function) | 回调函数 |
获取关注者列表
详细细节 http://mp.weixin.qq.com/wiki/0/d0e07720fc711c02a3eab6ec33054804.html
Examples:
api.getFollowers(callback);
// or
api.getFollowers(nextOpenid, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"total":2,
"count":2,
"data":{
"openid":["","OPENID1","OPENID2"]
},
"next_openid":"NEXT_OPENID"
}
方法签名
方法 | exports.getFollowers() | ||
参数 | nextOpenid(String) | 调用一次之后,传递回来的nextOpenid。第一次获取时可不填 |
|
参数 | callback(Function) | 回调函数 |
设置用户备注名
详细细节 http://mp.weixin.qq.com/wiki/1/4a566d20d67def0b3c1afc55121d2419.html
Examples:
api.updateRemark(openid, remark, callback);
Callback:
err
, 调用失败时得到的异常result
, 调用正常时得到的对象Result:
{
"errcode":0,
"errmsg":"ok"
}
方法签名
方法 | exports.updateRemark() | ||
参数 | openid(String) | 用户的openid |
|
参数 | remark(String) | 新的备注名,长度必须小于30字符 |
|
参数 | callback(Function) | 回调函数 |