[ros-users] Introducing ROStful: ROS over RESTful web services

Ben Kehoe benk at berkeley.edu
Thu Feb 20 20:31:39 UTC 2014

Hello all,
ROStful is a lightweight web server for making ROS services, topics, and
actions available as RESTful web services. It also provides a client proxy
to expose a web service locally over ROS.

Here at Berkeley we are working to bring Software as a Service (SaaS)
paradigms into robotics. We have created ROStful as a starting point for
creating SaaS tools using existing ROS services and actions.

ROStful web services primarily use the rosbridge JSON mapping for ROS
messages. However, binary serialized ROS messages can be used to increase

The purpose of ROStful is different from rosbridge: rosbridge provides an
API for ROS through JSON using web sockets. ROStful allows specific
services, topics, and actions to be provided as web services (using plain
get and post requests) without exposing underlying ROS concepts.
The ROStful client proxy, however, additionally provides a modicum of
multi-master functionality. The client proxy is a node that connects to a
ROStful web service and exposes the services, topics, and actions locally
over ROS.

The ROStful server is WSGI-compatible and can therefore be used with most
web servers like Apache and IIS.

Try it out (there are no dependencies!), and let us know what you think!

Two minor notes:
Serialized ROS messages are sent with the MIME type
'application/vnd.ros.msg'. If there's a standard anyone else is using, let
us know.
In the absence of a standard component description format, ROStful uses an
INI-based format that may be of interest for creating such a standard
description. See

--Ben Kehoe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20140220/11346e6d/attachment.html>

More information about the ros-users mailing list