"Mashape Provides Tools to Distribute, Discover and Hack APIs"I'm exploring the Mashape API Platform, trying to break things down and understand everything in more detail. Blogging about a topic does this for me.
So let's start with deploying an API with Mashape.
With the Mashape PHP Library you can deploy an API on your infrastructure. You download the library from Github, deploy on your server, and then add the methods for your API by extending the Mashape PHP component class.
If you already have an API that returns JSON responses, you can just register it as a Mashape API for distribution, without deploying the Mashape PHP Library.
If you've deployed your API without the Mashape PHP Library you will need to accomplish one more step. You will need to implement the Mashape Connector by adding one line of code to your API, which is required to connect your API to the Mashape Platform and handle user authorization, billing, and rate-llimiting.
Whichever way you deploy your API, you can now distribute it using Mashape. The first step for distributing an API is to create an XML file that describes what the API does. This XML file gets deployed on your server and needs to be updated as your API evolves.
Once your API is deployed and published to Mashape, the platform distributes your API to the Mashape Marketplace and provides a detail page with title, description, documentation, test console and PHP, Python, Ruby, Java and Objective C client libraries.
Mashape then provides a way for developers to sign-up and start hacking on any API in the Mashape Marketplace with a single developer account and key. There are also social features allowing users to follow and contact other users.
All APIs that are published using Mashape will connect and communicate with Mashape through an API Proxy. This is the proxy that handles the authorization of users, implementation of billing, rate limiting and other functions described above.
Right now the proxy is primarily available via the Mashape platform, but you can also find an open-source version of the Mashape API proxy on Github. The API Proxy is intended to be downloaded and installed on your servers, which will increase the performance and security of your API.
I'm playing around with deploying one small and one large data-set as two separate APIs using the Mashape PHP Library, so I can get more familiar with how the platform works. I just wanted to work through some thoughts about what they provide here on the blog. More to come on Mashape...