ทำความเข้าใจว่าใครกำลังเรียกใช้ API ของคุณ
เพิ่มบริบทของตัวกระทำให้กับทุกคำขอ API: ไคลเอนต์ใดเป็นผู้เรียก ความแข็งแรงของหลักฐานเป็นอย่างไร และ API ของคุณควรจัดการอย่างไร แยกตามเส้นทาง
POST /api/v1/orders
หลักฐาน
ทราฟฟิกจาก API key ที่ไม่มีบริบทเบราว์เซอร์และมีรูปแบบคำขออัตโนมัติ
นโยบายของคุณ: ขอ credential ที่เข้มงวดกว่าก่อนสร้างคำสั่งซื้อ
API key ไม่ใช่ตัวตน และตัวตนก็ไม่ใช่สิทธิ์อนุญาต
ทราฟฟิกส่วนใหญ่ของ API มาพร้อม credential ที่บอกว่า account ใดเป็นผู้จ่าย ไม่ได้บอกว่า client ใดเป็นผู้เรียกหรือใครเป็นผู้สั่ง บาง client เซ็น request ของตน บางรายเพียงประกาศชื่อ และอีกหลายรายไม่บอกอะไรเลย
Proof of Actor แยกสามคำถามที่ทุก API ต้องตอบออกจากกัน เพื่อให้แต่ละข้อได้รับหลักฐานและการควบคุมที่เหมาะสม
- ใครกำลังเรียกตัวตนของตัวกระทำ: ลายเซ็น การประกาศ หรือการอนุมาน
- ข้อมูลรับรองใดคีย์ API, OAuth token หรือเซสชันของคุณ
- มันอาจทำอะไรได้บ้างการอนุญาตและนโยบายของคุณ
Proof of Actor ตอบคำถามแรก ส่วนสแต็กของคุณดูแลอีกสองข้อ
ทีม API ทำอะไรกับบริบทของ actor
ระบุไคลเอนต์ที่ลงนามแล้ว
ตรวจสอบลายเซ็นของคำขอกับคีย์ที่เผยแพร่ และดูว่าคำขอนั้นเป็นของผู้ปฏิบัติงานรายใด
ให้ถือว่า declaration เป็น declaration
บันทึกชื่อไคลเอนต์ที่ประกาศเอง และแยกออกจากข้อมูลประจำตัวที่ Verified
นโยบายต่อเส้นทาง
อนุญาตการอ่านที่มีผลกระทบต่ำได้อย่างเสรี และขอข้อมูลเพิ่มสำหรับการเขียนและ endpoint ที่มีผลกระทบสูง
ดูผู้เรียกใช้งานทุกราย
ทำความเข้าใจว่า client ใดใช้ endpoint ใด รวมถึง endpoint ที่เป็น Unknown
แยก credentials ออกต่างหาก
API keys และ OAuth ยังคงเป็นตัวตัดสินการเข้าถึง ส่วนบริบทของ actor จะเพิ่มข้อมูลว่าใครเป็นผู้เรียก
แผนสำหรับ Unknown
กำหนดว่าเมื่อ caller ไม่ให้หลักฐานที่ใช้งานได้จะเกิดอะไรขึ้น ราย route
01 · ตรวจจับ
หลักฐานจากทุก request
การเชื่อมต่อฝั่งเซิร์ฟเวอร์, edge และ HTTP API จะอ่านลายเซ็นคำขอ, รายละเอียดไคลเอนต์ที่แจ้งไว้ และบริบทคำขอ แล้วระบุฐานของแต่ละรายการ
- ตรวจสอบ HTTP message signatures เทียบกับคีย์ที่เผยแพร่แล้ว
- ชื่อ client ที่ประกาศไว้ซึ่งบันทึกเป็นการประกาศ
- ขอข้อมูลบริบทของคำขอจากเซิร์ฟเวอร์, gateway หรือ edge ของคุณ
- ลายเซ็นของคำขอvalid · sample-crawler.exampleverified
- คำประกาศของไคลเอนต์"research-assistant/2.1"declared
- การโต้ตอบในเบราว์เซอร์pointer + keyboard eventsinferred
- ไม่มี signals ที่รองรับroute not instrumentedunknown
02 · ทำความเข้าใจ
รู้ว่าใครใช้ endpoint ใด
ดูสัดส่วนของ actor ในแต่ละเส้นทาง ว่าผู้ดำเนินการรายใดเรียกใช้งานคุณมากที่สุด และผู้เรียกใช้งานที่ไม่ทราบมักกระจุกตัวที่ใด
- ผู้เรียกตามเส้นทางและผู้ปฏิบัติงาน
- หลักฐานเบื้องหลังการจัดประเภทแต่ละรายการ
- อัตรา Unknown ต่อ endpoint
- /dashboardไม่ทราบ 7%
- /api/v1/catalogไม่ทราบ 15%
- /support/ticketsไม่ทราบ 8%
- /signupไม่ทราบ 21%
03 · กำหนดเส้นทาง
การควบคุมที่สอดคล้องกับระดับผลกระทบ
เขียนนโยบายระดับ route: การตอบกลับแบบมีโครงสร้างสำหรับ agent ที่ Verified, ขีดจำกัดมาตรฐานสำหรับไคลเอนต์ที่ Declared, และข้อมูลรับรองที่เข้มงวดยิ่งขึ้นสำหรับการกระทำที่มีผลกระทบสูง
- นโยบายตามเส้นทาง คลาส และ basis
- ยกระดับไปใช้ข้อมูลรับรองที่แข็งแกร่งกว่าเมื่อจำเป็น
- สังเกต ดูตัวอย่าง แล้วจึงบังคับใช้
- /api/v1/catalogenforceเอเจนต์อนุญาต · API แบบมีโครงสร้าง
- /support/ticketsenforceมนุษย์ + AIอนุญาต · ติดป้ายว่าใช้ Human + AI
- /account/*previewไม่ทราบคงการตรวจสอบเดิมไว้
- /api/v1/orderspreviewเอเจนต์ต้องใช้ข้อมูลยืนยันตัวตนที่เข้มงวดกว่า
ตัวอย่างการตัดสินใจ
จาก request สู่ผลลัพธ์และการตัดสินใจของคุณ
Agent ที่ Verified อ่านแคตตาล็อกของคุณ
คำขอ
GET /api/v1/catalog
ผลลัพธ์
เอเจนต์basis: verifiedการตัดสินใจของคุณ
อนุญาตด้วย rate limit สำหรับเอเจนต์และการตอบกลับแบบมีโครงสร้าง
ไคลเอนต์อัตโนมัติทำการสั่งซื้อ
คำขอ
POST /api/v1/orders
ผลลัพธ์
เอเจนต์basis: inferredการตัดสินใจของคุณ
ขอ credential ที่เข้มงวดกว่าของแอปก่อนสร้างคำสั่งซื้อ
ไคลเอนต์ที่ไม่มีหลักฐาน
คำขอ
GET /api/v1/catalog
ผลลัพธ์
ไม่ทราบbasis: unknownการตัดสินใจของคุณ
เส้นทางแบบอ่านอย่างเดียว: allow พร้อม rate limit ค่าเริ่มต้น
เปิดใช้งานโดยลดความเสี่ยง
ทีมเริ่มต้นในโหมดสังเกตการณ์และค่อย ๆ เดินหน้าไปทีละ route
- 01
สังเกตทุก route
เพิ่ม middleware หรือ HTTP API ไว้หน้าของ API ของคุณ ลายเซ็น คำประกาศ และผู้เรียกที่เป็น Unknown จะถูกบันทึกแยกตาม route
- 02
ดูตัวอย่างนโยบายของ route
ตรวจดูว่า agent rate limits หรือ step-up credentials จะทำอะไรกับทราฟฟิกจริงก่อนที่จะมีผลบังคับใช้
- 03
บังคับใช้ตามผลกระทบ
เปิดการอ่านไว้ ปรับให้การเขียนเข้มงวดขึ้น และให้ API keys และ OAuth เป็นผู้ควบคุมการเข้าถึง
ทำงานร่วมกับสแตกของคุณ
- ทีมผู้ก่อตั้ง
มิดเดิลแวร์ของเว็บเซิร์ฟเวอร์ (Node.js)
ฝั่งเซิร์ฟเวอร์
สัญญาณระดับคำขอสำหรับแอปที่เรนเดอร์ฝั่งเซิร์ฟเวอร์และ APIs
- ทีมผู้ก่อตั้ง
Next.js
ฝั่งเซิร์ฟเวอร์และ edge
Middleware สำหรับ page และ API routes
- ทีมผู้ก่อตั้ง
สคริปต์ของเบราว์เซอร์
เฉพาะสัญญาณจากเบราว์เซอร์
สัญญาณการโต้ตอบจากเซสชันของเบราว์เซอร์ ควบคู่กับการผสานการทำงานฝั่งเซิร์ฟเวอร์
- ทีมผู้ก่อตั้ง
Cloudflare และ edge runtimes
Edge
สัญญาณที่ edge ก่อนที่คำขอจะไปถึงต้นทางของคุณ
- ทีมผู้ก่อตั้ง
API HTTP ทั่วไป
ทุกสแต็ก
ส่งบริบทของคำขอไปยัง API และรับผลลัพธ์พร้อมเหตุผลฐาน
- ทีมผู้ก่อตั้ง
เซิร์ฟเวอร์ MCP
MCP
บริบทของตัวกระทำสำหรับการเรียกใช้เครื่องมือ MCP
- แผนงาน
WordPress
ปลั๊กอิน
ปลั๊กอินสำหรับเว็บไซต์ WordPress
- แผนงาน
มือถือเนทีฟ
iOS และ Android
Native iOS และ Android SDKs
การผสานการทำงานจะส่งมอบแบบลงมือทำร่วมกับแต่ละทีมผู้ก่อตั้งระหว่างการ onboarding หากใช้ stack อื่น บอกเราเมื่อคุณสมัคร
คำถามที่พบบ่อย
ลูกค้าจำเป็นต้องลงนามใน requests ของตนหรือไม่
ไม่ใช่ Signed requests ให้ evidence ที่แข็งแรงที่สุด แต่ Proof of Actor ยังบันทึก declarations และ inferences โดยแต่ละรายการจะถูกติดป้ายตามฐานของมัน และรายงาน Unknown เมื่อมีข้อมูลไม่เพียงพอ
ลายเซ็นที่ถูกต้องหมายความว่า client ได้รับอนุญาตให้ดำเนินการหรือไม่
ไม่ใช่ มันแสดงว่า request นั้นถูกเซ็นด้วย key ที่เชื่อมกับ identifier ที่เผยแพร่แล้ว สิ่งที่ operator นั้นทำได้หรือไม่จะถูกตัดสินโดย authorization และ policy ของคุณ
มันใช้แทน API keys หรือ OAuth หรือไม่
ไม่ใช่ credentials ยังคงควบคุมการเข้าถึง Proof of Actor เพิ่มข้อมูลว่าใครหรืออะไรเป็นผู้เรียก เพื่อให้คุณใช้นโยบายที่ดีกว่าเสริมได้
เราตั้งกฎที่ต่างกันต่อ endpoint ได้ไหม
ใช่ นโยบายเขียนแยกตาม route ดังนั้น endpoints แบบอ่านอย่างเดียวและการเขียนที่มีผลกระทบสูงจึงสามารถปฏิบัติแตกต่างกันได้
มีค่าใช้จ่ายเท่าไร
ทีมผู้พัฒนาผู้ก่อตั้งที่ได้รับคัดเลือกสามารถรับสิทธิ์ใช้ฟรีได้นานสูงสุด 12 เดือน ภายใต้ขีดจำกัดการใช้งานที่ตกลงกัน
รู้ว่าใครกำลังเรียก API ของคุณ
เข้าร่วม Proof of Actor founding developer program
อยากคุยก่อนหรือไม่ พูดคุยกับผู้ก่อตั้ง