API

PixelToPath API

המירו תמונות לווקטור באופן תוכנתי באמצעות קריאת REST אחת. העלו קובץ PNG, JPG, BMP או WebP וקבלו בחזרה SVG נקי ומוכן לפרודקשן. איור קו שחור-לבן משורטט על ידי Potrace, ותמונות צבעוניות על ידי VTracer — אותם מנועים כמו הממיר האונליין החינמי.

10 המרות חינם בכל חודש · בלי כרטיס אשראי

10 המרות חינם / חודש • קריאת REST אחת • מנועי Potrace + VTracer • הקרדיטים ללא תפוגה

התחלה מהירה

שלושה צעדים ואתם ממירים תמונות ל-SVG מהטרמינל, מהסקריפטים או מהאפליקציה שלכם.

1 · יצירת החשבון

נרשמו בפורטל הלקוחות עם האימייל וסיסמה (10+ תווים). בלי כרטיס אשראי.

2 · יצירת מפתח API

בפורטל, צרו מפתח. הוא מוצג פעם אחת — שמרו אותו בבטחה. מפתחות נראים כמו ptp_live_… ואפשר לשלול אותם בכל עת.

3 · קריאה ל-/v1/convert

שלחו את התמונה כ-multipart/form-data עם המפתח בכותרת Authorization. ה-SVG חוזר בגוף התגובה.

ההמרה הראשונה שלכם

curl -sS -f -X POST https://api.pixel-to-path.com/v1/convert \
  -H "Authorization: Bearer ptp_live_YOUR_KEY" \
  -F "[email protected]" \
  -F "colormode=binary" \
  -o logo.svg

מסמך אינטראקטיבי: pixel-to-path.com/v1/docs (OpenAPI/Swagger).

אימות

כל בקשה מאומתת עם אסימון Bearer בכותרת Authorization:

Authorization: Bearer ptp_live_0123abc…
  • מפתחות הם סודות: הם נשמרים מוצפנים (hash) בשרת ומוצגים רק פעם אחת ביצירה. איבדתם מפתח? שללו אותו וצרו חדש.
  • חשבון אחד, כמה מפתחות: צרו עד 5 מפתחות פעילים להפרדת הפרויקטים שלכם. מכסת החינם החודשית נספרת לחשבון, לא למפתח.
  • שלילה מיידית: מפתח שנשלל מפסיק לעבוד מיד, מהפורטל או מתגובת ה-API של חשבון חסום.

POST /v1/convert

העלאה + המרה בקריאה אחת חסרת מצב. כל קריאה מוצלחת עולה לכל היותר קרדיט 1 — קריאות שנכשלו, לא תקינות או שחסמו מהירותן לא עולות דבר.

הבקשה (multipart/form-data)

שדה סוג ברירת מחדל תיאור
file file — התמונה להמרה. PNG, JPEG, BMP או WebP · עד 20 מ״ב · עד 50 מגפיקסל · לפחות 64×64 פיקסל.
colormode string color <code>color</code> משתמש במנוע VTracer, <code>binary</code> משתמש ב-Potrace (שחור-לבן).
mode string spline מצב צבע (VTracer) בלבד — מתעלם במצב בינארי. spline | polygon | none
hierarchical string stacked מצב צבע (VTracer) בלבד — מתעלם במצב בינארי. stacked | cutout
filter_speckle int 4 מצב צבע (VTracer) בלבד — מתעלם במצב בינארי. 0–16 — הסרת כתמי רעש קטנים.
color_precision int 6 מצב צבע (VTracer) בלבד — מתעלם במצב בינארי. 1–8 — מספר הסיביות המשמעותיות לכל ערוץ צבע.
layer_difference int 16 מצב צבע (VTracer) בלבד — מתעלם במצב בינארי. 0–64 — המרחק בין שכבות צבע.
corner_threshold int 60 0–180 — זווית לזיהוי פינות (שני המנועים).
length_threshold float 4.0 3.5–10 — אורך מקטע מינימלי (שני המנועים).
splice_threshold int 45 0–180 — זווית לחיבור מקטעי נתיב (שני המנועים).
path_precision int 3 0–8 — ספרות אחרי הנקודה בקואורדינטות הנתיב.
invert bool false מצב בינארי (Potrace) בלבד — מתעלם במצב צבע. שרטוט האזורים הבהירים במקום הכהים.
turdsize int 2 מצב בינארי (Potrace) בלבד — מתעלם במצב צבע. 0–20 — השחקת כתמים עד לגודל הזה.
alphamax float 1.0 מצב בינארי (Potrace) בלבד — מתעלם במצב צבע. 0–1.334 — סף עיגול פינות.
opttolerance float 0.2 מצב בינארי (Potrace) בלבד — מתעלם במצב צבע. 0–10 — סובלנות לאופטימיזציית עקומות.

שני מנועים, נבחרים לפי ״colormode״

ה-API מריץ בדיוק את אותם מנועים כמו הממיר האונליין החינמי ואפליקציית הדסקטופ:

binary — Potrace

שרטוט שחור-לבן של איורי קו, סריקות, סקיצות ולוגואים. החלק הכהה של התמונה (גווני אפור < 50%) שורטט על רקע לבן. כווננו את הפלט עם turdsize (הסרת רעשים), alphamax (עיגול פינות) ו-opttolerance (אופטימיזציית נתיבים).

color — VTracer

וקטוריזציית צבע בשכבות לאיורים, לקריקטורות ולצילומים. שלטו ברמת הפירוט עם filter_speckle, color_precision, layer_difference ובהתאמת העקומות עם mode (ספליין, מצולע, ללא).

תמונות עוברות עיבוד מקדים בדיוק כמו באתר: הצלע הארוכה משונה ל-1500 פיקסל לפני ההמרה, וה-API מחזיר את סוג התמונה שזוהתה (line_art, logo, photo או illustration) בכותרת X-Detected-Type.

תגובה

בהצלחה: 200 OK עם image/svg+xml — הגוף הוא קובץ ה-SVG עצמו. כותרות מידע:

כותרת תיאור
X-Credits-Remainingהקרדיטים המשולמים שנותרו בחשבון, אחרי החיוב של הקריאה הזו.
X-Free-Remainingההמרות החינמיות שנותרו החודש.
X-Detected-Typeסוג התמונה שזוהתה (מידע): line_art, logo, photo או illustration.
X-Processing-Timeזמן העיבוד בשרת, בשניות.

GET /v1/me

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

תגובה לדוגמה

GET /v1/me
Authorization: Bearer ptp_live_…

{
  "key": { "name": "prod", "prefix": "ptp_live_0123abc", … },
  "usage": {
    "month": "2026-09", "free_used": 7, "free_limit": 10,
    "free_remaining": 3, "resets_at": "2026-10-01T00:00:00+00:00"
  },
  "credits": { "balance": 120 }
}

שגיאות

כל שגיאה מחזירה מעטפת JSON עקבית. קריאות שנכשלו לעולם לא צורכות קרדיטים.

HTTP/1.1 402 Payment Required
{
  "error": {
    "code": "quota_exceeded",
    "message": "Monthly free quota used and no credits left.",
    "usage": { "free_used": 10, "free_limit": 10, "credits": 0 }
  }
}
HTTP קוד מתי
401invalid_api_keyמפתח API חסר, פגום, לא מוכר או שנשלל.
402quota_exceededמכסת החינם החודשית מומשת ולא נותרו קרדיטים.
403account_bannedהחשבון נחסם — כל המפתחות שלו נדחים.
403ip_blockedכתובת ה-IP של הקורא נמצאת ברשימה חסומה.
413file_too_largeקובץ גדול מ-20 מ״ב.
422invalid_image / image_too_small / invalid_paramsתמונה לא תקינה, תמונה קטנה מדי או ערך פרמטר לא תקין.
429rate_limitedחריגה מהגבלת הקצב למפתח (ראו למטה). כולל כותרת Retry-After.
500internal_errorההמרה נכשלה בשרת — לא נגבה קרדיט.

הגבלות קצב

ההגבלות חלות למפתח ולא לכתובת IP, כך שמשרד משותף או ריצת CI לא ייפגעו מהתנועה של מישהו אחר.

הגבלה ערך
בקשות לדקה, למפתח60
בקשות ליום, למפתח2 000
המרות במקביל, למפתח2 (קריאות נוספות ממתינות, ואז 429)
גודל קובץ / רזולוציה מקסימליים20 מ״ב / 50 מגפיקסל

מחירון

כל חשבון חדש מקבל 10 המרות חינם בכל חודש, בלי כרטיס אשראי. צריכים יותר? קנו תמונות בתשלום מראש — בכל כמות (בחבילות של 50), עם הנחות כמות. הן לעולם לא פגות ומצטברות עם מכסת החינם החודשית (ההמרות החינמיות נצרכות קודם).

חינם

€0/ חודש

  • 10 המרות / חודש
  • שני המנועים (Potrace + VTracer)
  • עד 5 מפתחות API
יצירת חשבון

תמונות בתשלום מראש

€0.050/ תמונה

מחירון כמויות — ככל שקונים יותר תמונות, כל אחת יוצאת זולה יותר
תמונות50–450500–2 4502 500–9 95010 000–49 95050 000+
€/image0.0500.0400.0300.0200.010
  • תמונה שנקנתה = המרה אחת (הקרדיטים ללא תפוגה)
  • לא פגות לעולם, מצטברות עם החבילה החינמית
  • בכל כמות: €0.040 לתמונה מ-500, ועד €0.010 לתמונה
קנו תמונות

זיכוי אוטומטי: היתרה מתעדכנת תוך שניות מהתשלום, דרך ה-webhook של התשלום. החזרים מנכים את הקרדיטים שנקנו, עד גובה היתרה הנוכחית. תשלום מאובטח דרך Lemon Squeezy (מע״מ מטופל אוטומטית).

דוגמאות קוד

העתיקו, הדביקו והתאימו. ה-API מדבר multipart/form-data פשוט, ולכן כל לקוח HTTP עובד.

cURL

curl -sS -f -X POST https://api.pixel-to-path.com/v1/convert \
  -H "Authorization: Bearer ptp_live_YOUR_KEY" \
  -F "[email protected]" \
  -F "colormode=color" \
  -F "filter_speckle=4" \
  -o photo.svg

Python

import requests

resp = requests.post(
    "https://api.pixel-to-path.com/v1/convert",
    headers={"Authorization": "Bearer ptp_live_YOUR_KEY"},
    files={"file": open("photo.jpg", "rb")},
    data={"colormode": "color", "filter_speckle": 4},
)
resp.raise_for_status()
print(resp.headers["X-Credits-Remaining"], "credits left")
with open("photo.svg", "wb") as f:
    f.write(resp.content)

JavaScript

const form = new FormData();
form.append("file", new Blob([imageBytes]), "photo.jpg");
form.append("colormode", "color");

const resp = await fetch("https://api.pixel-to-path.com/v1/convert", {
  method: "POST",
  headers: { "Authorization": "Bearer ptp_live_YOUR_KEY" },
  body: form,
});
if (!resp.ok) {
  const { error } = await resp.json();
  throw new Error(`${error.code}: ${error.message}`);
}
const svg = await resp.text();
console.log(resp.headers.get("X-Credits-Remaining"), "credits left");

שאלות נפוצות

מה נחשב המרה אחת?

קריאת POST ‎/v1/convert מוצלחת אחת שמחזירה SVG. קריאות שנכשלו (תמונה לא תקינה, פרמטרים שגויים, חסימת קצב, שגיאת שרת) וקריאות GET ‎/v1/me לעולם לא נחייבות.

איך נספרת מכסת החינם החודשית?

לחשבון, על פי חודש היומן של UTC — מתאפסת ב-1 בחודש ב-00:00 UTC. יצירת כמה מפתחות API לא מכפילה את המכסה החינמית: כל המפתחות של חשבון חולקים את אותן 10 ההמרות החינמיות.

האם הקרדיטים פגים?

לא. קרדיטים שנקנו נשארים בחשבון שלכם עד שתשתמשו בהם. הם נצרכים רק אחרי ש-10 ההמרות החינמיות החודשיות שלכם מומשו.

איך משיגים יותר המרות בחודש?

קנו תמונות בתשלום מראש מפורטל הלקוחות — בכל כמות, בחבילות של 50. תמיד רואים בדיוק כמה תמונות מקבלים: 50 תמונות €2.50, 500 תמונות €20, 2,500 תמונות €75, 10,000 תמונות €200, 50,000 תמונות €500. הקרדיטים מתווספים לחשבון אוטומטית תוך שניות מהתשלום — בלי מפתח רישיון ובלי שום דבר להקליד.

מה קורה אם איבדתי את מפתח ה-API?

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

אילו פורמטי תמונה נתמכים?

PNG, JPEG, BMP ו-WebP, עד 20 מ״ב ו-50 מגפיקסל, לפחות 64×64 פיקסל. תמונות שצלען הארוכה עולה על 1500 פיקסל משונות לפני ההמרה, בדיוק כמו באתר החינמי.

בחרו את הגרסה שלכם

אותו מנוע חזק – בחרו את הפורמט שמתאים לזרימת העבודה שלכם.

🌐

כלי אונליין

חינם

המירו תמונות ישירות בדפדפן. בלי התקנה, בלי חשבון.

פתחו את הכלי
💻

אפליקציית דסקטופ

חינם וקוד פתוח

הממיר המלא על המחשב שלכם, ל-Windows ו-Linux.

הורידו חינם
⌨️

אפליקציית דסקטופ Pro

€39 חד-פעמי

תיקייה חמה, המרה באצווה ו-CLI לעומסי עבודה כבדים.

לרכישת Pro
🔌

API

חבילה חינמית + חבילות קרדיטים

קריאת REST אחת: שולחים תמונה, מקבלים SVG נקי. 10 חינם בחודש.

הוציאו מפתח API

מוכנים להמיר לווקטור בקנה מידה?

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

קבלו מפתח API חינם