口袋助理系统第三方应用接入

1.发布应用

golang语言示列代码托管:https://gitee.com/pocket-assistant/OpenApiExample

上架应用的时候,您需要联系口袋助理客服人员,提供您的应用url地址、应用名称和应用图标,添加完成后会反馈给您appid和secret,用于后续的操作。发布后您的应用会如下展现:

示例图片

应用的分类和顺序可以调整,也可以隐藏应用(只需要调用接口获取数据的时候)。

golang语言示列代码托管:https://gitee.com/pocket-assistant/OpenApiExample

2.获取访问凭证

access_token为api调用的凭证,在任何口袋助理的api调用都需要携带access_token。因此,在应用上线后,为了使用后续的api接口,需要先获取access_token。应用向口袋助理发送请求获取access_tocken。

GET

https://api.kdzl.cn/cgi-bin/oauth/access_token?appid=21363&did=10000&secret=8732452&expire=3600

参数说明

参数描叙
appid第三方应用唯一标识ID,1.添加应用之后得到
did公司帐号ID,可以在口袋助理app的“我 -> 公司”里面看到,后续其他接口用到did均为此值,不再赘述
secret第三方应用在口袋助理中的秘钥,即1.中的sercret
expire凭证的有效期,单位秒,从凭证获取成功开始计数,经历expire秒后该凭证失效。 有效时间最大为一天(86400秒),默认为2小时(7200秒)

返回说明

正常情况下,moa返回下述JSON包给第三方应用

错误时,返回下述JSON包,其他接口错误返回样式相同,没有特别情况后续接口不再描述错误返回

3.oauth认证

Oauth2.0是第三方授权协议,用以口袋助理授权第三方访问口袋助理中的用户资料,用于第三方单点登陆。

3.1 获取口袋助理用户信息

应用构造url向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/roster/user/get?access_token=1234adfb64&code=23832afd8&detail=0

参数说明

参数是否必须描叙
access_token应用的访问凭证
code用户在口袋助理点击启动第三方应用,跳转到应用地址的时候会携带code参数,此code仅在5分钟内一次有效。其他情况也会有code码,在后续具体接口描述
detail是否返回详尽信息,默认detail=0,只返回简略的信息,包含三个字段userid、alias、name。 若需要更详尽的用户信息,可以在请求时设置detail=1

返回说明

正常情况下,口袋助理系统返回下述JSON包。

3.2 用口袋助理扫描登陆

本接口主要用于非口袋助理应用跳转,而是其他访问路径需要使用口袋助理扫码登陆,应用构造url向口袋助理系统发送请求:

GET

https://api.kdzl.cn/oauth2/QR_code?access_token=234578fe23d4&redirect_uri=http%3a%2f%2fwww.example.com&response_type=code&scope=kd77_base&state=ad9238

参数说明

参数是否必须描叙
access_token应用的访问凭证
redirect_uri授权后的回调地址,需要使用urlcode编码。
response_type返回类型,此时固定为code
scope请求的授权范围。此时固定为kd77_base
state应用携带的参数。在授权回调后,会原样以url返回给应用。

返回说明

正常情况下,口袋助理返回下述JSON包给第三方应用

请求二维码地址后返回说明

返回结果中url在1小时后或者一次扫描后失效,第三方应用将url嵌入在需要用口袋助理扫描的地方,即可显示二维码。用户在使用口袋助理扫描后,则页面跳转至redirect_uri?code=23eabf22&state=ad9238,应用可用code获取到用户的信息

注意:code码在5分钟内一次有效。

4.通讯录管理

4.1 部门管理

每个部门有自己的部门id标识,根部门的id标识为1.

4.1.1 获取部门详情

应用向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/roster/department/get?access_token=234578fe23d4&department_id=32

参数说明

参数是否必须描叙
access_token调用接口凭证
department_id部门id,初始根部门ID 为1

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
department部门信息
id部门id
name部门名称
parentid父部门。1为根部门,根部门的父部门为0.
user_member这个部门的直属用户userid
sub_member这个部门的子部门department_id

4.1.2 获取部门列表

获取指定部门下的子部门列表。若需要获取全部部门的列表,指定department_id参数为1,并设置fetch_child为1。

应用向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/roster/department/list?access_token=234578fe23d4&department_id=1&fetch_child=0

参数说明

参数是否必须描叙
access_token调用接口凭证
department_id需要获取子部门的列表。若不指定,默认为1,即为根部门
fetch_child是否递归获取子部门下面的子部门

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
departments部门列表数据
id部门id,为1表示根部门
name部门名称
parentid父部门。1为根部门,根部门的父部门为0.

4.1.3 获取部门成员

应用向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/roster/department/get_member?access_token=234578fe23d4&department_id=3241&fetch_child=0

参数说明

参数是否必须描叙
access_token调用接口凭证
department_id要获取的部门id。当department_id为1,并且fetch_child为1时,将返回所有用户。
fetch_child否,不指定默认为0是否递归获取子部门的成员

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
member部门成员列表数据
userid用户id
alias应用为用户设置的别名。若有设置别名则有该字段,否则没有。
name用户名称

4.2 用户管理

4.2.1 获取用户

应用向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/roster/user/get?access_token=234578fe23d4&userid=213634&alias=myname

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
userid否,但和alias二者必须有其一string系统中的唯一用户标识,对当前应用唯一, 这个一般通过其他结构拿到用户信息后,需要获取详细信息的时候用。
alias否,但和alias二者必须有其一string应用对用户绑定的别名,必须能够唯一索引到用户,即不同的用户不能重名,现在支持用账号查询(即account)和 工号查询(即employee_id),需要通过别名查询的话需要找客服单独设置绑定到哪一个唯一键山上。

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
alias应用为用户设置的别名
userid用户在moa中的唯一标识,后续如果有其接口的pid,op_pid, userid等字段,均为此值。
name用户名称
sex性别
Photo头像图标,需要调用12.5 获取下载url
department_id所在的部门id
position职位
employee_id工号
address工作地点
email电子邮箱
phone电话号码。移动电话type为mobile,办公电话type为office。Number指定号码

4.3 分组管理

4.3.1 创建标签

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/roster/tag/create?access_token=234578fe23d4

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
tagnamestring新标签名字。

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
tagid标签id

4.3.2 更新标签

只可以更新标签名字

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/roster/tag/update?access_token=234578fe23d4

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
tagidstring标签id
tagnamestring标签名字。

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息

4.3.3 删除标签

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/roster/tag/delete?access_token=234578fe23d4

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
tagidstring标签id

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息

4.3.4 添加成员

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/roster/tag/add_member?access_token=234578fe23d4

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
tagidstring标签id
userid[]string标签成员列表
alias[]string标签成员列表(使用别名)

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
invaliduserid添加失败的成员列表
invalidalias添加失败的成员别名列表

4.3.5 删除成员

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/roster/tag/del_member?access_token=234578fe23d4

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
tagidstring标签id
userid[]string标签成员列表
alias[]string标签成员列表(使用别名)

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
invaliduserid添加失败的成员列表
invalidalias添加失败的成员别名列表

4.3.6 获取成员

应用向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/roster/tag/get?access_token=234578fe23d4&tagid=3241

参数说明

参数是否必须描叙
access_token调用接口凭证
tagid标签id

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
member部门成员列表数据
userid用户id
alias应用为用户设置的别名。若应用有设置别名则有该字段,否则没有。
name用户名称

4.3.7 获取标签列表

应用向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/roster/tag/list?access_token=234578fe23d4

参数说明

参数是否必须描叙
access_token调用接口凭证

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
taglist标签列表数据
tagid标签id
tagname标签名字

5.多媒体文件管理

5.1 上传多媒体文件

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/file/upload?access_token=234578fe23d4&type=voice

参数说明

参数是否必须描叙
access_token调用接口凭证
type多媒体文件类型。可取值为voice(声音)、video(视频)、image(图片)、file(普通文件)
MEDIA多媒体文件数据,form-data中媒体文件标识,有filename、filelength、content-type等信息。

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
media_id上传的多媒体文件在口袋助理系统中的id标识
created_at媒体文件创建时间

上传的媒体文件的大小限制(暂定)

image(图片): 1MB

voice(语音): 2MB

video(视频): 10MB

file(普通文件): 10MB

5.2 下载多媒体文件

5.2.1 直接下载文件

应用向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/file/get?access_token=234578fe23d4&media_id=e23ba843652d

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
media_idstring媒体文件id

返回说明

正常情况下,口袋助理系统返回

错误时返回(省略了http头部)

5.2.2 获取文件下载url

应用向口袋助理系统发送请求

POST

https://200.200.107.246:4430/cgi-bin/file/url_batch?access_token=3300010000000000deec0700000000006f6e1b5a0100d24b

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
media_id[]string数组形式,文件(图片)的media_id数组

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息,以下是该数组内的内容
urls数组形式
result该hash的获取结果,成功>=0,失败<=0
url下载的url
media_id对应req中的media_id

6.发送消息

应用向员工发送消息,消息将以小助理在用户的终端显示。

调用接口时,使用https协议,数据包无需加密处理。

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/im/send?access_token=234578fe23d4

参数说明

参数是否必须描叙
access_token调用接口凭证

各个类型消息的发送格式见后面小节

返回说明

如果对应应用对部门、小组、个人无发送权限,消息将以失败返回;如果对应的部门、小组中部分不存在,发送仍然执行,返回出错的部分。

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
invalid_user无效用户列表
invalid_alias无效别名列表
invalid_department无效部门的id
invalid_group无效标签的id

6.1 普通消息格式

6.1.1 文本消息

参数是否必须类型描叙
to_user[]string目标接收用户id列表,与to_alias应该二选一
to_alias[]string目标接收用户别名列表,与to_user应该二选一
to_department[]string目标接收部门列表
to_tag[]string目标接收标签列表
typestring消息类型。这里固定为text
contentstring消息内容。必须为UTF-8编码

6.1.2 图文消息

发送图文消息

media_id由上传图片文件接口获得,见6.1上传多媒体文件

参数说明

  1. 图文消息接口参数

参数是否必须类型描叙
to_user[]string目标接收用户id列表,与to_alias应该二选一
to_alias[]string目标接收用户别名列表,与to_user应该二选一
to_department[]string目标接收部门列表
to_tag[]string目标接收标签列表
typestring消息类型。这里固定为itext
infostruct图文消息

2. 图文消息info参数说明如下表

参数是否必须类型描叙
titlestring图文消息-标题
contentstring图文消息-底部内容
urlstring图文消息-点击后的网址
picturestruct图文消息-图片参数
media_idstring图文消息-图片的媒体id,利用6.1操作获得
heightInt64图文消息-图片的高
widthInt64图文消息-图片的宽
sizeInt64图文消息-图片的大小

6.1.3 审核消息

发送审核消息

参数说明

1. 图文消息接口参数

参数是否必须类型描叙
to_user[]string目标接收用户id列表,与to_alias应该二选一
to_alias[]string目标接收用户别名列表,与to_user应该二选一
to_department[]string目标接收部门列表
to_tag[]string目标接收标签列表
typestring消息类型。这里固定为amsg
infostruct审核消息

2. 图文消息info参数说明如下表

参数是否必须类型描叙
contentstring审核消息-内容
tagstring审核消息-底部标签
urlstring审核消息-点击后的网址

7.客户管理

7.0 客户结构

7.0.1 客户联系人

参数说明

参数是否必须类型描叙
namestring联系人名字
sexint0:未知 1:男 2:女
titles[]string联系人职位
mobiles[]string联系人手机 会过滤掉非数字字符
phones[]string联系人座机 会过滤掉非数字字符
ims[]stringqq
mails[]string邮箱
faxs[]string传真
notestring备注
addressstring地址
hobbystring兴趣
wechats[]string微信
weibos[]string微博
birthdayint64生日(格林威治时间戳 单位ms)
其他  备注:客户联系人支持自定义的属性,需要在产品界面配置好后,导出一个客户查看相关自定义数据结构

7.0.2 客户跟进人

参数说明

参数是否必须类型描叙
pidint64人员id
fctypeint32(0/1)用于修改跟进人0为添加,1为删除

7.0.3 客户信息

参数说明

参数是否必须类型描叙
namestring客户名字,不能为空串
addrString客户地址
contacts[]contact联系人 联系人信息 见 7.0.1
followers[]follower跟进人 跟进人信息 见 7.0.2
custmnostring客户编号
websites[]string网址
introductionstring备注
create_pidInt64创建人在moa中的id 导入的时候使用op_pid
create_timeInt64创建时间 导入的时候自动生成
modify_pidInt64修改人在moa中的id 导入的时候使用op_pid
modify_timeInt64修改时间 导入的时候自动生成
custmidInt64客户id 导入时自动生成
lbl_doclabel_doc客户标签的描述 见 7.0.4 对应的标签记录 只支持 父子,子标签只能有一个不可多选,对应的id和名字必须要和获取的标签中对应(获取标签见 7.3),否则无法显示
其他  备注:客户支持自定义的属性,标签等字段,需要在产品界面配置好后,导出一个客户查看相关自定义数据结构

7.0.4 客户标签文档

参数说明

参数是否必须类型描叙
clbls[]label_recordlabel_record 描述见 7.0.5
versionInt64标签版本号,只在获取标签的时候返回

7.0.5 客户标签记录

参数说明

参数是否必须类型描叙
lblcustm_labelcustm_label 描述见 7.0.6
sub_lblslabel_record标签记录 见 本节

7.0.6 客户标签

参数说明

参数是否必须类型描叙
lbl_idInt32父标签或者子标签id
lbl_namestring父标签或者子标签名称

7.0.7 客户信息修改控制结构

参数说明

参数是否必须类型描叙
namebooltrue表示修改 客户名字 对应的 custm.name 为修改后的名字
addrbooltrue表示修改 客户地址 对应 custm.addr 为修改后的地址
contactscontact_ctrol描述见7.0.8联系人修改控制结构, 对应的内容为 custm.contacts, 以contact_ctrol.contactid 为对应关系分一下情况,增量更新
followersbool表示跟进人是否需要修改,具体的新增或者删除参考7.0.2 的fctype的设置,fctype的默认值为0
lblbool修改标签,增量更新
custmnobool修改客户编号
websitesbool修改网址
introductionbool修改备注
follow_levelbool修改跟进阶段
  1. 在修改请求中找到

旧的信息中未找到,为新增(contactid请置为-1)

旧的信息找到,为修改

  1. 在修改请求中未找到,旧的信息中找到为删除情况

  2. 在修改请求中 父子标签均有

原始客户信息中,没有则为新增,有则为修改

  1. 在修改请求中 只有父标签

原始客户信息中,有则为删除

7.0.8 联系人修改控制结构

参数说明

参数是否必须类型描叙
contactidInt64表示需要修改的哪一个联系人
sexbool修改联系人性别 取值见客户联系人 7.0.1
namebool修改联系人名字
notebool修改联系人备注
wechatbool修改微信
weibobool修改微博
birthdaybool修改联系人生日
addressbool修改联系人地址
hobbybool修改联系人兴趣爱好
titlebool修改联系人职称
mobilebool修改联系人手机
phonebool修改座机
imbool修改qq
mailbool修改邮件
faxbool修改传真

7.1 导出客户

应用向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/customer/export?access_token=234578fe23d4&start=0&count=1000

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
startint32开始导出客户的位置,不填默认从第一个开始
countint32本次拉取最多返回的客户个数,不填默认值是1000.该值最小取1,最大取2000.

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
customers客户列表
custmid客户id
name客户名字
addr客户地址
note客户备注
contacts联系人列表
contacts.contactid联系人id
contacts.name联系人姓名
contacts.titles联系人职位(数组,可能多个职位)
contacts.mobiles联系人手机号码(数组,可能多个号码)
contacts.phones联系人座机号码(数组,可能多个座机号码)
contacts.ims联系人qq号(数组,可能多个qq号)
contacts.mails联系人邮箱(数组,可能多个邮箱)
contacts.faxs联系人传真(数组,可能多个传真)
contacts.note联系人备注
contacts.wechats联系人微信号(数组,可能多个微信)
contacts.weibos联系人微博(数组,可能多个微博)
followers跟进人列表
followers.pid跟进人的userid,可以通过通讯录的获取用户接口得到详细的跟进人信息。
followers.start_time跟进人开始跟进时间
create_pid创建这个客户的用户的userid,可以通过通讯录获取用户接口得到详细的创建人信息。
create_alias创建这个客户的用户的别名(如果有设置别名的话)
create_time创建客户的时间
.......口袋助理还会返回一些没有列出的字段,不关注忽略即可
next本次导出的最后一个客户标识。若该字段为空,说明已经导出完了所有客户;若不为空,则下次再调用该接口时,把next的值放入请求的start参数中,能够从上一次的导出位置开始。

7.2 导入客户

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/customer/import?access_token=234578fe23d

请求包结构体,请求结构体里面的客户的参数字段,只列举的部分,全部字段和自定义字段,请导出后对应填写

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
op_pidInt64moa中对应的操作人的人员id
custms[]customercustomer的描述 见7.0.3

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数类型描叙
resultInt32不等于0 表示发生了错误
errmsgstring错误描述 正常返回 "ok"
infos[]inforesult 表示这个客户导入的情况, 不为0表示出错, errmsg 为出错信息 custmid 对应这个客户信息的唯一id, infos返回顺序与请求顺序一致

错误说明

resulterrmsg描述
-2147483640"db read faild"读数据失败 请重试
-2147469820"custm dom not found"公司信息节点未找到 请重试
-2147483642"custm name miss"客户名字未填写
-2147469781"followers invalid"无效的跟进人
-2147469808"alloc id faild."分配id失败
0"ok"成功
-2147483639"db write failed."写数据库失败

7.3 获取公司客户标签设置

应用向口袋助理系统发送请求

GET

https://api.kdzl.cn/cgi-bin/customer/getlabel?access_token=234578fe23d

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数类型描叙
resultInt32不等于0 表示发生了错误
errmsgstring错误描述 正常返回 "ok"
lbl_doclabel_doclabel_doc 描述见 7.0.4

错误说明

resulterrmsg描述
-2147483640"db read faild"读数据失败 请重试
0"ok"成功

7.4 修改客户信息

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/customer/modify?access_token=234578fe23d

请求包结构体(修改标签的一个例子),请求结构体里面的客户的参数字段,只列举的部分,全部字段和自定义字段,请导出后对应填写

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
custmInt64见客户信息 7.0.3 其中的客户id必填 根据对应的id修改对应的客户信息,需要被修改成的客户信息
custctrolmodify_ctrolctrl的描述 见7.0.7
op_pidInt64必须是对应客户信息的跟进人中的一个的pid,不然修改会没有权限

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数类型描叙
resultInt32不等于0 表示发生了错误
errmsgstring错误描述 正常返回 "ok"
custmcustomercustomer的描述 见7.0.3 修改后的客户信息

错误说明

resulterrmsg描述
-2147483642"invalid parameter"参数错误
-2147469820"custm dom not found"公司信息节点未找到 请重试
-2147469807"custm has been deleted"客户信息已删除
-2147469803"no permission to modify"没有权限修改
0"ok"成功
-2147483640"db read faild"读数据库失败
-2147483639"db write failed"写数据库失败

7.5 查询客户id

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/customer/query?access_token=234578fe23d

请求包结构体(修改标签的一个例子)

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
phones[]string需要查询的电话号码,联系人手机号码座机号码两个字段全匹配,没有匹配返回空 最多10条

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数类型描叙
resultInt32不等于0 表示发生了错误
errmsgstring错误描述 正常返回 "ok"
infos[]info"phone" 查询的电话号码 "custmids" 匹配的客户id

错误说明

resulterrmsg描述
-2147483642"invalid parameter"参数错误
-2147469820"custm dom not found"公司信息节点未找到 请重试
0"ok"成功

7.6 查询客户信息

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/customer/getcustm?access_token=234578fe23d

请求包结构体(修改标签的一个例子)

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
custmids[]int64需要查询的客户id 最多查询50条

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数类型描叙
resultInt32不等于0 表示发生了错误
errmsgstring错误描述 正常返回 "ok"
custms[]custm_infocustm_info{ result int32 //错误码 errmsg string //错误描述 custm customer //客户信息 描述见 7.0.3 }

错误说明

resulterrmsg描述
-2147483642"invalid parameter"参数错误
-2147469820"custm dom not found"公司信息节点未找到 请重试
0"ok"成功
-2147469807"custm has been deleted"客户已经删除
-2147469821"custm not found"客户不存在
-2147483640"db read faild"读数据库失败

8.流程管理

8.1 流程导出

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/workflow/exportProcess?access_token=234578fe23d4

请求包结构体

参数说明:

参数是否必须类型描叙
typeint32列表类型,0或者不传 全部 1 指定人申请 2 指定人审批 3 抄送给指定人
statusint32流程状态, -1或者不传 0 驳回 1审批中 3 流程结束
satrtTimeint64筛选起始时间
endTimeint64筛选结束时间
pidint64筛选人,值为用户ID,指定人 type 为0 可以不传 type 不为0 必传
startint32筛选起始流程ID,不填为0
limitint32分页每页数量,最大1000

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
retTime最后一条记录时间
list.submitUser提交人id
list.submitUserName提交人姓名
list.submitTime提交时间
list.processDefineId流程定义id
list.processNameId流程名字id
list.processName流程名字
list.processInstId流程类型id
list.processStatus流程状态 0 驳回 1 审批中 3 流程结束
list.froms表单项
list.froms.itemId表单项id
list.froms.label名称
list.froms.xtype数据类型
list.froms.data数据
list.comments审批步骤
list.comments.taskId当前步骤任务id
list.comments.taskName步骤名称
list.comments.reason审批理由 可能为空
list.comments.opt步骤类型 1 提交 2 重新提交 3 正常审批 4 系统通过 5 系统驳回
list.comments.opinion审批类型 1 同意 2 驳回
list.comments.dealTime审批时间
list.comments.pid审批人id
list.comments.userName审批人姓名

9.考勤管理

9.1 获取考勤历史

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/workattendance/get_sign_result?access_token=3300010000000000deec0700000000006f6e1b5a0100d24b

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
gids[]int64部门id,获取该部门成员的考勤结果(无需考勤成员除外)
pids[]int64成员id,获取该成员的考勤结果,gids与pids为空则获取所有成员的考勤结果
startint32分页使用,从第几条开始,第一次拉取时填1
countint32一次拉取多少条,最大值不能超过2000条(后续支持,目前1000条),默认100条,1条表示一个人在筛选时间段内的所有考勤记录
stimeint64开始日期,时间戳,毫秒
etimeint64结束日期,时间戳,毫秒,开始日期与结束日期不能超过1年(后续支持,目前两个月内)

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
reports考勤结果
sign_details正常签到签退结果
not_sign_details未签到签退结果
pid成员id
position签到地址
std_position考勤设置签到地址
longitude经度
latitude纬度
address地址
date考勤日期
index多次考勤0:上午考勤 1:下午考勤
mode0:正常模式 1:加班模式
wa_type, type0:上班考勤 1:下班考勤
offset用户签到签退位置离目标签到签退位置的偏移(单位米)
extra_type0:休息日的加班 1:工作日的加班
sign_wa_time签到签退时间
std_sign_time考勤设置的签到签退时间
range_type0:范围内 1:范围外
out_type考勤范围外时设置的类型 0:出差 1:外勤 10:其他
bound_type0:绑定的手机1:非绑定的手机
time_type0:早退 1:准时 2:迟到
point_type0:经纬度范围内 1:经纬端范围外
auto_sign是否为自动签到0:否 1:是
end0:还有数据没有拉取 1:数据已经拉取完毕

10.销售订单

10.1 导出订单

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/saleorder/export?access_token=234578fe23d4

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
startint32开始导出销售订单的位置,不填默认从最新创建的订单开始拉取,获取当前页订单时,填上一页最后一个订单的order_id
countint32本次拉取最多返回的客户个数,不填默认值是1000.该值最小取1,最大取1000.

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
end列表是否结束,若为false,可继续拉下一页
saleorders销售订单列表
order_id销售订单id
snumber销售订单编号
price销售订单销售金额
create_time销售订单创建时间
ordered_time销售订单下单时间
create_pid创建这个销售订单的用户的userid,可以通过通讯录获取用户接口得到详细的创建人信息。
owner_pid该销售订单归属人的userid,可以通过通讯录获取用户接口得到详细的归属人信息。
status销售订单审批状态
customer_id销售订单客户id,可以通过客户获取接口得到详细的客户信息
products销售订单商品列表
products.product_id销售订单商品id
products.version销售订单商品版本
products.price销售订单商品单价
products.discount销售订单商品折扣,100 表示无折扣
products.sell_count销售订单商品销售总数
products.sell_money销售订单商品销售总金额
products.stock_status销售订单商品出入库状态
custom_props销售订单自定义属性
custom_props.prop_id销售订单自定义属性id
custom_props.prop_name销售订单自定义属性名称
custom_props.prop_value_type销售订单自定义属性类型 0:文本/1:数字/2:YYMMDD格式日期/ 3:YYMMDDHHmm格式日期/4:单选框/5:其他/6:多选框
custom_props.prop_value销售订单自定义属性具体值

11.商品管理

11.1 导出商品

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/product/export?access_token=234578fe23d4

请求包结构体

参数说明

参数是否必须描叙
access_token调用接口凭证
start开始导出商品的位置,不填默认从最新创建的商品开始拉取,获取当前页商品时,填上一页最后一个商品的 product_id
count本次拉取最多返回的商品个数,不填默认值是1000.该值最小取1,最大取1000.

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
end列表是否结束,若为false,可继续拉下一页
products商品列表
product_id商品id
product_name商品名称
price商品单价
status商品状态, 0: 已下架, 1: 上架中
class_id商品分类id
class_name商品分类名称
unit_id商品单位id
unit_name商品单位名称
create_time商品创建时间
create_pid创建这个商品的用户的userid,可以通过通讯录获取用户接口得到详细的创建人信息。

11.2 批量获取商品详情

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/product/details?access_token=234578fe23d4

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
product_infosstruct需要获取详情的商品信息
product_infos.product_idint64商品id
product_infos.versionint32商品 version

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数描叙
resultapi调用结果值。为0表示成功,非0表示失败,失败信息见errmsg
errmsg错误信息
products商品列表
product_id商品id
product_name商品名称
price商品单价
status商品状态, 0表示已下架, 1表示上架中
class_id商品分类id
class_name商品分类名称
unit_id商品单位id
unit_name商品单位名称
create_time商品创建时间
create_pid创建这个商品的用户的userid,可以通过通讯录获取用户接口得到详细的创建人信息。
.......口袋助理还会返回一些没有列出的字段,不关注忽略即可

12.跟进记录

12.0 相关结构描述

12.0.1 会话沟通

参数说明

参数是否必须类型描叙
tkidInt64会话沟通id 自动生成
uidInt64创建人在moa中的人员id
gidInt64创建在moa中所属的部门
cusidInt64该跟进记录对应的客户id
contentString沟通内容 不为空
publish_timeInt64不填自动为当前时间的格林威治时间戳 单位ms, 自己填写的需要做唯一性处理,否则可能会插入失败
modify_timeInt64导入时与自动与publish_time 一致

12.1 导入客户会话沟通

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/custalk/import?access_token=234578fe23d

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
custalks[]custalkcustalk 描述 见12.0.1

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数类型描叙
resultInt32不等于0 表示发生了错误
errmsgstring错误描述 正常返回 "ok"
infos[]inforesult 表示这个客户导入的情况, 不为0表示出错, errmsg 为出错信息 tkid对应这个跟进记录的唯一id, infos返回顺序与请求顺序一致

错误说明

resulterrmsg描述
-214748364"owner(gid | uid) missing"跟进记录 gid uid 存在没有填写的
 "cusid missing"跟进记录客户id 没有填写
 "content empty"跟进记录内容为空
-2147469564"alloc id failed"分配id失败 重试即可
 "db write failed. unique key(publish_time) dup"自己填写的publish_time 与数据库中的出现了冲突,需要修改时间或者不填
0"ok"成功
-2147479039"invalid parameter"参数错误

12.2 导出客户会话沟通

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/cgi-bin/custalk/export?access_token=234578fe23d

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
gids[]int64过滤的部门id 不填不过滤, 不包含子部门
pids[]int64过滤的人员id 不填不过滤 与gids 为并集关系
cusids[]int64过滤的客户id
stimeInt64过滤的起始时间
etimeInt64过滤的结束时间 stime <= publish_time < etime etime - stime <= 31天 etime不填为当前时间,stime不填为etime-31天 单位为ms
skipInt32Skip >= 0, 跳过多少条
countInt320 < count <= 50 一页多少条

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数类型描叙
resultInt32不等于0 表示发生了错误
errmsgstring错误描述 正常返回 "ok"
custalks[]custalk跟进记录信息

错误说明

resulterrmsg描叙
0"ok"成功
-2147483642"param invalid"参数错误
 "count:[1, 50];skip:[0,+oo]"count 和 skip 的值无效
 "time range invalid"stime 和 etime无效
-2147483640"read data failed. retry"读数据失败 请重试
-2147479039"invalid parameter"参数错误

13 外勤轨迹

13.1 获取定位列表

应用向口袋助理系统发送请求

POST

https://api.kdzl.cn/open/api/wt/upload/list?access_token=234578fe23d

请求包结构体

参数说明

参数是否必须类型描叙
access_tokenstring调用接口凭证
position_timeint64获取位置时的时间,分页时取返回值last_info.position_time,第一页按需填写
idint64唯一id,分页时取返回值last_info.id,第一页0或不填均可
countint32一页多少条

返回说明

正常情况下,口袋助理系统返回下述JSON包

参数说明

参数类型描叙
resultint32不等于0 表示发生了错误
errmsgstring错误描述
dataobject数据
endbooltrue表示最后一页
last_infoobject最后一条数据,分页时用
infosarray定位信息列表
position_timeint64获取到位置时的时间,精确到ms
pidint64人员ID
idint64唯一ID
pointobject定位相关信息
longitudefloat32经度
latitudefloat32纬度
timeint64服务端时间,精确到ms
ptint321(轨迹点),2(非轨迹点),-1(无效位置点)
radiusfloat32定位精度半径.单位米
addrstring位置点信息
gen_typeint321(轨迹上传点),2(签到点)

错误说明

resulterrmsg描叙
0""成功