@cowliss/sdk

中文文档
0.40.0发布于 2026/11/08MITTypeScriptES Module零依赖近 30 天下载 3232

Cowliss 摄取 API 的 TypeScript 客户端: 识别,跟踪和批量.

中文使用文档
文档目录4 节
  1. 安装
  2. 用这个
  3. 文档
  4. 许可证

@ cowliss/ sdk (英语)

Cowliss 摄取 API 的 TypeScript 客户端. 发送 identify 财务报告和审定财务报表 track 从您的应用程序, 和 Cowliss 保存简介,事件 以及从中产生的自动化.

到处跑 fetch 22号及以上、邦、德诺、边缘运行时间和 浏览器. 零依赖性,仅限无害环境管理,完全输入.

安装

npm install @cowliss/sdk

用这个

import { Cow } from "@cowliss/sdk";

const cow = new Cow({
  apiKey: process.env.COW_API_KEY!,
  sourceId: process.env.COW_SOURCE_ID!,
  baseUrl: "https://api.cowliss.com",
});

await cow.identify({
  identifiers: { userId: "u_1", email: "[email protected]" },
  traits: { plan: "pro" },
});

await cow.track({
  identifiers: { userId: "u_1" },
  event: "checkout.completed",
  properties: { amount: 4900, currency: "usd" },
});

从自己的代码发送信息, 带有您所推动的模板或身体 写入内线。 在邮件的电子邮件地址上地址, 没有人可以关闭, 例如 作为收据,或作为邮件的简介,其收件人可以,例如每周 报告:

await cow.emails.send({
  to: "[email protected]",
  from: "Acme <[email protected]>",
  template: { key: "receipt", props: { orderId: "A-2291" } },
});

await cow.emails.send({
  to: { userId: "shop_1" },
  from: "Acme <[email protected]>",
  template: { key: "weekly-report", props: { visits: 120 } },
});

一旦传递了信息,就解决了问题 送货号码 给一个配置的信息会转到它的 email 特质,跳过任何人 他关闭了这个目标, 并携带一个不订阅链接。 寄过去 遵循一条规则或等待属于自动化.

用自己的道具将一个被推到的模板复制到地址 在不发送的情况下:

const { subject, html } = await cow.templates.preview({ key: "receipt", props: { name: "Ada" } });

从您自己的“ 管理” 发送个人到他们主机的电子邮件首选项页面 电子邮件首选项 。 链接工作了一个小时,所以要求它 单击:

const { url, expiresAt } = await cow.preferences.link({ to: { userId: "shop_1" } });

每一次通话都带着 identifiers从善良到价值的地图。 牛群生成 描述文件 id 并解析地图到它, 所以一个包含两个的呼叫 标识符是连接两个配置文件的链接。 没有别名.

identify 返回配置文件, track 返回存储的事件,并 batch 在一个回填请求中导入了其中的许多。 每个调用名 它通过: 设置 sourceId 一次在客户端,或通过一个 当单个进程写入多个应用程序时,每个调用.

退货是为你处理的 联系不到Cowliss的电话,或者 Cowliss 无法完成、 退后并尝试两次; 生成 messageId 与每道赛道相去相去,所以在失去反应后再试一次 写两次事件。 每项尝试都有自己的最后期限(timeoutMs, (中文(简体) ), 默认为10秒, 30对一批), 所以一个停滞的Cowliss不能 保持你的密码。 A 类 呼叫拒绝的 Cowliss 没有重审: 它扔出一个 CowError 携带 理由,你觉得呢.

你不必等电话. await cow.track(...) 抛出失败, 一如既往; cow.track(...) 立即返回并可以 永远不要以无动于衷的拒绝来推翻你的过程。 过 onError 改为 如果失败了,你没有等待的电话 否则会吞下.

文档

页面存档备份,存于互联网档案馆. docs.cowliss.com

许可证

麻省理工学院

版本与发布记录

@cowliss/sdk 共发布 46 个版本,首次发布于 2026/09/08;过去 12 个月发布了 46 个版本。

版本发布日期距今
0.40.0latest2026/11/082 天前
0.39.02026/11/082 天前
0.38.02026/11/082 天前
0.37.02026/11/074 天前
0.36.02026/11/074 天前
0.35.02026/11/038 天前

关于 @cowliss/sdk 的常见问题

@cowliss/sdk 是什么?

Cowliss 摄取 API 的 TypeScript 客户端: 识别,跟踪和批量.

如何安装 @cowliss/sdk?

在项目目录运行 npm install @cowliss/sdk,或使用 pnpm add / yarn add / bun add。

@cowliss/sdk 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cowliss/sdk 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@cowliss/sdk 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@cowliss/sdk 可以商用吗?

@cowliss/sdk 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@cowliss/sdk 的下载量有多少?

根据 npm 官方下载统计,@cowliss/sdk 在 2026/10/11 – 2026/11/09 这 30 天内被下载 3,232 次,日均约 108 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cowliss/sdk 还在维护吗?

最新版本 0.40.0 发布于 2026/11/08(2 天前);至今共发布 46 个版本,其中过去 12 个月发布了 46 个;首次发布于 2026/09/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。