API Reference
API ป้องกันการฉ้อโกง
SDK สำหรับเบราว์เซอร์ในการระบุตัวตน, webhooks ที่ลงนามสำหรับเหตุการณ์แบบเรียลไทม์ และ workspace management API ทุกสิ่งที่คุณต้องการเพื่อหยุดการฉ้อโกงที่ระดับอุปกรณ์
Endpoints
@tracio/sdkระบุตัวตนผู้เข้าชมในเบราว์เซอร์ด้วย client SDK คืนค่า visitor ID ที่เสถียรและคำตัดสินบอตโดยไม่ต้องวนกลับไปที่เซิร์ฟเวอร์ public key ปลอดภัยที่จะส่งไปในโค้ดฝั่งไคลเอนต์
Request
import { Tracio } from '@tracio/sdk'const tracio = Tracio.init({ publicKey: '5ca175fc...' })const result = await tracio.getResult()Response
{ "visitorId": "X7fh2Hg9LkMn3pQr", "bot": { "detected": false, "confidence": 2, "reasons": [] }}/webhook/tracioTRACIO ส่งเหตุการณ์ที่ลงนามไปยัง endpoint ของคุณทุกครั้งที่มีการระบุตัวตน ตรวจสอบ header X-Tracio-Signature จากนั้นดำเนินการกับ payload JSON แบบ flat นี่คือพื้นผิวเหตุการณ์ฝั่งเซิร์ฟเวอร์ — ไม่มีการอ่าน REST แบบ poll-by-requestId
Request
POST /webhook/tracio HTTP/1.1Host: your-server.comContent-Type: application/jsonX-Tracio-Signature: t=1710432000,v1=5257a869e7ecebed...Response
{ "requestId": "1710432000_abc123", "visitorId": "X7fh2Hg9LkMn3pQr", "bot": { "result": "human", "type": "", "score": 0.02 }, "identification": { "confidence": 0.95, "visitType": "returning" }, "network": { "vpn": false, "proxy": false, "tor": false, "datacenter": false }, "decision": { "action": "allow", "riskScore": 4 }}/api/v1/workspaces/{workspaceId}/webhooksลงทะเบียน webhook endpoint ผ่าน workspace management API ตรวจสอบสิทธิ์ด้วย dashboard session (Clerk) JWT ของคุณและตรวจกับบทบาทใน workspace ของคุณ signing secret จะถูกคืนค่าเพียงครั้งเดียวตอนสร้าง
Request
curl -X POST \ https://app.tracio.ai/api/v1/workspaces/{workspaceId}/webhooks \ -H "Authorization: Bearer <clerk-session-jwt>" \ -H "Content-Type: application/json" \ -d '{ "url": "https://your-server.com/webhook/tracio", "events": [] }'Response
{ "ok": true, "data": { "id": "wh_abc123", "url": "https://your-server.com/webhook/tracio", "events": [], "signingSecret": "f3a9…<hex>", "status": "active", "createdAt": "2024-03-12T16:00:00Z" }}/api/v1/workspaces/{workspaceId}/visitors/{visitorId}ค้นหาประวัติที่จัดเก็บไว้ของผู้เข้าชมผ่าน workspace management API ตรวจสอบสิทธิ์ด้วย dashboard session (Clerk) JWT ของคุณ รองรับคำขอสิทธิ์การเข้าถึงข้อมูลตาม GDPR
Request
curl \ https://app.tracio.ai/api/v1/workspaces/{workspaceId}/visitors/X7fh2Hg9LkMn3pQr \ -H "Authorization: Bearer <clerk-session-jwt>"Response
{ "ok": true, "data": { "visitorId": "X7fh2Hg9LkMn3pQr", "firstSeenAt": "2024-03-01T08:11:00Z", "lastSeenAt": "2024-03-16T14:22:01Z", "visits": 12 }}การตรวจสอบสิทธิ์
TRACIO ใช้ข้อมูลรับรองสามชุด หนึ่งชุดต่อหนึ่งพื้นผิว: public key สำหรับ browser SDK, dashboard session (Clerk) JWT ของคุณสำหรับ workspace management API และ HMAC signing secret เพื่อตรวจสอบการส่ง webhook ไม่มี API secret แบบแยกเดี่ยว
# Client SDK — public key (safe to ship in the browser)Tracio.init({ publicKey: '5ca175fc...' })# Workspace management API — dashboard session (Clerk) JWT,# additionally checked against your workspace role (RBAC)Authorization: Bearer <clerk-session-jwt># Webhook verification — HMAC-SHA256 over "<t>.<rawBody>"X-Tracio-Signature: t=<unix>,v1=<hmac_sha256_hex>ขีดจำกัดอัตรา
ขีดจำกัดคิดต่อ workspace การตอบกลับของ Management API มี header X-RateLimit-Limit, X-RateLimit-Remaining และ Retry-After
| แพ็กเกจ | การระบุตัวตน | เหตุการณ์ webhook | Management API | การค้นหาผู้เข้าชม |
|---|---|---|---|---|
| ฟรี | 100/day | 100/day | 50/day | 100/day |
| Pro | 1,000/min | 1,000/min | 500/min | 1,000/min |
| Enterprise | 10,000/min | 10,000/min | 5,000/min | 10,000/min |
รหัสข้อผิดพลาด
ข้อผิดพลาดทั้งหมดคืนค่า JSON body พร้อมฟิลด์ code, message และ details
รูปแบบการตอบกลับข้อผิดพลาด
{ "error": { "code": 429, "message": "Rate limit exceeded", "details": "1000 requests per minute limit reached for this workspace", "retryAfter": 12 }}เริ่มสร้าง
รับ API key ของคุณและสร้างคำขอระบุตัวตนครั้งแรกภายในไม่ถึง 5 นาที