NAME
jsonbin.org
- A personal JSON store as a RESTful service
SYNOPSIS
curl https://jsonbin.org/remy/blog
To save data, you'll first need to sign in to get an API key.
DESCRIPTION
jsonbin.org
is a personal key/value JSON store as a service. Protected behind authentication and API key requests, data is stored as JSON and can be deep linked. A permissioning model also allows specific paths to your store to become public to share with others.
The aim of the project is to provide a simplified data store for tinkerers.
Important: jsonbin is currently in open beta. If you have questions, please get in touch.
Authentication
By default all user store data is protected behind auth either via browser sign in, or an authorization
token. The token is your apikey
. For example:
curl -X POST https://jsonbin.org/remy/blog \
-H 'Authorization: token abcd-xyz-123' \
-d '{ url: "https://remysharp.com" }'
Endpoints
A private namespace URL "_
" is used for jsonbin specific endpoints:
/_/help
This page./_/login
Auth with github./_/logout
Clear your session./_/me
Your full profile./_/me/apikey
Your API key./_/me/apikey
DELETE to revoke your current key./_/me/username
Your username./_/me/public
Your public paths./_/me/:path
Deep link to profile properties.
The following methods with your authorization
header will access your data store against https://jsonbin.org/:username/
:
GET
return given path mapped to a JSON path.POST
store the payload (supports JSON and files).PATCH
merge the payload with the endpoint.DELETE
store path.
By default all endpoints are private, but you can modify a specific entry point to be public by default by changing the permissions:
- PUT
/:username/:path/_perms
make the:path
public. - DELETE
/:username/:path/_perms
make:path
private. - GET
/:username/:path/_perms
check permissions of:path
.
Public endpoints accept GET
requests without the authorization
header.
Example usage
You can use jsonbin as a shared clipboard across machines. Creating an alias to upload STDIN
via curl
could be posted to a public URL:
alias jsonbin="curl -X 'POST' \
-H'authorization: token abcd-xyz-123' \
-F'content=@-' \
https://jsonbin.org/remy/clipboard"
echo "foo" | jsonbin
BUGS
This project lives at github/jsonbin. Please report bugs to github/jsonbin/issues.
AUTHOR
Remy Sharp <[email protected]>