בונים עלLeonAI Signs.

האפליקציה עצמה רצה על ה-REST API הציבורי שלה, אז כל מה שעושים ב-LeonAI Signs אפשר לעשות מהקוד: לבנות תבניות, לשלוח מסמכים ולעקוב אחרי כל חותם.

curl https://signflow-api.leonai.io/api/v1/submissions \
  -H "Authorization: $LEONAI_SIGNS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "template_id": "tpl_abc123",
    "name": "NDA — Acme Corp",
    "signers": [
      { "name": "Dana Levi", "email": "dana@acme.example", "role": "signer1" }
    ],
    "fields_data": { "company_name": "Acme Corp" }
  }'

בקשה אחת, קישור חתימה אחד

  • כותרת אחת: מפתח ה-API ב-Authorization, בלי הקידומת Bearer.

  • ממלאים מראש כל שדה בתבנית עם fields_data.

  • קובעים signing_order כדי שהחותמים יחתמו לפי הסדר, או משמיטים את האימייל ומעבירים את הקישור בעצמכם.

התשובה:

201 Created
{
  "data": {
    "id": "…",
    "status": "pending",
    "signing_url": "https://signs.leonai.io/sign/…",
    "expires_at": "…",
    "signers": [ … ]
  }
}

יודעים ברגע שזה נחתם

  • submission.created
  • submission.sent
  • submission.signed
  • submission.completed
  • submission.declined
  • submission.voided
  • submission.expired
  • submission.payment_completed
  • submission.card_saved
  • submission.payment_failed
  • signer.opened
  • signer.viewed
  • signer.signed
  • signer.declined
  • signer.reminder_sent
  • document.generated
  • document.downloaded

כל שליחה חתומה בסוד של נקודת הקצה שלכם. בדקו את החתימה לפני שאתם סומכים על התוכן.

  • HTTPS בלבד. כתובות פרטיות וכתובות loopback נדחות.

  • אפשר להוסיף כותרות משלכם לכל נקודת קצה, שמורות מוצפנות, כדי שכלל בחומת האש יזהה אותן.

  • שליחה שנכשלה נשלחת שוב אוטומטית, ואפשר לשלוח אותה שוב מיומן השליחות או דרך ה-API.

import crypto from "node:crypto";

// X-LeonAI-Signature: t=<unix seconds>,v1=<base64 HMAC-SHA256>
export function verifyWebhook(rawBody, header, secret) {
  const parts = Object.fromEntries(
    header.split(",").map((p) => [p.slice(0, p.indexOf("=")), p.slice(p.indexOf("=") + 1)]),
  );
  const expected = crypto
    .createHmac("sha256", secret)
    .update(`${parts.t}.${rawBody}`)
    .digest("base64");
  const fresh = Math.abs(Date.now() / 1000 - Number(parts.t)) < 300;
  return (
    fresh &&
    expected.length === parts.v1?.length &&
    crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(parts.v1))
  );
}

מה שהאפליקציה עושה, ה-API עושה

  • Templates
  • Template Fields
  • Submissions
  • Documents
  • Signer Payments
  • Webhooks
  • Files
  • Organizations
  • Members & Invites
  • Roles & Permissions
  • API Tokens
  • Usage & Credits
  • Audit Log
  • SSO
  • Connect

או מחברים בלי קוד

  • Make.com

    אפליקציה ייעודית: שולחים מסמכים ומגיבים לכל חתימה מתוך התרחישים שלכם.

  • Priority ERP

    LeonAI Signs Connect מחבר את חברת ה-Priority שלכם לתהליכי החתימה.

  • כל מערכת עם כתובת URL

    מכוונים אליה webhook ומקבלים כל אירוע כ-JSON חתום.

הבקשה הראשונה שלכם, היום