docs: partially document codebase
All checks were successful
ci/woodpecker/push/build-and-publish Pipeline was successful
All checks were successful
ci/woodpecker/push/build-and-publish Pipeline was successful
Should make it easier for frontend to figure out what stuff actually does, more will be added as the project goes on
This commit is contained in:
parent
1aa38631b8
commit
16ccf94631
10 changed files with 226 additions and 18 deletions
|
@ -1,3 +1,5 @@
|
|||
//! `/api/v1/servers/{uuid}/icon` icon related endpoints, will probably be replaced by a multipart post to above endpoint
|
||||
|
||||
use actix_web::{HttpRequest, HttpResponse, put, web};
|
||||
use futures_util::StreamExt as _;
|
||||
use uuid::Uuid;
|
||||
|
@ -10,6 +12,11 @@ use crate::{
|
|||
utils::get_auth_header,
|
||||
};
|
||||
|
||||
/// `PUT /api/v1/servers/{uuid}/icon` Icon upload
|
||||
///
|
||||
/// requires auth: no
|
||||
///
|
||||
/// put request expects a file and nothing else
|
||||
#[put("{uuid}/icon")]
|
||||
pub async fn upload(
|
||||
req: HttpRequest,
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
//! `/api/v1/servers/{uuid}` Specific server endpoints
|
||||
|
||||
use actix_web::{HttpRequest, HttpResponse, Scope, get, web};
|
||||
use uuid::Uuid;
|
||||
|
||||
|
@ -17,7 +19,7 @@ use crate::{
|
|||
pub fn web() -> Scope {
|
||||
web::scope("")
|
||||
// Servers
|
||||
.service(res)
|
||||
.service(get)
|
||||
// Channels
|
||||
.service(channels::get)
|
||||
.service(channels::create)
|
||||
|
@ -36,8 +38,41 @@ pub fn web() -> Scope {
|
|||
.service(icon::upload)
|
||||
}
|
||||
|
||||
/// `GET /api/v1/servers/{uuid}` DESCRIPTION
|
||||
///
|
||||
/// requires auth: yes
|
||||
///
|
||||
/// ### Response Example
|
||||
/// ```
|
||||
/// json!({
|
||||
/// "uuid": "5ba61ec7-5f97-43e1-89a5-d4693c155612",
|
||||
/// "name": "My first server!",
|
||||
/// "description": "This is a cool and nullable description!",
|
||||
/// "icon": "https://nullable-url/path/to/icon.png",
|
||||
/// "owner_uuid": "155d2291-fb23-46bd-a656-ae7c5d8218e6",
|
||||
/// "roles": [
|
||||
/// {
|
||||
/// "uuid": "be0e4da4-cf73-4f45-98f8-bb1c73d1ab8b",
|
||||
/// "guild_uuid": "5ba61ec7-5f97-43e1-89a5-d4693c155612",
|
||||
/// "name": "Cool people",
|
||||
/// "color": 15650773,
|
||||
/// "is_above": c7432f1c-f4ad-4ad3-8216-51388b6abb5b,
|
||||
/// "permissions": 0
|
||||
/// }
|
||||
/// {
|
||||
/// "uuid": "c7432f1c-f4ad-4ad3-8216-51388b6abb5b",
|
||||
/// "guild_uuid": "5ba61ec7-5f97-43e1-89a5-d4693c155612",
|
||||
/// "name": "Equally cool people",
|
||||
/// "color": 16777215,
|
||||
/// "is_above": null,
|
||||
/// "permissions": 0
|
||||
/// }
|
||||
/// ],
|
||||
/// "member_count": 20
|
||||
/// });
|
||||
/// ```
|
||||
#[get("/{uuid}")]
|
||||
pub async fn res(
|
||||
pub async fn get(
|
||||
req: HttpRequest,
|
||||
path: web::Path<(Uuid,)>,
|
||||
data: web::Data<Data>,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue