Check out the Unglue.it API.
INDIAN RAIL API is developed with an aim to bring time table of all the reserved, unreserved and suburban trains search under one roof. Multiple source of information is used to create a common database of all trains running under Indian Railways. Similar to other railway system, INDIAN RAIL API has moved a step to facilitate the easy access of information related to Indian Railways Trains. The INDIAN RAIL API is a service that provides information related to Indian Trains using an HTTP request. You can get the list of stations, trains between stations, route of a train, current running status of the train and get PNR current status. The aim is to provide non-commercial usage of the data and a platform where innovative feature rich websites/apps can be developed by independent developers. These applications developed will help Indian Railways travelers in making more informed decisions about their travel.
Connect to API