Fix #525 - Add instance information API
This commit is contained in:
parent
7b58c1a694
commit
6be7bde243
7
app/controllers/api/v1/instances_controller.rb
Normal file
7
app/controllers/api/v1/instances_controller.rb
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
class Api::V1::InstancesController < ApiController
|
||||||
|
respond_to :json
|
||||||
|
|
||||||
|
def show; end
|
||||||
|
end
|
|
@ -1,8 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
class Api::V1::SiteController < ApiController
|
|
||||||
respond_to :json
|
|
||||||
|
|
||||||
def index
|
|
||||||
end
|
|
||||||
end
|
|
6
app/views/api/v1/instances/show.rabl
Normal file
6
app/views/api/v1/instances/show.rabl
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
object false
|
||||||
|
|
||||||
|
node(:uri) { Rails.configuration.x.local_domain }
|
||||||
|
node(:title) { Setting.site_title }
|
||||||
|
node(:description) { Setting.site_description }
|
||||||
|
node(:email) { Setting.site_contact_email }
|
|
@ -1,14 +0,0 @@
|
||||||
object false
|
|
||||||
|
|
||||||
node(:title) {Setting.site_title}
|
|
||||||
|
|
||||||
node(:max_chars) {500}
|
|
||||||
|
|
||||||
node(:links) do
|
|
||||||
{
|
|
||||||
t('about.learn_more') => url_for(about_more_url),
|
|
||||||
t('about.terms') => url_for(terms_url),
|
|
||||||
t('about.source_code') => "https://github.com/tootsuite/mastodon",
|
|
||||||
t('about.other_instances') => "https://github.com/tootsuite/mastodon/blob/master/docs/Using-Mastodon/List-of-Mastodon-instances.md",
|
|
||||||
}
|
|
||||||
end
|
|
|
@ -130,7 +130,8 @@ Rails.application.routes.draw do
|
||||||
resources :mutes, only: [:index]
|
resources :mutes, only: [:index]
|
||||||
resources :favourites, only: [:index]
|
resources :favourites, only: [:index]
|
||||||
resources :reports, only: [:index, :create]
|
resources :reports, only: [:index, :create]
|
||||||
resources :site, only: [:index]
|
|
||||||
|
resource :instance, only: [:show]
|
||||||
|
|
||||||
resources :follow_requests, only: [:index] do
|
resources :follow_requests, only: [:index] do
|
||||||
member do
|
member do
|
||||||
|
|
|
@ -19,7 +19,7 @@ API overview
|
||||||
- Who reblogged/favourited a status
|
- Who reblogged/favourited a status
|
||||||
- Following/unfollowing accounts
|
- Following/unfollowing accounts
|
||||||
- Blocking/unblocking accounts
|
- Blocking/unblocking accounts
|
||||||
- Getting site information
|
- Getting instance information
|
||||||
- Creating OAuth apps
|
- Creating OAuth apps
|
||||||
- [Entities](#entities)
|
- [Entities](#entities)
|
||||||
- Status
|
- Status
|
||||||
|
@ -227,12 +227,11 @@ Returns the updated relationship to the user.
|
||||||
|
|
||||||
Returns the updated relationship to the user.
|
Returns the updated relationship to the user.
|
||||||
|
|
||||||
### Getting site information
|
### Getting instance information
|
||||||
|
|
||||||
**GET /api/v1/site**
|
**GET /api/v1/instance**
|
||||||
|
|
||||||
Returns an object containing the `title`, character limit (`max_chars`), and an object of `links` for the site.
|
Returns an object containing the `title`, `description`, `email` and `uri` of the instance. Does not require authentication.
|
||||||
Does not require authentication.
|
|
||||||
|
|
||||||
# Muting and unmuting users
|
# Muting and unmuting users
|
||||||
|
|
||||||
|
|
Reference in a new issue