API RESTful les paramètres requis dans la chaîne de requête?

Lors de la conception d'une API RESTful, que faire si une demande n'a de sens que si il y a des paramètres spécifiques associés à la demande? Si les paramètres se transmettre comme une chaîne de requête, et si oui, que faire lorsque tous les paramètres ne sont pas spécifiés ou sont mis en forme de façon incorrecte?

Par exemple, disons que j'ai un Post de ressources, qui peut être consulté par api/posts " point de terminaison. Chaque poste dispose d'une situation géographique et les articles peuvent être récupérés UNIQUEMENT lors de la spécification d'un domaine que les postes peuvent résider dans. Ainsi, 3 paramètres sont nécessaires: la latitude, la longitude et de rayon.

Je peux penser de 2 options dans ce cas:

1. Mettre les paramètres de chaîne de requête: api/posts/?lat=5.54158&lng=71.5486&radius=10

2. Mettre les paramètres dans l'URL: api/posts/lat/5.54158/lng/71.5486/radius/10

Qui devrait être la bonne approche? Il semble erroné de mettre les paramètres requis dans la chaîne de requête, mais cette dernière se sent un peu "plus laid'.

PS. Je suis au courant il y a beaucoup de discussion sur ce sujet déjà (par exemple: API REST Meilleures pratiques: Où mettre les paramètres?), mais ma question s'adresse spécifiquement au cas où les paramètres sont requis, pas une option.

OriginalL'auteur stensootla | 2015-02-18