Skip to content

Instantly share code, notes, and snippets.

View jharmn's full-sized avatar

Jason Harmon jharmn

View GitHub Profile
@jharmn
jharmn / gist:5097293
Last active December 14, 2015 13:58
PragmaticAPI.com post on Hypermedia for permissions
(Login as poweruser)
GET /widget/5
{
"links": [
{
"rel": "Create",
"title": "Cog",
"verb": "POST",
"href": "/widget/5/cogs"
@jharmn
jharmn / gist:5097295
Last active December 14, 2015 13:59
PragmaticAPI.com post on Hypermedia in permissions
(Login as ViewOnlyUser)
GET /widget/5
{
"links": [
{
"rel": "List",
"title": "Cog",
"verb": "GET",
"href": "/widget/5/cogs"
GET /users/321
200 OK
{
"id": 321,
"username": "jhrmn",
"firstName": "Jason",
"lastName": "Harmon",
"userType": "read-only",
"status": "active"
}
PUT /users/321
{
"id": 321,
"username": "jason.harmon",
"firstName": "Jason",
"lastName": "Harmon",
"userType": "read-only",
"status": "active"
}
GET /users/321/profile
200 OK
{
"feedback": 0
}
PUT /users/321/profile
{
"feedback": 0,
"photo": "https://en.gravatar.com/userimage/11130470/deba6005e5c4709589c33fdfdd5cc6b5.jpg",
"preferredShippingCarrier": "FedEx",
"nickName": "El Gran Bigote"
}
204 No Content
GET /users/321/profile
{
"photo": "https://en.gravatar.com/userimage/11130470/deba6005e5c4709589c33fdfdd5cc6b5.jpg",
"preferredShippingCarrier": "FedEx",
"nickName": "The Professor"
}
curl --data "grant_type=password&client_id=biglongtokengoeshere&username=YOURUSER&password=YOURPASSWORD" https://api.example.com/oauth/token
curl -u charlie:brown https://snoopy.com
{
"access_token": "b77yz37w7kzy8v5fuga6zz93",
"token_type": "bearer",
"expires_in": 2629743
}