AS OF MAY 14 2013, FORNI.CA HAS BEEN DEPRECATED AND WILL STOP WORKING ON JULY 1ST 2013
A NEW API >> API.VIDEOMANIA.XXX << IS AVAILABLE AT: DEV.VIDEOMANIA.XXX, WE RECOMMEND YOU START USING IT

api.Forni.ca | Documentation

About Forni.ca
Forni.ca is an adults video grabber, grabbing videos meta data from some of the most visited sites such as RedTube, XVideos, Eporner, SlutLoad and more. If you want to build your own applications or website, we offer unlimited access to our RESTful API.
Technology Overview
Forni.ca is a RESTful API on HTTP requests and JSON responses. If you are familiar with Twitter, Facebook or other services API, you will feel comfortable using this one.
EndPoints
The API is accessed by making HTTP request to an endpoint URL in which GET or POST variables contain information about what you wish to access. Every endpoint is accessible via standard HTTP (port 80) http://api.forni.ca
Versions
Everything in the API (methods,parameters,etc) is fixed to a version number, and every call must contain one. Different versions are available are diferent endpoint URLS. The latest version is Version 1 http://api.forni.ca/1
Authentication
All requests, except for a few, must authenticate. Authentication is made by providing the the Site URL with the param 'site_url' you are using the API from. The reason we do it this way, so you can be able to track your video views, likes comments etc. If you change your 'site_url' param to another one, all of your video data will not be available.
Rate Limit
All requests are throttled by IP or site_url at a defined requests per minute. If you exceed the threshold in a given minute, you will receive an http error 420 and unable to make more requests untils your throttle is lifted. The time when you will be able to make more request will also be provided. But at this time, you can make as many requests as you want
Response Formats
All responses are returned in JSON
Responses
All requests return a JSON response with two keys: 'Info' which contains the response information, and 'Results' which contains the data of the results
Responses GZIP Compression
Responses coming from our server are GZIP compressed. Which means in order for you to get the information, you must decode the gzip, and your data will be in json format
Errors
The easiest way to check if there was in error is to check the status code. If it's anything other than 200, then an error occurred. Example of an error:
{
    "Info":
            {
                "Status":"error",
                "ErrorCode":400,
                "ErrorMessage":"Bad Request",
                "ErrorDescription":"Invalid 'site_url' or 'site_url' was not specified"
            }
}