August 7th, 2011

Ctrl+Alt+Del - Scott & Ted

REST: How to communicate request/response structure?

I think I need someone to explain something to me about REST.

I understand how it defines the URIs of communication by simplicity of existing, yet nowhere do I see any definition of or way of specifying what format or structure the data will be passed in. How do I know what I'll get back? How do I know what to send? Not just in JSON vs XML vs whatever else, but also in what elements or keys / values are inside either of those.

I could, theoretically, see using REST URIs in a SOAP WSDL, yet somehow I get the impression that's not what was intended (given how many 'REST kills SOAP' type posts I've seen around). So where do I define what is being sent back? How do I communicate that to someone who wants to consume my service?

Surely we can't expect everyone who uses REST to reinvent the wheel of how to communicate this basic information?

(Google+ Post)