Files
esauth-2024/docs/docs.go
T

414 lines
13 KiB
Go

// Package docs Code generated by swaggo/swag. DO NOT EDIT
package docs
import "github.com/swaggo/swag"
const docTemplate = `{
"schemes": {{ marshal .Schemes }},
"swagger": "2.0",
"info": {
"description": "{{escape .Description}}",
"title": "{{.Title}}",
"contact": {
"name": "API Support",
"email": "red.tea.dev@gmail.com"
},
"version": "{{.Version}}"
},
"host": "{{.Host}}",
"basePath": "{{.BasePath}}",
"paths": {
"/api/user": {
"put": {
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Create new user",
"parameters": [
{
"description": "User data in JSON",
"name": "user",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/esauth.User"
}
},
{
"type": "string",
"description": "JWT Bearer token (authorization)",
"name": "Authorization",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/esauth.User"
}
}
}
}
},
"/api/user/all": {
"get": {
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Get ids of users",
"parameters": [
{
"type": "integer",
"description": "limit of users size",
"name": "limit",
"in": "query",
"required": true
},
{
"type": "integer",
"description": "select offset",
"name": "start",
"in": "query",
"required": true
},
{
"type": "string",
"description": "JWT Bearer token (authorization)",
"name": "Authorization",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"type": "integer"
}
}
}
}
}
},
"/api/user/count": {
"get": {
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Get count of users",
"parameters": [
{
"type": "string",
"description": "JWT Bearer token (authorization)",
"name": "Authorization",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/handler.countResponse"
}
}
}
}
},
"/api/user/infinity-token": {
"get": {
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Create infinity token (only for admin)",
"parameters": [
{
"type": "string",
"description": "JWT Bearer token (authorization)",
"name": "Authorization",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/handler.infinityTokenResponce"
}
}
}
}
},
"/api/user/self": {
"get": {
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Get current user",
"parameters": [
{
"type": "string",
"description": "JWT Bearer token (authorization)",
"name": "Authorization",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/esauth.User"
}
}
}
},
"post": {
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Edit user",
"parameters": [
{
"description": "User description JSON",
"name": "user",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/handler.editInput"
}
},
{
"type": "string",
"description": "JWT Bearer token (authorization)",
"name": "Authorization",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/esauth.User"
}
}
}
}
},
"/api/user/{user}": {
"get": {
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Get user by id",
"parameters": [
{
"type": "integer",
"description": "search user by id",
"name": "user",
"in": "path",
"required": true
},
{
"type": "string",
"description": "JWT Bearer token (authorization)",
"name": "Authorization",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/esauth.User"
}
}
}
},
"post": {
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Edit user by id",
"parameters": [
{
"type": "integer",
"description": "edit user by id",
"name": "user",
"in": "path",
"required": true
},
{
"description": "User data in JSON",
"name": "user",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/esauth.User"
}
},
{
"type": "string",
"description": "JWT Bearer token (authorization)",
"name": "Authorization",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/esauth.User"
}
}
}
},
"delete": {
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Delete user by id",
"parameters": [
{
"type": "integer",
"description": "id of user",
"name": "id",
"in": "path",
"required": true
},
{
"type": "string",
"description": "JWT Bearer token (authorization)",
"name": "Authorization",
"in": "header",
"required": true
}
],
"responses": {
"200": {
"description": "OK"
}
}
}
}
},
"definitions": {
"esauth.User": {
"type": "object",
"properties": {
"access": {
"type": "string"
},
"email": {
"type": "string"
},
"first_name": {
"type": "string"
},
"google_id": {
"type": "string"
},
"id": {
"type": "integer"
},
"last_name": {
"type": "string"
},
"picture_url": {
"type": "string"
},
"telegram_id": {
"type": "string"
},
"username": {
"type": "string"
}
}
},
"handler.countResponse": {
"type": "object",
"properties": {
"count": {
"type": "integer"
}
}
},
"handler.editInput": {
"type": "object",
"properties": {
"email": {
"type": "string"
},
"first_name": {
"type": "string"
},
"last_name": {
"type": "string"
},
"picture_url": {
"type": "string"
},
"username": {
"type": "string"
}
}
},
"handler.infinityTokenResponce": {
"type": "object"
}
}
}`
// SwaggerInfo holds exported Swagger Info so clients can modify it
var SwaggerInfo = &swag.Spec{
Version: "1.0",
Host: "auth.easystartup.su",
BasePath: "/api",
Schemes: []string{},
Title: "EasyStartup Auth",
Description: "Auth server for EasyStartup.",
InfoInstanceName: "swagger",
SwaggerTemplate: docTemplate,
LeftDelim: "{{",
RightDelim: "}}",
}
func init() {
swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo)
}