0
0
Fork 0

Adding doorkeeper, adding a REST API

POST /api/statuses                  Params: status (text contents), in_reply_to_id (optional)
GET  /api/statuses/:id
POST /api/statuses/:id/reblog

GET  /api/accounts/:id
GET  /api/accounts/:id/following
GET  /api/accounts/:id/followers
POST /api/accounts/:id/follow
POST /api/accounts/:id/unfollow

POST /api/follows                  Params: uri (e.g. user@domain)

OAuth authentication is currently disabled, but the API can be used with HTTP Auth.
This commit is contained in:
Eugen Rochko 2016-03-07 12:42:33 +01:00
parent 3824c58853
commit ab6696e855
54 changed files with 847 additions and 61 deletions

View file

@ -1,4 +1,6 @@
Rails.application.routes.draw do
use_doorkeeper
get '.well-known/host-meta', to: 'xrd#host_meta', as: :host_meta
get '.well-known/webfinger', to: 'xrd#webfinger', as: :webfinger
@ -9,24 +11,37 @@ Rails.application.routes.draw do
}
resources :accounts, path: 'users', only: [:show], param: :username do
member do
post :follow
post :unfollow
end
resources :stream_entries, path: 'updates', only: [:show]
end
resources :stream_entries, path: 'updates', only: [:show] do
namespace :api do
# PubSubHubbub
resources :subscriptions, only: [:show]
post '/subscriptions/:id', to: 'subscriptions#update'
# Salmon
post '/salmon/:id', to: 'salmon#update', as: :salmon
# JSON / REST API
resources :statuses, only: [:create, :show] do
member do
post :reblog
post :favourite
end
end
resources :follows, only: [:create]
resources :accounts, only: [:show] do
member do
get :statuses
get :followers
get :following
post :follow
post :unfollow
end
end
end
namespace :api do
resources :subscriptions, only: [:show]
post '/subscriptions/:id', to: 'subscriptions#update'
post '/salmon/:id', to: 'salmon#update', as: :salmon
end
root 'home#index'
end