帮助中心SDK文档 › 示例代码
SDK

示例代码仓库

覆盖 Java、Python、Node.js 三种语言的完整集成示例,快速上手翠鸟 SDK

Java 示例

Java SDK 支持 JDK 8+,通过 Maven 或 Gradle 引入依赖。

Maven 依赖

XML
<dependency> <groupId>com.cuiniao</groupId> <artifactId>cuiniao-java-sdk</artifactId> <version>3.2.0</version> </dependency>

初始化客户端并上传内容

JAVA
import com.cuiniao.sdk.CuiniaoClient; import com.cuiniao.sdk.model.Resource; import com.cuiniao.sdk.request.UploadRequest; public class UploadExample { public static void main(String[] args) { // 初始化客户端 CuiniaoClient client = new CuiniaoClient.Builder() .apiKey(System.getenv("CUINIAO_API_KEY")) .build(); // 上传 PDF 内容资源 Resource resource = client.resources().upload( UploadRequest.builder() .file(new java.io.File("whitepaper.pdf")) .title("B2B内容营销白皮书2024") .type("pdf") .trackVisitors(true) .onProgress(pct -> System.out.printf("上传进度: %d%%\n", pct)) .build() ); System.out.println("上传成功,资源ID: " + resource.getId()); System.out.println("访问链接: " + resource.getUrl()); } }

查询并处理线索

JAVA
import com.cuiniao.sdk.model.Lead; import com.cuiniao.sdk.request.LeadListRequest; import java.util.List; // 获取最近7天高分线索 List<Lead> leads = client.leads().list( LeadListRequest.builder() .days(7) .minScore(60) .sortBy("score") .order("desc") .limit(20) .build() ); for (Lead lead : leads) { System.out.printf("[%d分] %s (%s) - %s\n", lead.getEngagementScore(), lead.getName(), lead.getCompany(), lead.getEmail() ); }

Python 示例

Python SDK 支持 Python 3.8+,通过 pip 安装。

BASH
pip install cuiniao-sdk

初始化并查询分析数据

PYTHON
import os from cuiniao import CuiniaoClient # 初始化 client = CuiniaoClient(api_key=os.environ["CUINIAO_API_KEY"]) # 查询最近30天总览数据 overview = client.analytics.overview(days=30) print(f"总浏览量: {overview['summary']['total_page_views']}") print(f"线索数: {overview['summary']['total_leads']}") print(f"转化率: {overview['summary']['lead_conversion_rate']}")

自动同步线索到 CRM

PYTHON
from cuiniao import CuiniaoClient from cuiniao.models import LeadStatus client = CuiniaoClient(api_key=os.environ["CUINIAO_API_KEY"]) # 拉取所有新建线索 new_leads = client.leads.list(status="new", days=1) for lead in new_leads["data"]: # 同步到 CRM result = client.leads.sync_crm(lead["id"]) if result["synced"]: print(f"线索 {lead['name']} 已同步至 Salesforce: {result['crm_record_id']}") # 更新状态为已联系 client.leads.update(lead["id"], status=LeadStatus.CONTACTED)

Node.js 示例

Node.js SDK 支持 Node.js 16+,提供 CommonJS 和 ESM 两种模块格式。

BASH
npm install @cuiniao/sdk

创建 CTA 并挂载到内容

JAVASCRIPT
const { CuiniaoClient } = require('@cuiniao/sdk'); const client = new CuiniaoClient({ apiKey: process.env.CUINIAO_API_KEY }); async function setupCTA() { // 创建留资表单 CTA const cta = await client.cta.create({ name: 'Q2产品演示申请', type: 'form', fields: [ { name: 'name', label: '姓名', type: 'text', required: true }, { name: 'email', label: '工作邮箱', type: 'email', required: true }, { name: 'company', label: '公司', type: 'text', required: true } ], submitLabel: '申请演示' }); console.log('CTA 创建成功:', cta.id); // 挂载到内容资源 await client.resources.attachCta('res_7fK2mPqLxNz', { ctaId: cta.id, displayTrigger: 'scroll_50', position: 'inline' }); console.log('CTA 挂载完成'); } setupCTA().catch(console.error);

监听 Webhook 事件(Express.js)

JAVASCRIPT
const express = require('express'); const { WebhookVerifier } = require('@cuiniao/sdk'); const app = express(); const verifier = new WebhookVerifier(process.env.CUINIAO_WEBHOOK_SECRET); app.post('/webhooks/cuiniao', express.raw({ type: 'application/json' }), (req, res) => { const signature = req.headers['x-cuiniao-signature']; if (!verifier.verify(req.body, signature)) { return res.status(400).send('Invalid signature'); } const event = JSON.parse(req.body); if (event.type === 'lead.created') { const lead = event.data; console.log(`新线索: () 评分: `); // 触发内部通知或 CRM 同步逻辑... } res.status(200).json({ received: true }); }); app.listen(3000);