retrosight / rest

Guidelines for building a REST API
MIT License
7 stars 2 forks source link

Only recommend RFC 3339 #13

Open retrosight opened 5 years ago

retrosight commented 5 years ago

From @gibson042

Also, a question: given that RFC 3339 is a well-defined and interoperable profile of ISO 8601, why would you recommend any other ISO 8601 representation?

retrosight commented 5 years ago

A valid question. If it were solely up to me that section would simply say 'use the Unix epoch and nothing else'. This is a realistic choice given there are lots of systems out there which use these the ones mentioned (and a whole lot more, as anyone who might have written code against legacy travels systems knows). I've basically narrowed it down to the three standards as a way of trying to get folks to pick one of the standards for easier interop across disparate systems.

Within the four walls of a single API: Pick one and only one. My personal preference is epoch with the close second place of RFC 3339. Most other folks agree with you, it would seem -- and that's noted in the guidelines with Preferred.

I'll add an issue to expand this topic and bring in how a single API (defined as a collection of endpoints within an organization / domain) should pick one and only one and use it throughout.