触发【工作流】中【自定义任务】

Trigger workflow custom event
触发【工作流】中【自定义任务】

WorkflowCustomEvents 接口允许触发【工作流】中的【自定义任务】。【自定义任务】是一种将收件人吸入【工作流】(开始参与【工作流】)的方式。同一【工作流】中可以有多个【自定义任务】.
如果同一【自定义任务】在多个【工作流】中被应用,那么用API接口调用它会导致收件人被同时吸入这几个【工作流】.
举例一个营销场景对此的应用:有个【自定义任务】为“完成购买”。我们可能希望通过调用它让完成购买的用户开始进入相应的【工作流】,如:叫做“售后服务与沟通”的【工作流】,或叫做【给第一次完成消费用户的特别优惠商品】的【工作流】.

请求数据格式

触发【工作流】中【自定义任务】请求中的Data元素部分
Data 子元素:
元素/属性 类型 描述
CustomEventId int 目标要被触发的【自定义任务】ID. 必填.
SubscriberId int 目标将要被工作流吸入的收件人ID. 选填*.
CustomSubscriberId string 目标将要被工作流吸入的收件人标识ID. 选填.
SubscriberEmail string 目标将要被工作流吸入的收件人email. 选填*.
SubscriberPhone string 目标将要被工作流吸入的收件人电话号码. 选填.
DataFields complex 跟该【自定义任务】相关的元素集合(DataField 子元素集). 选填.

*SubscriberId, CustomSubscriberId,SubscriberEmail or SubscriberPhone 都可以用来指定收件人. 如果上述超过一个子元素被指定,那么优先顺序将遵从上述表格顺序.

DataField 子元素:
元素/属性 类型 描述
Name string data field数据字段名称. 必填.
Type string data field(数据字段)类型. 支持以下数据类型:

    • Text 文本, e.g. foobar
    • Number 数字, e.g. 123
    • Date 日期, YYYY-MM-DD format, e.g. 2015-11-26
    • Datetime 日期时间, YYYY-MM-DD hh:mm:ss format, e.g. 2015-11-26 12:00:00
    • Boolean 布尔值(是/否), e.g. true, false, 1, 0
Value string data field(数据字段)的值. 必填.

应答格式

如果成功,那么请求将返回 HTTP code “201 Created”. 无额外信息会被返回.

示例

请求 (不含数据字段 data filed的简单调用):
POST https://api.esv2.com/v2/Api/WorkflowCustomEvents HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/xml;charset=UTF-8
Content-Length: 258
Host: api.esv2.com
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
<ApiRequest xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns:xs=”http://www.w3.org/2001/XMLSchema”>
  <ApiKey>test_api_key1</ApiKey>
  <Data>
    <CustomEventId>1</CustomEventId>
    <SubscriberId>1</SubscriberId>
  </Data>
</ApiRequest>
请求 (含数据字段 data filed的调用):
POST https://api.esv2.com/v2/Api/WorkflowCustomEvents HTTP/1.1

Accept-Encoding: gzip,deflate
Content-Type: application/xml;charset=UTF-8
Content-Length: 1002
Host: api.esv2.com
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
<ApiRequest xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns:xs=”http://www.w3.org/2001/XMLSchema”>
  <ApiKey>test_api_key1</ApiKey>
  <Data>
    <CustomEventId>1</CustomEventId>
    <SubscriberId>1</SubscriberId>
    <DataFields>
      <DataField>
        <Name>test_text</Name>
        <Type>Text</Type>
        <Value>foobar</Value>
      </DataField>
      <DataField>
        <Name>test_number</Name>
        <Type>Number</Type>
        <Value>123</Value>
      </DataField>
      <DataField>
        <Name>test_date</Name>
        <Type>Date</Type>
        <Value>2015-01-23</Value>
      </DataField>
      <DataField>
        <Name>test_datetime</Name>
        <Type>Datetime</Type>
        <Value>2015-01-23 12:34:56</Value>
      </DataField>
      <DataField>
        <Name>test_boolean</Name>
        <Type>Boolean</Type>
        <Value>false</Value>
      </DataField>
    </DataFields>
  </Data>
</ApiRequest>