Click here to Skip to main content
14,453,371 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
 
GeneralRe: RESTful API Designing guidelines — The best practices Pin
PIEBALDconsult19-Dec-19 16:59
professionalPIEBALDconsult19-Dec-19 16:59 
JokeRe: RESTful API Designing guidelines — The best practices Pin
NeverJustHere19-Dec-19 19:28
MemberNeverJustHere19-Dec-19 19:28 
GeneralRe: RESTful API Designing guidelines — The best practices Pin
Mark_Wallace19-Dec-19 21:02
MemberMark_Wallace19-Dec-19 21:02 
GeneralRe: RESTful API Designing guidelines — The best practices Pin
Nand3219-Dec-19 21:52
MemberNand3219-Dec-19 21:52 
GeneralRe: RESTful API Designing guidelines — The best practices Pin
Jörgen Andersson19-Dec-19 22:41
communityengineerJörgen Andersson19-Dec-19 22:41 
GeneralRe: RESTful API Designing guidelines — The best practices Pin
agolddog23-Dec-19 4:09
Memberagolddog23-Dec-19 4:09 
GeneralRe: RESTful API Designing guidelines — The best practices Pin
Andrew Rissing23-Dec-19 7:10
MemberAndrew Rissing23-Dec-19 7:10 
GeneralRe: RESTful API Designing guidelines — The best practices Pin
tjwise24-Dec-19 7:19
Membertjwise24-Dec-19 7:19 
Singular vs Plural is todays Tabs vs Spaces war. Both are correct for different reasons. I (we) tend to stay with singular unless there is a compelling reason to go plural. Primarily due to how some words pluralize (Person vs People).

This was an extremely lightweight article. The problem set is broader. Like, you have /populace endpoint. Do you return 300 million results or paginate the results? You need to incorporate security aspects. Do you have access to ALL the /populace (as a federal agency), or only some (as a state/province agency)? Even then, do you have access to all the data within a populace resource or only a limited set?

The problem I often see is thinking of the REST API like a programming API. It is not. If you go that way, you are building a RPC, and will have scaling issues at some point. You have to step back and really think resource. getServiceFee is communicative, but so is GET /serviceFee. But /serviceFee is not a "resource". It is part of a larger resource. Depending on access rights, it might be one of only a few elements available in the returned resource.

A better, simplified article is https://dzone.com/articles/5-basic-rest-api-design-guidelines[^]. It covers some of these points. A better collection of articles is https://dzone.com/articles/rest-api-best-practices-with-design-examples-from[^]. Sticking to these best practices helps open up some other frameworks to assist in building and documenting your API.

Bottom line, good REST is not simple or easy. It takes a lot of up front effort and then discipline to implement well. Even with that said, I (we) still got it wrong multiple times. Just less disasterously. Smile | :)
The cure to boredom is curiosity. There is no cure for curiosity. -- Dorothy Parker


modified 24-Dec-19 13:05pm.

GeneralWoohoo! Pin
honey the codewitch19-Dec-19 11:13
mvahoney the codewitch19-Dec-19 11:13 
GeneralRe: Woohoo! Pin
  Forogar  19-Dec-19 11:18
professional  Forogar  19-Dec-19 11:18 
GeneralOnce Again I'm Forced To Report Pin
W Balboos19-Dec-19 6:43
mveW Balboos19-Dec-19 6:43 
GeneralRe: Once Again I'm Forced To Report Pin
MarkTJohnson19-Dec-19 8:23
professionalMarkTJohnson19-Dec-19 8:23 
RantVB.NET is hateful Pin
honey the codewitch19-Dec-19 6:11
mvahoney the codewitch19-Dec-19 6:11 
GeneralRe: VB.NET is hateful Pin
Richard Deeming19-Dec-19 6:26
communityengineerRichard Deeming19-Dec-19 6:26 
GeneralRe: VB.NET is hateful Pin
honey the codewitch19-Dec-19 6:28
mvahoney the codewitch19-Dec-19 6:28 
GeneralRe: VB.NET is hateful Pin
Richard Deeming19-Dec-19 6:35
communityengineerRichard Deeming19-Dec-19 6:35 
GeneralRe: VB.NET is hateful Pin
honey the codewitch19-Dec-19 6:46
mvahoney the codewitch19-Dec-19 6:46 
GeneralRe: VB.NET is hateful Pin
Richard Deeming19-Dec-19 6:54
communityengineerRichard Deeming19-Dec-19 6:54 
GeneralRe: VB.NET is hateful Pin
honey the codewitch19-Dec-19 6:55
mvahoney the codewitch19-Dec-19 6:55 
GeneralRe: VB.NET is hateful Pin
0x01AA19-Dec-19 7:00
professional0x01AA19-Dec-19 7:00 
GeneralRe: VB.NET is hateful Pin
honey the codewitch19-Dec-19 7:03
mvahoney the codewitch19-Dec-19 7:03 
GeneralRe: VB.NET is hateful Pin
obermd26-Dec-19 10:51
Memberobermd26-Dec-19 10:51 
GeneralRe: VB.NET is hateful Pin
Rick York19-Dec-19 8:26
mveRick York19-Dec-19 8:26 
GeneralRe: VB.NET is hateful Pin
honey the codewitch19-Dec-19 8:30
mvahoney the codewitch19-Dec-19 8:30 
GeneralRe: VB.NET is hateful Pin
Rick York19-Dec-19 9:37
mveRick York19-Dec-19 9:37 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.