MalayalaSangeetham.Info Web Services (MSI WS)
Version 1.0, Nov 25, 2013
MSI Media Development Team
What are MSI Web Services ?
MSI Web Services are a set of standardized RESTful APIs (Application Programming Interfaces), that can be used to develop other websites and programs using the tremendous amount of accurate data regarding Malayalam Movies, Albums, Songs and related information.
At a high level, think of MSI WS as the enabler for a 3rd party website using the data available in MSI, thereby making the two sites talk to each other seamlessly.
Who would want MSI Web Services ?
Over the years, we have found that many programmers copy the data from MSI without the permissions and start their sites. However, most of these sites are not very popular or do not achieve the goal they intended in the first place. While there are a myriad of reasons, the primary reason for that is that the data integrity is not maintained accurately. Here at MSI, our focus has been data for the past 10 years and we have a process to maintain this data. In future, we hope anyone who wants to have access to the MSI data to build their own website will use MSI WS.
Why would you want MSI Web Services ?
As a programmer embarking on building a website for Malayalam music/movie related information, the big challenge for you would be to get the correct data and build it up as it takes years and years of hardwork. Some programmers/websites try their hand at stealing the data which of course is not sustainable and illegal. From now on, you have an easy solution. You can merely use the well documented APIs to access the exposed data and build any interfaces for any applications you might want to build.
We believe the types of applications you will be building could fall into the following classes.
- Websites that provides Games/Quizes based on MSI data including phone apps
- Research and analysis tools based on the data
- Any artist websites, .We already provide data to many but that is static data which will get stale. Using the WS, the sites can get access to the latest data dynamically
- Games based on MSI data. MSI team will publish various game ideas the programmers can program against using MSI WS.
- FM stations , TV stations etc.. are using data from MSI extensively. These entities can directly connect to our servers to get the data instead of having to copy and replicate
Why would MSI open the data up?
- We believe this effort will help popularize MSI further as needed while reducing the need to copy the data illegally by violating the creative commons agreement.
- The purpose is to create new applications that can be built by more people who are currently not active members of MSI project.
- This is not intended to replace the MSI site or the new features we have been coming up with regularly for the past several years
- We do not intend to charge any fees for these services, keeping up with the spirit of open source projects. There won't be any monetary transactions involved with this effort.
- Every application developed using MSI WS will have MSI logo on it in addition to other considerations. This will help us popularize these applications through MalayalaSangeetham.Info wesbsite and our related applications.
How do you get access to MSI Web Services ?
To access MSI WS you need an unique identification key (UIK).
It is a simple process to get access to your UIK. You need to send an email to the MSI team by
clicking here. The email should contain the following information.
- A detailed description of the application you are planning to build
- The platform you are planning to host the application - Online, Standalone, Android, iOS etc.
- Your internet service provider.
- How many developers are in your team ? Some examples of your prior work.
- Where are you physically located ?
- An approximate schedule for your project
- A signed copy of the consent form provided here
The data that is provided will be reviewed by the MSI administrative team and the board of directors before providing you access to the web services. The unique identification key (UIK) provided for your application should not be shared with other unregistered users. If we find that the UIK or the access is being misused, we will revoke access to MSI WS. Every application and developer should obtain the UIK by submitting an application to the MSI team.
What formats are available for MSI Web Services ?
We provide both
XML and
JSON interfaces for all our data. Irrespective of whether you are Java Programmer or a .NET programmer you would find our interfaces adequate and easy to use. PHP and Perl users will also find what we provide quite handly.
Overview of the MSI WS Functionality
Mandatory Fields
Keyword |
Description |
Default Values |
auth |
Authorization Code received from MSI Team |
NA |
api |
Type of the API that is being used |
's' = Song Details 'm' = Movie Details 'as' = Album Song Details 'a' = Album Details 'srch' = Search by Keywords for fields specified by the 'db' field 'dsrch' = Detailed Field Searches and combinations for for fields determined by 'k*' fields 'ms' = Past Milestones (Defaults to 10 unless overridden by 'ne' integer field, where 1 < ne < 100)
|
format |
What type of interface format you would like - 'xml' or 'json' |
default is 'xml' |
uc |
Whether to display Unicode - English or Malayalam |
default is 0 for English, 1 for Malayalam |
fuzzy |
Whether to use fuzzy search or precise |
default is 0 for Precise, 1 for Fuzzy |
Optional Fields
Keyword |
Description |
Default Values |
id |
Song or movie ID as determined by the 'db' field |
Any integer 0 < n < 200000 |
kwd |
Keyword to be used in conjunction with expanded 'db' field |
Any text in English |
db |
Type of database or expanded database to search |
'm' = Movies Database
'ms' = Songs Database
'a' = Albums Database
'as' = Album Songs Database
'r' = Ragas Database *
'ar' = Album Ragas Database *
'my' = Movie Years Database *
'sy' = Song Years Database *
|
k* |
Values of field Specific Keywords as indicated below |
'k0' = Movie Name
'k1' = Composer
'k2' = Lyricist
'k3' = Singer
'k4' = Movie Director
'k5' = Song Raga
'k6' = Year of the movie/song
'k7' = Song Name
'k8' = Song/Album Genre
|
Examples of MSI WS Calls
WS Command
|
Description
|
.../&api=s&id=12231&uc=1
|
Get the Unicode Details of Song ID 12231
|
.../&api=m&id=12
|
Get the Details of Movie ID 12
|
.../&api=srch&db=m&kwd=Seetha
|
All Movies with the name Seetha
|
.../&api=srch&db=ms&kwd=Rama&fuzzy=1
|
All Songs With the starting words 'CONTAINTING' rama
|
.../&api=dsrch&db=m&k1=devarajan&k2=vayalar&fuzzy=1
|
List of All Vayalar Devarajan Movies
|
.../&api=srch&db=r&kwd=mohanam
|
List of All Movie Songs Composed in the Raga Mohanam
|
.../&api=dsrch&db=as&k8=Hindu%20Devotional&k3=G%20Venugopal
|
List of All Hindu Devotional Non Movie Songs by Venugopal
|
.../&api=dsrch&db=as&k1=G%20Devarajan&k3=KJ%20Yesudas&k8=Devotional
|
List of All Devotional Non Movie Songs Composed by Devarajan and sung by Yesudas
|
.../&api=dsrch&db=ms&k1=baburaj&k3=susheela&fuzzy=1&k5=pahadi
|
Songs Composed by Baburaj and sung by Susheela in Pahadi Raga
|
.../&api=dsrch&db=m&k1=jerry%20amaldev&k2=bhaskaran&fuzzy=1&format=json
|
Songs Composed by Jerry Amaldev and Written by P Bhaskaran presented in JSON format
|
Future Enhancements
MSI Database provides significantly lot more data that what has been exposed. These are in the areas of movie details as well as song details. We also have significantly large amounts of critical data that can be used for trends, analysis and research.
If you are interested in anything that has not been exposed here, please drop us a note to see if we can get that out in the next version of MSI WS.