MediaSock Specification

version 1.4 | 060707

A lightweight service discovery protocol and programmatic interface for web-services handling a user's personal media assets.

Service Discovery

MediaSock's service discovery mechanism is designed to promote the adoption of applications using web-service APIs through a common method discovery and selection process. Users with a MediaSock compatible client application simply enter a server domain and the client discovers the available methods without the need for the user to select from a confusing list of APIs or URLs.

Programmatic Interface

MediaSock's methods have been conceived with the goal of simplifying the exchange of an authorised user's media (images and movies, initially) with disparate online services whilst accommodating their distinct architecture and functionality.

Client Framework

A framework supporting the integration of disparate photo-sharing and media web-services with desktop and server-based client applications is currently under development. Scheduled for initial commercial availability by the end of year, the framework will be open-sourced under a free-use licence in the future.

Architectural Model

MediaSock draws on the workings of existing private APIs and related public APIs in use by web-service providers, and it is intended to work alongside the methods provided by them. It is not a wide-ranging specification but a guideline for minimum interoperability, with ease of implementation by services and ease of use for consumers as core considerations.

MediaSock has been conceived primarily around HTTP, REST and XML in a client-server model, however it may be implemented in any protocol and data-format combination that might be suitable.

The XML output has been structured for ease of parsing such that substrings and tokens may be used, whilst service methods may exist at disparate URLs and responses may be embedded within existing output (e.g. HTML). MediaSock may therefore be used by providers not already having an API simply by adding a few lines to their existing pages, or equally it may be implemented for enhanced web-services functionality.

Current Status

This is a work-in-progress, MediaSock support is currently implemented in the following desktop applications:

And web applications:

Feedback, suggestions and greater participation are welcomed! Please visit the MediaSock Google group. This specification was authored, and is maintained by Jacob Jay <jjay[at]verse.org>.

MediaSock photo sharing service discovery API