Hyphen, underscore lub camelCase jako ogranicznik słów w URI?

Projektuję interfejs API oparty na protokole HTTP dla aplikacji intranetowej. Zdaję sobie sprawę, że jest to mały problem w wielkim schemacie rzeczy, ale:powinienem użyć myślników, podkreśleń lub camelCase, aby oddzielić słowa w URI?

Oto moje pierwsze myśli:

CamelCase

możliwe problemy, jeśli serwer nie uwzględnia wielkości literwydaje się mieć dość powszechne zastosowanie w kluczach łańcuchów zapytań (http://api.example.com?wyszukiwana fraza= ...), ale nie w innych częściach URI

Łącznik

bardziej estetyczny niż inne alternatywywydaje się być powszechnie stosowany w części ścieżki URInigdy nie widziałem dzielonego klucza łańcucha zapytania w środowisku naturalnymmożliwie lepiej dla SEO (może to być mit)

Podkreślać

potencjalnie łatwiejsze do obsługi języków programowaniakilka popularnych interfejsów API (Facebook, Netflix, StackExchange itp.) używa podkreśleń we wszystkich częściach URI.

Jestem skłonny do podkreślenia wszystkiego. Fakt, że większość dużych graczy z nich korzysta, jest przekonujący (patrzhttps://stackoverflow.com/a/608458/360570).

questionAnswers(5)

yourAnswerToTheQuestion