应用场景

如何配置

首先登陆 网页 然后点击右上角的小齿轮 (⚙️) 进入设置页面

点击下方的 webhook 的部分点击新建。创建自己的 webhook. 配置中的参数分别为

webhook 参数

在配置完成后点击提交即可

⚠️ 每个阶段仅支持一个 webhook

阶段 创建摘录后 会在解析完书摘数据后以 HTTP POST 的形式触发给对应的服务器。query 参数中包含一个 ownerId 代表用户在 ClippingKK 中的用户 ID。而 payload 是 json 形式的,其类型签名为

type Clipping struct {
  // ClippingKK 服务内部 id. 可以此拼接 clippingkk 服务的 url
	ID      int    `json:"id"`
	Title   string `json:"title"`
	Content string `json:"content"`
  // 豆瓣书籍 id. 在初次上传时只是通过简单的字符串匹配书籍名称。此数据不保证正确
	BookID  string `json:"bookId"`
	PageAt  string `json:"pageAt"`
  // 一段唯一性 hash 可使用此字段避免重复数据
	DataID  string `json:"dataId"`
  // 是否在客户端可见
	Visible bool   `json:"visible"`
	// user id
	CreatedBy int       `json:"createdBy"`
	CreatedAt time.Time `json:"createdAt"`
	UpdatedAt time.Time `json:"updatedAt"`
  // 被废弃了,请勿使用
	Sequence  int       `json:"seq"`
  // 书籍来源。暂未启用: 1: kindle 2: 微信读书
	Source    int       `json:"source"`
}

其中time.Time 是符合 RFC3339 的字符串。

请求附带的 Header 参数

示例 cURL 如下

curl -X POST\\
  -A 'clippingkk-api/v1'\\
  -H 'X-CKVersion:d4332dfpq'\\
  -H 'Content-Type:application/json'\\
  -d '[{"id":0,"title":"Bad Blood: Secrets and Lies in a Silicon Valley Startup","content":"the reader called a photomultiplier","bookId":"30473907","pageAt":"27","dataId":"e75095e2cc9e31463dbba3fe4197d3a5f15b1c78675462353565a14a1f044e57","visible":true,"createdBy":2,"createdAt":"2019-02-19T19:32:33Z","updatedAt":"2021-08-25T21:07:10.9602076+08:00","seq":-1,"source":1}]'\\
  '<https://4d83010bcd.endpoints.dev?ownerId=2>'