# 数据回传 API

# 消费订单回传

简要描述:用户购买书籍、章节后合作方需要将订单回传给阅文 注意:单用户多章购买时,请批量传入ccids(单批次不建议超过500条),不要并发请求多次。因为接口加锁在cbid+openid上,如果同一个用户、对一本书并发购买,可能导致某些请求失败。

请求方式:POST(HTTPS)

请求地址

https://cpapi-i.yuewen.com/api/v1/report/bookconsume

请求参数:查看通用请求参数

请求参数 是否必须 类型 说明
cbid string 书籍ID
type int 购买类型:1按章购买,2按本购买
ccids string 按章购买时必传,格式为:章节id:章节价格(虚拟币),多章以英文逗号分隔。例如:1111:5,222:5,3333:5
openid string 用户ID
paymoney int 消费有价币,多章时为消费有价币总和
paymoneyfree int 消费免费币,多章时为消费免费币总和
paytime int 消费时间戳(秒)
orderid string 消费唯一订单号

返回字段:(查看通用返回字段

请求示例:

  • 使用场景1,书籍信息字段 chargeType=1 按章购买: 用户user1按章批量购买了cbid=10000的两个章节,ccid为20000、20001,两章价格分别为10、15虚拟币(取自章节信息amount字段) ,用户使用了20有价币+5免费币,则请求示例如下:
curl POST 'https://cpapi-i.yuewen.com/api/v1/report/bookconsume'
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'appflag=test' \
  --data-urlencode 'timestamp=1700000000' \
  --data-urlencode 'sign=XXXXX' \
  --data-urlencode 'cbid=10000' \
  --data-urlencode 'type=1' \
  --data-urlencode 'ccids=20000:10,20001:15' \
  --data-urlencode 'openid=user1' \
  --data-urlencode 'paymoney=20' \
  --data-urlencode 'paymoneyfree=5' \
  --data-urlencode 'paytime=1700000000' \
  --data-urlencode 'orderid=order1'
  • 使用场景2,书籍信息字段 chargeType=2 整本购买: 用户user1整本购买了书籍cbid=10000,整本价格1000虚拟币(取自书籍信息totalPrice字段),仅使用有价币购买,则请求示例如下:
curl POST 'https://cpapi-i.yuewen.com/api/v1/report/bookconsume'
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'appflag=test' \
  --data-urlencode 'timestamp=1700000000' \
  --data-urlencode 'sign=XXXXX' \
  --data-urlencode 'cbid=10000' \
  --data-urlencode 'type=2' \
  --data-urlencode 'openid=user1' \
  --data-urlencode 'paymoney=1000' \
  --data-urlencode 'paytime=1700000000' \
  --data-urlencode 'orderid=order1'

返回示例:

{
  "code": 0,
  "message": "Success"
}

# 充值订单回传

简要描述:用户充值虚拟币后,合作方将订单回传给阅文 注意:单批次不可超过1000条

请求方式:POST(HTTPS)

请求地址

https://cpapi-i.yuewen.com/api/v1/report/charge

请求参数:查看通用请求参数

请求参数 是否必须 类型 说明
logs string 格式为:用户openid:订单号:充值金额(人民币分):充值时间戳(秒),多条记录以英文逗号分隔。单次请求不超过1000条,例如:user1:order1:200:1700000000,user2:order2:300:1700000000

返回字段:(查看通用返回字段

请求示例:

curl POST 'https://cpapi-i.yuewen.com/report/charge'
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'appflag=test' \
  --data-urlencode 'timestamp=1700000000' \
  --data-urlencode 'sign=XXXXX' \
  --data-urlencode 'logs=user1:order1:100:1700000000,user2:order2:200:1700000000'

返回示例:

{
  "code": 0,
  "message": "Success"
}

# 阅读时长回传

简要描述:用户阅读章节后,合作方将阅读时长回传给阅文 注意:阅读页需要维护一个开始阅读时间戳(毫秒),在用户切章(手动点击上下章、目录切章、连续阅读切章)或者阅读持续一定时长(如30秒) 或退出阅读页时,上报一次并重置开始阅读时间戳,单批次不可超过1000条

请求方式:POST(HTTPS)

请求地址

https://cpapi-i.yuewen.com/api/v1/report/reading

请求参数:查看通用请求参数

请求参数 是否必须 类型 说明
logs string 格式为:用户openid:作品cbid:章节ccid:开始阅读时间戳(毫秒):阅读持续时间(毫秒):是否读完本章(1读完、0未读完),多条记录以英文逗号分隔。单次请求不超过1000条,例如:user1:10000:10001:1700000000000:300000:0,user2:20000:20001:1700000000000:600000:1

返回字段:(查看通用返回字段

请求示例:

curl POST 'https://cpapi-i.yuewen.com/report/reading'
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'appflag=test' \
  --data-urlencode 'timestamp=1700000000' \
  --data-urlencode 'sign=XXXXX' \
  --data-urlencode 'logs=user1:10000:10001:1700000000000:300000:0,user2:20000:20001:1700000000000:600000:1'

返回示例:

{
  "code": 0,
  "message": "Success"
}