간단한 인터페이스 호출부터 복잡한시스템통합,단계별향상개발기능
시스템통합핵심기술로 7일숙달API개발
시스템통합을 통한 7일숙달API개발, 실현의 복잡성비즈니스맞춤개발
독립적으로 작업할 수 있는 능력API호출、데이터동기화、시스템통합、복잡한비즈니스맞춤개발개발 작업
상상학습횟수:4-6시간
상상학습횟수:6-8시간
💡 기교: 활용Postman Collection공통 인터페이스 저장,향상테스트 중 구성 요소 조정효율성
상상학습횟수:6-8시간
코드 예제: Webhook코드 예제 | 데이터동기식 프로그램
상상학습횟수:4-6시간
🏆 권장 운동: 구축안완전의 통합프로그램 (제인 도 윤(1926-), 미국 외교관 겸 정치가, 2009년부터 중화민국 대통령↔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}")
🔑 인증방식
무기명 토큰 (헤더플로트API 키 내)
📊 필드 형식
_widget_ID: {"필드 이름": "value"}
✅ 결과 반환
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
'Content-Type': 'application/json'
};
// 쿼리 조건: 데이터 "보류 중"에 대해 모두 찾기 "승인 상태".
const payload = {
"filter": {
"rel": "and", // 조건부 관계: 및/또는
"cond": [
{
"field":"_widget_1234567893", // 승인 상태 필드ID
"method": "eq", // eq(와 같아야 합니다.) , NE(같지 않음 ≠), LT(미만), GT(아웃웨이트)
"value": "보류 중"
}
]
}, }
"limit": 100, // 환급당 최대 100개 항목
"fields": [ //환할 필드
"_widget_1234567890", // 고객의 소리 이름
"_widget_1234567893", // 승인 상태
]
};
// 요청 보내기
axios.post(url, 페이로드, { 헤더 })
.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배열(adjuvantand/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️⃣ gainAPI KEY
2️⃣ 필드 가져오기ID
3️⃣ 디버깅 권장 사항
4️⃣ 보안제안
© 2015-2035 상하이 쑤양 정보기술유한공사 | ICP License: ICP비16007722호-8