Webhooks: जानें कि job कब खत्म हुई
job खत्म होने पर अपने पते पर signed मैसेज पाएँ, और जाँचें कि वह सच में Kritiverse से आया है।
यह पेज बताता है कि बार-बार पूछे बिना, job खत्म होते ही अपने पते पर मैसेज कैसे पाएँ।
यह क्या करता है
जब Public API से शुरू की गई कोई job खत्म होती है, तो Kritiverse आपके पते पर एक signed POST भेजता है, आम तौर पर एक मिनट के अंदर।
स्टेप बाय स्टेप
- My account में API टैब खोलें।
- Webhooks के नीचे अपना पता डालें और Add webhook दबाएँ। वह पोर्ट 443 पर एक public
httpsपता होना चाहिए। - secret कॉपी करें। वह
whsec_से शुरू होता है और सिर्फ़ एक बार दिखता है। - Send test दबाएँ और देखें कि एक
pingपहुँचता है। - हर मैसेज का signature जाँचें, जैसा नीचे दिखाया है।
हर विकल्प की जानकारी
क्या आता है
{
"id": "01jc...",
"type": "job.finished",
"created_at": "2026-11-01T10:00:00Z",
"job": { "id": "01jb...", "type": "image", "status": "done", "credits": 25, "charged": 25, "assets": [] }
}
मैसेज done, partial, failed, blocked और canceled के लिए आता है।
signature जाँचें
हर मैसेज में तीन header होते हैं: Kriti-Event-Id, Kriti-Timestamp और Kriti-Signature। signature v1= के बाद timestamp, एक फ़ुल स्टॉप और raw body का HMAC SHA-256 होता है, जिसमें आपका secret ही key है।
const expected = 'v1=' + crypto.createHmac('sha256', secret)
.update(timestamp + '.' + rawBody).digest('hex');
इसे constant time compare से मिलाएँ। जिस मैसेज का timestamp 5 मिनट से पुराना हो उसे मना कर दें, ताकि कोई पुराना मैसेज दोबारा न भेजा जा सके। raw body इस्तेमाल करें, किसी भी JSON parsing से पहले वाली।
जवाब और दोबारा कोशिशें
5 सेकंड के अंदर कोई भी 2xx जवाब दें। धीमा काम जवाब देने के बाद करें।
इसके अलावा कुछ भी हो तो 1 मिनट, 5 मिनट, 30 मिनट, 2 घंटे, 6 घंटे और 24 घंटे बाद दोबारा कोशिश होती है। एक मैसेज दो बार भी आ सकता है, इसलिए जिसे आप संभाल चुके हैं उसे छोड़ने के लिए Kriti-Event-Id का इस्तेमाल करें।
जब 10 मैसेज हमेशा के लिए फ़ेल हो जाएँ, तो webhook रुक जाता है और API टैब में यह लिखा आता है। अपना पता ठीक करें, फिर उसे दोबारा चालू करने के लिए New secret दबाएँ।
New secret
New secret पुराने secret को उसी समय बंद कर देता है। अपना सर्वर तुरंत अपडेट करें।
आम दिक्कतें
मेरा पता मना किया जा रहा है
वह https:// से शुरू होना चाहिए, पोर्ट 443 इस्तेमाल करे, और इंटरनेट से पहुँचने लायक हो।
signature मेल नहीं खा रहा
हो सकता है आपके framework ने body को पार्स कर दिया हो। body के raw bytes वैसे ही इस्तेमाल करें जैसे वे आए थे।
इससे जुड़ी गाइड
- Jobs, Assets और आपका बैलेंसAPI से job का status पढ़ें, नतीजे Download करें, अपनी तस्वीरें Upload करें और अपने Credits देखें।
- API की Errors और सीमाएँAPI जो भी error code दे सकती है, उसका मतलब, और request और Credits की सीमाएँ।
- Public API क्विक स्टार्टKritiverse API से अपने कोड से पहली इमेज बनाएँ: key बनाएँ, एक request भेजें और नतीजा पढ़ें।
1 नव॰ 2026 को अपडेट हुआ