The Viddler API
Last edited: May 19th, 2009 by Colin DevroeThe Viddler API exposes Viddler’s key features to those that would like to build custom solutions on top of Viddler’s video platform. In order to use Viddler’s API you must have a Viddler username and API key.
We ask that developers use the API responsibly. This means that we’d like you to:
- Limit requests to no more than one per second, and only one request at a time.
- Cache response results for as long as possible when circumstances allow for it.
- Protect user credentials by storing them no longer than necessary or at all.
- Report problems directly to Viddler before publicizing them.
- Share your knowledge and code with community where applicable.
Don’t forget: if you’d like to share your work with the community you can submit your work into our Project Directory.
API End-point: http://api.viddler.com/rest/v1/
Current available methods
Each method has its own set of required and optional requirements. To view these requirements, as well as an example response, and associated error codes – please choose a method below.
- viddler.api.getInfo
- Returns general information about current API version running on Viddler’s servers.
- viddler.users.register
- Creates a Viddler account. * Restricted to only qualified API keys.
- viddler.users.auth
- Authenticates a Viddler username and password.
- viddler.users.getProfile
- Retrieves the public information of a user’s profile.
- viddler.users.setProfile
- Updates a user’s profile.
- viddler.users.search
- Search for Viddler profiles. Can be used to find specific user’s friends also.
- viddler.users.setOptions
- Sets a user’s default account options. * Restricted to only qualified API keys.
- viddler.videos.getRecordToken
- Generates a token for use with the video recorder.
- viddler.videos.prepareUpload
- Assigns the upload server for the user account.
- viddler.videos.upload
- Uploads a video to the specified user account.
- viddler.videos.getStatus
- Returns the encoding status for a video.
- viddler.videos.getDetails
- Returns all available information for a video.
- viddler.videos.getDetailsByUrl
- Returns the same information as viddler.videos.getDetails, accepts URL instead of ID.
- viddler.videos.setDetails
- Sets the information associated to the specified video.
- viddler.videos.setPermalink
- Sets the permalink, or URL that the flash player links to, for the specified video.
- viddler.videos.setThumbnail
- Sets the thumbnail to a time for a specific video.
- viddler.videos.getByUser
- Returns a list of all videos that were uploaded by the specified user.
- viddler.videos.search
- Returns a list of all videos based on a search query and more….
- viddler.videos.getByTag
- Returns a list of all videos that have the specified tag.
- viddler.videos.getFeatured
- Returns a list of videos featured on Viddler.com.
- viddler.videos.comments.add
- Adds a text comment to the specified video (Both timed and global).
- viddler.videos.comments.remove
- Removes a text comment from the specified video.
- viddler.videos.delete
- Deletes the specified video.
Error Codes and Descriptions
All of the above methods may return one of the following error codes and descriptions. To view any method specific error codes, please select a method above.
| Error # | Description |
|---|---|
| 1 | An internal error has occurred. |
| 2 | Bad argument format. |
| 3 | Unknown argument specified. |
| 4 | Missing required argument for this method. |
| 5 | No method specified. |
| 6 | Unknown method specified. |
| 7 | API key missing. |
| 8 | Invalid or unknown API key specified. |
| 9 | Invalid or expired sessionid. |
| 10 | Used HTTP method is not allowed for this API method. Try using HTTP POST instead of HTTP GET |
| 11 | Method call not allowed. Your API key security level restricts calling this method |
| 12 | API key disabled |
If you get an error that is not on this list, please report the error you are getting using the report link above.
Error Response Format
<error> <code>4</code> <description>missing required parameter</description> </error>
- details node may or may not be included in the error response.
Last updated: Monday, December 8th, 2008 by Colin Devroe.