diff --git a/api/funkwhale_api/common/schema.yml b/api/funkwhale_api/common/schema.yml index b2ec199cf..e69de29bb 100644 --- a/api/funkwhale_api/common/schema.yml +++ b/api/funkwhale_api/common/schema.yml @@ -1,26268 +0,0 @@ -openapi: 3.0.3 -info: - title: Funkwhale API - version: 1.4.0 - description: | - # Funkwhale API - - This is the Funkwhale API. Check out our [API explorer](https://docs.funkwhale.audio/swagger/) for interactive documentation. - - ## OAuth Authentication - - Funkwhale uses the OAuth [authorization grant flow](https://tools.ietf.org/html/rfc6749#section-4.1) for external apps. This flow is a secure way to authenticate apps that requires a user's explicit consent to perform actions. You can use our demo server at for testing purposes. - - To authenticate with the Funkwhale API: - - 1. Create an application by sending a `POST` request to `api/v1/oauth/apps`. Include your scopes and redirect URI (use `urn:ietf:wg:oauth:2.0:oob` - to get an authorization code you can copy) - 2. Send an [authorization request](https://www.rfc-editor.org/rfc/rfc6749#section-4.1.2) to the `/authorize` endpoint to receive an authorization code - 3. [Request an access token](https://www.rfc-editor.org/rfc/rfc6749#section-4.1.3) from `/api/v1/oauth/token` - 4. Use your access token to authenticate your calls with the following format: `Authorization: Bearer ` - 5. Refresh your access token by sending a refresh request to `/api/v1/oauth/token` - - For more detailed instructions, see [our API authentication documentation](https://docs.funkwhale.audio/developers/authentication.html). - - ## Application token authentication - - If you have an account on your target pod, you can create an application at `/settings/applications/new`. Once you authorize the application you can retrieve an access token. Use your access token to authenticate your calls with the following format: `Authorization: Bearer ` - - ## Rate limiting - - Funkwhale supports rate-limiting as of version 0.2.0. Pod admins can choose to rate limit specific endpoints to prevent abuse and improve the stability of the service. If the server drops a request due to rate-limiting, it returns a `429` status code. - - Each API call returns HTTP headers to pass the following information: - - - What was the scope of the request (`X-RateLimit-Scope`) - - What is the rate-limit associated with the request scope (`X-RateLimit-Limit`) - - How many more requests in the scope can be made within the rate-limit timeframe (`X-RateLimit-Remaining`) - - How much time does the client need to wait to send another request (`Retry-After`) - - For more information, check our [rate limit documentation](https://docs.funkwhale.audio/developer/api/rate-limit.html) - - ## Resources - - For more information about API usage, refer to [our API documentation](https://docs.funkwhale.audio/api.html). -paths: - /api/v1/activity/: - get: - operationId: get_activity - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - activity - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v1/albums/: - get: - operationId: get_albums - parameters: - - in: query - name: artist - schema: - type: string - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: channel - schema: - type: string - - in: query - name: content_category - schema: - type: string - - in: query - name: has_cover - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: has_release_date - schema: - type: boolean - - in: query - name: has_tags - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -artist_credit__artist__modification_date - - -creation_date - - -random - - -related - - -release_date - - -title - - artist_credit__artist__modification_date - - creation_date - - random - - related - - release_date - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `release_date` - Release date - * `-release_date` - Release date (descending) - * `title` - Title - * `-title` - Title (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAlbumList' - description: '' - post: - operationId: create_album - tags: - - albums - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AlbumCreateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/AlbumCreateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/AlbumCreateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/AlbumCreateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/AlbumCreate' - description: '' - /api/v1/albums/{id}/: - get: - operationId: get_album - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Album' - description: '' - delete: - operationId: delete_album - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/albums/{id}/fetches/: - get: - operationId: get_album_fetches - parameters: - - in: query - name: artist - schema: - type: string - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: channel - schema: - type: string - - in: query - name: content_category - schema: - type: string - - in: query - name: has_cover - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: has_release_date - schema: - type: boolean - - in: query - name: has_tags - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -artist_credit__artist__modification_date - - -creation_date - - -random - - -related - - -release_date - - -title - - artist_credit__artist__modification_date - - creation_date - - random - - related - - release_date - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `release_date` - Release date - * `-release_date` - Release date (descending) - * `title` - Title - * `-title` - Title (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedFetchList' - description: '' - post: - operationId: create_album_fetch - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - albums - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AlbumRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/AlbumRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/AlbumRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/AlbumRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v1/albums/{id}/libraries/: - get: - operationId: get_album_libraries - parameters: - - in: query - name: artist - schema: - type: string - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: channel - schema: - type: string - - in: query - name: content_category - schema: - type: string - - in: query - name: has_cover - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: has_release_date - schema: - type: boolean - - in: query - name: has_tags - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -artist_credit__artist__modification_date - - -creation_date - - -random - - -related - - -release_date - - -title - - artist_credit__artist__modification_date - - creation_date - - random - - related - - release_date - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `release_date` - Release date - * `-release_date` - Release date (descending) - * `title` - Title - * `-title` - Title (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryList' - description: '' - /api/v1/albums/{id}/mutations/: - get: - operationId: get_album_mutations - parameters: - - in: query - name: artist - schema: - type: string - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: channel - schema: - type: string - - in: query - name: content_category - schema: - type: string - - in: query - name: has_cover - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: has_release_date - schema: - type: boolean - - in: query - name: has_tags - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -artist_credit__artist__modification_date - - -creation_date - - -random - - -related - - -release_date - - -title - - artist_credit__artist__modification_date - - creation_date - - random - - related - - release_date - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `release_date` - Release date - * `-release_date` - Release date (descending) - * `title` - Title - * `-title` - Title (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAPIMutationList' - description: '' - post: - operationId: create_album_mutation - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - albums - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AlbumRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/AlbumRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/AlbumRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/AlbumRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v1/artists/: - get: - operationId: get_artists - parameters: - - in: query - name: content_category - schema: - type: string - - in: query - name: has_albums - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -id - - -modification_date - - -name - - -random - - -related - - creation_date - - id - - modification_date - - name - - random - - related - description: |- - Ordering - - * `id` - Id - * `-id` - Id (descending) - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedArtistWithAlbumsList' - description: '' - /api/v1/artists/{id}/: - get: - operationId: get_artist - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ArtistWithAlbums' - description: '' - /api/v1/artists/{id}/fetches/: - get: - operationId: get_artist_fetches - parameters: - - in: query - name: content_category - schema: - type: string - - in: query - name: has_albums - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -id - - -modification_date - - -name - - -random - - -related - - creation_date - - id - - modification_date - - name - - random - - related - description: |- - Ordering - - * `id` - Id - * `-id` - Id (descending) - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedFetchList' - description: '' - post: - operationId: create_artist_fetch - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - artists - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v1/artists/{id}/libraries/: - get: - operationId: get_artist_libraries - parameters: - - in: query - name: content_category - schema: - type: string - - in: query - name: has_albums - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -id - - -modification_date - - -name - - -random - - -related - - creation_date - - id - - modification_date - - name - - random - - related - description: |- - Ordering - - * `id` - Id - * `-id` - Id (descending) - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryList' - description: '' - /api/v1/artists/{id}/mutations/: - get: - operationId: get_artist_mutations - parameters: - - in: query - name: content_category - schema: - type: string - - in: query - name: has_albums - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -id - - -modification_date - - -name - - -random - - -related - - creation_date - - id - - modification_date - - name - - random - - related - description: |- - Ordering - - * `id` - Id - * `-id` - Id (descending) - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAPIMutationList' - description: '' - post: - operationId: create_artist_mutation - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - artists - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v1/attachments/: - post: - operationId: create_attachment - tags: - - attachments - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AttachmentRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/AttachmentRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/AttachmentRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/AttachmentRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Attachment' - description: '' - /api/v1/attachments/{uuid}/: - get: - operationId: get_attachment - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - attachments - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Attachment' - description: '' - delete: - operationId: delete_attachment - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - attachments - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/attachments/{uuid}/proxy/: - get: - operationId: get_attachment_proxy - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - attachments - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Attachment' - description: '' - /api/v1/auth/password/change/: - post: - operationId: change_password - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordChange' - description: '' - /api/v1/auth/password/reset/: - post: - operationId: reset_password - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordResetRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PasswordResetRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PasswordResetRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PasswordResetRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - - {} - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordReset' - description: '' - /api/v1/auth/password/reset/confirm/: - post: - operationId: confirm_password_reset - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordResetConfirmRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PasswordResetConfirmRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PasswordResetConfirmRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PasswordResetConfirmRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - - {} - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordResetConfirm' - description: '' - /api/v1/auth/registration/: - post: - operationId: register - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RegisterRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RegisterRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RegisterRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RegisterRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Register' - description: '' - /api/v1/auth/registration/change-password/: - post: - operationId: change_password_2 - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordChange' - description: '' - /api/v1/auth/registration/verify-email/: - post: - operationId: verify_email - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/VerifyEmailRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/VerifyEmailRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/VerifyEmailRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/VerifyEmailRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - - {} - responses: - '200': - description: No response body - /api/v1/auth/user/: - get: - operationId: get_auth_user - description: |- - Reads and updates UserModel fields - Accepts GET, PUT, PATCH methods. - - Default accepted fields: username, first_name, last_name - Default display fields: pk, username, email, first_name, last_name - Read-only fields: pk, email - - Returns UserModel fields. - tags: - - auth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserDetails' - description: '' - put: - operationId: update_auth_user - description: |- - Reads and updates UserModel fields - Accepts GET, PUT, PATCH methods. - - Default accepted fields: username, first_name, last_name - Default display fields: pk, username, email, first_name, last_name - Read-only fields: pk, email - - Returns UserModel fields. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserDetailsRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserDetailsRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserDetailsRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserDetailsRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserDetails' - description: '' - patch: - operationId: partial_update_auth_user - description: |- - Reads and updates UserModel fields - Accepts GET, PUT, PATCH methods. - - Default accepted fields: username, first_name, last_name - Default display fields: pk, username, email, first_name, last_name - Read-only fields: pk, email - - Returns UserModel fields. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedUserDetailsRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedUserDetailsRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedUserDetailsRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedUserDetailsRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserDetails' - description: '' - /api/v1/channels/: - get: - operationId: get_channels - parameters: - - in: query - name: external - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -modification_date - - -random - - creation_date - - modification_date - - random - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: subscribed - schema: - type: boolean - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedChannelList' - description: '' - post: - operationId: create_channel - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelCreateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelCreateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelCreateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelCreateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelCreate' - description: '' - /api/v1/channels/{composite}/: - get: - operationId: get_channel - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Channel' - description: '' - put: - operationId: update_channel - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelUpdateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelUpdateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelUpdateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelUpdateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelUpdate' - description: '' - patch: - operationId: partial_update_channel - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedChannelUpdateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedChannelUpdateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedChannelUpdateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedChannelUpdateRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelUpdate' - description: '' - delete: - operationId: delete_channel - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/channels/{composite}/rss/: - get: - operationId: get_channel_rss - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Channel' - description: '' - /api/v1/channels/{composite}/subscribe/: - post: - operationId: subscribe_channel - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Channel' - description: '' - /api/v1/channels/{composite}/unsubscribe/: - post: - operationId: unsubscribe_channel_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - delete: - operationId: unsubscribe_channel - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/channels/metadata-choices/: - get: - operationId: get_channel_metadata_choices - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetedataChoices' - description: '' - /api/v1/channels/rss-subscribe/: - post: - operationId: subscribe_channel_rss - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Channel' - description: '' - /api/v1/favorites/tracks/: - get: - operationId: get_favorite_tracks - parameters: - - in: query - name: hidden - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - tags: - - favorites - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedUserTrackFavoriteList' - description: '' - post: - operationId: favorite_track - tags: - - favorites - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWrite' - description: '' - /api/v1/favorites/tracks/{id}/: - delete: - operationId: delete_favorite_track - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track favorite. - required: true - tags: - - favorites - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/favorites/tracks/all/: - get: - operationId: get_all_favorite_tracks - description: |- - Return all the favorites of the current user, with only limited data - to have a performant endpoint and avoid lots of queries just to display - favorites status in the UI - tags: - - favorites - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AllFavorite' - description: '' - /api/v1/favorites/tracks/remove/: - post: - operationId: unfavorite_track_2 - tags: - - favorites - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWrite' - description: '' - delete: - operationId: unfavorite_track - tags: - - favorites - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/federation/actors/{full_username}/: - get: - operationId: get_federation_actor - parameters: - - in: path - name: full_username - schema: - type: string - pattern: ^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)$ - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FullActor' - description: '' - /api/v1/federation/actors/{full_username}/libraries/: - get: - operationId: get_federation_actor_library - parameters: - - in: path - name: full_username - schema: - type: string - pattern: ^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)$ - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryForOwner' - description: '' - /api/v1/federation/domains/: - get: - operationId: get_federation_domains - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedDomainList' - description: '' - /api/v1/federation/domains/{name}/: - get: - operationId: get_federation_domain - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Domain' - description: '' - /api/v1/federation/fetches/: - post: - operationId: create_federation_fetch - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FetchRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/FetchRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/FetchRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/FetchRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v1/federation/fetches/{id}/: - get: - operationId: get_federation_fetch - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this fetch. - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v1/federation/follows/library/: - get: - operationId: get_federation_library_follows - parameters: - - in: query - name: approved - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryFollowList' - description: '' - post: - operationId: create_federation_library_follow - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollow' - description: '' - /api/v1/federation/follows/library/{uuid}/: - get: - operationId: get_federation_library_follow - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollow' - description: '' - delete: - operationId: delete_federation_library_follow - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/federation/follows/library/{uuid}/accept/: - post: - operationId: accept_federation_library_follow - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '404': - description: No response body - '204': - description: No response body - /api/v1/federation/follows/library/{uuid}/reject/: - post: - operationId: reject_federation_library_follow - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollow' - description: '' - /api/v1/federation/follows/library/all/: - get: - operationId: get_all_federation_library_follows - description: |- - Return all the subscriptions of the current user, with only limited data - to have a performant endpoint and avoid lots of queries just to display - subscription status in the UI - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollow' - description: '' - /api/v1/federation/follows/user/: - get: - operationId: get_federation_received_follows - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedFollowList' - description: '' - post: - operationId: create_federation_user_follow - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/FollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/FollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/FollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Follow' - description: '' - /api/v1/federation/follows/user/{uuid}/: - get: - operationId: get_federation_user_follow - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Follow' - description: '' - delete: - operationId: delete_federation_user_follow - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/federation/follows/user/{uuid}/accept/: - post: - operationId: accept_federation_user_follow - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/FollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/FollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/FollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '404': - description: No response body - '204': - description: No response body - /api/v1/federation/follows/user/{uuid}/reject/: - post: - operationId: reject_federation_user_follow - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/FollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/FollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/FollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Follow' - description: '' - /api/v1/federation/follows/user/all/: - get: - operationId: get_all_federation_library_follows_2 - description: |- - Return all the subscriptions of the current user, with only limited data - to have a performant endpoint and avoid lots of queries just to display - subscription status in the UI - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Follow' - description: '' - /api/v1/federation/inbox/: - get: - operationId: get_federation_inboxes - parameters: - - in: query - name: activity__actor - schema: - type: integer - - in: query - name: activity__type - schema: - type: string - - in: query - name: before - schema: - type: number - - in: query - name: is_read - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedInboxItemList' - description: '' - /api/v1/federation/inbox/{id}/: - get: - operationId: get_federation_inbox - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this inbox item. - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItem' - description: '' - put: - operationId: update_federation_inbox - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this inbox item. - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItemRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/InboxItemRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/InboxItemRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/InboxItemRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItem' - description: '' - patch: - operationId: partial_update_federation_inbox - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this inbox item. - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedInboxItemRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedInboxItemRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedInboxItemRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedInboxItemRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItem' - description: '' - /api/v1/federation/inbox/action/: - post: - operationId: create_federation_inbox_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItemRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/InboxItemRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/InboxItemRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/InboxItemRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItem' - description: '' - /api/v1/federation/libraries/{uuid}/: - get: - operationId: get_federation_library - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Library' - description: '' - /api/v1/federation/libraries/{uuid}/scan/: - post: - operationId: create_federation_library_scan - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Library' - description: '' - /api/v1/federation/libraries/fetch/: - post: - operationId: create_federation_library_fetch - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Library' - description: '' - /api/v1/history/listenings/: - get: - operationId: get_history_listenings - parameters: - - in: query - name: domain - schema: - type: string - - in: query - name: hidden - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: scope - schema: - type: string - - in: query - name: username - schema: - type: string - tags: - - history - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedListeningList' - description: '' - post: - operationId: create_history_listening - tags: - - history - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ListeningWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ListeningWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ListeningWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ListeningWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ListeningWrite' - description: '' - /api/v1/history/listenings/{id}/: - get: - operationId: get_history_listening - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this listening. - required: true - tags: - - history - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Listening' - description: '' - /api/v1/instance/admin/settings/: - get: - operationId: get_instance_admin_settings - description: |- - - list preferences - - detail given preference - - batch update preferences - - update a single preference - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - tags: - - instance - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/GlobalPreference' - description: '' - /api/v1/instance/admin/settings/{id}/: - get: - operationId: get_instance_admin_setting - description: |- - - list preferences - - detail given preference - - batch update preferences - - update a single preference - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this Global preference. - required: true - tags: - - instance - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - put: - operationId: update_instance_admin_setting - description: |- - - list preferences - - detail given preference - - batch update preferences - - update a single preference - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this Global preference. - required: true - tags: - - instance - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - patch: - operationId: partial_update_instance_admin_setting - description: |- - - list preferences - - detail given preference - - batch update preferences - - update a single preference - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this Global preference. - required: true - tags: - - instance - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedGlobalPreferenceRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedGlobalPreferenceRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedGlobalPreferenceRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedGlobalPreferenceRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - /api/v1/instance/admin/settings/bulk/: - post: - operationId: create_instance_admin_setting_bulk - description: |- - Update multiple preferences at once - - this is a long method because we ensure everything is valid - before actually persisting the changes - tags: - - instance - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - /api/v1/instance/nodeinfo/2.0/: - get: - operationId: getNodeInfo20 - tags: - - instance - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NodeInfo20' - description: '' - /api/v1/instance/settings/: - get: - operationId: get_instance_settings - tags: - - instance - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - /api/v1/instance/spa-manifest.json: - get: - operationId: get_spa_manifest - tags: - - instance - responses: - '200': - content: - application/activity+json: - schema: - $ref: '#/components/schemas/SpaManifest' - description: '' - /api/v1/libraries/: - get: - operationId: get_libraries - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: privacy_level - schema: - type: string - enum: - - everyone - - instance - - me - description: |- - * `me` - Only me - * `instance` - Everyone on my instance, and my followers - * `everyone` - Everyone, including people on other instances - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - tags: - - libraries - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryForOwnerList' - description: '' - /api/v1/libraries/{uuid}/: - get: - operationId: get_library - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - libraries - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryForOwner' - description: '' - /api/v1/libraries/fs-import/: - get: - operationId: get_library_fs_import - tags: - - libraries - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - post: - operationId: create_library_fs_import - tags: - - libraries - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryForOwnerRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - delete: - operationId: delete_library_fs_import - tags: - - libraries - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/licenses/: - get: - operationId: get_licenses - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - licenses - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLicenseList' - description: '' - /api/v1/licenses/{code}/: - get: - operationId: get_license - parameters: - - in: path - name: code - schema: - type: string - description: A unique value identifying this license. - required: true - tags: - - licenses - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/License' - description: '' - /api/v1/listen/{uuid}/: - get: - operationId: get_listen - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - listen - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - audio/*: - schema: - type: string - format: binary - description: '' - /api/v1/manage/accounts/: - get: - operationId: admin_get_accounts - parameters: - - in: query - name: domain - schema: - type: string - - in: query - name: local - schema: - type: boolean - - in: query - name: manually_approves_followers - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: type - schema: - type: string - enum: - - Application - - Group - - Organization - - Person - - Service - - Tombstone - description: |- - * `Person` - Person - * `Tombstone` - Tombstone - * `Application` - Application - * `Group` - Group - * `Organization` - Organization - * `Service` - Service - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageActorList' - description: '' - /api/v1/manage/accounts/{id}/: - get: - operationId: admin_get_account - parameters: - - in: path - name: id - schema: - type: string - pattern: ^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageActor' - description: '' - /api/v1/manage/accounts/{id}/stats/: - get: - operationId: admin_get_account_stats - parameters: - - in: path - name: id - schema: - type: string - pattern: ^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageActor' - description: '' - /api/v1/manage/accounts/action/: - post: - operationId: admin_create_account_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageActorRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageActorRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageActorRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageActorRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageActor' - description: '' - /api/v1/manage/channels/: - get: - operationId: admin_get_channels - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageChannelList' - description: '' - /api/v1/manage/channels/{composite}/: - get: - operationId: admin_get_channel - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageChannel' - description: '' - delete: - operationId: admin_delete_channel - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/manage/channels/{composite}/stats/: - get: - operationId: admin_get_channel_stats - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageChannel' - description: '' - /api/v1/manage/federation/domains/: - get: - operationId: admin_get_federation_domains - parameters: - - in: query - name: allowed - schema: - type: boolean - - in: query - name: name - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageDomainList' - description: '' - post: - operationId: admin_create_federation_domain - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - /api/v1/manage/federation/domains/{name}/: - get: - operationId: admin_get_federation_domain - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - put: - operationId: admin_update_federation_domain - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainUpdateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageDomainUpdateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageDomainUpdateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageDomainUpdateRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainUpdate' - description: '' - patch: - operationId: admin_partial_update_federation_domain - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageDomainUpdateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageDomainUpdateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageDomainUpdateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageDomainUpdateRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainUpdate' - description: '' - /api/v1/manage/federation/domains/{name}/nodeinfo/: - get: - operationId: admin_get_federation_domain_nodeinfo - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - /api/v1/manage/federation/domains/{name}/stats/: - get: - operationId: admin_get_federation_domain_stats - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - /api/v1/manage/federation/domains/action/: - post: - operationId: admin_create_federation_domain_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - /api/v1/manage/library/albums/: - get: - operationId: admin_get_albums - parameters: - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: fid - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: title - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageAlbumList' - description: '' - /api/v1/manage/library/albums/{id}/: - get: - operationId: admin_get_album - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageAlbum' - description: '' - delete: - operationId: admin_delete_album - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/manage/library/albums/{id}/stats/: - get: - operationId: admin_get_library_album_stats - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageAlbum' - description: '' - /api/v1/manage/library/albums/action/: - post: - operationId: admin_create_album_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageAlbumRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageAlbumRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageAlbumRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageAlbumRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageAlbum' - description: '' - /api/v1/manage/library/artists/: - get: - operationId: admin_get_artists - parameters: - - in: query - name: content_category - schema: - type: string - enum: - - music - - other - - podcast - description: |- - * `music` - music - * `podcast` - podcast - * `other` - other - - in: query - name: fid - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageArtistList' - description: '' - /api/v1/manage/library/artists/{id}/: - get: - operationId: admin_get_artist - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageArtist' - description: '' - delete: - operationId: admin_delete_artist - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/manage/library/artists/{id}/stats/: - get: - operationId: admin_get_library_artist_stats - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageArtist' - description: '' - /api/v1/manage/library/artists/action/: - post: - operationId: admin_create_artist_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageArtistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageArtistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageArtistRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageArtistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageArtist' - description: '' - /api/v1/manage/library/libraries/: - get: - operationId: admin_get_libraries - parameters: - - in: query - name: domain - schema: - type: string - - in: query - name: fid - schema: - type: string - - in: query - name: name - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -followers_count - - -uploads_count - - creation_date - - followers_count - - uploads_count - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `uploads_count` - Uploads count - * `-uploads_count` - Uploads count (descending) - * `followers_count` - Followers count - * `-followers_count` - Followers count (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: privacy_level - schema: - type: string - enum: - - everyone - - instance - - me - description: |- - * `me` - Only me - * `instance` - Everyone on my instance, and my followers - * `everyone` - Everyone, including people on other instances - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageLibraryList' - description: '' - /api/v1/manage/library/libraries/{uuid}/: - get: - operationId: admin_get_library - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - put: - operationId: admin_update_library - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - patch: - operationId: admin_partial_update_library - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageLibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageLibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageLibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageLibraryRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - delete: - operationId: admin_delete_library - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/manage/library/libraries/{uuid}/stats/: - get: - operationId: admin_get_library_stats - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - /api/v1/manage/library/libraries/action/: - post: - operationId: admin_create_library_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - /api/v1/manage/library/tracks/: - get: - operationId: admin_get_tracks - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: fid - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: title - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageTrackList' - description: '' - /api/v1/manage/library/tracks/{id}/: - get: - operationId: admin_get_track - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTrack' - description: '' - delete: - operationId: admin_delete_track - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/manage/library/tracks/{id}/stats/: - get: - operationId: admin_get_track_stats - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTrack' - description: '' - /api/v1/manage/library/tracks/action/: - post: - operationId: admin_create_track_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTrackRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageTrackRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageTrackRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageTrackRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTrack' - description: '' - /api/v1/manage/library/uploads/: - get: - operationId: admin_get_uploads - parameters: - - in: query - name: domain - schema: - type: string - - in: query - name: fid - schema: - type: string - - in: query - name: import_reference - schema: - type: string - - in: query - name: import_status - schema: - type: string - enum: - - draft - - errored - - finished - - pending - - skipped - description: |- - * `draft` - Draft - * `pending` - Pending - * `finished` - Finished - * `errored` - Errored - * `skipped` - Skipped - - in: query - name: mimetype - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -accessed_date - - -bitrate - - -creation_date - - -duration - - -modification_date - - -size - - accessed_date - - bitrate - - creation_date - - duration - - modification_date - - size - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `accessed_date` - Accessed date - * `-accessed_date` - Accessed date (descending) - * `size` - Size - * `-size` - Size (descending) - * `bitrate` - Bitrate - * `-bitrate` - Bitrate (descending) - * `duration` - Duration - * `-duration` - Duration (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: privacy_level - schema: - type: string - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageUploadList' - description: '' - /api/v1/manage/library/uploads/{uuid}/: - get: - operationId: admin_get_upload - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUpload' - description: '' - delete: - operationId: admin_delete_upload - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/manage/library/uploads/action/: - post: - operationId: admin_create_upload_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUploadRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageUploadRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageUploadRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageUploadRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUpload' - description: '' - /api/v1/manage/moderation/instance-policies/: - get: - operationId: moderation_get_instance_policies - parameters: - - in: query - name: block_all - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: reject_media - schema: - type: boolean - - in: query - name: silence_activity - schema: - type: boolean - - in: query - name: silence_notifications - schema: - type: boolean - - in: query - name: target_account_domain - schema: - type: string - - in: query - name: target_account_username - schema: - type: string - - in: query - name: target_domain - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageInstancePolicyList' - description: '' - post: - operationId: moderation_create_instance_policy - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicy' - description: '' - /api/v1/manage/moderation/instance-policies/{id}/: - get: - operationId: moderation_get_instance_policy - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this instance policy. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicy' - description: '' - put: - operationId: moderation_update_instance_policy - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this instance policy. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicy' - description: '' - patch: - operationId: moderation_partial_update_instance_policy - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this instance policy. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageInstancePolicyRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageInstancePolicyRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageInstancePolicyRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageInstancePolicyRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicy' - description: '' - delete: - operationId: moderation_delete_instance_policy - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this instance policy. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/manage/moderation/notes/: - get: - operationId: moderation_get_notes - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageNoteList' - description: '' - post: - operationId: moderation_create_note - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageNoteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageNoteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageNoteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageNoteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageNote' - description: '' - /api/v1/manage/moderation/notes/{uuid}/: - get: - operationId: moderation_get_note - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageNote' - description: '' - delete: - operationId: moderation_delete_note - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/manage/moderation/reports/: - get: - operationId: moderation_get_reports - parameters: - - in: query - name: is_handled - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: submitter_email - schema: - type: string - - in: query - name: type - schema: - type: string - enum: - - illegal_content - - invalid_metadata - - offensive_content - - other - - takedown_request - description: |- - * `takedown_request` - Takedown request - * `invalid_metadata` - Invalid metadata - * `illegal_content` - Illegal content - * `offensive_content` - Offensive content - * `other` - Other - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageReportList' - description: '' - /api/v1/manage/moderation/reports/{uuid}/: - get: - operationId: moderation_get_report - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageReport' - description: '' - put: - operationId: moderation_update_report - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageReportRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageReportRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageReportRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageReportRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageReport' - description: '' - patch: - operationId: moderation_partial_update_report - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageReportRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageReportRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageReportRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageReportRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageReport' - description: '' - /api/v1/manage/moderation/requests/: - get: - operationId: moderation_get_requests - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: status - schema: - type: string - enum: - - approved - - pending - - refused - description: |- - * `pending` - Pending - * `refused` - Refused - * `approved` - Approved - - in: query - name: type - schema: - type: string - enum: - - signup - description: '* `signup` - Sign-up' - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageUserRequestList' - description: '' - /api/v1/manage/moderation/requests/{uuid}/: - get: - operationId: moderation_get_request - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - description: '' - put: - operationId: moderation_update_request - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequestRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageUserRequestRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageUserRequestRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageUserRequestRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - description: '' - patch: - operationId: moderation_partial_update_request - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageUserRequestRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageUserRequestRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageUserRequestRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageUserRequestRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - description: '' - /api/v1/manage/tags/: - get: - operationId: admin_get_tags - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageTagList' - description: '' - post: - operationId: admin_create_tag - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTagRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageTagRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageTagRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageTagRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTag' - description: '' - /api/v1/manage/tags/{name}/: - get: - operationId: admin_get_tag - parameters: - - in: path - name: name - schema: - type: string - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTag' - description: '' - delete: - operationId: admin_delete_tag - parameters: - - in: path - name: name - schema: - type: string - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/manage/tags/action/: - post: - operationId: admin_create_tag_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTagRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageTagRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageTagRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageTagRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTag' - description: '' - /api/v1/manage/users/invitations/: - get: - operationId: admin_get_invitations - parameters: - - in: query - name: is_open - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageInvitationList' - description: '' - post: - operationId: admin_create_invitation - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - /api/v1/manage/users/invitations/{id}/: - get: - operationId: admin_get_invitation - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this invitation. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - put: - operationId: admin_update_invitation - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this invitation. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - patch: - operationId: admin_partial_update_invitation - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this invitation. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageInvitationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageInvitationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageInvitationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageInvitationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - /api/v1/manage/users/invitations/action/: - post: - operationId: admin_create_invitation_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - /api/v1/manage/users/users/: - get: - operationId: admin_get_users - parameters: - - in: query - name: is_active - schema: - type: boolean - - in: query - name: is_staff - schema: - type: boolean - - in: query - name: is_superuser - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: permission_library - schema: - type: boolean - - in: query - name: permission_moderation - schema: - type: boolean - - in: query - name: permission_settings - schema: - type: boolean - - in: query - name: privacy_level - schema: - type: string - enum: - - everyone - - followers - - instance - - me - description: |- - * `me` - Only me - * `followers` - Me and my followers - * `instance` - Everyone on my instance, and my followers - * `everyone` - Everyone, including people on other instances - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageUserList' - description: '' - /api/v1/manage/users/users/{id}/: - get: - operationId: admin_get_user - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this user. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUser' - description: '' - put: - operationId: admin_update_user - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this user. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageUserRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageUserRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUser' - description: '' - patch: - operationId: admin_partial_update_user - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this user. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageUserRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageUserRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageUserRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageUserRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUser' - description: '' - /api/v1/moderation/content-filters/: - get: - operationId: get_moderation_content_filters - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - moderation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedUserFilterList' - description: '' - post: - operationId: create_moderation_content_filter - tags: - - moderation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserFilterRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserFilterRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserFilterRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserFilterRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserFilter' - description: '' - /api/v1/moderation/content-filters/{uuid}/: - get: - operationId: get_moderation_content_filter - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - moderation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserFilter' - description: '' - delete: - operationId: delete_moderation_content_filter - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - moderation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/moderation/reports/: - post: - operationId: create_moderation_report - tags: - - moderation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ReportRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ReportRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ReportRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ReportRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Report' - description: '' - /api/v1/mutations/: - get: - operationId: get_mutations - parameters: - - in: query - name: is_applied - schema: - type: boolean - - in: query - name: is_approved - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: type - schema: - type: string - tags: - - mutations - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAPIMutationList' - description: '' - /api/v1/mutations/{uuid}/: - get: - operationId: get_mutation - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - mutations - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - delete: - operationId: delete_mutation - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - mutations - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/mutations/{uuid}/approve/: - post: - operationId: approve_mutation - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - mutations - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/APIMutationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/APIMutationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/APIMutationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v1/mutations/{uuid}/reject/: - post: - operationId: reject_mutation - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - mutations - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/APIMutationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/APIMutationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/APIMutationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v1/oauth/apps/: - get: - operationId: get_oauth_apps - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedApplicationList' - description: '' - post: - operationId: create_oauth_app - tags: - - oauth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateApplication' - description: '' - /api/v1/oauth/apps/{client_id}/: - get: - operationId: get_oauth_app - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Application' - description: '' - put: - operationId: update_oauth_app - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ApplicationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ApplicationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ApplicationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Application' - description: '' - patch: - operationId: partial_update_oauth_app - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedApplicationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedApplicationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedApplicationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedApplicationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Application' - description: '' - delete: - operationId: delete_oauth_app - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/oauth/apps/{client_id}/refresh-token/: - post: - operationId: refresh_oauth_token - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateApplication' - description: '' - /api/v1/oauth/grants/: - get: - operationId: get_oauth_grants - description: |- - This is a viewset that list applications that have access to the request user - account, to allow revoking tokens easily. - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/Application' - description: '' - /api/v1/oauth/grants/{client_id}/: - get: - operationId: get_oauth_grant - description: |- - This is a viewset that list applications that have access to the request user - account, to allow revoking tokens easily. - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Application' - description: '' - delete: - operationId: delete_oauth_grant - description: |- - This is a viewset that list applications that have access to the request user - account, to allow revoking tokens easily. - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/oembed/: - get: - operationId: get_oembed - tags: - - oembed - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Oembed' - description: '' - /api/v1/playlists/: - get: - operationId: get_playlists - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: integer - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: track - schema: - type: integer - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedPlaylistList' - application/octet-stream: - schema: - $ref: '#/components/schemas/PaginatedPlaylistList' - description: '' - post: - operationId: create_playlist - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v1/playlists/{id}/: - get: - operationId: get_playlist - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - put: - operationId: update_playlist - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - patch: - operationId: partial_update_playlist - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PatchedPlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PatchedPlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedPlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedPlaylistRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - delete: - operationId: delete_playlist - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/playlists/{id}/add/: - post: - operationId: add_to_playlist - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistAddManyRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistAddManyRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistAddManyRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistAddManyRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v1/playlists/{id}/albums/: - get: - operationId: get_playlist_albums - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v1/playlists/{id}/artists/: - get: - operationId: get_playlist_artits - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v1/playlists/{id}/clear/: - delete: - operationId: clear_playlist - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/playlists/{id}/move/: - post: - operationId: reorder_track_in_playlist - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v1/playlists/{id}/remove/: - post: - operationId: remove_from_playlist_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - delete: - operationId: remove_from_playlist - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/playlists/{id}/tracks/: - get: - operationId: get_playlist_tracks - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: integer - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: track - schema: - type: integer - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedPlaylistTrackList' - application/octet-stream: - schema: - $ref: '#/components/schemas/PaginatedPlaylistTrackList' - description: '' - /api/v1/plugins/: - get: - operationId: get_plugins - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - post: - operationId: create_plugin - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - description: No response body - /api/v1/plugins/{id}/: - get: - operationId: get_plugin - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this plugin configuration. - required: true - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v1/plugins/{id}/disable/: - post: - operationId: disable_plugin - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this plugin configuration. - required: true - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v1/plugins/{id}/enable/: - post: - operationId: enable_plugin - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this plugin configuration. - required: true - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v1/plugins/{id}/scan/: - post: - operationId: create_plugin_scan - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this plugin configuration. - required: true - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v1/radios/radios/: - get: - operationId: get_radios - parameters: - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedRadioList' - description: '' - post: - operationId: create_radio - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - /api/v1/radios/radios/{id}/: - get: - operationId: get_radio - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - put: - operationId: update_radio - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - patch: - operationId: partial_update_radio - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedRadioRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedRadioRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedRadioRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedRadioRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - delete: - operationId: delete_radio - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/radios/radios/{id}/tracks/: - get: - operationId: get_radio_track - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Track' - description: '' - /api/v1/radios/radios/filters/: - get: - operationId: get_radio_filter - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Filter' - description: '' - /api/v1/radios/radios/validate/: - post: - operationId: validate_radio - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - /api/v1/radios/sessions/: - post: - operationId: create_radio_session - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSessionRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioSessionRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioSessionRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioSessionRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSession' - description: '' - /api/v1/radios/sessions/{id}/: - get: - operationId: get_radio_session - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio session. - required: true - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSession' - description: '' - /api/v1/radios/tracks/: - post: - operationId: get_next_radio_track - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreate' - description: '' - /api/v1/rate-limit/: - get: - operationId: get_rate_limit - tags: - - rate-limit - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RateLimit' - description: '' - /api/v1/search: - get: - operationId: get_search_results - tags: - - search - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SearchResult' - description: '' - /api/v1/stream/{uuid}/: - get: - operationId: get_track_stream - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - stream - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - audio/mpeg: - schema: - type: string - format: binary - description: '' - /api/v1/subscriptions/: - get: - operationId: get_subscriptions - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - subscriptions - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedSubscriptionList' - description: '' - /api/v1/subscriptions/{uuid}/: - get: - operationId: get_subscription - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - subscriptions - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - description: '' - /api/v1/subscriptions/all/: - get: - operationId: get_all_subscriptions - description: |- - Return all the subscriptions of the current user, with only limited data - to have a performant endpoint and avoid lots of queries just to display - subscription status in the UI - tags: - - subscriptions - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AllSubscriptions' - description: '' - /api/v1/tags/: - get: - operationId: get_tags - parameters: - - in: query - name: name - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -length - - -name - - creation_date - - length - - name - description: |- - Ordering - - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `length` - Length - * `-length` - Length (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - tags - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedTagList' - description: '' - /api/v1/tags/{name}/: - get: - operationId: get_tag - parameters: - - in: path - name: name - schema: - type: string - required: true - tags: - - tags - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Tag' - description: '' - /api/v1/text-preview/: - post: - operationId: preview_text - tags: - - text-preview - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TextPreviewRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/TextPreviewRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/TextPreviewRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/TextPreviewRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TextPreview' - description: '' - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorDetail' - description: '' - /api/v1/tracks/: - get: - operationId: get_tracks - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: string - - in: query - name: channel - schema: - type: string - - in: query - name: format - schema: - type: string - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: query - name: id - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -album__release_date - - -album__title - - -artist_credit__artist__modification_date - - -artist_credit__artist__name - - -creation_date - - -disc_number - - -position - - -random - - -related - - -size - - -title - - album__release_date - - album__title - - artist_credit__artist__modification_date - - artist_credit__artist__name - - creation_date - - disc_number - - position - - random - - related - - size - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `title` - Title - * `-title` - Title (descending) - * `album__title` - Album title - * `-album__title` - Album title (descending) - * `album__release_date` - Album release date - * `-album__release_date` - Album release date (descending) - * `size` - Size - * `-size` - Size (descending) - * `position` - Position - * `-position` - Position (descending) - * `disc_number` - Disc number - * `-disc_number` - Disc number (descending) - * `artist_credit__artist__name` - Artist credit artist name - * `-artist_credit__artist__name` - Artist credit artist name (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: quality - schema: - type: integer - enum: - - 0 - - 1 - - 2 - - 3 - description: |- - * `0` - low - * `1` - medium - * `2` - high - * `3` - very_high - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - - in: query - name: title - schema: - type: string - - in: query - name: title__icontains - schema: - type: string - - in: query - name: title__iexact - schema: - type: string - - in: query - name: title__startswith - schema: - type: string - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedTrackList' - description: '' - /api/v1/tracks/{id}/: - get: - operationId: get_track - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Track' - description: '' - delete: - operationId: delete_track - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/tracks/{id}/fetches/: - get: - operationId: get_track_fetches - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: string - - in: query - name: channel - schema: - type: string - - in: query - name: format - schema: - type: string - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -album__release_date - - -album__title - - -artist_credit__artist__modification_date - - -artist_credit__artist__name - - -creation_date - - -disc_number - - -position - - -random - - -related - - -size - - -title - - album__release_date - - album__title - - artist_credit__artist__modification_date - - artist_credit__artist__name - - creation_date - - disc_number - - position - - random - - related - - size - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `title` - Title - * `-title` - Title (descending) - * `album__title` - Album title - * `-album__title` - Album title (descending) - * `album__release_date` - Album release date - * `-album__release_date` - Album release date (descending) - * `size` - Size - * `-size` - Size (descending) - * `position` - Position - * `-position` - Position (descending) - * `disc_number` - Disc number - * `-disc_number` - Disc number (descending) - * `artist_credit__artist__name` - Artist credit artist name - * `-artist_credit__artist__name` - Artist credit artist name (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: quality - schema: - type: integer - enum: - - 0 - - 1 - - 2 - - 3 - description: |- - * `0` - low - * `1` - medium - * `2` - high - * `3` - very_high - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - - in: query - name: title - schema: - type: string - - in: query - name: title__icontains - schema: - type: string - - in: query - name: title__iexact - schema: - type: string - - in: query - name: title__startswith - schema: - type: string - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedFetchList' - description: '' - post: - operationId: create_track_fetch - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - tracks - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TrackRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/TrackRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/TrackRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/TrackRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v1/tracks/{id}/libraries/: - get: - operationId: get_track_libraries - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: string - - in: query - name: channel - schema: - type: string - - in: query - name: format - schema: - type: string - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -album__release_date - - -album__title - - -artist_credit__artist__modification_date - - -artist_credit__artist__name - - -creation_date - - -disc_number - - -position - - -random - - -related - - -size - - -title - - album__release_date - - album__title - - artist_credit__artist__modification_date - - artist_credit__artist__name - - creation_date - - disc_number - - position - - random - - related - - size - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `title` - Title - * `-title` - Title (descending) - * `album__title` - Album title - * `-album__title` - Album title (descending) - * `album__release_date` - Album release date - * `-album__release_date` - Album release date (descending) - * `size` - Size - * `-size` - Size (descending) - * `position` - Position - * `-position` - Position (descending) - * `disc_number` - Disc number - * `-disc_number` - Disc number (descending) - * `artist_credit__artist__name` - Artist credit artist name - * `-artist_credit__artist__name` - Artist credit artist name (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: quality - schema: - type: integer - enum: - - 0 - - 1 - - 2 - - 3 - description: |- - * `0` - low - * `1` - medium - * `2` - high - * `3` - very_high - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - - in: query - name: title - schema: - type: string - - in: query - name: title__icontains - schema: - type: string - - in: query - name: title__iexact - schema: - type: string - - in: query - name: title__startswith - schema: - type: string - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryList' - description: '' - /api/v1/tracks/{id}/mutations/: - get: - operationId: get_track_mutations - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: string - - in: query - name: channel - schema: - type: string - - in: query - name: format - schema: - type: string - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -album__release_date - - -album__title - - -artist_credit__artist__modification_date - - -artist_credit__artist__name - - -creation_date - - -disc_number - - -position - - -random - - -related - - -size - - -title - - album__release_date - - album__title - - artist_credit__artist__modification_date - - artist_credit__artist__name - - creation_date - - disc_number - - position - - random - - related - - size - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `title` - Title - * `-title` - Title (descending) - * `album__title` - Album title - * `-album__title` - Album title (descending) - * `album__release_date` - Album release date - * `-album__release_date` - Album release date (descending) - * `size` - Size - * `-size` - Size (descending) - * `position` - Position - * `-position` - Position (descending) - * `disc_number` - Disc number - * `-disc_number` - Disc number (descending) - * `artist_credit__artist__name` - Artist credit artist name - * `-artist_credit__artist__name` - Artist credit artist name (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: quality - schema: - type: integer - enum: - - 0 - - 1 - - 2 - - 3 - description: |- - * `0` - low - * `1` - medium - * `2` - high - * `3` - very_high - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - - in: query - name: title - schema: - type: string - - in: query - name: title__icontains - schema: - type: string - - in: query - name: title__iexact - schema: - type: string - - in: query - name: title__startswith - schema: - type: string - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAPIMutationList' - description: '' - post: - operationId: create_track_mutation - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - tracks - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TrackRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/TrackRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/TrackRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/TrackRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v1/uploads/: - get: - operationId: get_uploads - parameters: - - in: query - name: album_artist - schema: - type: string - format: uuid - - in: query - name: channel - schema: - type: string - - in: query - name: import_reference - schema: - type: string - - in: query - name: import_status - schema: - type: array - items: - type: string - enum: - - draft - - errored - - finished - - pending - - skipped - description: |- - * `draft` - Draft - * `pending` - Pending - * `finished` - Finished - * `errored` - Errored - * `skipped` - Skipped - explode: true - style: form - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - format: uuid - - in: query - name: mimetype - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: track - schema: - type: string - format: uuid - - in: query - name: track_artist - schema: - type: string - format: uuid - tags: - - uploads - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedUploadForOwnerList' - description: '' - post: - operationId: create_upload - tags: - - uploads - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - /api/v1/uploads/{uuid}/: - get: - operationId: get_upload - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - put: - operationId: update_upload - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - patch: - operationId: partial_update_upload - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedUploadForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedUploadForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedUploadForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedUploadForOwnerRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - delete: - operationId: delete_upload - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/uploads/{uuid}/audio-file-metadata/: - get: - operationId: get_upload_metadata - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TrackMetadata' - description: '' - /api/v1/uploads/action/: - post: - operationId: create_upload_action - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - uploads - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - /api/v1/uploads/bulk_update/: - patch: - operationId: partial_update_upload_bulk_update - description: Used to move an upload from one library to another. Receive a upload - uuid and a privacy_level - tags: - - uploads - requestBody: - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/UploadBulkUpdateRequest' - application/x-www-form-urlencoded: - schema: - type: array - items: - $ref: '#/components/schemas/UploadBulkUpdateRequest' - multipart/form-data: - schema: - type: array - items: - $ref: '#/components/schemas/UploadBulkUpdateRequest' - application/activity+json: - schema: - type: array - items: - $ref: '#/components/schemas/UploadBulkUpdateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - /api/v1/users/{username}/: - put: - operationId: update_user - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - patch: - operationId: partial_update_user - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - /api/v1/users/{username}/subsonic-token/: - get: - operationId: get_user_subsonic_token - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - post: - operationId: create_user_subsonic_token - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - delete: - operationId: delete_user_subsonic_token - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/users/change-email/: - post: - operationId: change_email - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - '403': - description: No response body - /api/v1/users/me/: - get: - operationId: get_authenticated_user - description: Return information about the current user or delete it - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - delete: - operationId: delete_authenticated_user - description: Return information about the current user or delete it - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v1/users/settings/: - post: - operationId: update_settings - description: Return information about the current user or delete it - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - /api/v2/activity/: - get: - operationId: get_activity_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - activity - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/albums/: - get: - operationId: get_albums_2 - parameters: - - in: query - name: artist - schema: - type: string - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: channel - schema: - type: string - - in: query - name: content_category - schema: - type: string - - in: query - name: has_cover - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: has_release_date - schema: - type: boolean - - in: query - name: has_tags - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -artist_credit__artist__modification_date - - -creation_date - - -random - - -related - - -release_date - - -title - - artist_credit__artist__modification_date - - creation_date - - random - - related - - release_date - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `release_date` - Release date - * `-release_date` - Release date (descending) - * `title` - Title - * `-title` - Title (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAlbumList' - description: '' - post: - operationId: create_album_2 - tags: - - albums - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AlbumCreateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/AlbumCreateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/AlbumCreateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/AlbumCreateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/AlbumCreate' - description: '' - /api/v2/albums/{id}/: - get: - operationId: get_album_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Album' - description: '' - delete: - operationId: delete_album_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/albums/{id}/fetches/: - get: - operationId: get_album_fetches_2 - parameters: - - in: query - name: artist - schema: - type: string - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: channel - schema: - type: string - - in: query - name: content_category - schema: - type: string - - in: query - name: has_cover - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: has_release_date - schema: - type: boolean - - in: query - name: has_tags - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -artist_credit__artist__modification_date - - -creation_date - - -random - - -related - - -release_date - - -title - - artist_credit__artist__modification_date - - creation_date - - random - - related - - release_date - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `release_date` - Release date - * `-release_date` - Release date (descending) - * `title` - Title - * `-title` - Title (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedFetchList' - description: '' - post: - operationId: create_album_fetch_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - albums - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AlbumRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/AlbumRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/AlbumRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/AlbumRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v2/albums/{id}/libraries/: - get: - operationId: get_album_libraries_2 - parameters: - - in: query - name: artist - schema: - type: string - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: channel - schema: - type: string - - in: query - name: content_category - schema: - type: string - - in: query - name: has_cover - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: has_release_date - schema: - type: boolean - - in: query - name: has_tags - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -artist_credit__artist__modification_date - - -creation_date - - -random - - -related - - -release_date - - -title - - artist_credit__artist__modification_date - - creation_date - - random - - related - - release_date - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `release_date` - Release date - * `-release_date` - Release date (descending) - * `title` - Title - * `-title` - Title (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryList' - description: '' - /api/v2/albums/{id}/mutations/: - get: - operationId: get_album_mutations_2 - parameters: - - in: query - name: artist - schema: - type: string - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: channel - schema: - type: string - - in: query - name: content_category - schema: - type: string - - in: query - name: has_cover - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: has_release_date - schema: - type: boolean - - in: query - name: has_tags - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -artist_credit__artist__modification_date - - -creation_date - - -random - - -related - - -release_date - - -title - - artist_credit__artist__modification_date - - creation_date - - random - - related - - release_date - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `release_date` - Release date - * `-release_date` - Release date (descending) - * `title` - Title - * `-title` - Title (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - albums - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAPIMutationList' - description: '' - post: - operationId: create_album_mutation_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - albums - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AlbumRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/AlbumRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/AlbumRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/AlbumRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v2/artists/: - get: - operationId: get_artists_2 - parameters: - - in: query - name: content_category - schema: - type: string - - in: query - name: has_albums - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -id - - -modification_date - - -name - - -random - - -related - - creation_date - - id - - modification_date - - name - - random - - related - description: |- - Ordering - - * `id` - Id - * `-id` - Id (descending) - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedArtistWithAlbumsList' - description: '' - /api/v2/artists/{id}/: - get: - operationId: get_artist_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ArtistWithAlbums' - description: '' - /api/v2/artists/{id}/fetches/: - get: - operationId: get_artist_fetches_2 - parameters: - - in: query - name: content_category - schema: - type: string - - in: query - name: has_albums - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -id - - -modification_date - - -name - - -random - - -related - - creation_date - - id - - modification_date - - name - - random - - related - description: |- - Ordering - - * `id` - Id - * `-id` - Id (descending) - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedFetchList' - description: '' - post: - operationId: create_artist_fetch_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - artists - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v2/artists/{id}/libraries/: - get: - operationId: get_artist_libraries_2 - parameters: - - in: query - name: content_category - schema: - type: string - - in: query - name: has_albums - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -id - - -modification_date - - -name - - -random - - -related - - creation_date - - id - - modification_date - - name - - random - - related - description: |- - Ordering - - * `id` - Id - * `-id` - Id (descending) - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryList' - description: '' - /api/v2/artists/{id}/mutations/: - get: - operationId: get_artist_mutations_2 - parameters: - - in: query - name: content_category - schema: - type: string - - in: query - name: has_albums - schema: - type: boolean - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -id - - -modification_date - - -name - - -random - - -related - - creation_date - - id - - modification_date - - name - - random - - related - description: |- - Ordering - - * `id` - Id - * `-id` - Id (descending) - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - artists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAPIMutationList' - description: '' - post: - operationId: create_artist_mutation_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - artists - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ArtistWithAlbumsRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v2/attachments/: - post: - operationId: create_attachment_2 - tags: - - attachments - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AttachmentRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/AttachmentRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/AttachmentRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/AttachmentRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Attachment' - description: '' - /api/v2/attachments/{uuid}/: - get: - operationId: get_attachment_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - attachments - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Attachment' - description: '' - delete: - operationId: delete_attachment_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - attachments - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/attachments/{uuid}/proxy/: - get: - operationId: get_attachment_proxy_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - attachments - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Attachment' - description: '' - /api/v2/auth/password/change/: - post: - operationId: change_password_3 - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordChange' - description: '' - /api/v2/auth/password/reset/: - post: - operationId: reset_password_2 - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordResetRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PasswordResetRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PasswordResetRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PasswordResetRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - - {} - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordReset' - description: '' - /api/v2/auth/password/reset/confirm/: - post: - operationId: confirm_password_reset_2 - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordResetConfirmRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PasswordResetConfirmRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PasswordResetConfirmRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PasswordResetConfirmRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - - {} - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordResetConfirm' - description: '' - /api/v2/auth/registration/: - post: - operationId: register_2 - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RegisterRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RegisterRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RegisterRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RegisterRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Register' - description: '' - /api/v2/auth/registration/change-password/: - post: - operationId: change_password_4 - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PasswordChangeRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PasswordChange' - description: '' - /api/v2/auth/registration/verify-email/: - post: - operationId: verify_email_2 - description: The type of the None singleton. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/VerifyEmailRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/VerifyEmailRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/VerifyEmailRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/VerifyEmailRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - - {} - responses: - '200': - description: No response body - /api/v2/auth/user/: - get: - operationId: get_auth_user_2 - description: |- - Reads and updates UserModel fields - Accepts GET, PUT, PATCH methods. - - Default accepted fields: username, first_name, last_name - Default display fields: pk, username, email, first_name, last_name - Read-only fields: pk, email - - Returns UserModel fields. - tags: - - auth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserDetails' - description: '' - put: - operationId: update_auth_user_2 - description: |- - Reads and updates UserModel fields - Accepts GET, PUT, PATCH methods. - - Default accepted fields: username, first_name, last_name - Default display fields: pk, username, email, first_name, last_name - Read-only fields: pk, email - - Returns UserModel fields. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserDetailsRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserDetailsRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserDetailsRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserDetailsRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserDetails' - description: '' - patch: - operationId: partial_update_auth_user_2 - description: |- - Reads and updates UserModel fields - Accepts GET, PUT, PATCH methods. - - Default accepted fields: username, first_name, last_name - Default display fields: pk, username, email, first_name, last_name - Read-only fields: pk, email - - Returns UserModel fields. - tags: - - auth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedUserDetailsRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedUserDetailsRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedUserDetailsRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedUserDetailsRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserDetails' - description: '' - /api/v2/channels/: - get: - operationId: get_channels_2 - parameters: - - in: query - name: external - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -modification_date - - -random - - creation_date - - modification_date - - random - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `random` - Random - * `-random` - Random (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: subscribed - schema: - type: boolean - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedChannelList' - description: '' - post: - operationId: create_channel_2 - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelCreateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelCreateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelCreateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelCreateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelCreate' - description: '' - /api/v2/channels/{composite}/: - get: - operationId: get_channel_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Channel' - description: '' - put: - operationId: update_channel_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelUpdateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelUpdateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelUpdateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelUpdateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelUpdate' - description: '' - patch: - operationId: partial_update_channel_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedChannelUpdateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedChannelUpdateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedChannelUpdateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedChannelUpdateRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelUpdate' - description: '' - delete: - operationId: delete_channel_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/channels/{composite}/rss/: - get: - operationId: get_channel_rss_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Channel' - description: '' - /api/v2/channels/{composite}/subscribe/: - post: - operationId: subscribe_channel_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Channel' - description: '' - /api/v2/channels/{composite}/unsubscribe/: - post: - operationId: unsubscribe_channel_4 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - delete: - operationId: unsubscribe_channel_3 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/channels/metadata-choices/: - get: - operationId: get_channel_metadata_choices_2 - tags: - - channels - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetedataChoices' - description: '' - /api/v2/channels/rss-subscribe/: - post: - operationId: subscribe_channel_rss_2 - tags: - - channels - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ChannelRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ChannelRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ChannelRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Channel' - description: '' - /api/v2/favorites/tracks/: - get: - operationId: get_favorite_tracks_2 - parameters: - - in: query - name: hidden - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - tags: - - favorites - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedUserTrackFavoriteList' - description: '' - post: - operationId: favorite_track_2 - tags: - - favorites - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWrite' - description: '' - /api/v2/favorites/tracks/{id}/: - delete: - operationId: delete_favorite_track_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track favorite. - required: true - tags: - - favorites - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/favorites/tracks/all/: - get: - operationId: get_all_favorite_tracks_2 - description: |- - Return all the favorites of the current user, with only limited data - to have a performant endpoint and avoid lots of queries just to display - favorites status in the UI - tags: - - favorites - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AllFavorite' - description: '' - /api/v2/favorites/tracks/remove/: - post: - operationId: unfavorite_track_4 - tags: - - favorites - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTrackFavoriteWrite' - description: '' - delete: - operationId: unfavorite_track_3 - tags: - - favorites - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/federation/actors/{full_username}/: - get: - operationId: get_federation_actor_2 - parameters: - - in: path - name: full_username - schema: - type: string - pattern: ^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)$ - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FullActor' - description: '' - /api/v2/federation/actors/{full_username}/libraries/: - get: - operationId: get_federation_actor_library_2 - parameters: - - in: path - name: full_username - schema: - type: string - pattern: ^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)$ - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryForOwner' - description: '' - /api/v2/federation/domains/: - get: - operationId: get_federation_domains_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedDomainList' - description: '' - /api/v2/federation/domains/{name}/: - get: - operationId: get_federation_domain_2 - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Domain' - description: '' - /api/v2/federation/fetches/: - post: - operationId: create_federation_fetch_2 - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FetchRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/FetchRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/FetchRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/FetchRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v2/federation/fetches/{id}/: - get: - operationId: get_federation_fetch_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this fetch. - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v2/federation/follows/library/: - get: - operationId: get_federation_library_follows_2 - parameters: - - in: query - name: approved - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryFollowList' - description: '' - post: - operationId: create_federation_library_follow_2 - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollow' - description: '' - /api/v2/federation/follows/library/{uuid}/: - get: - operationId: get_federation_library_follow_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollow' - description: '' - delete: - operationId: delete_federation_library_follow_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/federation/follows/library/{uuid}/accept/: - post: - operationId: accept_federation_library_follow_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '404': - description: No response body - '204': - description: No response body - /api/v2/federation/follows/library/{uuid}/reject/: - post: - operationId: reject_federation_library_follow_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryFollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollow' - description: '' - /api/v2/federation/follows/library/all/: - get: - operationId: get_all_federation_library_follows_3 - description: |- - Return all the subscriptions of the current user, with only limited data - to have a performant endpoint and avoid lots of queries just to display - subscription status in the UI - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryFollow' - description: '' - /api/v2/federation/follows/user/: - get: - operationId: get_federation_received_follows_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedFollowList' - description: '' - post: - operationId: create_federation_user_follow_2 - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/FollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/FollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/FollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Follow' - description: '' - /api/v2/federation/follows/user/{uuid}/: - get: - operationId: get_federation_user_follow_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Follow' - description: '' - delete: - operationId: delete_federation_user_follow_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/federation/follows/user/{uuid}/accept/: - post: - operationId: accept_federation_user_follow_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/FollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/FollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/FollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '404': - description: No response body - '204': - description: No response body - /api/v2/federation/follows/user/{uuid}/reject/: - post: - operationId: reject_federation_user_follow_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FollowRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/FollowRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/FollowRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/FollowRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Follow' - description: '' - /api/v2/federation/follows/user/all/: - get: - operationId: get_all_federation_library_follows_4 - description: |- - Return all the subscriptions of the current user, with only limited data - to have a performant endpoint and avoid lots of queries just to display - subscription status in the UI - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Follow' - description: '' - /api/v2/federation/inbox/: - get: - operationId: get_federation_inboxes_2 - parameters: - - in: query - name: activity__actor - schema: - type: integer - - in: query - name: activity__type - schema: - type: string - - in: query - name: before - schema: - type: number - - in: query - name: is_read - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedInboxItemList' - description: '' - /api/v2/federation/inbox/{id}/: - get: - operationId: get_federation_inbox_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this inbox item. - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItem' - description: '' - put: - operationId: update_federation_inbox_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this inbox item. - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItemRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/InboxItemRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/InboxItemRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/InboxItemRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItem' - description: '' - patch: - operationId: partial_update_federation_inbox_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this inbox item. - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedInboxItemRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedInboxItemRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedInboxItemRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedInboxItemRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItem' - description: '' - /api/v2/federation/inbox/action/: - post: - operationId: create_federation_inbox_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItemRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/InboxItemRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/InboxItemRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/InboxItemRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/InboxItem' - description: '' - /api/v2/federation/libraries/{uuid}/: - get: - operationId: get_federation_library_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Library' - description: '' - /api/v2/federation/libraries/{uuid}/scan/: - post: - operationId: create_federation_library_scan_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Library' - description: '' - /api/v2/federation/libraries/fetch/: - post: - operationId: create_federation_library_fetch_2 - tags: - - federation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Library' - description: '' - /api/v2/history/listenings/: - get: - operationId: get_history_listenings_2 - parameters: - - in: query - name: domain - schema: - type: string - - in: query - name: hidden - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: scope - schema: - type: string - - in: query - name: username - schema: - type: string - tags: - - history - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedListeningList' - description: '' - post: - operationId: create_history_listening_2 - tags: - - history - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ListeningWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ListeningWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ListeningWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ListeningWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ListeningWrite' - description: '' - /api/v2/history/listenings/{id}/: - get: - operationId: get_history_listening_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this listening. - required: true - tags: - - history - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Listening' - description: '' - /api/v2/instance/admin/settings/: - get: - operationId: get_instance_admin_settings_2 - description: |- - - list preferences - - detail given preference - - batch update preferences - - update a single preference - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - tags: - - instance - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/GlobalPreference' - description: '' - /api/v2/instance/admin/settings/{id}/: - get: - operationId: get_instance_admin_setting_2 - description: |- - - list preferences - - detail given preference - - batch update preferences - - update a single preference - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this Global preference. - required: true - tags: - - instance - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - put: - operationId: update_instance_admin_setting_2 - description: |- - - list preferences - - detail given preference - - batch update preferences - - update a single preference - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this Global preference. - required: true - tags: - - instance - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - patch: - operationId: partial_update_instance_admin_setting_2 - description: |- - - list preferences - - detail given preference - - batch update preferences - - update a single preference - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this Global preference. - required: true - tags: - - instance - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedGlobalPreferenceRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedGlobalPreferenceRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedGlobalPreferenceRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedGlobalPreferenceRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - /api/v2/instance/admin/settings/bulk/: - post: - operationId: create_instance_admin_setting_bulk_2 - description: |- - Update multiple preferences at once - - this is a long method because we ensure everything is valid - before actually persisting the changes - tags: - - instance - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/GlobalPreferenceRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - /api/v2/instance/nodeinfo/2.1/: - get: - operationId: getNodeInfo21 - tags: - - instance - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NodeInfo21' - description: '' - /api/v2/instance/settings/: - get: - operationId: get_instance_settings_2 - tags: - - instance - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GlobalPreference' - description: '' - /api/v2/instance/spa-manifest.json: - get: - operationId: get_spa_manifest_2 - tags: - - instance - responses: - '200': - content: - application/activity+json: - schema: - $ref: '#/components/schemas/SpaManifest' - description: '' - /api/v2/libraries/: - get: - operationId: get_libraries_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: privacy_level - schema: - type: string - enum: - - everyone - - instance - - me - description: |- - * `me` - Only me - * `instance` - Everyone on my instance, and my followers - * `everyone` - Everyone, including people on other instances - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - tags: - - libraries - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryForOwnerList' - description: '' - /api/v2/libraries/{uuid}/: - get: - operationId: get_library_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - libraries - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryForOwner' - description: '' - /api/v2/libraries/fs-import/: - get: - operationId: get_library_fs_import_2 - tags: - - libraries - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - post: - operationId: create_library_fs_import_2 - tags: - - libraries - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LibraryForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/LibraryForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/LibraryForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/LibraryForOwnerRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - delete: - operationId: delete_library_fs_import_2 - tags: - - libraries - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/licenses/: - get: - operationId: get_licenses_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - licenses - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLicenseList' - description: '' - /api/v2/licenses/{code}/: - get: - operationId: get_license_2 - parameters: - - in: path - name: code - schema: - type: string - description: A unique value identifying this license. - required: true - tags: - - licenses - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/License' - description: '' - /api/v2/listen/{uuid}/: - get: - operationId: get_listen_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - listen - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - audio/*: - schema: - type: string - format: binary - description: '' - /api/v2/manage/accounts/: - get: - operationId: admin_get_accounts_2 - parameters: - - in: query - name: domain - schema: - type: string - - in: query - name: local - schema: - type: boolean - - in: query - name: manually_approves_followers - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: type - schema: - type: string - enum: - - Application - - Group - - Organization - - Person - - Service - - Tombstone - description: |- - * `Person` - Person - * `Tombstone` - Tombstone - * `Application` - Application - * `Group` - Group - * `Organization` - Organization - * `Service` - Service - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageActorList' - description: '' - /api/v2/manage/accounts/{id}/: - get: - operationId: admin_get_account_2 - parameters: - - in: path - name: id - schema: - type: string - pattern: ^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageActor' - description: '' - /api/v2/manage/accounts/{id}/stats/: - get: - operationId: admin_get_account_stats_2 - parameters: - - in: path - name: id - schema: - type: string - pattern: ^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageActor' - description: '' - /api/v2/manage/accounts/action/: - post: - operationId: admin_create_account_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageActorRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageActorRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageActorRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageActorRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageActor' - description: '' - /api/v2/manage/channels/: - get: - operationId: admin_get_channels_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageChannelList' - description: '' - /api/v2/manage/channels/{composite}/: - get: - operationId: admin_get_channel_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageChannel' - description: '' - delete: - operationId: admin_delete_channel_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/manage/channels/{composite}/stats/: - get: - operationId: admin_get_channel_stats_2 - parameters: - - in: path - name: composite - schema: - type: string - pattern: ^[^/]+$ - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageChannel' - description: '' - /api/v2/manage/federation/domains/: - get: - operationId: admin_get_federation_domains_2 - parameters: - - in: query - name: allowed - schema: - type: boolean - - in: query - name: name - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageDomainList' - description: '' - post: - operationId: admin_create_federation_domain_2 - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - /api/v2/manage/federation/domains/{name}/: - get: - operationId: admin_get_federation_domain_2 - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - put: - operationId: admin_update_federation_domain_2 - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainUpdateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageDomainUpdateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageDomainUpdateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageDomainUpdateRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainUpdate' - description: '' - patch: - operationId: admin_partial_update_federation_domain_2 - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageDomainUpdateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageDomainUpdateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageDomainUpdateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageDomainUpdateRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainUpdate' - description: '' - /api/v2/manage/federation/domains/{name}/nodeinfo/: - get: - operationId: admin_get_federation_domain_nodeinfo_2 - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - /api/v2/manage/federation/domains/{name}/stats/: - get: - operationId: admin_get_federation_domain_stats_2 - parameters: - - in: path - name: name - schema: - type: string - description: A unique value identifying this domain. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - /api/v2/manage/federation/domains/action/: - post: - operationId: admin_create_federation_domain_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageDomainRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageDomain' - description: '' - /api/v2/manage/library/albums/: - get: - operationId: admin_get_albums_2 - parameters: - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: fid - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: title - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageAlbumList' - description: '' - /api/v2/manage/library/albums/{id}/: - get: - operationId: admin_get_album_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageAlbum' - description: '' - delete: - operationId: admin_delete_album_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/manage/library/albums/{id}/stats/: - get: - operationId: admin_get_library_album_stats_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this album. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageAlbum' - description: '' - /api/v2/manage/library/albums/action/: - post: - operationId: admin_create_album_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageAlbumRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageAlbumRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageAlbumRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageAlbumRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageAlbum' - description: '' - /api/v2/manage/library/artists/: - get: - operationId: admin_get_artists_2 - parameters: - - in: query - name: content_category - schema: - type: string - enum: - - music - - other - - podcast - description: |- - * `music` - music - * `podcast` - podcast - * `other` - other - - in: query - name: fid - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: name - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageArtistList' - description: '' - /api/v2/manage/library/artists/{id}/: - get: - operationId: admin_get_artist_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageArtist' - description: '' - delete: - operationId: admin_delete_artist_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/manage/library/artists/{id}/stats/: - get: - operationId: admin_get_library_artist_stats_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this artist. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageArtist' - description: '' - /api/v2/manage/library/artists/action/: - post: - operationId: admin_create_artist_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageArtistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageArtistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageArtistRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageArtistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageArtist' - description: '' - /api/v2/manage/library/libraries/: - get: - operationId: admin_get_libraries_2 - parameters: - - in: query - name: domain - schema: - type: string - - in: query - name: fid - schema: - type: string - - in: query - name: name - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -followers_count - - -uploads_count - - creation_date - - followers_count - - uploads_count - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `uploads_count` - Uploads count - * `-uploads_count` - Uploads count (descending) - * `followers_count` - Followers count - * `-followers_count` - Followers count (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: privacy_level - schema: - type: string - enum: - - everyone - - instance - - me - description: |- - * `me` - Only me - * `instance` - Everyone on my instance, and my followers - * `everyone` - Everyone, including people on other instances - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageLibraryList' - description: '' - /api/v2/manage/library/libraries/{uuid}/: - get: - operationId: admin_get_library_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - put: - operationId: admin_update_library_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - patch: - operationId: admin_partial_update_library_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageLibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageLibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageLibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageLibraryRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - delete: - operationId: admin_delete_library_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/manage/library/libraries/{uuid}/stats/: - get: - operationId: admin_get_library_stats_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - /api/v2/manage/library/libraries/action/: - post: - operationId: admin_create_library_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageLibraryRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageLibrary' - description: '' - /api/v2/manage/library/tracks/: - get: - operationId: admin_get_tracks_2 - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist_credit - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: fid - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: title - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageTrackList' - description: '' - /api/v2/manage/library/tracks/{id}/: - get: - operationId: admin_get_track_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTrack' - description: '' - delete: - operationId: admin_delete_track_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/manage/library/tracks/{id}/stats/: - get: - operationId: admin_get_track_stats_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTrack' - description: '' - /api/v2/manage/library/tracks/action/: - post: - operationId: admin_create_track_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTrackRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageTrackRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageTrackRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageTrackRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTrack' - description: '' - /api/v2/manage/library/uploads/: - get: - operationId: admin_get_uploads_2 - parameters: - - in: query - name: domain - schema: - type: string - - in: query - name: fid - schema: - type: string - - in: query - name: import_reference - schema: - type: string - - in: query - name: import_status - schema: - type: string - enum: - - draft - - errored - - finished - - pending - - skipped - description: |- - * `draft` - Draft - * `pending` - Pending - * `finished` - Finished - * `errored` - Errored - * `skipped` - Skipped - - in: query - name: mimetype - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -accessed_date - - -bitrate - - -creation_date - - -duration - - -modification_date - - -size - - accessed_date - - bitrate - - creation_date - - duration - - modification_date - - size - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `modification_date` - Modification date - * `-modification_date` - Modification date (descending) - * `accessed_date` - Accessed date - * `-accessed_date` - Accessed date (descending) - * `size` - Size - * `-size` - Size (descending) - * `bitrate` - Bitrate - * `-bitrate` - Bitrate (descending) - * `duration` - Duration - * `-duration` - Duration (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: privacy_level - schema: - type: string - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageUploadList' - description: '' - /api/v2/manage/library/uploads/{uuid}/: - get: - operationId: admin_get_upload_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUpload' - description: '' - delete: - operationId: admin_delete_upload_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/manage/library/uploads/action/: - post: - operationId: admin_create_upload_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUploadRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageUploadRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageUploadRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageUploadRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUpload' - description: '' - /api/v2/manage/moderation/instance-policies/: - get: - operationId: moderation_get_instance_policies_2 - parameters: - - in: query - name: block_all - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: reject_media - schema: - type: boolean - - in: query - name: silence_activity - schema: - type: boolean - - in: query - name: silence_notifications - schema: - type: boolean - - in: query - name: target_account_domain - schema: - type: string - - in: query - name: target_account_username - schema: - type: string - - in: query - name: target_domain - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageInstancePolicyList' - description: '' - post: - operationId: moderation_create_instance_policy_2 - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicy' - description: '' - /api/v2/manage/moderation/instance-policies/{id}/: - get: - operationId: moderation_get_instance_policy_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this instance policy. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicy' - description: '' - put: - operationId: moderation_update_instance_policy_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this instance policy. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInstancePolicyRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicy' - description: '' - patch: - operationId: moderation_partial_update_instance_policy_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this instance policy. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageInstancePolicyRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageInstancePolicyRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageInstancePolicyRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageInstancePolicyRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInstancePolicy' - description: '' - delete: - operationId: moderation_delete_instance_policy_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this instance policy. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/manage/moderation/notes/: - get: - operationId: moderation_get_notes_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageNoteList' - description: '' - post: - operationId: moderation_create_note_2 - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageNoteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageNoteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageNoteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageNoteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageNote' - description: '' - /api/v2/manage/moderation/notes/{uuid}/: - get: - operationId: moderation_get_note_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageNote' - description: '' - delete: - operationId: moderation_delete_note_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/manage/moderation/reports/: - get: - operationId: moderation_get_reports_2 - parameters: - - in: query - name: is_handled - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: submitter_email - schema: - type: string - - in: query - name: type - schema: - type: string - enum: - - illegal_content - - invalid_metadata - - offensive_content - - other - - takedown_request - description: |- - * `takedown_request` - Takedown request - * `invalid_metadata` - Invalid metadata - * `illegal_content` - Illegal content - * `offensive_content` - Offensive content - * `other` - Other - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageReportList' - description: '' - /api/v2/manage/moderation/reports/{uuid}/: - get: - operationId: moderation_get_report_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageReport' - description: '' - put: - operationId: moderation_update_report_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageReportRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageReportRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageReportRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageReportRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageReport' - description: '' - patch: - operationId: moderation_partial_update_report_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageReportRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageReportRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageReportRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageReportRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageReport' - description: '' - /api/v2/manage/moderation/requests/: - get: - operationId: moderation_get_requests_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: status - schema: - type: string - enum: - - approved - - pending - - refused - description: |- - * `pending` - Pending - * `refused` - Refused - * `approved` - Approved - - in: query - name: type - schema: - type: string - enum: - - signup - description: '* `signup` - Sign-up' - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageUserRequestList' - description: '' - /api/v2/manage/moderation/requests/{uuid}/: - get: - operationId: moderation_get_request_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - description: '' - put: - operationId: moderation_update_request_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequestRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageUserRequestRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageUserRequestRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageUserRequestRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - description: '' - patch: - operationId: moderation_partial_update_request_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageUserRequestRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageUserRequestRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageUserRequestRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageUserRequestRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - description: '' - /api/v2/manage/tags/: - get: - operationId: admin_get_tags_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageTagList' - description: '' - post: - operationId: admin_create_tag_2 - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTagRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageTagRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageTagRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageTagRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTag' - description: '' - /api/v2/manage/tags/{name}/: - get: - operationId: admin_get_tag_2 - parameters: - - in: path - name: name - schema: - type: string - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTag' - description: '' - delete: - operationId: admin_delete_tag_2 - parameters: - - in: path - name: name - schema: - type: string - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/manage/tags/action/: - post: - operationId: admin_create_tag_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTagRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageTagRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageTagRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageTagRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageTag' - description: '' - /api/v2/manage/users/invitations/: - get: - operationId: admin_get_invitations_2 - parameters: - - in: query - name: is_open - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageInvitationList' - description: '' - post: - operationId: admin_create_invitation_2 - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - /api/v2/manage/users/invitations/{id}/: - get: - operationId: admin_get_invitation_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this invitation. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - put: - operationId: admin_update_invitation_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this invitation. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - patch: - operationId: admin_partial_update_invitation_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this invitation. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageInvitationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageInvitationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageInvitationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageInvitationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - /api/v2/manage/users/invitations/action/: - post: - operationId: admin_create_invitation_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageInvitationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageInvitation' - description: '' - /api/v2/manage/users/users/: - get: - operationId: admin_get_users_2 - parameters: - - in: query - name: is_active - schema: - type: boolean - - in: query - name: is_staff - schema: - type: boolean - - in: query - name: is_superuser - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: permission_library - schema: - type: boolean - - in: query - name: permission_moderation - schema: - type: boolean - - in: query - name: permission_settings - schema: - type: boolean - - in: query - name: privacy_level - schema: - type: string - enum: - - everyone - - followers - - instance - - me - description: |- - * `me` - Only me - * `followers` - Me and my followers - * `instance` - Everyone on my instance, and my followers - * `everyone` - Everyone, including people on other instances - - in: query - name: q - schema: - type: string - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedManageUserList' - description: '' - /api/v2/manage/users/users/{id}/: - get: - operationId: admin_get_user_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this user. - required: true - tags: - - manage - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUser' - description: '' - put: - operationId: admin_update_user_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this user. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ManageUserRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ManageUserRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ManageUserRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUser' - description: '' - patch: - operationId: admin_partial_update_user_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this user. - required: true - tags: - - manage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedManageUserRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedManageUserRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedManageUserRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedManageUserRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ManageUser' - description: '' - /api/v2/moderation/content-filters/: - get: - operationId: get_moderation_content_filters_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - moderation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedUserFilterList' - description: '' - post: - operationId: create_moderation_content_filter_2 - tags: - - moderation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserFilterRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserFilterRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserFilterRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserFilterRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserFilter' - description: '' - /api/v2/moderation/content-filters/{uuid}/: - get: - operationId: get_moderation_content_filter_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - moderation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserFilter' - description: '' - delete: - operationId: delete_moderation_content_filter_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - moderation - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/moderation/reports/: - post: - operationId: create_moderation_report_2 - tags: - - moderation - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ReportRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ReportRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ReportRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ReportRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Report' - description: '' - /api/v2/mutations/: - get: - operationId: get_mutations_2 - parameters: - - in: query - name: is_applied - schema: - type: boolean - - in: query - name: is_approved - schema: - type: boolean - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: type - schema: - type: string - tags: - - mutations - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAPIMutationList' - description: '' - /api/v2/mutations/{uuid}/: - get: - operationId: get_mutation_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - mutations - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - delete: - operationId: delete_mutation_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - mutations - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/mutations/{uuid}/approve/: - post: - operationId: approve_mutation_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - mutations - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/APIMutationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/APIMutationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/APIMutationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v2/mutations/{uuid}/reject/: - post: - operationId: reject_mutation_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - mutations - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/APIMutationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/APIMutationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/APIMutationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v2/oauth/apps/: - get: - operationId: get_oauth_apps_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedApplicationList' - description: '' - post: - operationId: create_oauth_app_2 - tags: - - oauth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateApplication' - description: '' - /api/v2/oauth/apps/{client_id}/: - get: - operationId: get_oauth_app_2 - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Application' - description: '' - put: - operationId: update_oauth_app_2 - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/ApplicationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/ApplicationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/ApplicationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Application' - description: '' - patch: - operationId: partial_update_oauth_app_2 - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedApplicationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedApplicationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedApplicationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedApplicationRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Application' - description: '' - delete: - operationId: delete_oauth_app_2 - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/oauth/apps/{client_id}/refresh-token/: - post: - operationId: refresh_oauth_token_2 - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/CreateApplicationRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateApplication' - description: '' - /api/v2/oauth/authorize/: - get: - operationId: get_oauth_authorize - description: 'Handle GET requests: instantiate a blank version of the form.' - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - post: - operationId: create_oauth_authorize - description: |- - Handle POST requests: instantiate a form instance with the passed - POST variables and then check if it's valid. - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - put: - operationId: update_oauth_authorize - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/oauth/grants/: - get: - operationId: get_oauth_grants_2 - description: |- - This is a viewset that list applications that have access to the request user - account, to allow revoking tokens easily. - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/Application' - description: '' - /api/v2/oauth/grants/{client_id}/: - get: - operationId: get_oauth_grant_2 - description: |- - This is a viewset that list applications that have access to the request user - account, to allow revoking tokens easily. - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Application' - description: '' - delete: - operationId: delete_oauth_grant_2 - description: |- - This is a viewset that list applications that have access to the request user - account, to allow revoking tokens easily. - parameters: - - in: path - name: client_id - schema: - type: string - required: true - tags: - - oauth - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/oembed/: - get: - operationId: get_oembed_2 - tags: - - oembed - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Oembed' - description: '' - /api/v2/playlists/: - get: - operationId: get_playlists_2 - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: integer - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: track - schema: - type: integer - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedPlaylistList' - application/octet-stream: - schema: - $ref: '#/components/schemas/PaginatedPlaylistList' - description: '' - post: - operationId: create_playlist_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v2/playlists/{id}/: - get: - operationId: get_playlist_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - put: - operationId: update_playlist_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - patch: - operationId: partial_update_playlist_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PatchedPlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PatchedPlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedPlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedPlaylistRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - delete: - operationId: delete_playlist_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/playlists/{id}/add/: - post: - operationId: add_to_playlist_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistAddManyRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistAddManyRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistAddManyRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistAddManyRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v2/playlists/{id}/albums/: - get: - operationId: get_playlist_albums_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v2/playlists/{id}/artists/: - get: - operationId: get_playlist_artits_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v2/playlists/{id}/clear/: - delete: - operationId: clear_playlist_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/playlists/{id}/move/: - post: - operationId: reorder_track_in_playlist_2 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - /api/v2/playlists/{id}/remove/: - post: - operationId: remove_from_playlist_4 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - requestBody: - content: - application/octet-stream: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/json: - schema: - $ref: '#/components/schemas/PlaylistRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PlaylistRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PlaylistRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Playlist' - application/octet-stream: - schema: - $ref: '#/components/schemas/Playlist' - description: '' - delete: - operationId: remove_from_playlist_3 - parameters: - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/playlists/{id}/tracks/: - get: - operationId: get_playlist_tracks_2 - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: integer - - in: query - name: format - schema: - type: string - enum: - - json - - xspf - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this playlist. - required: true - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: track - schema: - type: integer - tags: - - playlists - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedPlaylistTrackList' - application/octet-stream: - schema: - $ref: '#/components/schemas/PaginatedPlaylistTrackList' - description: '' - /api/v2/plugins/: - get: - operationId: get_plugins_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - post: - operationId: create_plugin_2 - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - description: No response body - /api/v2/plugins/{id}/: - get: - operationId: get_plugin_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this plugin configuration. - required: true - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/plugins/{id}/disable/: - post: - operationId: disable_plugin_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this plugin configuration. - required: true - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/plugins/{id}/enable/: - post: - operationId: enable_plugin_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this plugin configuration. - required: true - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/plugins/{id}/scan/: - post: - operationId: create_plugin_scan_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this plugin configuration. - required: true - tags: - - plugins - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/providers/musicbrainz/artists/{uuid}/: - get: - operationId: get_provider_musicbrainz_artist - parameters: - - in: path - name: uuid - schema: - type: string - pattern: ^[0-9a-z-]+$ - required: true - tags: - - providers - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/providers/musicbrainz/release-groups/browse/{artist_uuid}/: - get: - operationId: get_provider_musicbrainz_release_group_browse - parameters: - - in: path - name: artist_uuid - schema: - type: string - pattern: ^[0-9a-z-]+$ - required: true - tags: - - providers - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/providers/musicbrainz/releases/{uuid}/: - get: - operationId: get_provider_musicbrainz_release - parameters: - - in: path - name: uuid - schema: - type: string - pattern: ^[0-9a-z-]+$ - required: true - tags: - - providers - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/providers/musicbrainz/releases/browse/{release_group_uuid}/: - get: - operationId: get_provider_musicbrainz_release_browse - parameters: - - in: path - name: release_group_uuid - schema: - type: string - pattern: ^[0-9a-z-]+$ - required: true - tags: - - providers - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/providers/musicbrainz/search/artists/: - get: - operationId: get_provider_musicbrainz_search_artist - tags: - - providers - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/providers/musicbrainz/search/recordings/: - get: - operationId: get_provider_musicbrainz_search_recording - tags: - - providers - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/providers/musicbrainz/search/releases/: - get: - operationId: get_provider_musicbrainz_search_release - tags: - - providers - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - /api/v2/radios/radios/: - get: - operationId: get_radios_2 - parameters: - - in: query - name: name - schema: - type: string - - in: query - name: name__icontains - schema: - type: string - - in: query - name: name__iexact - schema: - type: string - - in: query - name: name__startswith - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedRadioList' - description: '' - post: - operationId: create_radio_2 - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - /api/v2/radios/radios/{id}/: - get: - operationId: get_radio_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - put: - operationId: update_radio_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - patch: - operationId: partial_update_radio_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedRadioRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedRadioRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedRadioRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedRadioRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - delete: - operationId: delete_radio_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/radios/radios/{id}/tracks/: - get: - operationId: get_radio_track_2 - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio. - required: true - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Track' - description: '' - /api/v2/radios/radios/filters/: - get: - operationId: get_radio_filter_2 - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Filter' - description: '' - /api/v2/radios/radios/validate/: - post: - operationId: validate_radio_2 - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Radio' - description: '' - /api/v2/radios/sessions/: - post: - operationId: create_radio_session_2 - description: Returns a list of RadioSessions - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSessionRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioSessionRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioSessionRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioSessionRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSession' - description: '' - /api/v2/radios/sessions/{id}/: - get: - operationId: get_radio_session_2 - description: Returns a list of RadioSessions - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio session. - required: true - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSession' - description: '' - /api/v2/radios/sessions/{id}/tracks/: - get: - operationId: get_radio_session_track - description: Returns a list of RadioSessions - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this radio session. - required: true - tags: - - radios - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreate' - description: '' - /api/v2/radios/tracks/: - post: - operationId: get_next_radio_track_2 - tags: - - radios - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreateRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreateRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreateRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RadioSessionTrackSerializerCreate' - description: '' - /api/v2/rate-limit/: - get: - operationId: get_rate_limit_2 - tags: - - rate-limit - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RateLimit' - description: '' - /api/v2/search: - get: - operationId: get_search_results_2 - tags: - - search - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SearchResult' - description: '' - /api/v2/stream/{uuid}/: - get: - operationId: get_track_stream_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - stream - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - audio/mpeg: - schema: - type: string - format: binary - description: '' - /api/v2/subscriptions/: - get: - operationId: get_subscriptions_2 - parameters: - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - tags: - - subscriptions - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedSubscriptionList' - description: '' - /api/v2/subscriptions/{uuid}/: - get: - operationId: get_subscription_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - subscriptions - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Subscription' - description: '' - /api/v2/subscriptions/all/: - get: - operationId: get_all_subscriptions_2 - description: |- - Return all the subscriptions of the current user, with only limited data - to have a performant endpoint and avoid lots of queries just to display - subscription status in the UI - tags: - - subscriptions - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AllSubscriptions' - description: '' - /api/v2/tags/: - get: - operationId: get_tags_2 - parameters: - - in: query - name: name - schema: - type: string - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -creation_date - - -length - - -name - - creation_date - - length - - name - description: |- - Ordering - - * `name` - Name - * `-name` - Name (descending) - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `length` - Length - * `-length` - Length (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: q - schema: - type: string - tags: - - tags - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedTagList' - description: '' - /api/v2/tags/{name}/: - get: - operationId: get_tag_2 - parameters: - - in: path - name: name - schema: - type: string - required: true - tags: - - tags - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Tag' - description: '' - /api/v2/text-preview/: - post: - operationId: preview_text_2 - tags: - - text-preview - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TextPreviewRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/TextPreviewRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/TextPreviewRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/TextPreviewRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TextPreview' - description: '' - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/ErrorDetail' - description: '' - /api/v2/tracks/: - get: - operationId: get_tracks_2 - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: string - - in: query - name: channel - schema: - type: string - - in: query - name: format - schema: - type: string - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: query - name: id - schema: - type: array - items: - type: integer - explode: true - style: form - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -album__release_date - - -album__title - - -artist_credit__artist__modification_date - - -artist_credit__artist__name - - -creation_date - - -disc_number - - -position - - -random - - -related - - -size - - -title - - album__release_date - - album__title - - artist_credit__artist__modification_date - - artist_credit__artist__name - - creation_date - - disc_number - - position - - random - - related - - size - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `title` - Title - * `-title` - Title (descending) - * `album__title` - Album title - * `-album__title` - Album title (descending) - * `album__release_date` - Album release date - * `-album__release_date` - Album release date (descending) - * `size` - Size - * `-size` - Size (descending) - * `position` - Position - * `-position` - Position (descending) - * `disc_number` - Disc number - * `-disc_number` - Disc number (descending) - * `artist_credit__artist__name` - Artist credit artist name - * `-artist_credit__artist__name` - Artist credit artist name (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: quality - schema: - type: integer - enum: - - 0 - - 1 - - 2 - - 3 - description: |- - * `0` - low - * `1` - medium - * `2` - high - * `3` - very_high - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - - in: query - name: title - schema: - type: string - - in: query - name: title__icontains - schema: - type: string - - in: query - name: title__iexact - schema: - type: string - - in: query - name: title__startswith - schema: - type: string - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedTrackList' - description: '' - /api/v2/tracks/{id}/: - get: - operationId: get_track_2 - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Track' - description: '' - delete: - operationId: delete_track_2 - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/tracks/{id}/fetches/: - get: - operationId: get_track_fetches_2 - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: string - - in: query - name: channel - schema: - type: string - - in: query - name: format - schema: - type: string - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -album__release_date - - -album__title - - -artist_credit__artist__modification_date - - -artist_credit__artist__name - - -creation_date - - -disc_number - - -position - - -random - - -related - - -size - - -title - - album__release_date - - album__title - - artist_credit__artist__modification_date - - artist_credit__artist__name - - creation_date - - disc_number - - position - - random - - related - - size - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `title` - Title - * `-title` - Title (descending) - * `album__title` - Album title - * `-album__title` - Album title (descending) - * `album__release_date` - Album release date - * `-album__release_date` - Album release date (descending) - * `size` - Size - * `-size` - Size (descending) - * `position` - Position - * `-position` - Position (descending) - * `disc_number` - Disc number - * `-disc_number` - Disc number (descending) - * `artist_credit__artist__name` - Artist credit artist name - * `-artist_credit__artist__name` - Artist credit artist name (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: quality - schema: - type: integer - enum: - - 0 - - 1 - - 2 - - 3 - description: |- - * `0` - low - * `1` - medium - * `2` - high - * `3` - very_high - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - - in: query - name: title - schema: - type: string - - in: query - name: title__icontains - schema: - type: string - - in: query - name: title__iexact - schema: - type: string - - in: query - name: title__startswith - schema: - type: string - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedFetchList' - description: '' - post: - operationId: create_track_fetch_2 - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - tracks - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TrackRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/TrackRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/TrackRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/TrackRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Fetch' - description: '' - /api/v2/tracks/{id}/libraries/: - get: - operationId: get_track_libraries_2 - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: string - - in: query - name: channel - schema: - type: string - - in: query - name: format - schema: - type: string - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -album__release_date - - -album__title - - -artist_credit__artist__modification_date - - -artist_credit__artist__name - - -creation_date - - -disc_number - - -position - - -random - - -related - - -size - - -title - - album__release_date - - album__title - - artist_credit__artist__modification_date - - artist_credit__artist__name - - creation_date - - disc_number - - position - - random - - related - - size - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `title` - Title - * `-title` - Title (descending) - * `album__title` - Album title - * `-album__title` - Album title (descending) - * `album__release_date` - Album release date - * `-album__release_date` - Album release date (descending) - * `size` - Size - * `-size` - Size (descending) - * `position` - Position - * `-position` - Position (descending) - * `disc_number` - Disc number - * `-disc_number` - Disc number (descending) - * `artist_credit__artist__name` - Artist credit artist name - * `-artist_credit__artist__name` - Artist credit artist name (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: quality - schema: - type: integer - enum: - - 0 - - 1 - - 2 - - 3 - description: |- - * `0` - low - * `1` - medium - * `2` - high - * `3` - very_high - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - - in: query - name: title - schema: - type: string - - in: query - name: title__icontains - schema: - type: string - - in: query - name: title__iexact - schema: - type: string - - in: query - name: title__startswith - schema: - type: string - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedLibraryList' - description: '' - /api/v2/tracks/{id}/mutations/: - get: - operationId: get_track_mutations_2 - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: query - name: album - schema: - type: integer - - in: query - name: artist - schema: - type: string - - in: query - name: channel - schema: - type: string - - in: query - name: format - schema: - type: string - - in: query - name: has_mbid - schema: - type: boolean - - in: query - name: hidden - schema: - type: boolean - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - - in: query - name: license - schema: - type: string - - in: query - name: mbid - schema: - type: string - format: uuid - - in: query - name: ordering - schema: - type: array - items: - type: string - enum: - - -album__release_date - - -album__title - - -artist_credit__artist__modification_date - - -artist_credit__artist__name - - -creation_date - - -disc_number - - -position - - -random - - -related - - -size - - -title - - album__release_date - - album__title - - artist_credit__artist__modification_date - - artist_credit__artist__name - - creation_date - - disc_number - - position - - random - - related - - size - - title - description: |- - Ordering - - * `creation_date` - Creation date - * `-creation_date` - Creation date (descending) - * `title` - Title - * `-title` - Title (descending) - * `album__title` - Album title - * `-album__title` - Album title (descending) - * `album__release_date` - Album release date - * `-album__release_date` - Album release date (descending) - * `size` - Size - * `-size` - Size (descending) - * `position` - Position - * `-position` - Position (descending) - * `disc_number` - Disc number - * `-disc_number` - Disc number (descending) - * `artist_credit__artist__name` - Artist credit artist name - * `-artist_credit__artist__name` - Artist credit artist name (descending) - * `artist_credit__artist__modification_date` - Artist credit artist modification date - * `-artist_credit__artist__modification_date` - Artist credit artist modification date (descending) - * `random` - Random - * `-random` - Random (descending) - * `related` - Related - * `-related` - Related (descending) - explode: false - style: form - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: quality - schema: - type: integer - enum: - - 0 - - 1 - - 2 - - 3 - description: |- - * `0` - low - * `1` - medium - * `2` - high - * `3` - very_high - - in: query - name: related - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: tag - schema: - type: array - items: - type: string - explode: true - style: form - - in: query - name: title - schema: - type: string - - in: query - name: title__icontains - schema: - type: string - - in: query - name: title__iexact - schema: - type: string - - in: query - name: title__startswith - schema: - type: string - tags: - - tracks - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedAPIMutationList' - description: '' - post: - operationId: create_track_mutation_2 - description: A simple ViewSet for viewing and editing accounts. - parameters: - - in: path - name: id - schema: - type: integer - description: A unique integer value identifying this track. - required: true - tags: - - tracks - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TrackRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/TrackRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/TrackRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/TrackRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIMutation' - description: '' - /api/v2/uploads/: - get: - operationId: get_uploads_2 - parameters: - - in: query - name: album_artist - schema: - type: string - format: uuid - - in: query - name: channel - schema: - type: string - - in: query - name: import_reference - schema: - type: string - - in: query - name: import_status - schema: - type: array - items: - type: string - enum: - - draft - - errored - - finished - - pending - - skipped - description: |- - * `draft` - Draft - * `pending` - Pending - * `finished` - Finished - * `errored` - Errored - * `skipped` - Skipped - explode: true - style: form - - in: query - name: include_channels - schema: - type: boolean - - in: query - name: library - schema: - type: string - format: uuid - - in: query - name: mimetype - schema: - type: string - - name: ordering - required: false - in: query - description: Which field to use when ordering the results. - schema: - type: string - - name: page - required: false - in: query - description: A page number within the paginated result set. - schema: - type: integer - - name: page_size - required: false - in: query - description: Number of results to return per page. - schema: - type: integer - - in: query - name: playable - schema: - type: boolean - - in: query - name: q - schema: - type: string - - in: query - name: scope - schema: - type: string - - in: query - name: track - schema: - type: string - format: uuid - - in: query - name: track_artist - schema: - type: string - format: uuid - tags: - - uploads - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedUploadForOwnerList' - description: '' - post: - operationId: create_upload_2 - tags: - - uploads - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - /api/v2/uploads/{uuid}/: - get: - operationId: get_upload_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - put: - operationId: update_upload_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - patch: - operationId: partial_update_upload_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedUploadForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedUploadForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedUploadForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedUploadForOwnerRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - delete: - operationId: delete_upload_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/uploads/{uuid}/audio-file-metadata/: - get: - operationId: get_upload_metadata_2 - parameters: - - in: path - name: uuid - schema: - type: string - format: uuid - required: true - tags: - - uploads - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TrackMetadata' - description: '' - /api/v2/uploads/action/: - post: - operationId: create_upload_action_2 - description: |- - str(object='') -> str - str(bytes_or_buffer[, encoding[, errors]]) -> str - - Create a new string object from the given object. If encoding or - errors is specified, then the object must expose a data buffer - that will be decoded using the given encoding and error handler. - Otherwise, returns the result of object.__str__() (if defined) - or repr(object). - encoding defaults to 'utf-8'. - errors defaults to 'strict'. - tags: - - uploads - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UploadForOwnerRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - /api/v2/uploads/bulk_update/: - patch: - operationId: partial_update_upload_bulk_update_2 - description: Used to move an upload from one library to another. Receive a upload - uuid and a privacy_level - tags: - - uploads - requestBody: - content: - application/json: - schema: - type: array - items: - $ref: '#/components/schemas/UploadBulkUpdateRequest' - application/x-www-form-urlencoded: - schema: - type: array - items: - $ref: '#/components/schemas/UploadBulkUpdateRequest' - multipart/form-data: - schema: - type: array - items: - $ref: '#/components/schemas/UploadBulkUpdateRequest' - application/activity+json: - schema: - type: array - items: - $ref: '#/components/schemas/UploadBulkUpdateRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UploadForOwner' - description: '' - /api/v2/users/{username}/: - put: - operationId: update_user_3 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - patch: - operationId: partial_update_user_3 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - /api/v2/users/{username}/subsonic-token/: - get: - operationId: get_user_subsonic_token_3 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - post: - operationId: create_user_subsonic_token_3 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - delete: - operationId: delete_user_subsonic_token_3 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/users/change-email/: - post: - operationId: change_email_2 - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - '403': - description: No response body - /api/v2/users/me/: - get: - operationId: get_authenticated_user_2 - description: Return information about the current user or delete it - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - delete: - operationId: delete_authenticated_user_2 - description: Return information about the current user or delete it - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/users/settings/: - post: - operationId: update_settings_2 - description: Return information about the current user or delete it - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - /api/v2/users/users/{username}/: - put: - operationId: update_user_2 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - patch: - operationId: partial_update_user_2 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/PatchedUserWriteRequest' - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - /api/v2/users/users/{username}/subsonic-token/: - get: - operationId: get_user_subsonic_token_2 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - post: - operationId: create_user_subsonic_token_2 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - delete: - operationId: delete_user_subsonic_token_2 - parameters: - - in: path - name: username - schema: - type: string - pattern: ^[a-zA-Z0-9-_.]+$ - required: true - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/users/users/change-email/: - post: - operationId: change_email_3 - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - description: No response body - '403': - description: No response body - /api/v2/users/users/me/: - get: - operationId: get_authenticated_user_3 - description: Return information about the current user or delete it - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' - delete: - operationId: delete_authenticated_user_3 - description: Return information about the current user or delete it - tags: - - users - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '204': - description: No response body - /api/v2/users/users/settings/: - post: - operationId: update_settings_3 - description: Return information about the current user or delete it - tags: - - users - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/UserWriteRequest' - multipart/form-data: - schema: - $ref: '#/components/schemas/UserWriteRequest' - application/activity+json: - schema: - $ref: '#/components/schemas/UserWriteRequest' - required: true - security: - - oauth2: [] - - ApplicationToken: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserWrite' - description: '' -components: - schemas: - APIActor: - type: object - properties: - fid: - type: string - format: uri - maxLength: 500 - url: - type: string - format: uri - nullable: true - maxLength: 500 - creation_date: - type: string - format: date-time - summary: - type: string - nullable: true - maxLength: 500 - preferred_username: - type: string - nullable: true - maxLength: 200 - name: - type: string - nullable: true - maxLength: 200 - last_fetch_date: - type: string - format: date-time - domain: - type: string - type: - $ref: '#/components/schemas/FederationChoiceEnum' - manually_approves_followers: - type: boolean - nullable: true - full_username: - type: string - readOnly: true - is_local: - type: boolean - readOnly: true - required: - - domain - - fid - - full_username - - is_local - - preferred_username - APIActorRequest: - type: object - properties: - fid: - type: string - format: uri - minLength: 1 - maxLength: 500 - url: - type: string - format: uri - nullable: true - maxLength: 500 - creation_date: - type: string - format: date-time - summary: - type: string - nullable: true - maxLength: 500 - preferred_username: - type: string - nullable: true - maxLength: 200 - name: - type: string - nullable: true - maxLength: 200 - last_fetch_date: - type: string - format: date-time - domain: - type: string - minLength: 1 - type: - $ref: '#/components/schemas/FederationChoiceEnum' - manually_approves_followers: - type: boolean - nullable: true - required: - - domain - - fid - - preferred_username - APIMutation: - type: object - properties: - fid: - type: string - format: uri - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - type: - type: string - maxLength: 100 - creation_date: - type: string - format: date-time - readOnly: true - applied_date: - type: string - format: date-time - nullable: true - is_approved: - type: boolean - nullable: true - is_applied: - type: boolean - readOnly: true - nullable: true - created_by: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - approved_by: - type: integer - readOnly: true - nullable: true - summary: - type: string - nullable: true - maxLength: 2000 - payload: {} - previous_state: - readOnly: true - nullable: true - target: - type: object - additionalProperties: {} - readOnly: true - required: - - approved_by - - created_by - - creation_date - - fid - - is_applied - - payload - - previous_state - - target - - type - - uuid - APIMutationRequest: - type: object - properties: - type: - type: string - minLength: 1 - maxLength: 100 - applied_date: - type: string - format: date-time - nullable: true - is_approved: - type: boolean - nullable: true - summary: - type: string - nullable: true - maxLength: 2000 - payload: {} - required: - - payload - - type - Activity: - type: object - properties: - uuid: - type: string - format: uuid - fid: - type: string - format: uri - nullable: true - maxLength: 500 - actor: - $ref: '#/components/schemas/APIActor' - payload: {} - object: - type: object - additionalProperties: {} - readOnly: true - nullable: true - target: - type: object - additionalProperties: {} - readOnly: true - nullable: true - related_object: - type: object - additionalProperties: {} - readOnly: true - creation_date: - type: string - format: date-time - type: - type: string - nullable: true - maxLength: 100 - required: - - actor - - object - - related_object - - target - ActivityRequest: - type: object - properties: - uuid: - type: string - format: uuid - fid: - type: string - format: uri - nullable: true - maxLength: 500 - actor: - $ref: '#/components/schemas/APIActorRequest' - payload: {} - creation_date: - type: string - format: date-time - type: - type: string - nullable: true - minLength: 1 - maxLength: 100 - required: - - actor - Album: - type: object - properties: - artist_credit: - type: array - items: - $ref: '#/components/schemas/ArtistCredit' - cover: - allOf: - - $ref: '#/components/schemas/CoverField' - nullable: true - is_playable: - type: boolean - readOnly: true - tags: - type: array - items: - type: string - readOnly: true - tracks_count: - type: integer - readOnly: true - attributed_to: - $ref: '#/components/schemas/APIActor' - id: - type: integer - fid: - type: string - format: uri - mbid: - type: string - format: uuid - title: - type: string - release_date: - type: string - format: date - creation_date: - type: string - format: date-time - is_local: - type: boolean - duration: - type: integer - readOnly: true - tracks: - type: array - items: - $ref: '#/components/schemas/Track' - nullable: true - description: - allOf: - - $ref: '#/components/schemas/Content' - nullable: true - required: - - artist_credit - - attributed_to - - cover - - creation_date - - duration - - fid - - id - - is_local - - is_playable - - mbid - - release_date - - tags - - title - - tracks - - tracks_count - AlbumCreate: - type: object - properties: - title: - type: string - maxLength: 255 - release_date: - type: string - format: date - nullable: true - tags: - type: array - items: - type: string - minItems: 0 - description: - allOf: - - $ref: '#/components/schemas/Content' - nullable: true - artist_credit: - type: array - items: - type: string - required: - - artist_credit - - title - AlbumCreateRequest: - type: object - properties: - cover: - type: string - writeOnly: true - nullable: true - title: - type: string - minLength: 1 - maxLength: 255 - release_date: - type: string - format: date - nullable: true - tags: - type: array - items: - type: string - minLength: 1 - minItems: 0 - description: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - artist_credit: - type: array - items: - type: string - required: - - artist_credit - - title - AlbumRequest: - type: object - properties: - artist_credit: - type: array - items: - $ref: '#/components/schemas/ArtistCreditRequest' - cover: - allOf: - - $ref: '#/components/schemas/CoverFieldRequest' - nullable: true - attributed_to: - $ref: '#/components/schemas/APIActorRequest' - id: - type: integer - fid: - type: string - format: uri - minLength: 1 - mbid: - type: string - format: uuid - title: - type: string - minLength: 1 - release_date: - type: string - format: date - creation_date: - type: string - format: date-time - is_local: - type: boolean - tracks: - type: array - items: - $ref: '#/components/schemas/TrackRequest' - nullable: true - description: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - required: - - artist_credit - - attributed_to - - cover - - creation_date - - fid - - id - - is_local - - mbid - - release_date - - title - - tracks - AllFavorite: - type: object - properties: - results: - type: array - items: - $ref: '#/components/schemas/SimpleFavorite' - count: - type: integer - readOnly: true - required: - - count - - results - AllSubscriptions: - type: object - properties: - results: - type: array - items: - $ref: '#/components/schemas/InlineSubscription' - count: - type: integer - readOnly: true - required: - - count - - results - AllowListStat: - type: object - properties: - enabled: - type: boolean - domains: - type: array - items: - type: string - required: - - domains - - enabled - Application: - type: object - properties: - client_id: - type: string - maxLength: 100 - name: - type: string - maxLength: 255 - scopes: - type: string - created: - type: string - format: date-time - readOnly: true - updated: - type: string - format: date-time - readOnly: true - required: - - created - - scopes - - updated - ApplicationRequest: - type: object - properties: - client_id: - type: string - minLength: 1 - maxLength: 100 - name: - type: string - maxLength: 255 - scopes: - type: string - minLength: 1 - required: - - scopes - Artist: - type: object - properties: - id: - type: integer - readOnly: true - fid: - type: string - format: uri - nullable: true - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - name: - type: string - creation_date: - type: string - format: date-time - modification_date: - type: string - format: date-time - is_local: - type: boolean - readOnly: true - content_category: - $ref: '#/components/schemas/ContentCategoryEnum' - description: - allOf: - - $ref: '#/components/schemas/Content' - nullable: true - cover: - allOf: - - $ref: '#/components/schemas/CoverField' - nullable: true - channel: - type: string - format: uuid - nullable: true - attributed_to: - type: integer - nullable: true - tags: - type: array - items: - type: string - readOnly: true - required: - - id - - is_local - - name - - tags - ArtistCredit: - type: object - properties: - artist: - $ref: '#/components/schemas/Artist' - credit: - type: string - nullable: true - maxLength: 500 - joinphrase: - type: string - nullable: true - maxLength: 250 - index: - type: integer - maximum: 2147483647 - minimum: -2147483648 - nullable: true - required: - - artist - ArtistCreditRequest: - type: object - properties: - artist: - $ref: '#/components/schemas/ArtistRequest' - credit: - type: string - nullable: true - maxLength: 500 - joinphrase: - type: string - nullable: true - maxLength: 250 - index: - type: integer - maximum: 2147483647 - minimum: -2147483648 - nullable: true - required: - - artist - ArtistRequest: - type: object - properties: - fid: - type: string - format: uri - nullable: true - minLength: 1 - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - name: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - modification_date: - type: string - format: date-time - content_category: - $ref: '#/components/schemas/ContentCategoryEnum' - description: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - cover: - allOf: - - $ref: '#/components/schemas/CoverFieldRequest' - nullable: true - channel: - type: string - format: uuid - nullable: true - attributed_to: - type: integer - nullable: true - required: - - name - ArtistWithAlbums: - type: object - properties: - albums: - type: string - readOnly: true - tags: - type: array - items: - type: string - readOnly: true - attributed_to: - allOf: - - $ref: '#/components/schemas/APIActor' - nullable: true - channel: - allOf: - - $ref: '#/components/schemas/ArtistWithAlbumsInlineChannel' - nullable: true - tracks_count: - type: integer - readOnly: true - id: - type: integer - fid: - type: string - format: uri - mbid: - type: string - format: uuid - name: - type: string - content_category: - type: string - creation_date: - type: string - format: date-time - is_local: - type: boolean - cover: - allOf: - - $ref: '#/components/schemas/CoverField' - nullable: true - required: - - albums - - attributed_to - - channel - - content_category - - cover - - creation_date - - fid - - id - - is_local - - mbid - - name - - tags - - tracks_count - ArtistWithAlbumsInlineChannel: - type: object - properties: - uuid: - type: string - actor: - $ref: '#/components/schemas/InlineActor' - required: - - actor - - uuid - ArtistWithAlbumsInlineChannelRequest: - type: object - properties: - uuid: - type: string - minLength: 1 - actor: - $ref: '#/components/schemas/InlineActorRequest' - required: - - actor - - uuid - ArtistWithAlbumsRequest: - type: object - properties: - attributed_to: - allOf: - - $ref: '#/components/schemas/APIActorRequest' - nullable: true - channel: - allOf: - - $ref: '#/components/schemas/ArtistWithAlbumsInlineChannelRequest' - nullable: true - id: - type: integer - fid: - type: string - format: uri - minLength: 1 - mbid: - type: string - format: uuid - name: - type: string - minLength: 1 - content_category: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - is_local: - type: boolean - cover: - allOf: - - $ref: '#/components/schemas/CoverFieldRequest' - nullable: true - required: - - attributed_to - - channel - - content_category - - cover - - creation_date - - fid - - id - - is_local - - mbid - - name - Attachment: - type: object - properties: - uuid: - type: string - format: uuid - readOnly: true - size: - type: integer - readOnly: true - mimetype: - type: string - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - urls: - type: object - properties: - original: - type: string - small_square_crop: - type: string - medium_square_crop: - type: string - large_square_crop: - type: string - readOnly: true - required: - - creation_date - - mimetype - - size - - urls - - uuid - AttachmentRequest: - type: object - properties: - file: - type: string - format: binary - writeOnly: true - required: - - file - Channel: - type: object - properties: - uuid: - type: string - format: uuid - artist: - $ref: '#/components/schemas/SimpleChannelArtist' - attributed_to: - $ref: '#/components/schemas/APIActor' - actor: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - creation_date: - type: string - format: date-time - metadata: {} - rss_url: - type: string - url: - type: string - format: uri - readOnly: true - downloads_count: - type: integer - readOnly: true - subscriptions_count: - type: integer - readOnly: true - required: - - actor - - artist - - attributed_to - - downloads_count - - rss_url - - subscriptions_count - - url - ChannelCreate: - type: object - properties: - name: - type: string - maxLength: 200 - username: - type: string - pattern: ^[\w]+$ - maxLength: 200 - description: - allOf: - - $ref: '#/components/schemas/Content' - nullable: true - tags: - type: array - items: - type: string - minItems: 0 - content_category: - $ref: '#/components/schemas/ContentCategoryEnum' - metadata: - type: object - additionalProperties: {} - required: - - content_category - - description - - name - - tags - - username - ChannelCreateRequest: - type: object - properties: - cover: - type: string - writeOnly: true - nullable: true - name: - type: string - minLength: 1 - maxLength: 200 - username: - type: string - minLength: 1 - pattern: ^[\w]+$ - maxLength: 200 - description: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - tags: - type: array - items: - type: string - minLength: 1 - minItems: 0 - content_category: - $ref: '#/components/schemas/ContentCategoryEnum' - metadata: - type: object - additionalProperties: {} - required: - - content_category - - description - - name - - tags - - username - ChannelRequest: - type: object - properties: - uuid: - type: string - format: uuid - artist: - $ref: '#/components/schemas/SimpleChannelArtistRequest' - attributed_to: - $ref: '#/components/schemas/APIActorRequest' - creation_date: - type: string - format: date-time - metadata: {} - rss_url: - type: string - minLength: 1 - required: - - artist - - attributed_to - - rss_url - ChannelUpdate: - type: object - properties: - name: - type: string - maxLength: 200 - description: - allOf: - - $ref: '#/components/schemas/Content' - nullable: true - tags: - type: array - items: - type: string - minItems: 0 - content_category: - $ref: '#/components/schemas/ContentCategoryEnum' - metadata: - type: object - additionalProperties: {} - required: - - content_category - - description - - name - - tags - ChannelUpdateRequest: - type: object - properties: - cover: - type: string - writeOnly: true - nullable: true - name: - type: string - minLength: 1 - maxLength: 200 - description: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - tags: - type: array - items: - type: string - minLength: 1 - minItems: 0 - content_category: - $ref: '#/components/schemas/ContentCategoryEnum' - metadata: - type: object - additionalProperties: {} - required: - - content_category - - description - - name - - tags - Content: - type: object - properties: - text: - type: string - nullable: true - maxLength: 5000 - content_type: - $ref: '#/components/schemas/ContentTypeEnum' - html: - type: string - readOnly: true - required: - - content_type - - html - - text - ContentCategoryEnum: - enum: - - music - - podcast - - other - type: string - description: |- - * `music` - music - * `podcast` - podcast - * `other` - other - ContentRequest: - type: object - properties: - text: - type: string - nullable: true - minLength: 1 - maxLength: 5000 - content_type: - $ref: '#/components/schemas/ContentTypeEnum' - required: - - content_type - - text - ContentTypeEnum: - enum: - - text/html - - text/markdown - - text/plain - type: string - description: |- - * `text/html` - text/html - * `text/markdown` - text/markdown - * `text/plain` - text/plain - CoverField: - type: object - properties: - uuid: - type: string - format: uuid - readOnly: true - size: - type: integer - readOnly: true - mimetype: - type: string - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - urls: - type: object - properties: - original: - type: string - small_square_crop: - type: string - medium_square_crop: - type: string - large_square_crop: - type: string - readOnly: true - required: - - creation_date - - mimetype - - size - - urls - - uuid - CoverFieldRequest: - type: object - properties: - file: - type: string - format: binary - writeOnly: true - required: - - file - CreateApplication: - type: object - properties: - client_id: - type: string - readOnly: true - name: - type: string - maxLength: 255 - scopes: - type: string - default: read - client_secret: - type: string - description: Hashed on Save. Copy it now if this is a new secret. - maxLength: 255 - created: - type: string - format: date-time - readOnly: true - updated: - type: string - format: date-time - readOnly: true - redirect_uris: - type: string - description: Allowed URIs list, space separated - required: - - client_id - - created - - name - - updated - CreateApplicationRequest: - type: object - properties: - name: - type: string - minLength: 1 - maxLength: 255 - scopes: - type: string - minLength: 1 - default: read - client_secret: - type: string - description: Hashed on Save. Copy it now if this is a new secret. - maxLength: 255 - redirect_uris: - type: string - description: Allowed URIs list, space separated - required: - - name - Domain: - type: object - properties: - name: - type: string - required: - - name - Endpoints: - type: object - properties: - knownNodes: - type: string - format: uri - channels: - type: string - format: uri - libraries: - type: string - format: uri - ErrorDetail: - type: object - properties: - detail: - type: string - required: - - detail - FederationChoiceEnum: - enum: - - Person - - Tombstone - - Application - - Group - - Organization - - Service - type: string - description: |- - * `Person` - Person - * `Tombstone` - Tombstone - * `Application` - Application - * `Group` - Group - * `Organization` - Organization - * `Service` - Service - Fetch: - type: object - properties: - id: - type: integer - readOnly: true - url: - type: string - format: uri - readOnly: true - actor: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - status: - allOf: - - $ref: '#/components/schemas/FetchStatusEnum' - readOnly: true - detail: - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - fetch_date: - type: string - format: date-time - readOnly: true - nullable: true - required: - - actor - - creation_date - - detail - - fetch_date - - id - - status - - url - FetchRequest: - type: object - properties: - object: - type: string - writeOnly: true - minLength: 1 - force: - type: boolean - writeOnly: true - default: false - required: - - object - FetchStatusEnum: - enum: - - pending - - errored - - finished - - skipped - type: string - description: |- - * `pending` - Pending - * `errored` - Errored - * `finished` - Finished - * `skipped` - Skipped - Filter: - type: object - properties: - type: - type: string - label: - type: string - help_text: - type: string - fields: - type: string - readOnly: true - required: - - fields - - help_text - - label - - type - Follow: - type: object - properties: - creation_date: - type: string - format: date-time - readOnly: true - actor: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - target: - type: string - approved: - type: boolean - readOnly: true - nullable: true - required: - - actor - - approved - - creation_date - - target - - uuid - FollowRequest: - type: object - properties: - target: - type: string - required: - - target - FormatEnum: - enum: - - json - type: string - description: '* `json` - json' - FullActor: - type: object - properties: - fid: - type: string - format: uri - url: - type: string - format: uri - domain: - type: string - creation_date: - type: string - format: date-time - last_fetch_date: - type: string - format: date-time - name: - type: string - preferred_username: - type: string - full_username: - type: string - type: - type: string - is_local: - type: boolean - is_channel: - type: boolean - readOnly: true - manually_approves_followers: - type: boolean - user: - $ref: '#/components/schemas/UserBasic' - summary: - $ref: '#/components/schemas/Content' - icon: - $ref: '#/components/schemas/Attachment' - required: - - creation_date - - domain - - fid - - full_username - - icon - - is_channel - - is_local - - last_fetch_date - - manually_approves_followers - - name - - preferred_username - - summary - - type - - url - - user - GlobalPreference: - type: object - properties: - section: - type: string - readOnly: true - name: - type: string - readOnly: true - identifier: - type: string - readOnly: true - default: - type: string - readOnly: true - value: - type: string - verbose_name: - type: string - readOnly: true - help_text: - type: string - readOnly: true - additional_data: - type: string - readOnly: true - field: - type: string - readOnly: true - required: - - additional_data - - default - - field - - help_text - - identifier - - name - - section - - value - - verbose_name - GlobalPreferenceRequest: - type: object - properties: - value: - type: string - required: - - value - Ident: - type: object - properties: - type: - type: string - id: - type: string - required: - - id - - type - ImportMetadata: - type: object - properties: - title: - type: string - maxLength: 500 - description: - type: string - nullable: true - maxLength: 5000 - mbid: - type: string - format: uuid - nullable: true - copyright: - type: string - nullable: true - maxLength: 500 - position: - type: integer - minimum: 1 - nullable: true - tags: - type: array - items: - type: string - minItems: 0 - license: - type: string - nullable: true - required: - - title - ImportMetadataRequest: - type: object - properties: - title: - type: string - minLength: 1 - maxLength: 500 - description: - type: string - nullable: true - minLength: 1 - maxLength: 5000 - mbid: - type: string - format: uuid - nullable: true - copyright: - type: string - nullable: true - minLength: 1 - maxLength: 500 - position: - type: integer - minimum: 1 - nullable: true - tags: - type: array - items: - type: string - minLength: 1 - minItems: 0 - license: - type: string - nullable: true - cover: - type: string - writeOnly: true - nullable: true - album: - type: string - writeOnly: true - nullable: true - required: - - title - ImportStatusEnum: - enum: - - draft - - pending - - finished - - errored - - skipped - type: string - description: |- - * `draft` - Draft - * `pending` - Pending - * `finished` - Finished - * `errored` - Errored - * `skipped` - Skipped - InboxItem: - type: object - properties: - id: - type: integer - readOnly: true - type: - allOf: - - $ref: '#/components/schemas/InboxItemTypeEnum' - readOnly: true - activity: - $ref: '#/components/schemas/Activity' - is_read: - type: boolean - required: - - activity - - id - - type - InboxItemRequest: - type: object - properties: - activity: - $ref: '#/components/schemas/ActivityRequest' - is_read: - type: boolean - required: - - activity - InboxItemTypeEnum: - enum: - - to - - cc - type: string - description: |- - * `to` - to - * `cc` - cc - InlineActor: - type: object - properties: - full_username: - type: string - preferred_username: - type: string - domain: - type: string - required: - - domain - - full_username - - preferred_username - InlineActorRequest: - type: object - properties: - full_username: - type: string - minLength: 1 - preferred_username: - type: string - minLength: 1 - domain: - type: string - minLength: 1 - required: - - domain - - full_username - - preferred_username - InlineSubscription: - type: object - properties: - uuid: - type: string - format: uuid - channel: - type: string - format: uuid - required: - - channel - - uuid - LanguageItem: - type: object - properties: - value: - type: string - label: - type: string - required: - - label - - value - Library: - type: object - properties: - fid: - type: string - format: uri - maxLength: 500 - uuid: - type: string - format: uuid - actor: - $ref: '#/components/schemas/APIActor' - name: - type: string - maxLength: 100 - creation_date: - type: string - format: date-time - uploads_count: - type: integer - readOnly: true - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - follow: - allOf: - - $ref: '#/components/schemas/NestedLibraryFollow' - nullable: true - latest_scan: - allOf: - - $ref: '#/components/schemas/LibraryScan' - nullable: true - required: - - actor - - fid - - name - - uploads_count - LibraryFollow: - type: object - properties: - creation_date: - type: string - format: date-time - readOnly: true - actor: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - target: - type: string - approved: - type: boolean - readOnly: true - nullable: true - required: - - actor - - approved - - creation_date - - target - - uuid - LibraryFollowRequest: - type: object - properties: - target: - type: string - required: - - target - LibraryForOwner: - type: object - properties: - uuid: - type: string - format: uuid - readOnly: true - fid: - type: string - format: uri - readOnly: true - name: - type: string - maxLength: 100 - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - uploads_count: - type: integer - readOnly: true - size: - type: integer - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - actor: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - required: - - actor - - creation_date - - fid - - name - - size - - uploads_count - - uuid - LibraryForOwnerRequest: - type: object - properties: - name: - type: string - minLength: 1 - maxLength: 100 - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - required: - - name - LibraryPrivacyLevelEnum: - enum: - - me - - instance - - everyone - type: string - description: |- - * `me` - Only me - * `instance` - Everyone on my instance, and my followers - * `everyone` - Everyone, including people on other instances - LibraryRequest: - type: object - properties: - fid: - type: string - format: uri - minLength: 1 - maxLength: 500 - uuid: - type: string - format: uuid - actor: - $ref: '#/components/schemas/APIActorRequest' - name: - type: string - minLength: 1 - maxLength: 100 - creation_date: - type: string - format: date-time - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - follow: - allOf: - - $ref: '#/components/schemas/NestedLibraryFollowRequest' - nullable: true - latest_scan: - allOf: - - $ref: '#/components/schemas/LibraryScanRequest' - nullable: true - required: - - actor - - fid - - name - LibraryScan: - type: object - properties: - total_files: - type: integer - maximum: 2147483647 - minimum: 0 - processed_files: - type: integer - maximum: 2147483647 - minimum: 0 - errored_files: - type: integer - maximum: 2147483647 - minimum: 0 - status: - type: string - maxLength: 25 - creation_date: - type: string - format: date-time - modification_date: - type: string - format: date-time - nullable: true - LibraryScanRequest: - type: object - properties: - total_files: - type: integer - maximum: 2147483647 - minimum: 0 - processed_files: - type: integer - maximum: 2147483647 - minimum: 0 - errored_files: - type: integer - maximum: 2147483647 - minimum: 0 - status: - type: string - minLength: 1 - maxLength: 25 - creation_date: - type: string - format: date-time - modification_date: - type: string - format: date-time - nullable: true - License: - type: object - properties: - id: - type: string - readOnly: true - url: - type: string - format: uri - code: - type: string - name: - type: string - redistribute: - type: boolean - derivative: - type: boolean - commercial: - type: boolean - attribution: - type: boolean - copyleft: - type: boolean - required: - - attribution - - code - - commercial - - copyleft - - derivative - - id - - name - - redistribute - - url - Listening: - type: object - properties: - id: - type: integer - readOnly: true - actor: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - track: - allOf: - - $ref: '#/components/schemas/Track' - readOnly: true - creation_date: - type: string - format: date-time - nullable: true - required: - - actor - - id - - track - ListeningWrite: - type: object - properties: - id: - type: integer - readOnly: true - actor: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - track: - type: integer - creation_date: - type: string - format: date-time - nullable: true - required: - - actor - - id - - track - ListeningWriteRequest: - type: object - properties: - track: - type: integer - creation_date: - type: string - format: date-time - nullable: true - required: - - track - ManageActor: - type: object - properties: - id: - type: integer - readOnly: true - url: - type: string - format: uri - nullable: true - maxLength: 500 - fid: - type: string - format: uri - maxLength: 500 - preferred_username: - type: string - nullable: true - maxLength: 200 - full_username: - type: string - readOnly: true - domain: - type: string - name: - type: string - nullable: true - maxLength: 200 - summary: - type: string - nullable: true - maxLength: 500 - type: - $ref: '#/components/schemas/FederationChoiceEnum' - creation_date: - type: string - format: date-time - readOnly: true - last_fetch_date: - type: string - format: date-time - inbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - outbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - shared_inbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - manually_approves_followers: - type: boolean - nullable: true - is_local: - type: boolean - readOnly: true - uploads_count: - type: integer - readOnly: true - user: - allOf: - - $ref: '#/components/schemas/ManageUser' - nullable: true - instance_policy: - type: integer - readOnly: true - required: - - creation_date - - domain - - fid - - full_username - - id - - instance_policy - - is_local - - preferred_username - - uploads_count - - user - ManageActorRequest: - type: object - properties: - url: - type: string - format: uri - nullable: true - maxLength: 500 - fid: - type: string - format: uri - minLength: 1 - maxLength: 500 - preferred_username: - type: string - nullable: true - maxLength: 200 - domain: - type: string - minLength: 1 - name: - type: string - nullable: true - maxLength: 200 - summary: - type: string - nullable: true - maxLength: 500 - type: - $ref: '#/components/schemas/FederationChoiceEnum' - last_fetch_date: - type: string - format: date-time - inbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - outbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - shared_inbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - manually_approves_followers: - type: boolean - nullable: true - user: - allOf: - - $ref: '#/components/schemas/ManageUserRequest' - nullable: true - required: - - domain - - fid - - preferred_username - - user - ManageAlbum: - type: object - properties: - id: - type: integer - readOnly: true - fid: - type: string - format: uri - nullable: true - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - creation_date: - type: string - format: date-time - release_date: - type: string - format: date - nullable: true - cover: - $ref: '#/components/schemas/CoverField' - domain: - type: string - is_local: - type: boolean - readOnly: true - tracks_count: - type: integer - readOnly: true - artist_credit: - type: array - items: - $ref: '#/components/schemas/ManageNestedArtistCredit' - attributed_to: - $ref: '#/components/schemas/ManageBaseActor' - tags: - type: array - items: - type: string - readOnly: true - required: - - artist_credit - - attributed_to - - cover - - domain - - id - - is_local - - tags - - title - - tracks_count - ManageAlbumRequest: - type: object - properties: - fid: - type: string - format: uri - nullable: true - minLength: 1 - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - release_date: - type: string - format: date - nullable: true - cover: - $ref: '#/components/schemas/CoverFieldRequest' - domain: - type: string - minLength: 1 - artist_credit: - type: array - items: - $ref: '#/components/schemas/ManageNestedArtistCreditRequest' - attributed_to: - $ref: '#/components/schemas/ManageBaseActorRequest' - required: - - artist_credit - - attributed_to - - cover - - domain - - title - ManageArtist: - type: object - properties: - id: - type: integer - readOnly: true - fid: - type: string - format: uri - nullable: true - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - name: - type: string - creation_date: - type: string - format: date-time - domain: - type: string - is_local: - type: boolean - readOnly: true - tracks_count: - type: integer - readOnly: true - albums_count: - type: integer - readOnly: true - attributed_to: - $ref: '#/components/schemas/ManageBaseActor' - tags: - type: array - items: - type: string - readOnly: true - cover: - allOf: - - $ref: '#/components/schemas/CoverField' - nullable: true - channel: - type: string - readOnly: true - content_category: - $ref: '#/components/schemas/ContentCategoryEnum' - required: - - albums_count - - attributed_to - - channel - - cover - - domain - - id - - is_local - - name - - tags - - tracks_count - ManageArtistRequest: - type: object - properties: - fid: - type: string - format: uri - nullable: true - minLength: 1 - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - name: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - domain: - type: string - minLength: 1 - attributed_to: - $ref: '#/components/schemas/ManageBaseActorRequest' - cover: - allOf: - - $ref: '#/components/schemas/CoverFieldRequest' - nullable: true - content_category: - $ref: '#/components/schemas/ContentCategoryEnum' - required: - - attributed_to - - cover - - domain - - name - ManageBaseActor: - type: object - properties: - id: - type: integer - readOnly: true - url: - type: string - format: uri - nullable: true - maxLength: 500 - fid: - type: string - format: uri - maxLength: 500 - preferred_username: - type: string - nullable: true - maxLength: 200 - full_username: - type: string - readOnly: true - domain: - type: string - name: - type: string - nullable: true - maxLength: 200 - summary: - type: string - nullable: true - maxLength: 500 - type: - $ref: '#/components/schemas/FederationChoiceEnum' - creation_date: - type: string - format: date-time - readOnly: true - last_fetch_date: - type: string - format: date-time - inbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - outbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - shared_inbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - manually_approves_followers: - type: boolean - nullable: true - is_local: - type: boolean - readOnly: true - required: - - creation_date - - domain - - fid - - full_username - - id - - is_local - - preferred_username - ManageBaseActorRequest: - type: object - properties: - url: - type: string - format: uri - nullable: true - maxLength: 500 - fid: - type: string - format: uri - minLength: 1 - maxLength: 500 - preferred_username: - type: string - nullable: true - maxLength: 200 - domain: - type: string - minLength: 1 - name: - type: string - nullable: true - maxLength: 200 - summary: - type: string - nullable: true - maxLength: 500 - type: - $ref: '#/components/schemas/FederationChoiceEnum' - last_fetch_date: - type: string - format: date-time - inbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - outbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - shared_inbox_url: - type: string - format: uri - nullable: true - maxLength: 500 - manually_approves_followers: - type: boolean - nullable: true - required: - - domain - - fid - - preferred_username - ManageBaseNote: - type: object - properties: - id: - type: integer - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - summary: - type: string - maxLength: 50000 - author: - allOf: - - $ref: '#/components/schemas/ManageBaseActor' - readOnly: true - required: - - author - - creation_date - - id - - summary - - uuid - ManageBaseNoteRequest: - type: object - properties: - summary: - type: string - minLength: 1 - maxLength: 50000 - required: - - summary - ManageChannel: - type: object - properties: - id: - type: integer - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - artist: - $ref: '#/components/schemas/ManageArtist' - attributed_to: - $ref: '#/components/schemas/ManageBaseActor' - actor: - $ref: '#/components/schemas/ManageBaseActor' - rss_url: - type: string - format: uri - readOnly: true - nullable: true - metadata: - readOnly: true - required: - - actor - - artist - - attributed_to - - creation_date - - id - - metadata - - rss_url - - uuid - ManageDomain: - type: object - properties: - name: - type: string - format: uri - maxLength: 255 - creation_date: - type: string - format: date-time - readOnly: true - actors_count: - type: integer - readOnly: true - outbox_activities_count: - type: integer - readOnly: true - nodeinfo: - readOnly: true - nodeinfo_fetch_date: - type: string - format: date-time - readOnly: true - nullable: true - instance_policy: - type: integer - readOnly: true - allowed: - type: boolean - nullable: true - required: - - actors_count - - creation_date - - instance_policy - - name - - nodeinfo - - nodeinfo_fetch_date - - outbox_activities_count - ManageDomainRequest: - type: object - properties: - name: - type: string - minLength: 1 - format: uri - maxLength: 255 - allowed: - type: boolean - nullable: true - required: - - name - ManageDomainUpdate: - type: object - properties: - name: - type: string - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - actors_count: - type: integer - readOnly: true - outbox_activities_count: - type: integer - readOnly: true - nodeinfo: - readOnly: true - nodeinfo_fetch_date: - type: string - format: date-time - readOnly: true - nullable: true - instance_policy: - type: integer - readOnly: true - allowed: - type: boolean - nullable: true - required: - - actors_count - - creation_date - - instance_policy - - name - - nodeinfo - - nodeinfo_fetch_date - - outbox_activities_count - ManageDomainUpdateRequest: - type: object - properties: - allowed: - type: boolean - nullable: true - ManageInstancePolicy: - type: object - properties: - id: - type: integer - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - target: - $ref: '#/components/schemas/ManageTarget' - creation_date: - type: string - format: date-time - readOnly: true - actor: - type: string - format: email - readOnly: true - summary: - type: string - nullable: true - maxLength: 10000 - is_active: - type: boolean - block_all: - type: boolean - silence_activity: - type: boolean - silence_notifications: - type: boolean - reject_media: - type: boolean - required: - - actor - - creation_date - - id - - target - - uuid - ManageInstancePolicyRequest: - type: object - properties: - target: - $ref: '#/components/schemas/ManageTargetRequest' - summary: - type: string - nullable: true - maxLength: 10000 - is_active: - type: boolean - block_all: - type: boolean - silence_activity: - type: boolean - silence_notifications: - type: boolean - reject_media: - type: boolean - required: - - target - ManageInvitation: - type: object - properties: - id: - type: integer - readOnly: true - owner: - $ref: '#/components/schemas/ManageUserSimple' - invited_user: - $ref: '#/components/schemas/ManageUserSimple' - code: - type: string - nullable: true - expiration_date: - type: string - format: date-time - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - users: - type: array - items: - $ref: '#/components/schemas/ManageUserSimple' - required: - - creation_date - - expiration_date - - id - ManageInvitationRequest: - type: object - properties: - owner: - $ref: '#/components/schemas/ManageUserSimpleRequest' - invited_user: - $ref: '#/components/schemas/ManageUserSimpleRequest' - code: - type: string - nullable: true - minLength: 1 - users: - type: array - items: - $ref: '#/components/schemas/ManageUserSimpleRequest' - ManageLibrary: - type: object - properties: - id: - type: integer - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - fid: - type: string - format: uri - readOnly: true - url: - type: string - format: uri - readOnly: true - nullable: true - name: - type: string - maxLength: 100 - domain: - type: string - is_local: - type: boolean - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - uploads_count: - type: integer - readOnly: true - actor: - $ref: '#/components/schemas/ManageBaseActor' - required: - - actor - - creation_date - - domain - - fid - - id - - is_local - - name - - uploads_count - - url - - uuid - ManageLibraryRequest: - type: object - properties: - name: - type: string - minLength: 1 - maxLength: 100 - domain: - type: string - minLength: 1 - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - actor: - $ref: '#/components/schemas/ManageBaseActorRequest' - required: - - actor - - domain - - name - ManageNestedArtist: - type: object - properties: - id: - type: integer - readOnly: true - fid: - type: string - format: uri - nullable: true - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - name: - type: string - creation_date: - type: string - format: date-time - domain: - type: string - is_local: - type: boolean - readOnly: true - required: - - domain - - id - - is_local - - name - ManageNestedArtistCredit: - type: object - properties: - artist: - $ref: '#/components/schemas/ManageNestedArtist' - required: - - artist - ManageNestedArtistCreditRequest: - type: object - properties: - artist: - $ref: '#/components/schemas/ManageNestedArtistRequest' - required: - - artist - ManageNestedArtistRequest: - type: object - properties: - fid: - type: string - format: uri - nullable: true - minLength: 1 - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - name: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - domain: - type: string - minLength: 1 - required: - - domain - - name - ManageNestedLibrary: - type: object - properties: - id: - type: integer - readOnly: true - uuid: - type: string - format: uuid - fid: - type: string - format: uri - maxLength: 500 - url: - type: string - format: uri - nullable: true - maxLength: 500 - name: - type: string - maxLength: 100 - domain: - type: string - is_local: - type: boolean - readOnly: true - creation_date: - type: string - format: date-time - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - actor: - $ref: '#/components/schemas/ManageBaseActor' - required: - - actor - - domain - - fid - - id - - is_local - - name - ManageNestedLibraryRequest: - type: object - properties: - uuid: - type: string - format: uuid - fid: - type: string - format: uri - minLength: 1 - maxLength: 500 - url: - type: string - format: uri - nullable: true - maxLength: 500 - name: - type: string - minLength: 1 - maxLength: 100 - domain: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - actor: - $ref: '#/components/schemas/ManageBaseActorRequest' - required: - - actor - - domain - - fid - - name - ManageNestedTrack: - type: object - properties: - id: - type: integer - readOnly: true - fid: - type: string - format: uri - nullable: true - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - creation_date: - type: string - format: date-time - position: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - disc_number: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - domain: - type: string - is_local: - type: boolean - readOnly: true - copyright: - type: string - nullable: true - license: - type: string - nullable: true - required: - - domain - - id - - is_local - - title - ManageNestedTrackRequest: - type: object - properties: - fid: - type: string - format: uri - nullable: true - minLength: 1 - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - position: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - disc_number: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - domain: - type: string - minLength: 1 - copyright: - type: string - nullable: true - license: - type: string - minLength: 1 - nullable: true - required: - - domain - - title - ManageNote: - type: object - properties: - id: - type: integer - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - summary: - type: string - maxLength: 50000 - author: - allOf: - - $ref: '#/components/schemas/ManageBaseActor' - readOnly: true - target: {} - required: - - author - - creation_date - - id - - summary - - target - - uuid - ManageNoteRequest: - type: object - properties: - summary: - type: string - minLength: 1 - maxLength: 50000 - target: {} - required: - - summary - - target - ManageReport: - type: object - properties: - id: - type: integer - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - fid: - type: string - format: uri - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - handled_date: - type: string - format: date-time - readOnly: true - nullable: true - summary: - type: string - readOnly: true - nullable: true - type: - $ref: '#/components/schemas/ReportTypeEnum' - target: {} - target_state: - readOnly: true - nullable: true - is_handled: - type: boolean - assigned_to: - allOf: - - $ref: '#/components/schemas/ManageBaseActor' - nullable: true - target_owner: - $ref: '#/components/schemas/ManageBaseActor' - submitter: - $ref: '#/components/schemas/ManageBaseActor' - submitter_email: - type: string - format: email - readOnly: true - nullable: true - notes: - type: array - items: - $ref: '#/components/schemas/ManageBaseNote' - nullable: true - default: [] - required: - - creation_date - - fid - - handled_date - - id - - submitter_email - - summary - - target - - target_state - - type - - uuid - ManageReportRequest: - type: object - properties: - type: - $ref: '#/components/schemas/ReportTypeEnum' - target: {} - is_handled: - type: boolean - assigned_to: - allOf: - - $ref: '#/components/schemas/ManageBaseActorRequest' - nullable: true - target_owner: - $ref: '#/components/schemas/ManageBaseActorRequest' - submitter: - $ref: '#/components/schemas/ManageBaseActorRequest' - notes: - type: array - items: - $ref: '#/components/schemas/ManageBaseNoteRequest' - nullable: true - default: [] - required: - - target - - type - ManageTag: - type: object - properties: - id: - type: integer - readOnly: true - name: - type: string - maxLength: 100 - creation_date: - type: string - format: date-time - tracks_count: - type: integer - readOnly: true - albums_count: - type: integer - readOnly: true - artists_count: - type: integer - readOnly: true - required: - - albums_count - - artists_count - - id - - name - - tracks_count - ManageTagRequest: - type: object - properties: - name: - type: string - minLength: 1 - maxLength: 100 - creation_date: - type: string - format: date-time - required: - - name - ManageTarget: - type: object - properties: - type: - $ref: '#/components/schemas/ManageTargetTypeEnum' - id: - type: string - required: - - id - - type - ManageTargetRequest: - type: object - properties: - type: - $ref: '#/components/schemas/ManageTargetTypeEnum' - id: - type: string - minLength: 1 - required: - - id - - type - ManageTargetTypeEnum: - enum: - - domain - - actor - type: string - description: |- - * `domain` - domain - * `actor` - actor - ManageTrack: - type: object - properties: - id: - type: integer - readOnly: true - fid: - type: string - format: uri - nullable: true - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - creation_date: - type: string - format: date-time - position: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - disc_number: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - domain: - type: string - is_local: - type: boolean - readOnly: true - copyright: - type: string - nullable: true - license: - type: string - nullable: true - artist_credit: - type: array - items: - $ref: '#/components/schemas/ManageNestedArtistCredit' - album: - allOf: - - $ref: '#/components/schemas/ManageTrackAlbum' - nullable: true - attributed_to: - allOf: - - $ref: '#/components/schemas/ManageBaseActor' - nullable: true - uploads_count: - type: integer - readOnly: true - tags: - type: array - items: - type: string - readOnly: true - cover: - $ref: '#/components/schemas/CoverField' - required: - - album - - artist_credit - - attributed_to - - cover - - domain - - id - - is_local - - tags - - title - - uploads_count - ManageTrackAlbum: - type: object - properties: - id: - type: integer - readOnly: true - fid: - type: string - format: uri - nullable: true - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - creation_date: - type: string - format: date-time - release_date: - type: string - format: date - nullable: true - cover: - $ref: '#/components/schemas/CoverField' - domain: - type: string - is_local: - type: boolean - readOnly: true - tracks_count: - type: integer - readOnly: true - artist_credit: - type: array - items: - $ref: '#/components/schemas/ManageNestedArtistCredit' - required: - - artist_credit - - cover - - domain - - id - - is_local - - title - - tracks_count - ManageTrackAlbumRequest: - type: object - properties: - fid: - type: string - format: uri - nullable: true - minLength: 1 - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - release_date: - type: string - format: date - nullable: true - cover: - $ref: '#/components/schemas/CoverFieldRequest' - domain: - type: string - minLength: 1 - artist_credit: - type: array - items: - $ref: '#/components/schemas/ManageNestedArtistCreditRequest' - required: - - artist_credit - - cover - - domain - - title - ManageTrackRequest: - type: object - properties: - fid: - type: string - format: uri - nullable: true - minLength: 1 - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - position: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - disc_number: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - domain: - type: string - minLength: 1 - copyright: - type: string - nullable: true - license: - type: string - minLength: 1 - nullable: true - artist_credit: - type: array - items: - $ref: '#/components/schemas/ManageNestedArtistCreditRequest' - album: - allOf: - - $ref: '#/components/schemas/ManageTrackAlbumRequest' - nullable: true - attributed_to: - allOf: - - $ref: '#/components/schemas/ManageBaseActorRequest' - nullable: true - cover: - $ref: '#/components/schemas/CoverFieldRequest' - required: - - album - - artist_credit - - attributed_to - - cover - - domain - - title - ManageUpload: - type: object - properties: - id: - type: integer - readOnly: true - uuid: - type: string - format: uuid - fid: - type: string - format: uri - nullable: true - maxLength: 500 - domain: - type: string - is_local: - type: boolean - readOnly: true - audio_file: - type: string - format: uri - listen_url: - type: string - readOnly: true - source: - type: string - nullable: true - maxLength: 500 - filename: - type: string - readOnly: true - mimetype: - type: string - nullable: true - maxLength: 200 - duration: - type: integer - maximum: 2147483647 - minimum: -2147483648 - nullable: true - bitrate: - type: integer - maximum: 2147483647 - minimum: -2147483648 - nullable: true - size: - type: integer - maximum: 2147483647 - minimum: -2147483648 - nullable: true - creation_date: - type: string - format: date-time - accessed_date: - type: string - format: date-time - nullable: true - modification_date: - type: string - format: date-time - nullable: true - metadata: {} - import_date: - type: string - format: date-time - nullable: true - import_details: {} - import_status: - $ref: '#/components/schemas/ImportStatusEnum' - import_metadata: - $ref: '#/components/schemas/ImportMetadata' - import_reference: - type: string - maxLength: 50 - track: - $ref: '#/components/schemas/ManageNestedTrack' - library: - $ref: '#/components/schemas/ManageNestedLibrary' - required: - - audio_file - - domain - - filename - - id - - import_metadata - - is_local - - library - - listen_url - - track - ManageUploadRequest: - type: object - properties: - uuid: - type: string - format: uuid - fid: - type: string - format: uri - nullable: true - maxLength: 500 - domain: - type: string - minLength: 1 - audio_file: - type: string - format: binary - source: - type: string - nullable: true - maxLength: 500 - mimetype: - type: string - nullable: true - maxLength: 200 - duration: - type: integer - maximum: 2147483647 - minimum: -2147483648 - nullable: true - bitrate: - type: integer - maximum: 2147483647 - minimum: -2147483648 - nullable: true - size: - type: integer - maximum: 2147483647 - minimum: -2147483648 - nullable: true - creation_date: - type: string - format: date-time - accessed_date: - type: string - format: date-time - nullable: true - modification_date: - type: string - format: date-time - nullable: true - metadata: {} - import_date: - type: string - format: date-time - nullable: true - import_details: {} - import_status: - $ref: '#/components/schemas/ImportStatusEnum' - import_metadata: - $ref: '#/components/schemas/ImportMetadataRequest' - import_reference: - type: string - minLength: 1 - maxLength: 50 - track: - $ref: '#/components/schemas/ManageNestedTrackRequest' - library: - $ref: '#/components/schemas/ManageNestedLibraryRequest' - required: - - audio_file - - domain - - import_metadata - - library - - track - ManageUser: - type: object - properties: - id: - type: integer - readOnly: true - username: - type: string - readOnly: true - description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ - only. - actor: - type: object - additionalProperties: {} - readOnly: true - email: - type: string - format: email - readOnly: true - title: Email address - name: - type: string - title: Name of User - maxLength: 255 - is_active: - type: boolean - title: Active - description: Designates whether this user should be treated as active. Unselect - this instead of deleting accounts. - is_staff: - type: boolean - title: Staff status - description: Designates whether the user can log into this admin site. - is_superuser: - type: boolean - title: Superuser status - description: Designates that this user has all permissions without explicitly - assigning them. - date_joined: - type: string - format: date-time - readOnly: true - last_activity: - type: string - format: date-time - readOnly: true - nullable: true - upload_quota: - type: integer - nullable: true - privacy_level: - allOf: - - $ref: '#/components/schemas/PrivacyLevelEnum' - readOnly: true - full_username: - type: string - readOnly: true - required: - - actor - - date_joined - - email - - full_username - - id - - last_activity - - privacy_level - - username - ManageUserRequest: - type: object - properties: - name: - type: string - title: Name of User - maxLength: 255 - is_active: - type: boolean - title: Active - description: Designates whether this user should be treated as active. Unselect - this instead of deleting accounts. - is_staff: - type: boolean - title: Staff status - description: Designates whether the user can log into this admin site. - is_superuser: - type: boolean - title: Superuser status - description: Designates that this user has all permissions without explicitly - assigning them. - upload_quota: - type: integer - nullable: true - ManageUserRequestRequest: - type: object - properties: - type: - $ref: '#/components/schemas/ManageUserRequestTypeEnum' - status: - $ref: '#/components/schemas/ManageUserRequestStatusEnum' - assigned_to: - $ref: '#/components/schemas/ManageBaseActorRequest' - submitter: - $ref: '#/components/schemas/ManageBaseActorRequest' - required: - - assigned_to - - submitter - - type - ManageUserRequestStatusEnum: - enum: - - pending - - refused - - approved - type: string - description: |- - * `pending` - Pending - * `refused` - Refused - * `approved` - Approved - ManageUserRequestTypeEnum: - enum: - - signup - type: string - description: '* `signup` - Sign-up' - ManageUserSimple: - type: object - properties: - id: - type: integer - readOnly: true - username: - type: string - description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ - only. - pattern: ^[\w.@+-]+$ - maxLength: 150 - email: - type: string - format: email - title: Email address - maxLength: 254 - name: - type: string - title: Name of User - maxLength: 255 - is_active: - type: boolean - title: Active - description: Designates whether this user should be treated as active. Unselect - this instead of deleting accounts. - is_staff: - type: boolean - title: Staff status - description: Designates whether the user can log into this admin site. - is_superuser: - type: boolean - title: Superuser status - description: Designates that this user has all permissions without explicitly - assigning them. - date_joined: - type: string - format: date-time - last_activity: - type: string - format: date-time - nullable: true - privacy_level: - $ref: '#/components/schemas/PrivacyLevelEnum' - upload_quota: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - required: - - id - - username - ManageUserSimpleRequest: - type: object - properties: - username: - type: string - minLength: 1 - description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ - only. - pattern: ^[\w.@+-]+$ - maxLength: 150 - email: - type: string - format: email - title: Email address - maxLength: 254 - name: - type: string - title: Name of User - maxLength: 255 - is_active: - type: boolean - title: Active - description: Designates whether this user should be treated as active. Unselect - this instead of deleting accounts. - is_staff: - type: boolean - title: Staff status - description: Designates whether the user can log into this admin site. - is_superuser: - type: boolean - title: Superuser status - description: Designates that this user has all permissions without explicitly - assigning them. - date_joined: - type: string - format: date-time - last_activity: - type: string - format: date-time - nullable: true - privacy_level: - $ref: '#/components/schemas/PrivacyLevelEnum' - upload_quota: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - required: - - username - Metadata20: - type: object - properties: - actorId: - type: string - private: - type: boolean - readOnly: true - shortDescription: - type: string - readOnly: true - longDescription: - type: string - readOnly: true - contactEmail: - type: string - readOnly: true - nodeName: - type: string - readOnly: true - banner: - type: string - readOnly: true - defaultUploadQuota: - type: integer - readOnly: true - supportedUploadExtensions: - type: array - items: - type: string - allowList: - allOf: - - $ref: '#/components/schemas/AllowListStat' - readOnly: true - funkwhaleSupportMessageEnabled: - type: boolean - readOnly: true - instanceSupportMessage: - type: string - readOnly: true - usage: - $ref: '#/components/schemas/MetadataUsage' - library: - allOf: - - $ref: '#/components/schemas/NodeInfoLibrary' - readOnly: true - reportTypes: - type: array - items: - $ref: '#/components/schemas/ReportType' - endpoints: - $ref: '#/components/schemas/Endpoints' - rules: - type: string - readOnly: true - terms: - type: string - readOnly: true - required: - - actorId - - allowList - - banner - - contactEmail - - defaultUploadQuota - - endpoints - - funkwhaleSupportMessageEnabled - - instanceSupportMessage - - library - - longDescription - - nodeName - - private - - reportTypes - - rules - - shortDescription - - supportedUploadExtensions - - terms - Metadata21: - type: object - properties: - actorId: - type: string - private: - type: boolean - readOnly: true - shortDescription: - type: string - readOnly: true - longDescription: - type: string - readOnly: true - contactEmail: - type: string - readOnly: true - nodeName: - type: string - readOnly: true - banner: - type: string - readOnly: true - defaultUploadQuota: - type: integer - readOnly: true - supportedUploadExtensions: - type: array - items: - type: string - allowList: - allOf: - - $ref: '#/components/schemas/AllowListStat' - readOnly: true - funkwhaleSupportMessageEnabled: - type: boolean - readOnly: true - instanceSupportMessage: - type: string - readOnly: true - usage: - $ref: '#/components/schemas/MetadataUsage' - languages: - type: array - items: - type: string - location: - type: string - content: - $ref: '#/components/schemas/MetadataContent' - features: - type: array - items: - type: string - codeOfConduct: - type: string - readOnly: true - required: - - actorId - - allowList - - banner - - codeOfConduct - - contactEmail - - content - - defaultUploadQuota - - features - - funkwhaleSupportMessageEnabled - - instanceSupportMessage - - languages - - location - - longDescription - - nodeName - - private - - shortDescription - - supportedUploadExtensions - MetadataContent: - type: object - properties: - local: - $ref: '#/components/schemas/MetadataContentLocal' - topMusicCategories: - type: array - items: - $ref: '#/components/schemas/MetadataContentCategory' - topPodcastCategories: - type: array - items: - $ref: '#/components/schemas/MetadataContentCategory' - required: - - local - - topMusicCategories - - topPodcastCategories - MetadataContentCategory: - type: object - properties: - name: - type: string - count: - type: integer - required: - - count - - name - MetadataContentLocal: - type: object - properties: - artists: - type: integer - releases: - type: integer - recordings: - type: integer - hoursOfContent: - type: integer - required: - - artists - - hoursOfContent - - recordings - - releases - MetadataUsage: - type: object - properties: - favorites: - $ref: '#/components/schemas/MetadataUsageFavorite' - listenings: - $ref: '#/components/schemas/TotalCount' - downloads: - $ref: '#/components/schemas/TotalCount' - required: - - downloads - - favorites - - listenings - MetadataUsageFavorite: - type: object - properties: - tracks: - allOf: - - $ref: '#/components/schemas/TotalCount' - readOnly: true - required: - - tracks - MetedataChoices: - type: object - properties: - language: - type: array - items: - $ref: '#/components/schemas/LanguageItem' - itunes_category: - type: array - items: - $ref: '#/components/schemas/iTunesCategoryItem' - required: - - itunes_category - - language - ModerationTarget: - type: object - properties: - type: - $ref: '#/components/schemas/ModerationTargetTypeEnum' - id: - type: string - required: - - id - - type - ModerationTargetRequest: - type: object - properties: - type: - $ref: '#/components/schemas/ModerationTargetTypeEnum' - id: - type: string - minLength: 1 - required: - - id - - type - ModerationTargetTypeEnum: - enum: - - artist - type: string - description: '* `artist` - artist' - NestedLibraryFollow: - type: object - properties: - creation_date: - type: string - format: date-time - uuid: - type: string - format: uuid - fid: - type: string - format: uri - nullable: true - maxLength: 500 - approved: - type: boolean - nullable: true - modification_date: - type: string - format: date-time - readOnly: true - required: - - modification_date - NestedLibraryFollowRequest: - type: object - properties: - creation_date: - type: string - format: date-time - uuid: - type: string - format: uuid - fid: - type: string - format: uri - nullable: true - maxLength: 500 - approved: - type: boolean - nullable: true - NodeInfo20: - type: object - properties: - version: - type: string - readOnly: true - software: - $ref: '#/components/schemas/Software' - protocols: - type: array - items: {} - readOnly: true - services: - allOf: - - $ref: '#/components/schemas/Services' - default: - inbound: [] - outbound: [] - openRegistrations: - type: boolean - readOnly: true - usage: - allOf: - - $ref: '#/components/schemas/Usage' - readOnly: true - metadata: - allOf: - - $ref: '#/components/schemas/Metadata20' - readOnly: true - required: - - metadata - - openRegistrations - - protocols - - software - - usage - - version - NodeInfo21: - type: object - properties: - version: - type: string - readOnly: true - software: - $ref: '#/components/schemas/SoftwareSerializer_v2' - protocols: - type: array - items: {} - readOnly: true - services: - allOf: - - $ref: '#/components/schemas/Services' - default: - inbound: [] - outbound: [] - openRegistrations: - type: boolean - readOnly: true - usage: - allOf: - - $ref: '#/components/schemas/Usage' - readOnly: true - metadata: - allOf: - - $ref: '#/components/schemas/Metadata21' - readOnly: true - required: - - metadata - - openRegistrations - - protocols - - software - - usage - - version - NodeInfoLibrary: - type: object - properties: - federationEnabled: - type: boolean - anonymousCanListen: - type: boolean - tracks: - allOf: - - $ref: '#/components/schemas/TotalCount' - default: - total: 0 - artists: - allOf: - - $ref: '#/components/schemas/TotalCount' - default: - total: 0 - albums: - allOf: - - $ref: '#/components/schemas/TotalCount' - default: - total: 0 - music: - allOf: - - $ref: '#/components/schemas/TotalHours' - default: - hours: 0 - required: - - anonymousCanListen - - federationEnabled - Oembed: - type: object - properties: - format: - $ref: '#/components/schemas/FormatEnum' - url: - type: string - format: uri - maxheight: - type: integer - maxwidth: - type: integer - required: - - format - - url - PaginatedAPIMutationList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/APIMutation' - PaginatedAlbumList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Album' - PaginatedApplicationList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Application' - PaginatedArtistWithAlbumsList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ArtistWithAlbums' - PaginatedChannelList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Channel' - PaginatedDomainList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Domain' - PaginatedFetchList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Fetch' - PaginatedFollowList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Follow' - PaginatedInboxItemList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/InboxItem' - PaginatedLibraryFollowList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/LibraryFollow' - PaginatedLibraryForOwnerList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/LibraryForOwner' - PaginatedLibraryList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Library' - PaginatedLicenseList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/License' - PaginatedListeningList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Listening' - PaginatedManageActorList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageActor' - PaginatedManageAlbumList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageAlbum' - PaginatedManageArtistList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageArtist' - PaginatedManageChannelList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageChannel' - PaginatedManageDomainList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageDomain' - PaginatedManageInstancePolicyList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageInstancePolicy' - PaginatedManageInvitationList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageInvitation' - PaginatedManageLibraryList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageLibrary' - PaginatedManageNoteList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageNote' - PaginatedManageReportList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageReport' - PaginatedManageTagList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageTag' - PaginatedManageTrackList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageTrack' - PaginatedManageUploadList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageUpload' - PaginatedManageUserList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageUser' - PaginatedManageUserRequestList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/ManageUserRequest' - PaginatedPlaylistList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Playlist' - PaginatedPlaylistTrackList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/PlaylistTrack' - PaginatedRadioList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Radio' - PaginatedSubscriptionList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Subscription' - PaginatedTagList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Tag' - PaginatedTrackList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Track' - PaginatedUploadForOwnerList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/UploadForOwner' - PaginatedUserFilterList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/UserFilter' - PaginatedUserTrackFavoriteList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/UserTrackFavorite' - PasswordChange: - type: object - properties: - new_password1: - type: string - maxLength: 128 - new_password2: - type: string - maxLength: 128 - required: - - new_password1 - - new_password2 - PasswordChangeRequest: - type: object - properties: - new_password1: - type: string - minLength: 1 - maxLength: 128 - new_password2: - type: string - minLength: 1 - maxLength: 128 - required: - - new_password1 - - new_password2 - PasswordReset: - type: object - description: Serializer for requesting a password reset e-mail. - properties: - email: - type: string - format: email - required: - - email - PasswordResetConfirm: - type: object - description: Serializer for confirming a password reset attempt. - properties: - new_password1: - type: string - maxLength: 128 - new_password2: - type: string - maxLength: 128 - uid: - type: string - token: - type: string - required: - - new_password1 - - new_password2 - - token - - uid - PasswordResetConfirmRequest: - type: object - description: Serializer for confirming a password reset attempt. - properties: - new_password1: - type: string - minLength: 1 - maxLength: 128 - new_password2: - type: string - minLength: 1 - maxLength: 128 - uid: - type: string - minLength: 1 - token: - type: string - minLength: 1 - required: - - new_password1 - - new_password2 - - token - - uid - PasswordResetRequest: - type: object - description: Serializer for requesting a password reset e-mail. - properties: - email: - type: string - format: email - minLength: 1 - required: - - email - PatchedApplicationRequest: - type: object - properties: - client_id: - type: string - minLength: 1 - maxLength: 100 - name: - type: string - maxLength: 255 - scopes: - type: string - minLength: 1 - PatchedChannelUpdateRequest: - type: object - properties: - cover: - type: string - writeOnly: true - nullable: true - name: - type: string - minLength: 1 - maxLength: 200 - description: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - tags: - type: array - items: - type: string - minLength: 1 - minItems: 0 - content_category: - $ref: '#/components/schemas/ContentCategoryEnum' - metadata: - type: object - additionalProperties: {} - PatchedGlobalPreferenceRequest: - type: object - properties: - value: - type: string - PatchedInboxItemRequest: - type: object - properties: - activity: - $ref: '#/components/schemas/ActivityRequest' - is_read: - type: boolean - PatchedManageDomainUpdateRequest: - type: object - properties: - allowed: - type: boolean - nullable: true - PatchedManageInstancePolicyRequest: - type: object - properties: - target: - $ref: '#/components/schemas/ManageTargetRequest' - summary: - type: string - nullable: true - maxLength: 10000 - is_active: - type: boolean - block_all: - type: boolean - silence_activity: - type: boolean - silence_notifications: - type: boolean - reject_media: - type: boolean - PatchedManageInvitationRequest: - type: object - properties: - owner: - $ref: '#/components/schemas/ManageUserSimpleRequest' - invited_user: - $ref: '#/components/schemas/ManageUserSimpleRequest' - code: - type: string - nullable: true - minLength: 1 - users: - type: array - items: - $ref: '#/components/schemas/ManageUserSimpleRequest' - PatchedManageLibraryRequest: - type: object - properties: - name: - type: string - minLength: 1 - maxLength: 100 - domain: - type: string - minLength: 1 - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - actor: - $ref: '#/components/schemas/ManageBaseActorRequest' - PatchedManageReportRequest: - type: object - properties: - type: - $ref: '#/components/schemas/ReportTypeEnum' - target: {} - is_handled: - type: boolean - assigned_to: - allOf: - - $ref: '#/components/schemas/ManageBaseActorRequest' - nullable: true - target_owner: - $ref: '#/components/schemas/ManageBaseActorRequest' - submitter: - $ref: '#/components/schemas/ManageBaseActorRequest' - notes: - type: array - items: - $ref: '#/components/schemas/ManageBaseNoteRequest' - nullable: true - default: [] - PatchedManageUserRequest: - type: object - properties: - name: - type: string - title: Name of User - maxLength: 255 - is_active: - type: boolean - title: Active - description: Designates whether this user should be treated as active. Unselect - this instead of deleting accounts. - is_staff: - type: boolean - title: Staff status - description: Designates whether the user can log into this admin site. - is_superuser: - type: boolean - title: Superuser status - description: Designates that this user has all permissions without explicitly - assigning them. - upload_quota: - type: integer - nullable: true - PatchedManageUserRequestRequest: - type: object - properties: - type: - $ref: '#/components/schemas/ManageUserRequestTypeEnum' - status: - $ref: '#/components/schemas/ManageUserRequestStatusEnum' - assigned_to: - $ref: '#/components/schemas/ManageBaseActorRequest' - submitter: - $ref: '#/components/schemas/ManageBaseActorRequest' - PatchedPlaylistRequest: - type: object - properties: - name: - type: string - minLength: 1 - maxLength: 100 - privacy_level: - $ref: '#/components/schemas/PrivacyLevelEnum' - description: - type: string - nullable: true - maxLength: 5000 - PatchedRadioRequest: - type: object - properties: - is_public: - type: boolean - name: - type: string - minLength: 1 - maxLength: 100 - config: {} - description: - type: string - PatchedUploadForOwnerRequest: - type: object - properties: - filename: - type: string - minLength: 1 - track: - allOf: - - $ref: '#/components/schemas/TrackRequest' - nullable: true - library: - type: string - channel: - type: string - import_status: - allOf: - - $ref: '#/components/schemas/ImportStatusEnum' - default: pending - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - import_metadata: - $ref: '#/components/schemas/ImportMetadataRequest' - import_reference: - type: string - minLength: 1 - maxLength: 50 - source: - type: string - nullable: true - maxLength: 500 - audio_file: - type: string - format: binary - writeOnly: true - PatchedUserDetailsRequest: - type: object - description: User model w/o password - properties: - username: - type: string - minLength: 1 - description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ - only. - pattern: ^[\w.@+-]+$ - maxLength: 150 - first_name: - type: string - maxLength: 150 - last_name: - type: string - maxLength: 150 - PatchedUserWriteRequest: - type: object - properties: - name: - type: string - title: Name of User - maxLength: 255 - privacy_level: - $ref: '#/components/schemas/PrivacyLevelEnum' - avatar: - type: string - writeOnly: true - instance_support_message_display_date: - type: string - format: date-time - nullable: true - funkwhale_support_message_display_date: - type: string - format: date-time - nullable: true - summary: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - Playlist: - type: object - properties: - id: - type: integer - readOnly: true - name: - type: string - maxLength: 100 - actor: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - modification_date: - type: string - format: date-time - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - privacy_level: - $ref: '#/components/schemas/PrivacyLevelEnum' - tracks_count: - type: integer - readOnly: true - album_covers: - type: array - items: - type: string - readOnly: true - duration: - type: integer - readOnly: true - is_playable: - type: boolean - readOnly: true - description: - type: string - nullable: true - maxLength: 5000 - required: - - actor - - album_covers - - creation_date - - duration - - id - - is_playable - - modification_date - - name - - tracks_count - PlaylistAddManyRequest: - type: object - properties: - tracks: - type: array - items: - type: integer - allow_duplicates: - type: boolean - required: - - tracks - PlaylistRequest: - type: object - properties: - name: - type: string - minLength: 1 - maxLength: 100 - privacy_level: - $ref: '#/components/schemas/PrivacyLevelEnum' - description: - type: string - nullable: true - maxLength: 5000 - required: - - name - PlaylistTrack: - type: object - properties: - track: - type: string - readOnly: true - index: - type: integer - maximum: 2147483647 - minimum: 0 - nullable: true - creation_date: - type: string - format: date-time - required: - - track - PrivacyLevelEnum: - enum: - - me - - followers - - instance - - everyone - type: string - description: |- - * `me` - Only me - * `followers` - Me and my followers - * `instance` - Everyone on my instance, and my followers - * `everyone` - Everyone, including people on other instances - Radio: - type: object - properties: - id: - type: integer - readOnly: true - is_public: - type: boolean - name: - type: string - maxLength: 100 - creation_date: - type: string - format: date-time - readOnly: true - user: - allOf: - - $ref: '#/components/schemas/UserBasic' - readOnly: true - config: {} - description: - type: string - required: - - config - - creation_date - - id - - name - - user - RadioRequest: - type: object - properties: - is_public: - type: boolean - name: - type: string - minLength: 1 - maxLength: 100 - config: {} - description: - type: string - required: - - config - - name - RadioSession: - type: object - properties: - id: - type: integer - readOnly: true - radio_type: - type: string - maxLength: 50 - related_object_id: - type: string - nullable: true - user: - type: integer - nullable: true - creation_date: - type: string - format: date-time - custom_radio: - type: integer - nullable: true - config: - nullable: true - required: - - id - - radio_type - RadioSessionRequest: - type: object - properties: - radio_type: - type: string - minLength: 1 - maxLength: 50 - related_object_id: - type: string - nullable: true - minLength: 1 - user: - type: integer - nullable: true - creation_date: - type: string - format: date-time - custom_radio: - type: integer - nullable: true - config: - nullable: true - required: - - radio_type - RadioSessionTrackSerializerCreate: - type: object - properties: - session: - type: integer - count: - type: integer - nullable: true - required: - - session - RadioSessionTrackSerializerCreateRequest: - type: object - properties: - session: - type: integer - count: - type: integer - nullable: true - required: - - session - RateLimit: - type: object - properties: - enabled: - type: boolean - ident: - $ref: '#/components/schemas/Ident' - scopes: - type: array - items: - $ref: '#/components/schemas/Scopes' - required: - - enabled - - ident - - scopes - Register: - type: object - properties: - username: - type: string - maxLength: 150 - minLength: 1 - email: - type: string - format: email - invitation: - type: string - nullable: true - required: - - email - - username - RegisterRequest: - type: object - properties: - username: - type: string - minLength: 1 - maxLength: 150 - email: - type: string - format: email - minLength: 1 - password1: - type: string - writeOnly: true - minLength: 1 - password2: - type: string - writeOnly: true - minLength: 1 - invitation: - type: string - nullable: true - required: - - email - - password1 - - password2 - - username - Report: - type: object - properties: - uuid: - type: string - format: uuid - readOnly: true - summary: - type: string - nullable: true - maxLength: 50000 - creation_date: - type: string - format: date-time - readOnly: true - handled_date: - type: string - format: date-time - readOnly: true - nullable: true - is_handled: - type: boolean - readOnly: true - submitter_email: - type: string - format: email - nullable: true - maxLength: 254 - target: {} - type: - $ref: '#/components/schemas/ReportTypeEnum' - required: - - creation_date - - handled_date - - is_handled - - target - - type - - uuid - ReportRequest: - type: object - properties: - summary: - type: string - nullable: true - maxLength: 50000 - submitter_email: - type: string - format: email - nullable: true - minLength: 1 - maxLength: 254 - target: {} - type: - $ref: '#/components/schemas/ReportTypeEnum' - required: - - target - - type - ReportType: - type: object - properties: - type: - type: string - label: - type: string - anonymous: - type: boolean - required: - - anonymous - - label - - type - ReportTypeEnum: - enum: - - takedown_request - - invalid_metadata - - illegal_content - - offensive_content - - other - type: string - description: |- - * `takedown_request` - Takedown request - * `invalid_metadata` - Invalid metadata - * `illegal_content` - Illegal content - * `offensive_content` - Offensive content - * `other` - Other - Scopes: - type: object - properties: - id: - type: string - rate: - type: string - description: - type: string - limit: - type: integer - duration: - type: integer - remaining: - type: integer - available: - type: integer - available_seconds: - type: integer - reset: - type: integer - reset_seconds: - type: integer - required: - - available - - available_seconds - - description - - duration - - id - - limit - - rate - - remaining - - reset - - reset_seconds - SearchResult: - type: object - properties: - artists: - type: array - items: - $ref: '#/components/schemas/ArtistWithAlbums' - tracks: - type: array - items: - $ref: '#/components/schemas/Track' - albums: - type: array - items: - $ref: '#/components/schemas/Album' - tags: - type: array - items: - $ref: '#/components/schemas/Tag' - required: - - albums - - artists - - tags - - tracks - Services: - type: object - properties: - inbound: - type: array - items: - type: string - default: [] - outbound: - type: array - items: - type: string - default: [] - SimpleChannelArtist: - type: object - properties: - id: - type: integer - fid: - type: string - format: uri - mbid: - type: string - name: - type: string - creation_date: - type: string - format: date-time - modification_date: - type: string - format: date-time - is_local: - type: boolean - content_category: - type: string - description: - allOf: - - $ref: '#/components/schemas/Content' - nullable: true - cover: - allOf: - - $ref: '#/components/schemas/CoverField' - nullable: true - channel: - type: string - format: uuid - nullable: true - tracks_count: - type: integer - readOnly: true - tags: - type: array - items: - type: string - required: - - content_category - - creation_date - - fid - - id - - is_local - - mbid - - modification_date - - name - - tracks_count - SimpleChannelArtistRequest: - type: object - properties: - id: - type: integer - fid: - type: string - format: uri - minLength: 1 - mbid: - type: string - minLength: 1 - name: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - modification_date: - type: string - format: date-time - is_local: - type: boolean - content_category: - type: string - minLength: 1 - description: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - cover: - allOf: - - $ref: '#/components/schemas/CoverFieldRequest' - nullable: true - channel: - type: string - format: uuid - nullable: true - tags: - type: array - items: - type: string - minLength: 1 - required: - - content_category - - creation_date - - fid - - id - - is_local - - mbid - - modification_date - - name - SimpleFavorite: - type: object - properties: - id: - type: integer - track: - type: integer - required: - - id - - track - Software: - type: object - properties: - name: - type: string - readOnly: true - version: - type: string - required: - - name - - version - SoftwareSerializer_v2: - type: object - properties: - name: - type: string - readOnly: true - version: - type: string - repository: - type: string - readOnly: true - homepage: - type: string - readOnly: true - required: - - homepage - - name - - repository - - version - SpaManifest: - type: object - properties: - name: - type: string - default: Funkwhale - short_name: - type: string - default: Funkwhale - display: - type: string - background_color: - type: string - lang: - type: string - categories: - type: array - items: - type: string - description: - type: string - icons: - type: array - items: - $ref: '#/components/schemas/SpaManifestIcon' - start_url: - type: string - prefer_related_applications: - type: boolean - related_applications: - type: array - items: - $ref: '#/components/schemas/SpaManifestRelatedApplications' - shortcuts: - type: array - items: - $ref: '#/components/schemas/SpaManifestShortcut' - SpaManifestIcon: - type: object - properties: - src: - type: string - sizes: - type: string - type: - type: string - required: - - sizes - - src - - type - SpaManifestRelatedApplications: - type: object - properties: - platform: - type: string - url: - type: string - format: uri - id: - type: string - required: - - id - - platform - - url - SpaManifestShortcut: - type: object - properties: - name: - type: string - url: - type: string - icons: - type: array - items: - $ref: '#/components/schemas/SpaManifestIcon' - required: - - name - - url - Subscription: - type: object - properties: - approved: - type: boolean - readOnly: true - fid: - type: string - format: uri - readOnly: true - uuid: - type: string - format: uuid - readOnly: true - creation_date: - type: string - format: date-time - readOnly: true - required: - - approved - - creation_date - - fid - - uuid - Tag: - type: object - properties: - name: - type: string - maxLength: 100 - creation_date: - type: string - format: date-time - required: - - name - TextPreview: - type: object - properties: - rendered: - type: string - readOnly: true - required: - - rendered - TextPreviewRequest: - type: object - properties: - text: - type: string - writeOnly: true - minLength: 1 - required: - - text - TotalCount: - type: object - properties: - total: - type: integer - readOnly: true - required: - - total - TotalHours: - type: object - properties: - hours: - type: integer - readOnly: true - required: - - hours - Track: - type: object - properties: - artist_credit: - type: array - items: - $ref: '#/components/schemas/ArtistCredit' - album: - allOf: - - $ref: '#/components/schemas/TrackAlbum' - readOnly: true - uploads: - type: array - items: - $ref: '#/components/schemas/TrackUpload' - readOnly: true - listen_url: - type: string - format: uri - readOnly: true - tags: - type: array - items: - type: string - readOnly: true - attributed_to: - allOf: - - $ref: '#/components/schemas/APIActor' - nullable: true - description: - allOf: - - $ref: '#/components/schemas/Content' - nullable: true - id: - type: integer - fid: - type: string - format: uri - mbid: - type: string - format: uuid - title: - type: string - creation_date: - type: string - format: date-time - is_local: - type: boolean - position: - type: integer - disc_number: - type: integer - downloads_count: - type: integer - copyright: - type: string - license: - type: string - readOnly: true - cover: - allOf: - - $ref: '#/components/schemas/CoverField' - nullable: true - is_playable: - type: boolean - readOnly: true - required: - - album - - artist_credit - - attributed_to - - copyright - - cover - - creation_date - - disc_number - - downloads_count - - fid - - id - - is_local - - is_playable - - license - - listen_url - - mbid - - position - - tags - - title - - uploads - TrackAlbum: - type: object - properties: - id: - type: integer - readOnly: true - fid: - type: string - format: uri - nullable: true - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - artist_credit: - type: array - items: - $ref: '#/components/schemas/ArtistCredit' - release_date: - type: string - format: date - nullable: true - cover: - allOf: - - $ref: '#/components/schemas/CoverField' - nullable: true - creation_date: - type: string - format: date-time - is_local: - type: boolean - readOnly: true - tracks_count: - type: integer - readOnly: true - required: - - artist_credit - - cover - - id - - is_local - - title - - tracks_count - TrackAlbumRequest: - type: object - properties: - fid: - type: string - format: uri - nullable: true - minLength: 1 - maxLength: 500 - mbid: - type: string - format: uuid - nullable: true - title: - type: string - minLength: 1 - artist_credit: - type: array - items: - $ref: '#/components/schemas/ArtistCreditRequest' - release_date: - type: string - format: date - nullable: true - cover: - allOf: - - $ref: '#/components/schemas/CoverFieldRequest' - nullable: true - creation_date: - type: string - format: date-time - required: - - artist_credit - - cover - - title - TrackMetadata: - type: object - properties: - title: - type: string - nullable: true - position: - type: string - nullable: true - disc_number: - type: string - nullable: true - copyright: - type: string - nullable: true - license: - type: string - nullable: true - mbid: - type: string - format: uuid - nullable: true - tags: - type: string - nullable: true - description: - type: string - nullable: true - album: - type: string - artist_credit: - type: string - cover_data: - type: string - required: - - album - - artist_credit - TrackRequest: - type: object - properties: - artist_credit: - type: array - items: - $ref: '#/components/schemas/ArtistCreditRequest' - attributed_to: - allOf: - - $ref: '#/components/schemas/APIActorRequest' - nullable: true - description: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - id: - type: integer - fid: - type: string - format: uri - minLength: 1 - mbid: - type: string - format: uuid - title: - type: string - minLength: 1 - creation_date: - type: string - format: date-time - is_local: - type: boolean - position: - type: integer - disc_number: - type: integer - downloads_count: - type: integer - copyright: - type: string - minLength: 1 - cover: - allOf: - - $ref: '#/components/schemas/CoverFieldRequest' - nullable: true - required: - - artist_credit - - attributed_to - - copyright - - cover - - creation_date - - disc_number - - downloads_count - - fid - - id - - is_local - - mbid - - position - - title - TrackUpload: - type: object - properties: - uuid: - type: string - format: uuid - listen_url: - type: string - format: uri - size: - type: integer - duration: - type: integer - bitrate: - type: integer - mimetype: - type: string - extension: - type: string - is_local: - type: boolean - readOnly: true - required: - - bitrate - - duration - - extension - - is_local - - listen_url - - mimetype - - size - - uuid - UploadBulkUpdateRequest: - type: object - properties: - uuid: - type: string - format: uuid - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - required: - - privacy_level - - uuid - UploadForOwner: - type: object - properties: - uuid: - type: string - format: uuid - readOnly: true - filename: - type: string - creation_date: - type: string - format: date-time - readOnly: true - mimetype: - type: string - readOnly: true - nullable: true - track: - allOf: - - $ref: '#/components/schemas/Track' - nullable: true - library: - type: string - channel: - type: string - duration: - type: integer - readOnly: true - nullable: true - bitrate: - type: integer - readOnly: true - nullable: true - size: - type: integer - readOnly: true - nullable: true - import_date: - type: string - format: date-time - readOnly: true - nullable: true - import_status: - allOf: - - $ref: '#/components/schemas/ImportStatusEnum' - default: pending - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - import_details: - readOnly: true - import_metadata: - $ref: '#/components/schemas/ImportMetadata' - import_reference: - type: string - maxLength: 50 - metadata: - readOnly: true - source: - type: string - nullable: true - maxLength: 500 - required: - - bitrate - - creation_date - - duration - - import_date - - import_details - - metadata - - mimetype - - size - - uuid - UploadForOwnerRequest: - type: object - properties: - filename: - type: string - minLength: 1 - track: - allOf: - - $ref: '#/components/schemas/TrackRequest' - nullable: true - library: - type: string - channel: - type: string - import_status: - allOf: - - $ref: '#/components/schemas/ImportStatusEnum' - default: pending - privacy_level: - $ref: '#/components/schemas/LibraryPrivacyLevelEnum' - import_metadata: - $ref: '#/components/schemas/ImportMetadataRequest' - import_reference: - type: string - minLength: 1 - maxLength: 50 - source: - type: string - nullable: true - maxLength: 500 - audio_file: - type: string - format: binary - writeOnly: true - required: - - audio_file - Usage: - type: object - properties: - users: - $ref: '#/components/schemas/UsersUsage' - localPosts: - type: integer - localComments: - type: integer - required: - - users - UserBasic: - type: object - properties: - id: - type: integer - readOnly: true - username: - type: string - description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ - only. - pattern: ^[\w.@+-]+$ - maxLength: 150 - name: - type: string - title: Name of User - maxLength: 255 - date_joined: - type: string - format: date-time - avatar: - allOf: - - $ref: '#/components/schemas/Attachment' - nullable: true - required: - - avatar - - id - - username - UserBasicRequest: - type: object - properties: - username: - type: string - minLength: 1 - description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ - only. - pattern: ^[\w.@+-]+$ - maxLength: 150 - name: - type: string - title: Name of User - maxLength: 255 - date_joined: - type: string - format: date-time - avatar: - allOf: - - $ref: '#/components/schemas/AttachmentRequest' - nullable: true - required: - - avatar - - username - UserDetails: - type: object - description: User model w/o password - properties: - pk: - type: integer - readOnly: true - title: ID - username: - type: string - description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ - only. - pattern: ^[\w.@+-]+$ - maxLength: 150 - email: - type: string - format: email - readOnly: true - title: Email address - first_name: - type: string - maxLength: 150 - last_name: - type: string - maxLength: 150 - required: - - email - - pk - - username - UserDetailsRequest: - type: object - description: User model w/o password - properties: - username: - type: string - minLength: 1 - description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ - only. - pattern: ^[\w.@+-]+$ - maxLength: 150 - first_name: - type: string - maxLength: 150 - last_name: - type: string - maxLength: 150 - required: - - username - UserFilter: - type: object - properties: - uuid: - type: string - format: uuid - readOnly: true - target: - $ref: '#/components/schemas/ModerationTarget' - creation_date: - type: string - format: date-time - readOnly: true - required: - - creation_date - - target - - uuid - UserFilterRequest: - type: object - properties: - target: - $ref: '#/components/schemas/ModerationTargetRequest' - required: - - target - UserTrackFavorite: - type: object - properties: - id: - type: integer - readOnly: true - actor: - allOf: - - $ref: '#/components/schemas/APIActor' - readOnly: true - track: - allOf: - - $ref: '#/components/schemas/Track' - readOnly: true - creation_date: - type: string - format: date-time - required: - - actor - - id - - track - UserTrackFavoriteWrite: - type: object - properties: - id: - type: integer - readOnly: true - track: - type: integer - creation_date: - type: string - format: date-time - required: - - id - - track - UserTrackFavoriteWriteRequest: - type: object - properties: - track: - type: integer - creation_date: - type: string - format: date-time - required: - - track - UserWrite: - type: object - properties: - name: - type: string - title: Name of User - maxLength: 255 - privacy_level: - $ref: '#/components/schemas/PrivacyLevelEnum' - instance_support_message_display_date: - type: string - format: date-time - nullable: true - funkwhale_support_message_display_date: - type: string - format: date-time - nullable: true - summary: - allOf: - - $ref: '#/components/schemas/Content' - nullable: true - UserWriteRequest: - type: object - properties: - name: - type: string - title: Name of User - maxLength: 255 - privacy_level: - $ref: '#/components/schemas/PrivacyLevelEnum' - avatar: - type: string - writeOnly: true - instance_support_message_display_date: - type: string - format: date-time - nullable: true - funkwhale_support_message_display_date: - type: string - format: date-time - nullable: true - summary: - allOf: - - $ref: '#/components/schemas/ContentRequest' - nullable: true - required: - - avatar - UsersUsage: - type: object - properties: - total: - type: integer - activeHalfyear: - type: integer - readOnly: true - activeMonth: - type: integer - readOnly: true - required: - - activeHalfyear - - activeMonth - - total - VerifyEmailRequest: - type: object - properties: - key: - type: string - writeOnly: true - minLength: 1 - required: - - key - iTunesCategoryItem: - type: object - properties: - value: - type: string - label: - type: string - children: - type: string - required: - - children - - label - - value - securitySchemes: - ApplicationToken: - type: http - scheme: bearer - oauth2: - type: oauth2 - flows: - authorizationCode: - authorizationUrl: /authorize - tokenUrl: /api/v1/oauth/token/ - scopes: - read: '' - read:profile: '' - read:libraries: '' - read:edits: '' - read:follows: '' - read:favorites: '' - read:filters: '' - read:listenings: '' - read:radios: '' - read:playlists: '' - read:notifications: '' - read:security: '' - read:reports: '' - read:plugins: '' - read:instance:settings: '' - read:instance:users: '' - read:instance:invitations: '' - read:instance:edits: '' - read:instance:libraries: '' - read:instance:accounts: '' - read:instance:domains: '' - read:instance:policies: '' - read:instance:reports: '' - read:instance:requests: '' - read:instance:notes: '' - write: '' - write:profile: '' - write:libraries: '' - write:edits: '' - write:follows: '' - write:favorites: '' - write:filters: '' - write:listenings: '' - write:radios: '' - write:playlists: '' - write:notifications: '' - write:security: '' - write:reports: '' - write:plugins: '' - write:instance:settings: '' - write:instance:users: '' - write:instance:invitations: '' - write:instance:edits: '' - write:instance:libraries: '' - write:instance:accounts: '' - write:instance:domains: '' - write:instance:policies: '' - write:instance:reports: '' - write:instance:requests: '' - write:instance:notes: '' -servers: -- url: https://demo.funkwhale.audio - description: Demo Server -- url: https://funkwhale.audio - description: Read server with real content -- url: '{protocol}://{domain}' - description: Custom server - variables: - domain: - default: yourdomain - description: Your Funkwhale Domain - protocol: - enum: - - http - - https - default: https