[feature] Application creation + management via API + settings panel (#3906)

* [feature] Application creation + management via API + settings panel

* fix docs links

* add errnorows test

* use known application as shorter

* add comment about side effects
This commit is contained in:
tobi
2025-03-17 15:06:17 +01:00
committed by GitHub
parent d3c3d34aae
commit d5847e2d2b
61 changed files with 3036 additions and 252 deletions

View File

@@ -17,6 +17,56 @@
// GoToSocial Swagger documentation.
//
// This document describes the GoToSocial HTTP API.
//
// For information on how to authenticate with the API using an OAuth access token, see the documentation here: https://docs.gotosocial.org/en/latest/api/authentication/.
//
// Available scopes are:
//
// - admin: grants admin access to everything
// - admin:read: grants admin read access to everything
// - admin:read:accounts: grants admin read access to accounts
// - admin:read:domain_allows: grants admin read access to domain_allows
// - admin:read:domain_blocks: grants admin read access to domain_blocks
// - admin:read:reports: grants admin read access to reports
// - admin:write: grants admin write access to everything
// - admin:write:accounts: grants write read access to accounts
// - admin:write:domain_allows: grants admin write access to domain_allows
// - admin:write:domain_blocks: grants write read access to domain_blocks
// - admin:write:reports: grants admin write access to reports
// - profile: grants read access to verify_credentials
// - push: grants read/write access to push
// - read: grants read access to everything
// - read:accounts: grants read access to accounts
// - read:applications: grants read access to user-managed applications
// - read:blocks: grants read access to blocks
// - read:bookmarks: grants read access to bookmarks
// - read:favourites: grants read access to accounts
// - read:filters: grants read access to filters
// - read:follows: grants read access to follows
// - read:lists: grants read access to lists
// - read:mutes: grants read access to mutes
// - read:notifications: grants read access to notifications
// - read:search: grants read access to search
// - read:statuses: grants read access to statuses
// - write: grants write access to everything
// - write:accounts: grants write access to accounts
// - write:applications: grants write access to user-managed applications
// - write:blocks: grants write access to blocks
// - write:bookmarks: grants write access to bookmarks
// - write:conversations: grants write access to conversations
// - write:favourites: grants write access to favourites
// - write:filters: grants write access to filters
// - write:follows: grants write access to follows
// - write:lists: grants write access to lists
// - write:media: grants write access to media
// - write:mutes: grants write access to mutes
// - write:notifications: grants write access to notifications
// - write:reports: grants write access to reports
// - write:statuses: grants write access to statuses
//
// ---
//
// Schemes: https, http
// BasePath: /
// Version: REPLACE_ME
@@ -31,45 +81,47 @@
// authorizationUrl: https://example.org/oauth/authorize
// tokenUrl: https://example.org/oauth/token
// scopes:
// read: grants read access to everything
// write: grants write access to everything
// push: grants read/write access to push
// profile: grants read access to verify_credentials
// read:accounts: grants read access to accounts
// write:accounts: grants write access to accounts
// read:blocks: grants read access to blocks
// write:blocks: grants write access to blocks
// read:bookmarks: grants read access to bookmarks
// write:bookmarks: grants write access to bookmarks
// write:conversations: grants write access to conversations
// read:favourites: grants read access to accounts
// write:favourites: grants write access to favourites
// read:filters: grants read access to filters
// write:filters: grants write access to filters
// read:follows: grants read access to follows
// write:follows: grants write access to follows
// read:lists: grants read access to lists
// write:lists: grants write access to lists
// write:media: grants write access to media
// read:mutes: grants read access to mutes
// write:mutes: grants write access to mutes
// read:notifications: grants read access to notifications
// write:notifications: grants write access to notifications
// write:reports: grants write access to reports
// read:search: grants read access to search
// read:statuses: grants read access to statuses
// write:statuses: grants write access to statuses
// admin: grants admin access to everything
// admin:read: grants admin read access to everything
// admin:write: grants admin write access to everything
// admin:read:accounts: grants admin read access to accounts
// admin:write:accounts: grants write read access to accounts
// admin:read:reports: grants admin read access to reports
// admin:write:reports: grants admin write access to reports
// admin:read:domain_allows: grants admin read access to domain_allows
// admin:write:domain_allows: grants admin write access to domain_allows
// admin:read:domain_blocks: grants admin read access to domain_blocks
// admin:read:reports: grants admin read access to reports
// admin:write: grants admin write access to everything
// admin:write:accounts: grants write read access to accounts
// admin:write:domain_allows: grants admin write access to domain_allows
// admin:write:domain_blocks: grants write read access to domain_blocks
// admin:write:reports: grants admin write access to reports
// profile: grants read access to verify_credentials
// push: grants read/write access to push
// read: grants read access to everything
// read:accounts: grants read access to accounts
// read:applications: grants read access to user-managed applications
// read:blocks: grants read access to blocks
// read:bookmarks: grants read access to bookmarks
// read:favourites: grants read access to accounts
// read:filters: grants read access to filters
// read:follows: grants read access to follows
// read:lists: grants read access to lists
// read:mutes: grants read access to mutes
// read:notifications: grants read access to notifications
// read:search: grants read access to search
// read:statuses: grants read access to statuses
// write: grants write access to everything
// write:accounts: grants write access to accounts
// write:applications: grants write access to user-managed applications
// write:blocks: grants write access to blocks
// write:bookmarks: grants write access to bookmarks
// write:conversations: grants write access to conversations
// write:favourites: grants write access to favourites
// write:filters: grants write access to filters
// write:follows: grants write access to follows
// write:lists: grants write access to lists
// write:media: grants write access to media
// write:mutes: grants write access to mutes
// write:notifications: grants write access to notifications
// write:reports: grants write access to reports
// write:statuses: grants write access to statuses
// OAuth2 Application:
// type: oauth2
// flow: application