ข้ามไปยังเนื้อหาหลัก
ภาพรวม ภาพรวม ข่าว ข่าว
แชร์

Publishable Keys

การเรียก API ที่ปลอดภัยสำหรับเบราว์เซอร์ ไม่ต้องมีแบ็กเอนด์ของตัวเอง

Publishable Key (po_pk_) สามารถปรากฏในส่วนหน้าเว็บได้: จำกัดขอบเขต, ผูกกับต้นทาง และจำกัดงบประมาณ

สำหรับอาร์ติแฟกต์ Claude, Canvas ChatGPT, Grok และเว็บแอปพลิเคชันของคุณเอง

พรีฟิกซ์เฉพาะ po_pk_ ผูกกับ Origin โดยค่าเริ่มต้น สามารถเพิกถอนได้ตลอดเวลา

โดยตรงจากเบราว์เซอร์

จาก AI Canvas ไปยังการเรียกใช้ API โดยตรง

คุณกำลังสร้างแอปแปลง PDF เป็นข้อความใน Claude Artifacts, ChatGPT Canvas หรือ Grok หากไม่มีแบ็กเอนด์ การเรียกใช้ API จะไม่เกิดขึ้น: CORS บล็อก, คีย์ลับจะปรากฏชัดเจนในโค้ดต้นทาง และคีย์ที่เปิดกว้างจะทำให้บัญชีของคุณเสี่ยงต่อการใช้งานที่ผิดวัตถุประสงค์ ช่องว่างนี้คือสิ่งที่ Publishable Keys ช่วยเติมเต็ม

ทำงานใน Claude ArtifactsChatGPT CanvasGrokแอปเบราว์เซอร์ใด ๆ

วางใน Claude, ChatGPT หรือ Grok

พรอมต์ที่เปลี่ยน AI Canvas ใดๆ ให้เป็นตัวอย่างจริงที่ขับเคลื่อนด้วย API — โดยไม่ต้องมีแบ็กเอนด์

AI Canvas พรอมต์
อ่านเอกสาร API นี้:
https://api.paperoffice.ai/latest/docs/llms-full.txt สร้างแอป React ไฟล์เดียว (Claude Artifact / ChatGPT Canvas / Grok):
ผู้ใช้อัปโหลด PDF แอปจะเรียก
/job/add/paperoffice_aiocr___generate โดยตรงจากเบราว์เซอร์
และแสดงข้อความที่ดึงออกมา การตรวจสอบสิทธิ์: Bearer po_pk_MY_PUBLISHABLE_KEY (ขอให้ผู้ใช้ป้อนคีย์)
ใช้ processing_lane=instant สำหรับผลลัพธ์แบบซิงค์ ส่วนหัว Origin ถูกตั้งค่าโดยเบราว์เซอร์

เลือกพรีเซ็ต สร้างคีย์ วางคีย์

แดชบอร์ดให้ค่ากำหนดล่วงหน้าสำหรับขอบเขตและงบประมาณ ต้นทางจะเว้นว่างไว้ — ให้ป้อน Header ของต้นทางจากเครื่องมือผู้พัฒนาเบราว์เซอร์ แล้วคัดลอกคีย์ไปใส่ในคำสั่งของคุณ

สร้างคีย์
JavaScript
const form = new FormData();form.append("file_1", fileInput.files[0]);form.append("processing_lane", "instant");form.append("client_wait", "true");const response = await fetch("https://api.paperoffice.ai/latest/job/add/paperoffice_aiocr___generate", {  method: "POST",  headers: { Authorization: "Bearer po_pk_YOUR_PUBLISHABLE_KEY" },  body: form,});console.log(await response.json());

การเรียกครั้งแรก

fetch จากเบราว์เซอร์, Origin ถูกตั้งค่าโดยเบราว์เซอร์

การเรียกใช้ไปยัง POST /latest/job/add/{pipeline} — เป็น endpoint เดียวกันกับการใช้ Secret Key สิ่งใหม่ที่เพิ่มเข้ามาคือประเภทของคีย์และ Header Origin ซึ่งเบราว์เซอร์จะส่งมาโดยอัตโนมัติ

  • Origin มาจากเบราว์เซอร์

    fetch จะตั้งค่า Header Origin ให้เอง สคริปต์ภายนอกเบราว์เซอร์ (เช่น cURL, Node) ต้องส่งมันอย่างชัดเจน — หากไม่ทำเช่นนั้น API จะตอบกลับด้วยสถานะ 403 ORIGIN_HEADER_REQUIRED

  • ผลลัพธ์แบบอินไลน์

    เมื่อใช้ processing_lane=instant และ client_wait=true API จะคงการเชื่อมต่อไว้และส่งผลลัพธ์โดยตรงในการตอบกลับ

  • รหัสข้อผิดพลาดที่ชัดเจน

    402 BUDGET_EXHAUSTED, 403 DOMAIN_NOT_ALLOWED, 403 SCOPE_NOT_GRANTED, 429 RATE_LIMIT_EXCEEDED — แต่ละขีดจำกัดจะแจ้งด้วยรหัสของตัวเอง

เมทริกซ์ความปลอดภัย

หกการควบคุม บังคับใช้ทั้งหมดที่ฝั่งเซิร์ฟเวอร์

จำกัดขอบเขต, ผูกกับต้นทาง, จำกัดงบประมาณ, ยกเลิกได้ทุกเมื่อ การควบคุมทั้งหมดถูกบังคับใช้ฝั่งเซิร์ฟเวอร์ — จึงทำให้คีย์สามารถวางอยู่ในโค้ดส่วนหน้าเว็บได้

  • จำกัดขอบเขต

    คีย์จะเข้าถึงเฉพาะกลุ่มเอนด์พอยต์ที่คุณอนุญาตอย่างชัดเจน: ocr:read, llm:generate, translate:text และอื่นๆ การเรียกใช้งานนอกเหนือจากขอบเขตนี้จะส่ง HTTP 403

  • ผูกกับต้นทาง

    ทุกคำขอต้องมีหัวเรื่อง Origin ที่ตรงกับรายการอนุญาตของคีย์ (โฮสต์ที่ตรงกันพอดีหรือ wildcard ของซับโดเมน) หากไม่ตรงกัน จะส่ง HTTP 403 พร้อมรหัส API

  • ไม่มีขีดจำกัดนาทีเพิ่มเติม

    ไม่มีขีดจำกัดนาทีเฉพาะสำหรับ po_pk_ โดยตรง ใช้ขีดจำกัดอัตราโทเค็นปกติของบัญชีเป็นหลัก ส่วนการใช้จ่ายจะถูกจำกัดด้วยงบประมาณตลอดอายุการใช้งาน

  • งบประมาณจำกัด

    คีย์แต่ละตัวมีงบประมาณตลอดอายุการใช้งาน เมื่อใช้งบประมาณหมดแล้ว API จะส่ง HTTP 402 BUDGET_EXHAUSED — การบริโภคจะหยุดทันที ไม่ใช่รอจนถึงการเรียกเก็บเงิน

  • เพิกถอนได้ทุกเมื่อ

    สามารถเพิกถอนคีย์ได้ตลอดเวลาผ่านบัญชี คีย์ที่ถูกเพิกถอนจะไม่ได้รับการยอมรับจาก API อีกต่อไป

  • ถูกล็อกถาวร

    HTTP DELETE รวมถึงการเข้าสู่ระบบบัญชี, การจัดการคีย์, OAuth, ผู้ดูแลพาร์ทเนอร์, การเปลี่ยนแปลงการชำระเงิน และการแฮชรหัสผ่าน จะถูกปิดกั้นถาวรสำหรับ po_pk_ ทุกกรณี เอกสาร API ของผลิตภัณฑ์ที่ระบุไว้ — รวมถึงการลบด้วย POST, Webhooks, การอ่านข้อมูลบิลลิ่ง และ CRM — อนุญาตให้ใช้งานได้

ลำดับชั้นของคีย์

ประเภทคีย์ 3 แบบ ความรับผิดชอบชัดเจน

Secret Key สำหรับเซิร์ฟเวอร์, Publishable Key สำหรับเบราว์เซอร์ — พร้อม User Token สำหรับการเข้าถึงที่จำกัดอัตราโดยอ้างอิงผู้ใช้

คำนำหน้า ประเภท กรณีการใช้งาน ปลอดภัยสำหรับเบราว์เซอร์ Scope เริ่มต้น
po_sk_ คีย์ลับ (Secret Key) เซิร์ฟเวอร์ถึงเซิร์ฟเวอร์, การเข้าถึง API เต็มรูปแบบ ไม่ ทุกเอนด์พอยต์
po_ut_ User Token ใช้ในระดับผู้ใช้ จำกัดตามระดับ ไม่ ตามระดับ
po_pk_ Publishable Key เบราว์เซอร์ / AI-Canvas (Claude, ChatGPT, Grok) ใช่ รายการ Scope

การยืนยันตัวตนและคีย์

สามชุดค่าเริ่มต้น

คลิกหนึ่งครั้ง คีย์หนึ่งตัว วัตถุประสงค์หนึ่งเดียว

แต่ละพรีเซ็ตถูกตั้งค่าไว้สำหรับ Use-Case ที่เฉพาะเจาะจง — ค่าเริ่มต้นที่ปลอดภัย ขอบเขตที่คัดสรรแล้ว งบประมาณที่เป็นจริง ปรับเปลี่ยนได้ทุกเมื่อผ่านแดชบอร์ด

  • DEFAULT การอ่านอย่างปลอดภัย

    สิทธิ์เริ่มต้นที่ปลอดภัยสำหรับการสาธิตง่ายๆ และเครื่องมือภายใน: OCR, LLM, Translate, Documents, Search.

    ขอบเขตการอนุญาต (Scopes)

    ocr:readllm:generatetranslate:textdocuments:uploaddocuments:readsearch:query
    เริ่มต้นด้วยพรีเซ็ตนี้
  • WIDGET เว็บไซต์สาธารณะ

    สำหรับแบบฟอร์มติดต่อ, วิดเจ็ตแชท และปุ่มจองบนเว็บไซต์ของบริษัทของคุณ

    ขอบเขตการอนุญาต (Scopes)

    knowledge:readwidget:chatwidget:bookingwidget:formswidget:contactwidget:leadwidget:fingerprint
    เริ่มต้นด้วยพรีเซ็ตนี้

การเรียก API ครั้งแรก

พร้อมสำหรับการเรียกครั้งแรกจากเบราว์เซอร์หรือยัง?

สร้าง Key, เปิด llms-full.txt, วาง Prompt — แอปของคุณเรียก API โดยตรงจาก Claude, ChatGPT หรือ Grok

Prefixed ของตนเอง ไม่มี Backend เพิกถอนได้ตลอดเวลา
วิดีโอ

Publishable Keys ในการทำงานจริง

ดูว่า PaperOffice Publishable Keys ทำงานอย่างไรในทางปฏิบัติ — ในวิดีโอ

Publishable Keys ในการทำงานจริง

คำถามที่พบบ่อย

ภาพรวมของข้อมูลสำคัญทั้งหมด

po_pk_ แตกต่างจาก po_sk_ อย่างไร?

po_sk_ (Secret Key) ออกแบบมาสำหรับการผสานรวมแบบ Server-to-Server — มีสิทธิ์เข้าถึงเต็มรูปแบบบน API ห้ามฝังไว้ในเบราว์เซอร์โดยเด็ดขาด po_pk_ (Publishable Key) สร้างขึ้นสำหรับโค้ดฝั่งเบราว์เซอร์: จำกัดขอบเขต (scope) ผูกกับต้นทาง (origin) และจำกัดงบประมาณ ใช้ API เดียวกัน แต่มีโปรไฟล์ความปลอดภัยที่แตกต่างกัน

ทำไมไม่ใช้ Reverse Proxy จากแบ็กเอนด์ของตัวเองล่ะ?

นี่เป็นแนวทางคลาสสิก — แต่ยังคงต้องการแบ็กเอนด์ AI Artifacts (Claude, ChatGPT, Grok) ออกแบบมาเพื่อทำงานโดยไม่ต้องมีแบ็กเอนด์ของคุณ Publishable Keys ทำให้สิ่งนี้เป็นไปได้โดยไม่เปิดเผย Secret Key ของคุณ: ขอบเขตต่างๆ ถูกบังคับใช้ฝั่งเซิร์ฟเวอร์

มันทำงานใน Claude Artifacts ได้หรือไม่ แม้จะมี CORS Sandbox?

ใช่ การเรียกใช้เกิดขึ้นโดยตรงจากเบราว์เซอร์ โดยเบราว์เซอร์จะเป็นผู้ตั้งค่า Header ของต้นทางเอง PaperOffice ไม่ได้นำเสนอรายการอนุญาตของผู้ขาย (Vendor-Allow-List) ให้คุณต้องป้อนค่าต้นทางจากเครื่องมือผู้พัฒนาเบราว์เซอร์ขณะสร้างคีย์

เกิดอะไรขึ้นหาก po_pk_ ของฉันถูกเปิดเผยต่อสาธารณะ?

ความเสียหายจะถูกจำกัด: การล็อก Origin จะบล็อกการใช้งานบนโดเมนอื่น ขอบเขตงบประมาณจะหยุดการบริโภค และขีดจำกัดอัตรา (Rate Limit) จะชะลอการเข้าถึงแบบอัตโนมัติ Revoked Key ผ่านบัญชี — หลังจากนั้น API จะไม่ยอมรับคีย์นั้นอีก

ฉันสามารถเพิ่มโดเมนของตัวเองเป็น Origin ที่อนุญาตได้หรือไม่?

ได้ ขณะสร้างคีย์ คุณสามารถเพิ่ม Origins แต่ละรายการลงใน Allow List ได้ — เป็นโฮสต์ที่ตรงกันพอดี หรือเป็น Wildcard ของซับโดเมน WIDGET-Preset ถูกออกแบบมาเพื่อจุดประสงค์นี้โดยเฉพาะ: ลงทะเบียนโดเมนของคุณเอง และฝังวิดเจ็ตแชท การจอง หรือติดต่อ โดยไม่ต้องมีแบ็กเอนด์

ฉันจะตั้งค่างบประมาณต่อคีย์อย่างไร

ในการสร้าง ให้คุณเลือกขีดจำกัดตลอดชีพ (Lifetime Limit); ค่ากำหนดล่วงหน้า (Presets) จะมาพร้อมกับการตั้งค่าเริ่มต้น เมื่อถึงขีดจำกัดแล้ว API จะส่ง HTTP 402 BUDGET_EXHAUSTED คุณสามารถปรับค่านี้ได้ตลอดเวลาในบัญชี

po_pk_ จำเป็นต้องมีแผนบริการของตัวเองหรือไม่?

ไม่ Publishable Key เป็นชั้นการป้องกันเพิ่มเติมสำหรับบัญชีที่มีอยู่ของคุณ โดยจำกัดขอบเขต ต้นทาง และงบประมาณ แผนใดที่เหมาะกับโครงสร้างของคุณ ดูได้จากตารางราคา

Endpoints ใดบ้างที่ถูกบล็อกสำหรับ po_pk_?

HTTP DELETE รวมถึงการเข้าสู่ระบบบัญชี, ผู้ดูแลผู้ใช้, การจัดการคีย์, OAuth, ผู้ดูแลพาร์ทเนอร์, Stripe Checkout และการแฮชรหัสผ่าน ถูกปิดกั้นถาวร เอกสาร API ของผลิตภัณฑ์ที่ระบุไว้ อนุญาตให้ใช้งานได้ รวมถึงการลบด้วย POST, Webhooks, การอ่านข้อมูลบิลลิ่ง, การนำเข้า และ CRM การลบ Workspace ล้างถังขยะ และปลดปล่อย Legal-Hold ยังคงเป็นเฉพาะส่วนอินเทอร์เฟซผู้ใช้เท่านั้น (403 UI_ONLY_ENDPOINT)

การดำเนินงานและความน่าเชื่อถือ

สิ่งที่ทีมองค์กรตรวจสอบก่อนการโทรครั้งแรก

สัญญา ความปลอดภัย การสนับสนุน และขีดจำกัด ทั้งหมดเชื่อมโยงในที่เดียว

ท่านต้องการทดลอง PaperOffice ที่ใด

คอมพิวเตอร์และสมาร์ทโฟนเชื่อมต่อกันแล้ว: เวิร์กสเปซบนเครื่อง, บันทึกผ่านโทรศัพท์

เวอร์ชันทดสอบของคุณพร้อมใช้งานแล้ว

คุณต้องการเริ่มต้นที่ไหน?

เวิร์กสเปซเต็มรูปแบบได้รับการปรับให้เหมาะสมสำหรับคอมพิวเตอร์ เวอร์ชันมือถือเหมาะสำหรับการบันทึก ตรวจสอบ และอนุมัติเอกสาร

app.paperoffice.ai

เริ่มต้นบนคอมพิวเตอร์

เราจะส่งลิงก์การเข้าถึงส่วนบุคคลของคุณไปยังที่อยู่อีเมลของคุณ

สมัครฟรี เปิดแอป แอป PaperOffice ผลิตภัณฑ์เต็มรูปแบบ: เว็บ เดสก์ท็อป และมือถือ จับภาพ จัดระเบียบ ค้นหา และทำงานกับเอกสารร่วมกับทีม ต้องมีบัญชีฟรี เปิด Playground Playground ทดลองฟังก์ชันที่เลือกทันที — ไม่ต้องลงทะเบียน โดยใช้คีย์ API สาธิตแบบจำกัด ไม่ต้องลงทะเบียน แต่ใช้คีย์ API สาธิตแบบจำกัด