|
|
|
|
|
by mfenniak
4800 days ago
|
|
Hi Alex, I never advocated breaking compatibility by adding, removing, or renaming fields in this article. Would you please let me know what gave you that impression so that I can clarify it? I also did not state that having a versioned API is a bad thing. GitHub's API was a great example because it's both well-designed and versioned. Good design is going to make your API less fragile and far less prone to version changes, but I'm strongly in favour of versioning your API. Mathieu |
|
You suggested that the FBI could re-write the API request to be: http://api.fbi.gov/wanted/most
Which would return a set of known fields. You then go on to say:
"After complaints that “notoriety” is a made-up number, the FBI can hide the field; the intent-driven design is unchanged."
This suggests that the API author is free to add, remove or rename fields in the response without bumping version as it's part of the "intent-driven design".
In response to your second point, I then don't understand what the real purpose of intent-driven API design is. The only different appears to be that you given more RESTful URLs than using loads of query parameters?