API key management, environment variables, rate limits, और security best practices।
सभी RAIL API requests API keys से authenticate होती हैं। Keys आपके account से linked होती हैं, आपका credit balance carry करती हैं, और आपके usage logs में दिखती हैं।
दोनों SDKs client बनाते समय API key accept करते हैं और automatically header attach कर देते हैं:
from rail_score_sdk import RailScoreClientimport os# Key directly pass करें (scripts के लिए ठीक है)client = RailScoreClient(api_key="YOUR_RAIL_API_KEY")# Recommended: environment variable से पढ़ेंclient = RailScoreClient(api_key=os.environ["RAIL_API_KEY"])
# Runtime पर pass करें — image layers में कभी secrets मत bake करेंdocker run -e RAIL_API_KEY=YOUR_RAIL_API_KEY my-app# docker-compose.ymlservices: app: image: my-app environment: - RAIL_API_KEY=${RAIL_API_KEY}
आप अलग-अलग environments (production, staging, CI) के लिए multiple keys बना सकते हैं। अपने Dashboard से सभी keys manage करें।
Action
कब use करें
Generate key
नया environment, नई service onboard करना, या schedule पर credentials rotate करना
Rename key
Usage tracking के लिए “production-chatbot” या “staging-ci” जैसा context add करें
Revoke key
Key leak का शक, employee offboarding, या service बंद करना। तुरंत effect होता है।
Zero-downtime rotation: नई key generate करें, अपनी service में deploy करें और verify करें कि काम कर रही है, फिर पुरानी key revoke करें। Swap में seconds लगते हैं।