Indian Railways API pricing

Live train status, train running status, schedules, seat availability and fares in one REST API. Start free with 2,000 requests a month; failed requests are free.

Plans and prices

Free

Build and evaluate. No card, no phone number.

₹0/month

Never billed. Move up when your app goes live.

  • 2,000 requests a month
  • 20 requests a minute
  • 300 requests a day
  • All core except PNR
  • API key authentication
  • Docs support
  • Evaluation and personal projects only

Starter

For a live app with real users.

30-day free trialOffer terms

₹0was ₹699

for the first month

then ₹699 a month

  • 40,000 requests a month
  • 60 requests a minute
  • No daily cap
  • All core, plus PNR
  • API key authentication
  • Email support, 24 h
  • Commercial use

Start with a 30-day free trial

Growth

For products with steady traffic and bursts.

50% off your first monthOffer terms

₹1,249was ₹2,499

for the first month

then ₹2,499 a month

  • 1,50,000 requests a month
  • 200 requests a minute
  • No daily cap
  • All core and PNR, plus bulk lists
  • API key and IP allowlists Every request must be HMAC-signed. How to sign
  • WhatsAppPriority email and WhatsApp support, 8 h
  • Commercial use

Scale

High volume, plus the vacant-berth suite.

50% off your first monthOffer terms

₹3,249was ₹6,499

for the first month

then ₹6,499 a month

  • 5,00,000 requests a month
  • 500 requests a minute
  • No daily cap
  • All of Growth, plus vacant berths and chart status
  • API key and IP allowlists Every request must be HMAC-signed. How to sign
  • WhatsAppPriority email and WhatsApp support, 4 h
  • Commercial use

Pay with UPI, RuPay, cards and net banking through Razorpay

  • UPI
  • RuPay
  • Visa
  • Mastercard
  • Net banking

Intro offers are for first-time buyers and apply once, to the first payment. Starter's 30-day free trial needs an autopay mandate in rupees; cancel before it ends and you pay nothing. After that, each plan renews monthly at list price.

Prices are per month, in Indian rupees. Support times are response targets, not guarantees. Paid plans allow commercial use under the Developer API Terms.

Compare plans

Every limit and inclusion, side by side.

Show plan
Every plan compared, feature by feature
FeatureStarter₹699/monthChoose Starter
Usage
Requests a month40,000
Rate limit60 requests a minute
Daily capNo daily cap
Failed requestsNot counted
Access
Live train status and station boardsIncluded
Seat availability and faresIncluded
PNR statusIncluded
Bulk listsNot included
Vacant berths and chart statusNot included
Commercial useIncluded
Security
API key authenticationIncluded
Request signing (HMAC)Not required
IP allowlistsNot included
Support and billing
SupportEmail, 24 h
Intro offer, first-time buyers₹0 for 30 days
Renews at₹699 a month
Enterprise

Need more than Scale?

Custom volume, limits and terms. A contract with invoicing, an uptime commitment and a named contact.

Talk to us

Works with your stack

Plain REST over HTTPS, with JSON responses. Any language with an HTTP client works.

The docs have copy-ready samples in cURL, Node.js and Python, and the OpenAPI file imports into Postman or any client that reads OpenAPI.

Read the docsOpen the OpenAPI file

  • cURL
  • Node.js
  • Python
  • JavaScript
  • TypeScript
  • Go
  • PHP
  • Java
  • Postman
  • OpenAPI

What counts as a request

A request to any core endpoint counts as 1, whether it is a station search or a live train position. A few heavier operations count more, and a request that fails costs nothing.

Every response says what it cost
HTTP/1.1 200 OKX-RailCore-Credits-Cost: 1X-RailCore-Credits-Remaining: 39999

Starter, after the month's first request. The headers keep their older name: one credit is one request.

Every endpoint and what it costs
What each operation counts as
Operation
Core endpoints, on every plan, 1 request each
StationsSearch stations, Get station, Live station board
TrainsSearch trains, Get train, Train schedule, Booking stops, Full train route, Coach position, Live train status
JourneysTrains between stations, Journey search
AvailabilitySeat availability, Availability calendar, Available classes
FaresFare estimate, Search fares, Unreserved fare
Weighted and per-unit
Compare journeysPOST /v1/journeys/compare1 request per route compared, minimum 1 requestA request that answers 200 is counted at the size it asked for: a route that fails inside the response still counts. A request refused as a whole (4xx or 5xx) is free.
Batch seat availabilityPOST /v1/availability/seats/batch1 request per distinct class per item, minimum 1 requestA class repeated in one item counts once, whatever its case. An item that leaves out classes, or sends an empty list, counts as 4. A request that answers 200 is counted at the size it asked for: an item that fails inside the response still counts. A request refused as a whole (4xx or 5xx) is free.
Scale and Enterprise only
Chart statusGET /v1/charts/status1 request
Vacant berthsGET /v1/charts/vacant-berths3 requests
Vacant berth hoppingGET /v1/charts/vacant-berths/hopping4 requests
Route vacancy scanGET /v1/charts/vacant-berths/route-scan8 requests
Submit route-scan jobPOST /v1/jobs/route-scan8 requests
Submit hopping jobPOST /v1/jobs/hopping4 requests
Get job, Cancel job, Stream job progress and List jobsFree
Never counted
A request that fails, for any reasonRefused as a whole with a 4xx or 5xx responseFree

Free upgrade for students and open-source projects

Building a college project or an open-source app on RailCore? Email us from your college address, or with a link to your public repository, and get Starter free for 6 months: 40,000 requests a month.

Email [email protected]

Questions

Billing, offers, invoices and commercial use. Something else? Write to us.

Prices are in Indian rupees. A monthly plan is paid in advance and renews each month until you cancel. A one-time purchase pays for one billing period and does not renew. Paying from outside India in US dollars is always a one-time purchase. A billing period starts on the day you pay and runs for a month: a plan bought on 14 March runs to 14 April, and a monthly plan renews on the 14th. After Starter's free trial, the first paid month starts on the day the trial ends. Each billing period brings the plan's requests; if they run out early, further requests are refused until the plan renews or you change plan. The Free plan is never billed; its requests refill each month on the date it started on your account.

Start with 2,000 free requests a month.

Get a free API key