API

PixelToPath API

एक REST कॉल के साथ छवियों को प्रोग्रामेटिक रूप से वेक्टराइज़ करें। PNG, JPG, BMP या WebP फ़ाइल अपलोड करें, और एक साफ़, उत्पादन के लिए तैयार SVG प्राप्त करें। श्वेत-श्याम रेखाचित्रों को Potrace द्वारा और रंगीन छवियों को VTracer द्वारा ट्रेस किया जाता है — वही इंजन जो मुफ़्त ऑनलाइन कनवर्टर में उपयोग होते हैं।

हर महीने 10 मुफ़्त रूपांतरण · क्रेडिट कार्ड की आवश्यकता नहीं

10 मुफ़्त रूपांतरण / माह • 1 REST कॉल • Potrace + VTracer इंजन • क्रेडिट कभी समाप्त नहीं होते

त्वरित शुरुआत

तीन कदम और आप अपने टर्मिनल, अपनी स्क्रिप्ट या अपने ऐप से छवियों को SVG में कनवर्ट कर रहे होंगे।

1 · अपना खाता बनाएँ

अपने ईमेल और एक पासवर्ड (10+ वर्ण) के साथ क्लाइंट पोर्टल पर पंजीकरण करें। क्रेडिट कार्ड की आवश्यकता नहीं है।

2 · एक API कुंजी बनाएँ

पोर्टल में, एक कुंजी बनाएँ। यह एक बार दिखाई जाती है — इसे सुरक्षित रूप से सहेजें। कुंजियाँ ptp_live_… जैसी दिखती हैं और इन्हें किसी भी समय रद्द किया जा सकता है।

3 · /v1/convert को कॉल करें

ऑथराइज़ेशन हेडर (Authorization header) में अपनी कुंजी के साथ अपनी छवि को multipart/form-data के रूप में भेजें। SVG प्रतिक्रिया बॉडी (response body) में वापस आता है।

आपका पहला रूपांतरण

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).

प्रमाणीकरण

प्रत्येक अनुरोध को Authorization हेडर में एक Bearer टोकन के साथ प्रमाणित किया जाता है:

Authorization: Bearer ptp_live_0123abc…
  • कुंजियाँ गुप्त हैं: उन्हें सर्वर-साइड पर हैश करके संग्रहीत किया जाता है और निर्माण के समय केवल एक बार प्रदर्शित किया जाता है। कुंजी खो गई? इसे रद्द करें और एक नई बनाएं।
  • एक खाता, कई कुंजियाँ: अपने प्रोजेक्ट्स को अलग करने के लिए 5 सक्रिय कुंजियाँ तक बनाएँ। आपका मासिक मुफ़्त कोटा प्रति खाता गिना जाता है, प्रति कुंजी नहीं।
  • तत्काल निरस्तीकरण: रद्द की गई कुंजी तुरंत काम करना बंद कर देती है, चाहे वह पोर्टल से हो या प्रतिबंधित खाते की API प्रतिक्रिया से।

POST /v1/convert

एक ही स्टेटलेस कॉल में अपलोड + रूपांतरण। एक सफल कॉल की कीमत अधिकतम 1 क्रेडिट होती है — विफल, अमान्य या दर-सीमित कॉल के लिए कोई कीमत नहीं लगती है।

अनुरोध (multipart/form-data)

फ़ील्ड प्रकार डिफ़ॉल्ट विवरण
file file कनवर्ट करने के लिए छवि। PNG, JPEG, BMP या WebP · अधिकतम 20 MB · अधिकतम 50 Mpx · न्यूनतम 64×64 px।
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 px कर दिया जाता है, और API X-Detected-Type हेडर में पता लगाए गए छवि प्रकार (line_art, logo, photo या illustration) को लौटाता है।

प्रतिक्रिया

सफलता पर: 200 OK के साथ image/svg+xml — मुख्य भाग (body) में ही 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 MB से बड़ी है।
422invalid_image / image_too_small / invalid_paramsअमान्य छवि, छवि बहुत छोटी है या अमान्य पैरामीटर मान।
429rate_limitedप्रति-कुंजी दर सीमा पार हो गई (नीचे देखें)। इसमें Retry-After हेडर शामिल है।
500internal_errorरूपांतरण सर्वर-साइड पर विफल रहा — कोई क्रेडिट नहीं काटा जाता।

दर सीमाएँ

सीमाएँ प्रति API कुंजी लागू होती हैं, प्रति IP नहीं, इसलिए साझा कार्यालय या CI रनर को किसी और के ट्रैफ़िक के लिए कभी दंडित नहीं किया जाता है।

सीमा मान
प्रति मिनट अनुरोध, प्रति कुंजी60
प्रति दिन अनुरोध, प्रति कुंजी2 000
समवर्ती रूपांतरण, प्रति कुंजी2 (अतिरिक्त कॉल प्रतीक्षा करते हैं, फिर 429)
अधिकतम फ़ाइल आकार / रिज़ॉल्यूशन20 MB / 50 Mpx

मूल्य

हर नए खाते को हर महीने 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
  • 1 खरीदी गई छवि = 1 रूपांतरण (क्रेडिट कभी समाप्त नहीं होते)
  • कभी समाप्त नहीं होते, मुफ़्त टियर के साथ जुड़ जाते हैं
  • कोई भी मात्रा: 500 से €0.040/छवि, €0.010/छवि तक
छवियां खरीदें

स्वचालित क्रेडिट: भुगतान वेबहुक के माध्यम से भुगतान के कुछ ही सेकंड में आपका बैलेंस अपडेट कर दिया जाता है। रिफंड में खरीदे गए क्रेडिट काट लिए जाते हैं, जो मौजूदा बैलेंस तक सीमित होते हैं। Lemon Squeezy द्वारा सुरक्षित चेकआउट (VAT स्वचालित रूप से संभाला जाता है)।

कोड के उदाहरण

कॉपी-पेस्ट करें और अनुकूलित करें। 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 कुंजी खो दूँ तो क्या होगा?

कुंजियों को हैश करके संग्रहीत किया जाता है, इसलिए उन्हें पुनर्प्राप्त नहीं किया जा सकता है। खोई हुई कुंजी को पोर्टल में रद्द करें और एक नई बनाएं — यह तुरंत लागू हो जाती है।

कौन से छवि प्रारूप समर्थित हैं?

PNG, JPEG, BMP और WebP, 20 MB और 50 मेगापिक्सेल तक, कम से कम 64×64 पिक्सेल। 1500 px से बड़ी छवियों को कनवर्ट करने से पहले आकार में छोटा कर दिया जाता है, बिल्कुल मुफ़्त वेबसाइट की तरह।

अपना संस्करण चुनें

वही शक्तिशाली इंजन - वह प्रारूप चुनें जो आपके वर्कफ़्लो के अनुकूल हो।

🌐

ऑनलाइन टूल

मुफ़्त

छवियों को सीधे अपने ब्राउज़र में कनवर्ट करें। कोई इंस्टॉल नहीं, कोई खाता नहीं।

टूल खोलें
⌨️

डेस्कटॉप ऐप Pro

€39 एक बार

भारी कार्यभार के लिए हॉट फोल्डर, बैच रूपांतरण और CLI।

Pro प्राप्त करें

क्या आप बड़े पैमाने पर वेक्टराइज़ करने के लिए तैयार हैं?

अपना खाता बनाएँ, एक कुंजी प्राप्त करें और दो मिनट से भी कम समय में अपनी पहली कॉल करें।

अपनी मुफ़्त API कुंजी प्राप्त करें