सभी NueForm API requests को API keys के माध्यम से authentication की आवश्यकता होती है। यह गाइड keys जनरेट करने, उन्हें requests में उपयोग करने, और उन्हें सुरक्षित रखने का तरीका बताती है।

API एक्सेस Pro plan और उससे ऊपर के प्लान पर उपलब्ध है। यदि आप Entrepreneur (free) plan पर हैं, तो API keys जनरेट करने या API requests करने से पहले आपको अपग्रेड करना होगा।
API Keys जनरेट करना
API key बनाने के लिए:
- अपने NueForm अकाउंट में साइन इन करें।
- Profile पर जाएं और Developer tab खोलें।
- Create API Key पर क्लिक करें।
- अपनी key को एक विवरणात्मक नाम दें (जैसे, "Production Backend" या "CI Pipeline")।
- key को तुरंत कॉपी करें --- यह केवल एक बार दिखाई जाएगी।
आपकी पूरी API key केवल बनाते समय दिखाई जाती है। NueForm आंतरिक रूप से एक hashed version स्टोर करता है और मूल key को पुनः प्राप्त नहीं कर सकता। यदि आप इसे खो देते हैं, तो key को revoke करें और एक नई बनाएं।
API Key Format
NueForm API keys एक सुसंगत format का पालन करती हैं:
nf_<64 hex characters>
प्रत्येक key nf_ prefix से शुरू होती है जिसके बाद 64 hexadecimal characters (32 random bytes) होते हैं। उदाहरण के लिए:
nf_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2
Dashboard में, keys उनके prefix (पहले 11 characters, जैसे nf_a1b2c3d4) से पहचानी जाती हैं ताकि आप पूरा value expose किए बिना उन्हें अलग कर सकें।
अपनी API Key का उपयोग
प्रत्येक request के Authorization header में Bearer scheme का उपयोग करके अपनी API key शामिल करें:
Authorization: Bearer nf_your_api_key_here
cURL
curl -X GET https://app.nueform.com/api/v1/forms \
-H "Authorization: Bearer nf_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2" \
-H "Content-Type: application/json"
JavaScript (fetch)
const NUEFORM_API_KEY = process.env.NUEFORM_API_KEY;
const response = await fetch("https://app.nueform.com/api/v1/forms", {
method: "GET",
headers: {
"Authorization": `Bearer ${NUEFORM_API_KEY}`,
"Content-Type": "application/json",
},
});
const { data } = await response.json();
console.log(data);
Python (requests)
import os
import requests
api_key = os.environ["NUEFORM_API_KEY"]
response = requests.get(
"https://app.nueform.com/api/v1/forms",
headers={
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json",
},
)
data = response.json()["data"]
print(data)
Authentication Errors
यदि authentication विफल होता है, तो API एक विवरणात्मक संदेश के साथ 401 Unauthorized response लौटाता है:
| परिदृश्य | Error Message |
|---|---|
कोई Authorization header नहीं | Missing Authorization header. Use: Authorization: Bearer nf_... |
| गलत format का header | Invalid Authorization header format. Use: Authorization: Bearer nf_... |
Key nf_ से शुरू नहीं होती | Invalid API key format. Keys must start with "nf_". |
| Key revoked, expired, या अमान्य है | Invalid or expired API key. |
| अकाउंट निष्क्रिय किया गया है | Account deactivated. |
| Plan में API एक्सेस शामिल नहीं | API access is not available on your current plan. |
Error response का उदाहरण:
{
"error": {
"code": "UNAUTHORIZED",
"message": "Invalid or expired API key.",
"status": 401
}
}
Key Management
सीमाएं
प्रत्येक NueForm अकाउंट में किसी भी समय अधिकतम 10 सक्रिय API keys हो सकती हैं। यदि आपको एक नई key बनानी है और सीमा पूरी हो चुकी है, तो पहले किसी मौजूदा key को revoke करें।
Keys Revoke करना
आप किसी भी समय अपनी profile के Developer tab से API key को revoke कर सकते हैं। Revocation तुरंत प्रभावी होता है --- revoked key का उपयोग करने वाली किसी भी request को 401 Unauthorized response मिलेगा।
Key revoke करने के लिए:
- Profile > Developer पर जाएं।
- वह key खोजें जिसे आप revoke करना चाहते हैं (उसके नाम और prefix द्वारा पहचानी गई)।
- Revoke पर क्लिक करें।
- कार्रवाई की पुष्टि करें।
Key revoke करना पूर्ववत नहीं किया जा सकता। उस key का उपयोग करने वाली कोई भी सेवा या integration तुरंत एक्सेस खो देगी। पुरानी key revoke करने से पहले सुनिश्चित करें कि आपने अपने applications को नई key से अपडेट कर दिया है।
Last Used Tracking
NueForm प्रत्येक API key के अंतिम उपयोग का समय track करता है। Developer tab में देखें कि कौन सी keys सक्रिय रूप से उपयोग में हैं और कौन सी revoke करने के लिए सुरक्षित हो सकती हैं।
Plan Requirements
API एक्सेस एक gated feature है जिसके लिए paid plan आवश्यक है:
| Plan | API एक्सेस | Rate Limit |
|---|---|---|
| Entrepreneur (Free) | नहीं | --- |
| Pro ($29/mo) | हाँ | 100 requests/min |
| Enterprise ($99/mo) | हाँ | 500 requests/min |
यदि आप किसी ऐसे अकाउंट पर API key का उपयोग करने का प्रयास करते हैं जिसके plan में API एक्सेस शामिल नहीं है, तो आपको 403 Forbidden response मिलेगा:
{
"error": {
"code": "FORBIDDEN",
"message": "API access is not available on your current plan.",
"status": 403
}
}
सुरक्षा सर्वोत्तम प्रथाएं
अपनी API keys को सुरक्षित रखने के लिए इन दिशानिर्देशों का पालन करें:
Keys को version control में कभी commit न करें
अपनी key files को .gitignore में जोड़ें और इसके बजाय environment variables का उपयोग करें। यदि कोई key गलती से commit हो जाती है, तो इसे तुरंत revoke करें और एक नई जनरेट करें।
# .env (अपने .gitignore में .env जोड़ें)
NUEFORM_API_KEY=nf_your_api_key_here
Environment variables का उपयोग करें
प्रत्येक environment --- local development, staging, और production --- में API keys को environment variables में स्टोर करें। कभी भी keys को अपने application source में hard-code न करें।
// सही
const apiKey = process.env.NUEFORM_API_KEY;
// गलत --- ऐसा कभी न करें
const apiKey = "nf_a1b2c3d4...";
प्रत्येक environment के लिए अलग keys उपयोग करें
Development, staging, और production के लिए अलग-अलग API keys बनाएं। यह किसी key के compromise होने पर प्रभाव को सीमित करता है और किसी एक environment के एक्सेस को revoke करना आसान बनाता है।
Keys को नियमित रूप से rotate करें
समय-समय पर नई keys बनाएं और पुरानी keys को चरणबद्ध तरीके से हटाएं। NueForm अधिकतम 10 सक्रिय keys की अनुमति देता है, इसलिए आप एक नई key बना सकते हैं, अपनी services अपडेट कर सकते हैं, सब कुछ काम करता है verify कर सकते हैं, और फिर पुरानी key revoke कर सकते हैं।
केवल server-side उपयोग तक सीमित रखें
API keys का उपयोग केवल server-side code में किया जाना चाहिए। अपनी API key को client-side JavaScript, mobile apps, या किसी भी ऐसे code में कभी expose न करें जो user के browser में चलता है।
अपनी API key को कभी भी frontend code, public repositories, या client-side requests में शामिल न करें। एक leaked key आपके अकाउंट तक पूर्ण API एक्सेस प्रदान करती है। यदि आपको संदेह है कि कोई key compromise हो गई है, तो इसे तुरंत revoke करें।