从简单接口调用到复杂系统集成,逐步提升开发能力
7天掌握API开发与系统集成核心技能
7天掌握API开发与系统集成,实现复杂业务定制开发
能独立完成API调用、数据同步、系统集成、复杂业务定制开发等开发任务
预计学习时间:4-6小时
预计学习时间:6-8小时
💡 技巧: 使用Postman Collection保存常用接口,提升调试效率
预计学习时间:6-8小时
代码示例: Webhook代码示例 | 数据同步方案
预计学习时间:4-6小时
🏆 推荐练习: 搭建一个完整的集成方案(简道云↔ERP系统数据同步)
基础文档
开放平台整体架构与使用说明
→ 查看开放平台完整API参考
所有API接口详细说明与示例
→ 查看API文档鉴权配置
API KEY生成与鉴权配置方法
→ 学习鉴权配置调试工具
在线调试台使用方法与技巧
→ 使用调试台错误处理
API错误码详细说明与解决方法
→ 查看错误码所有开发文档
开放平台所有文档与资源汇总
→ 访问开放平台代码示例
Python/Java/Go API调用示例代码
→ 查看代码示例事件监听
Webhook配置与事件监听完整教程
→ 学习Webhook高级功能
聚合表、智能助手Pro等高级功能API
→ 查看高级API三个常用场景的代码示例,复制即用
import requests
import json
# 配置信息
API_KEY = "your_api_key_here" # 替换为你的API KEY
APP_ID = "your_app_id" # 应用ID
ENTRY_ID = "your_entry_id" # 表单ID
# API端点
url = f"https://www.jiandaoyun.com/api/v1/app/{APP_ID}/entry/{ENTRY_ID}/create"
# 请求头(Bearer Token鉴权)
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
# 要提交的数据
payload = {
"data": {
"_widget_1234567890": {"客户名称": "阿里巴巴"}, # 单行文本
"_widget_1234567891": {"电话": "13800138000"}, # 电话字段
"_widget_1234567892": {"地址": "杭州市余杭区"} # 地址
}
}
# 发送请求
response = requests.post(url, headers=headers, json=payload)
# 处理响应
if response.status_code == 200:
result = response.json()
print("✅ 数据创建成功!")
print(f"数据 ID: {result['data']['_id']}")
else:
print(f"❌ 错误: {response.status_code} - {response.text}")
🔑 鉴权方式
Bearer Token(在Header中传递API KEY)
📊 字段格式
_widget_ID: {"字段名": "值"}
✅ 返回结果
200 OK + 数据ID
const axios = require('axios');
// 配置信息
const API_KEY = 'your_api_key_here'; // 替换为你的API KEY
const APP_ID = 'your_app_id'; // 应用ID
const ENTRY_ID = 'your_entry_id'; // 表单ID
// API端点
const url = `https://www.jiandaoyun.com/api/v1/app/${APP_ID}/entry/${ENTRY_ID}/retrieve`;
// 请求头
const headers = {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
};
// 查询条件:查找所有"审批状态"为"待审批"的数据
const payload = {
"filter": {
"rel": "and", // 条件关系:and/or
"cond": [
{
"field": "_widget_1234567893", // 审批状态字段ID
"method": "eq", // eq(等于), ne(不等于), lt(小于), gt(大于)
"value": "待审批"
}
]
},
"limit": 100, // 每次返回最多100条
"fields": [ // 要返回的字段
"_widget_1234567890", // 客户名称
"_widget_1234567893" // 审批状态
]
};
// 发送请求
axios.post(url, payload, { headers })
.then(response => {
console.log('✅ 查询成功!');
console.log(`找到 ${response.data.data.length} 条数据`);
response.data.data.forEach((item, index) => {
console.log(`${index + 1}. ${item._widget_1234567890} - ${item._widget_1234567893}`);
});
})
.catch(error => {
console.error('❌ 错误:', error.response ? error.response.data : error.message);
});
🔍 查询条件
filter.cond数组(支持and/or)
📦 分页查询
limit + skip实现分页
🎯 字段过滤
fields指定返回字段
from flask import Flask, request, jsonify
import hmac
import hashlib
import json
app = Flask(__name__)
# Webhook签名密钥(在简道云后台配置)
WEBHOOK_SECRET = "your_webhook_secret"
@app.route('/webhook/jiandaoyun', methods=['POST'])
def handle_webhook():
# 1. 验证签名(重要!)
signature = request.headers.get('X-JDY-Signature')
timestamp = request.headers.get('X-JDY-Timestamp')
body = request.get_data(as_text=True)
# 计算签名
sign_str = f"{timestamp}.{body}"
expected_signature = hmac.new(
WEBHOOK_SECRET.encode(),
sign_str.encode(),
hashlib.sha256
).hexdigest()
if signature != expected_signature:
return jsonify({"error": "Invalid signature"}), 403
# 2. 解析事件数据
event_data = json.loads(body)
event_type = event_data.get('op') # data_create / data_update / flow_approve
app_id = event_data.get('appId')
entry_id = event_data.get('entryId')
data = event_data.get('data') # 表单数据
print(f"✅ 收到Webhook事件: {event_type}")
print(f"表单ID: {entry_id}")
print(f"数据: {data}")
# 3. 根据事件类型处理
if event_type == 'data_create':
# 处理新数据创建事件
customer_name = data.get('_widget_1234567890', {})
print(f"新客户: {customer_name}")
# TODO: 同步到你的CRM系统
elif event_type == 'flow_approve':
# 处理审批通过事件
approve_result = event_data.get('result') # agree/reject
print(f"审批结果: {approve_result}")
# TODO: 通知系统审批结果
# 4. 返回200確认收到(必须!)
return jsonify({"status": "success"}), 200
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)
🔐 签名验证
HMAC-SHA256防伪造
📡 事件类型
data_create/update/delete, flow_approve
✅ 响应要求
必须返回200状态码
1️⃣ 获取API KEY
2️⃣ 获取字段ID
3️⃣ 调试建议
4️⃣ 安全建议
© 2015-2035 上海思扬信息科技有限公司 | 沪ICP备16007722号-8