企业内部开发 服务端API 客户联系 回调通知 事件格式
事件格式
最后更新:2023/11/29
可联系渠道经理采购或代理智慧硬件接口已支持设备 联系渠道经理
事件格式
最后更新:2023/11/29

目录

  • 添加企业客户事件
  • 编辑企业客户事件
  • 外部联系人免验证添加成员事件
  • 删除企业客户事件
  • 删除跟进成员事件
  • 客户接替失败事件
  • 客户群创建事件
  • 客户群变更事件
  • 客户群解散事件
  • 企业客户标签创建事件
  • 企业客户标签变更事件
  • 企业客户标签删除事件
  • 企业客户标签重排事件
  • 当用户在客户端或管理端进行某种操作后,会回调相应的事件给开发者。通过API进行的操作不会产生回调。

    应用类型权限要求接收事件开关
    自建应用配置到「客户联系- 可调用接口的应用」中外部联系人变更回调
    代开发应用具有「客户联系->客户基础信息」权限
    第三方应用具有「客户联系->客户基础信息」权限

    特别注意:

     

    添加企业客户事件

    配置了客户联系功能的成员添加外部联系人时,回调该事件

    事件示例:

    <xml>
    	<ToUserName><![CDATA[toUser]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_contact]]></Event>
    	<ChangeType><![CDATA[add_external_contact]]></ChangeType>
    	<UserID><![CDATA[zhangsan]]></UserID>
    	<ExternalUserID><![CDATA[woAJ2GCAAAXtWyujaWJHDDGi0mAAAA]]></ExternalUserID>
    	<State><![CDATA[teststate]]></State>
    	<WelcomeCode><![CDATA[WELCOMECODE]]></WelcomeCode>
    </xml>

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (整型)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_contact
    ChangeType此时固定为add_external_contact
    UserID企业服务人员的UserID
    ExternalUserID外部联系人的userid,注意不是企业成员的账号
    State添加此用户的「联系我」方式配置的state参数,或在获客链接中指定的customer_channel参数,可用于识别添加此用户的渠道
    WelcomeCode欢迎语code,可用于发送欢迎语
    企业可以根据ExternalUserID调用“获取客户详情”读取详情。
    企业可以通过配置客户联系「联系我」方式接口来指定State参数,或在获客链接中指定customer_channel参数,当有客户通过对应的联系方式添加企业成员时,State即为用户配置的state/customer_channel参数。
    注意:如果外部联系人和成员已经开始聊天或已通过「外部联系人免验证添加成员事件」得到的welcomecode发送欢迎语,则不会继续返回welcomecode。

    编辑企业客户事件

    配置了客户联系功能的成员修改外部联系人的备注、手机号或标签时,回调该事件

    事件示例:

    <xml>
    	<ToUserName><![CDATA[toUser]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_contact]]></Event>
    	<ChangeType><![CDATA[edit_external_contact]]></ChangeType>
    	<UserID><![CDATA[zhangsan]]></UserID>
    	<ExternalUserID><![CDATA[woAJ2GCAAAXtWyujaWJHDDGi0mAAAA]]></ExternalUserID>
    </xml>

     

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (整型)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_contact
    ChangeType此时固定为edit_external_contact
    UserID企业服务人员的UserID
    ExternalUserID外部联系人的userid,注意不是企业成员的账号

     

    外部联系人免验证添加成员事件

    外部联系人添加了配置了客户联系功能且开启了免验证的成员时(此时成员尚未确认添加对方为好友),回调该事件

    事件示例:

    <xml>
    	<ToUserName><![CDATA[toUser]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_contact]]></Event>
    	<ChangeType><![CDATA[add_half_external_contact]]></ChangeType>
    	<UserID><![CDATA[zhangsan]]></UserID>
    	<ExternalUserID><![CDATA[woAJ2GCAAAXtWyujaWJHDDGi0mACAAAA]]></ExternalUserID>
    	<State><![CDATA[teststate]]></State>
    	<WelcomeCode><![CDATA[WELCOMECODE]]></WelcomeCode>
    </xml>

     

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (整型)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_contact
    ChangeType此时固定为add_half_external_contact
    UserID企业服务人员的UserID
    ExternalUserID外部联系人的userid,注意不是企业成员的账号
    State添加此用户的「联系我」方式配置的state参数,或在获客链接中指定的customer_channel参数,可用于识别添加此用户的渠道
    WelcomeCode欢迎语code,可用于发送欢迎语
    企业可以根据ExternalUserID调用“获取客户详情”读取详情。
    企业可以通过配置客户联系「联系我」方式接口来指定State参数,或在获客链接中指定customer_channel参数,当有客户通过对应的联系方式添加企业成员时,State即为用户配置的state/customer_channel参数。
    注意:如果外部联系人和成员已经开始聊天,则不会返回welcomecode。

     

    删除企业客户事件

    配置了客户联系功能的成员删除外部联系人时,回调该事件

    事件示例:

    <xml>
    	<ToUserName><![CDATA[toUser]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_contact]]></Event>
    	<ChangeType><![CDATA[del_external_contact]]></ChangeType>
    	<UserID><![CDATA[zhangsan]]></UserID>
    	<ExternalUserID><![CDATA[woAJ2GCAAAXtWyujaWJHDDGi0mACAAAA]]></ExternalUserID>
    	<Source><![CDATA[DELETE_BY_TRANSFER]]></Source>
    </xml>

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (整型)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_contact
    ChangeType此时固定为del_external_contact
    UserID企业服务人员的UserID
    ExternalUserID外部联系人的userid,注意不是企业成员的账号
    Source删除客户的操作来源,DELETE_BY_TRANSFER表示此客户是因在职继承自动被转接成员删除

    删除跟进成员事件

    配置了客户联系功能的成员被外部联系人删除时,回调该事件

    事件示例:

    <xml>
    	<ToUserName><![CDATA[toUser]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_contact]]></Event>
    	<ChangeType><![CDATA[del_follow_user]]></ChangeType>
    	<UserID><![CDATA[zhangsan]]></UserID>
    	<ExternalUserID><![CDATA[woAJ2GCAAAXtWyujaWJHDDGi0mACHAAA]]></ExternalUserID>
    </xml>

     

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (整型)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_contact
    ChangeType此时固定为del_follow_user
    UserID企业服务人员的UserID
    ExternalUserID外部联系人的userid,注意不是企业成员的账号

     

    客户接替失败事件

    企业将客户分配给新的成员接替后,客户添加失败时回调该事件

    事件示例:

    <xml>
    	<ToUserName><![CDATA[toUser]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_contact]]></Event>
    	<ChangeType><![CDATA[transfer_fail]]></ChangeType>
    	<FailReason><![CDATA[customer_refused]]></FailReason>
    	<UserID><![CDATA[zhangsan]]></UserID>
    	<ExternalUserID><![CDATA[woAJ2GCAAAXtWyujaWJHDDGi0mAAAA]]></ExternalUserID>
    </xml>

     

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (整型)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_contact
    ChangeType此时固定为transfer_fail
    FailReason接替失败的原因, customer_refused-客户拒绝, customer_limit_exceed-接替成员的客户数达到上限
    UserID接替失败的企业服务人员的UserID
    ExternalUserID外部联系人的userid,注意不是企业成员的账号
    如果此客户在企业内仍有其他在职的跟进人,则企业仍可以根据ExternalUserID调用“获取客户详情”读取详情,否则无法获取。

     

    客户群创建事件

    有新增客户群时,回调该事件。收到该事件后,企业可以调用获取客户群详情接口获取客户群详情。

    事件示例:

    <xml>
    	<ToUserName><![CDATA[toUser]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_chat]]></Event>
    	<ChatId><![CDATA[CHAT_ID]]></ChatId>
    	<ChangeType><![CDATA[create]]></ChangeType>
    </xml>

     

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (unix时间戳)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_chat
    ChatId群ID
    ChangeType此时固定为create

    客户群变更事件

    客户群被修改后(群名变更,群成员增加或移除,群主变更,群公告变更),回调该事件。收到该事件后,企业需要再调用获取客户群详情接口,以获取最新的群详情。

    事件示例:

    <xml>
    	<ToUserName><![CDATA[ww55ca070cb9b7eb22]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName>
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_chat]]></Event>
    	<ChatId><![CDATA[wrx7HUARsKwGRaQBVKPBTcEyzdHA4HrQ]]></ChatId>
    	<ChangeType><![CDATA[update]]></ChangeType>
    	<UpdateDetail><![CDATA[add_member]]></UpdateDetail>
    	<JoinScene>1</JoinScene>
    	<QuitScene>0</QuitScene>
    	<MemChangeCnt>10</MemChangeCnt>
    	<MemChangeList>
    		<Item>Jack</Item>
    		<Item>Rose</Item>
    	</MemChangeList>
    	<LastMemVer>9c3f97c2ada667dfb5f6d03308d963e1</LastMemVer>
    	<CurMemVer>71217227bbd112ecfe3a49c482195cb4</CurMemVer>
    </xml>

     

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (unix时间戳)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_chat
    ChatId群ID
    ChangeType此时固定为update
    UpdateDetail变更详情。目前有以下几种:
    add_member : 成员入群
    del_member : 成员退群
    change_owner : 群主变更
    change_name : 群名变更
    change_notice : 群公告变更
    JoinScene当是成员入群时有值。表示成员的入群方式
    0 - 由成员邀请入群(包括直接邀请入群和通过邀请链接入群)
    3 - 通过扫描群二维码入群
    QuitScene当是成员退群时有值。表示成员的退群方式
    0 - 自己退群
    1 - 群主/群管理员移出
    MemChangeCnt当是成员入群或退群时有值。表示成员变更数量
    MemChangeList当是成员入群或退群时有值。变更的成员列表
    LastMemVer当是成员入群或退群时有值。 变更前的群成员版本号
    CurMemVer当是成员入群或退群时有值。变更后的群成员版本号


    关于客户群变更事件中,群成员版本号的使用技巧
    客户群变更较为频繁,开发者希望直接通过回调事件来更新群成员,因此事件新增变更成员列表信息。而变更事件的回调过程并不可靠(接收方可能丢失或乱序),为了让开发者能准确判断本次接收到的客户群变更事件是否可信任,变更事件中新增两个版本号:变更前的群成员版本号、变更后的群成员版本号。开发者可以存储每个群的最新版本号,当接收到客户群变更事件后,如果是成员入群或成员退群事件,则对比事件中的变更前版本号与自己存储的最新版本号是否一致,如果一致则说明本次事件可信任,并更新最新版本号;如果不一致,则说明本次收到的事件不可靠,可以通过拉客户群详情来获取最新信息和最新版本号。以此在不需要增加调用量的前提下,实现数据一致性。

    客户群解散事件

    当客户群被群主解散后,回调该事件。
    需注意的是,如果发生群信息变动,会立即收到此事件,但是部分信息是异步处理,可能需要等一段时间(例如2秒)调用获取客户群详情接口才能得到最新结果

    事件示例:

    <xml>
    	<ToUserName><![CDATA[toUser]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_chat]]></Event>
    	<ChatId><![CDATA[CHAT_ID]]></ChatId>
    	<ChangeType><![CDATA[dismiss]]></ChangeType>
    </xml>

     

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (unix时间戳)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_chat
    ChatId群ID
    ChangeType此时固定为dismiss

    企业客户标签创建事件

    企业/管理员创建客户标签/标签组时(包括规则组的标签),回调此事件。收到该事件后,企业需要调用获取企业标签库来获取标签/标签组的详细信息。

    事件示例:

    <xml>
    	<ToUserName><![CDATA[CORPID]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_tag]]></Event>
    	<Id><![CDATA[TAG_ID]]></Id>
    	<TagType><![CDATA[tag]]></TagType>
    	<ChangeType><![CDATA[create]]></ChangeType>
    	<StrategyId>1</StrategyId>
    </xml>

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (unix时间戳)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_tag
    Id标签或标签组的ID
    TagType创建标签时,此项为tag,创建标签组时,此项为tag_group
    ChangeType此时固定为create
    StrategyId标签或标签组所属的规则组id,只回调给“客户联系”应用

     

    企业客户标签变更事件

    当企业客户标签/标签组(包括规则组的标签)被修改时,回调此事件。收到该事件后,企业需要调用获取企业标签库来获取标签/标签组的详细信息。

    事件示例:

    <xml>
    	<ToUserName><![CDATA[CORPID]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_tag]]></Event>
    	<Id><![CDATA[TAG_ID]]></Id>
    	<TagType><![CDATA[tag]]></TagType>
    	<ChangeType><![CDATA[update]]></ChangeType>
    	<StrategyId>1</StrategyId>
    </xml>

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (unix时间戳)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_tag
    Id标签或标签组的ID
    TagType变更标签时,此项为tag,变更标签组时,此项为tag_group
    ChangeType此时固定为update
    StrategyId标签或标签组所属的规则组id,只回调给“客户联系”应用

     

    企业客户标签删除事件

    当企业客户标签/标签组被删除时,回调此事件。删除标签组时,该标签组下的所有标签将被同时删除,但不会进行回调。

     

    事件示例:

    <xml>
    	<ToUserName><![CDATA[CORPID]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_tag]]></Event>
    	<Id><![CDATA[TAG_ID]]></Id>
    	<TagType><![CDATA[tag]]></TagType>
    	<ChangeType><![CDATA[delete]]></ChangeType>
    	<StrategyId>1</StrategyId>
    </xml>

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (unix时间戳)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_tag
    Id标签或标签组的ID
    TagType删除标签时,此项为tag,删除标签组时,此项为tag_group
    ChangeType此时固定为delete
    StrategyId标签或标签组所属的规则组id,只回调给“客户联系”应用

     

    企业客户标签重排事件

    当企业管理员在终端/管理端调整标签顺序时,可能导致标签顺序整体调整重排,引起大部分标签的order值发生变化,此时会回调此事件,收到此事件后企业应尽快全量同步标签的order值,防止后续调用接口排序出现非预期结果。

     

    事件示例:

    <xml>
    	<ToUserName><![CDATA[CORPID]]></ToUserName>
    	<FromUserName><![CDATA[sys]]></FromUserName> 
    	<CreateTime>1403610513</CreateTime>
    	<MsgType><![CDATA[event]]></MsgType>
    	<Event><![CDATA[change_external_tag]]></Event>
    	<Id><![CDATA[TAG_ID]]></Id>
    	<StrategyId><![CDATA[STRATEGY_ID]]></StrategyId>
    	<ChangeType><![CDATA[shuffle]]></ChangeType>
    </xml>

    参数说明:

    参数说明
    ToUserName企业微信CorpID
    FromUserName此事件该值固定为sys,表示该消息由系统生成
    CreateTime消息创建时间 (unix时间戳)
    MsgType消息的类型,此时固定为event
    Event事件的类型,此时固定为change_external_tag
    Id标签组的id,表示只有此标签组内的标签发生了重排,如果为空,则表示全部标签组顺序都发生了变化
    StrategyId规则组id,如果修改了规则组标签的顺序,则回调时会带上此标签所属规则组的id
    ChangeType此时固定为shuffle
    上一篇
    概述
    下一篇
    获客助手事件通知