URI Design - theodi/open-orgn-services GitHub Wiki
Naming Principles in URLs
- hyphenated rather than underscores
- use schema.org naming (translation files for user interface)
- plural types in URLs
- no actions in URLs
- search, take a look at http://www.opensearch.org/Home
Examples
http://directory.theodi.org/
as root domain
/members
= list of members (alphabetical)/members?page={page}
= members whose organisation name starts with that letter/members/{membershipId}
= page about that member- different view if you are logged in as the member who can edit this entry
- content negotiation with
Content-Location
header /members/{membershipId}.json
= provides JSON format/members/{membershipId}.html
= provides HTML format/members/new
= redirects to/join-us
/members/new?level={membershipLevel}
= register to become a member at another level/sessions/new
= form to login (membershipId & password)DELETE /session
= forget who I am