1
0
mirror of https://github.com/raseels-repos/golang-saas-starter-kit.git synced 2025-06-06 23:46:29 +02:00
2019-08-08 01:12:04 -08:00

2184 lines
72 KiB
Go

// GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
// This file was generated by geeks-accelerator/swag at
// 2019-08-08 01:10:01.332719 -0800 AKDT m=+446.639667515
package docs
import (
"bytes"
"encoding/json"
"strings"
"github.com/alecthomas/template"
"github.com/geeks-accelerator/swag"
)
var doc = `{
"schemes": {{ marshal .Schemes }},
"swagger": "2.0",
"info": {
"description": "{{.Description}}",
"title": "{{.Title}}",
"contact": {},
"license": {
"name": "Apache 2.0",
"url": "http://www.apache.org/licenses/LICENSE-2.0.html"
},
"version": "{{.Version}}"
},
"host": "{{.Host}}",
"basePath": "{{.BasePath}}",
"paths": {
"/accounts": {
"patch": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Update updates the specified account in the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"account"
],
"summary": "Update account by ID",
"parameters": [
{
"description": "Update fields",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/account.AccountUpdateRequest"
}
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/accounts/{id}": {
"get": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Read returns the specified account from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"account"
],
"summary": "Get account by ID",
"parameters": [
{
"type": "string",
"description": "Account ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/account.AccountResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/oauth/token": {
"post": {
"description": "Token generates an oauth2 accessToken using Basic Auth with a user's email and password.",
"consumes": [
"application/x-www-form-urlencoded"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Token handles a request to authenticate a user.",
"parameters": [
{
"type": "string",
"description": "Email",
"name": "username",
"in": "formData",
"required": true
},
{
"type": "string",
"description": "Password",
"name": "password",
"in": "formData",
"required": true
},
{
"type": "string",
"description": "Account ID",
"name": "account_id",
"in": "formData"
},
{
"enum": [
"user",
"admin"
],
"type": "string",
"description": "Scope",
"name": "scope",
"in": "formData"
}
],
"responses": {
"200": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/projects": {
"get": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Find returns the existing projects in the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"project"
],
"summary": "List projects",
"parameters": [
{
"type": "string",
"description": "Filter string, example: name = 'Moon Launch'",
"name": "where",
"in": "query"
},
{
"type": "string",
"description": "Order columns separated by comma, example: created_at desc",
"name": "order",
"in": "query"
},
{
"type": "integer",
"description": "Limit, example: 10",
"name": "limit",
"in": "query"
},
{
"type": "integer",
"description": "Offset, example: 20",
"name": "offset",
"in": "query"
},
{
"type": "boolean",
"description": "Included Archived, example: false",
"name": "include-archived",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/project.ProjectResponse"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
},
"post": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Create inserts a new project into the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"project"
],
"summary": "Create new project.",
"parameters": [
{
"description": "Project details",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/project.ProjectCreateRequest"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/project.ProjectResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
},
"patch": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Update updates the specified project in the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"project"
],
"summary": "Update project by ID",
"parameters": [
{
"description": "Update fields",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/project.ProjectUpdateRequest"
}
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/projects/archive": {
"patch": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Archive soft-deletes the specified project from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"project"
],
"summary": "Archive project by ID",
"parameters": [
{
"description": "Update fields",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/project.ProjectArchiveRequest"
}
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/projects/{id}": {
"get": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Read returns the specified project from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"project"
],
"summary": "Get project by ID.",
"parameters": [
{
"type": "string",
"description": "Project ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/project.ProjectResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
},
"delete": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Delete removes the specified project from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"project"
],
"summary": "Delete project by ID",
"parameters": [
{
"type": "string",
"description": "Project ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/signup": {
"post": {
"description": "Signup creates a new account and user in the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"signup"
],
"summary": "Signup handles new account creation.",
"parameters": [
{
"description": "Signup details",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/signup.SignupRequest"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/signup.SignupResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/user_accounts": {
"get": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Find returns the existing user accounts in the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user_account"
],
"summary": "List user accounts",
"parameters": [
{
"type": "string",
"description": "Filter string, example: account_id = 'c4653bf9-5978-48b7-89c5-95704aebb7e2'",
"name": "where",
"in": "query"
},
{
"type": "string",
"description": "Order columns separated by comma, example: created_at desc",
"name": "order",
"in": "query"
},
{
"type": "integer",
"description": "Limit, example: 10",
"name": "limit",
"in": "query"
},
{
"type": "integer",
"description": "Offset, example: 20",
"name": "offset",
"in": "query"
},
{
"type": "boolean",
"description": "Included Archived, example: false",
"name": "include-archived",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/user_account.UserAccountResponse"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
},
"post": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Create inserts a new user account into the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user_account"
],
"summary": "Create new user account.",
"parameters": [
{
"description": "User Account details",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/user_account.UserAccountCreateRequest"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/user_account.UserAccountResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
},
"delete": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Delete removes the specified user account from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Delete user account by user ID and account ID",
"parameters": [
{
"type": "string",
"description": "UserAccount ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
},
"patch": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Update updates the specified user account in the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Update user account by user ID and account ID",
"parameters": [
{
"description": "Update fields",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/user_account.UserAccountUpdateRequest"
}
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/user_accounts/archive": {
"patch": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Archive soft-deletes the specified user account from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Archive user account by user ID and account ID",
"parameters": [
{
"description": "Update fields",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/user_account.UserAccountArchiveRequest"
}
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/user_accounts/{user_id}/{account_id}": {
"get": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Read returns the specified user account from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user_account"
],
"summary": "Get user account by ID",
"parameters": [
{
"type": "string",
"description": "UserAccount ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/user_account.UserAccountResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/users": {
"get": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Find returns the existing users in the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "List users",
"parameters": [
{
"type": "string",
"description": "Filter string, example: name = 'Company Name' and email = 'gabi.may@geeksinthewoods.com'",
"name": "where",
"in": "query"
},
{
"type": "string",
"description": "Order columns separated by comma, example: created_at desc",
"name": "order",
"in": "query"
},
{
"type": "integer",
"description": "Limit, example: 10",
"name": "limit",
"in": "query"
},
{
"type": "integer",
"description": "Offset, example: 20",
"name": "offset",
"in": "query"
},
{
"type": "boolean",
"description": "Included Archived, example: false",
"name": "include-archived",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/user.UserResponse"
}
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
},
"post": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Create inserts a new user into the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Create new user.",
"parameters": [
{
"description": "User details",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/user.UserCreateRequest"
}
}
],
"responses": {
"201": {
"description": "Created",
"schema": {
"$ref": "#/definitions/user.UserResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
},
"patch": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Update updates the specified user in the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Update user by ID",
"parameters": [
{
"description": "Update fields",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/user.UserUpdateRequest"
}
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/users/archive": {
"patch": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Archive soft-deletes the specified user from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Archive user by ID",
"parameters": [
{
"description": "Update fields",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/user.UserArchiveRequest"
}
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/users/password": {
"patch": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Update updates the password for a specified user in the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Update user password by ID",
"parameters": [
{
"description": "Update fields",
"name": "data",
"in": "body",
"required": true,
"schema": {
"type": "object",
"$ref": "#/definitions/user.UserUpdatePasswordRequest"
}
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/users/switch-account/{account_id}": {
"patch": {
"security": [
{
"OAuth2Password": []
}
],
"description": "SwitchAccount updates the auth claims to a new account.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Switch account.",
"parameters": [
{
"type": "integer",
"description": "Account ID",
"name": "account_id",
"in": "path",
"required": true
}
],
"responses": {
"200": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"401": {
"description": "Unauthorized",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
},
"/users/{id}": {
"get": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Read returns the specified user from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Get user by ID",
"parameters": [
{
"type": "string",
"description": "User ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/user.UserResponse"
}
},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
},
"delete": {
"security": [
{
"OAuth2Password": []
}
],
"description": "Delete removes the specified user from the system.",
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"tags": [
"user"
],
"summary": "Delete user by ID",
"parameters": [
{
"type": "string",
"description": "User ID",
"name": "id",
"in": "path",
"required": true
}
],
"responses": {
"204": {},
"400": {
"description": "Bad Request",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"403": {
"description": "Forbidden",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/weberror.ErrorResponse"
}
}
}
}
}
},
"definitions": {
"account.AccountResponse": {
"type": "object",
"properties": {
"address1": {
"type": "string",
"example": "221 Tatitlek Ave"
},
"address2": {
"type": "string",
"example": "Box #1832"
},
"archived_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"billing_user_id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
},
"city": {
"type": "string",
"example": "Valdez"
},
"country": {
"type": "string",
"example": "USA"
},
"created_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"id": {
"type": "string",
"example": "c4653bf9-5978-48b7-89c5-95704aebb7e2"
},
"name": {
"type": "string",
"example": "Company Name"
},
"region": {
"type": "string",
"example": "AK"
},
"signup_user_id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
},
"status": {
"type": "object",
"$ref": "#/definitions/web.EnumResponse"
},
"timezone": {
"type": "string",
"example": "America/Anchorage"
},
"updated_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"zipcode": {
"type": "string",
"example": "99686"
}
}
},
"account.AccountUpdateRequest": {
"type": "object",
"required": [
"id"
],
"properties": {
"address1": {
"type": "string",
"example": "221 Tatitlek Ave"
},
"address2": {
"type": "string",
"example": "Box #1832"
},
"billing_user_id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
},
"city": {
"type": "string",
"example": "Valdez"
},
"country": {
"type": "string",
"example": "USA"
},
"id": {
"type": "string",
"example": "c4653bf9-5978-48b7-89c5-95704aebb7e2"
},
"name": {
"type": "string",
"example": "Company Name"
},
"region": {
"type": "string",
"example": "AK"
},
"signup_user_id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
},
"timezone": {
"type": "string",
"example": "America/Anchorage"
},
"zipcode": {
"type": "string",
"example": "99686"
}
}
},
"project.ProjectArchiveRequest": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "985f1746-1d9f-459f-a2d9-fc53ece5ae86"
}
}
},
"project.ProjectCreateRequest": {
"type": "object",
"required": [
"account_id",
"name"
],
"properties": {
"account_id": {
"type": "string",
"example": "c4653bf9-5978-48b7-89c5-95704aebb7e2"
},
"name": {
"type": "string",
"example": "Rocket Launch"
}
}
},
"project.ProjectResponse": {
"type": "object",
"required": [
"account_id",
"id",
"name"
],
"properties": {
"account_id": {
"type": "string",
"example": "c4653bf9-5978-48b7-89c5-95704aebb7e2"
},
"archived_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"created_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"id": {
"type": "string",
"example": "985f1746-1d9f-459f-a2d9-fc53ece5ae86"
},
"name": {
"type": "string",
"example": "Rocket Launch"
},
"status": {
"type": "object",
"$ref": "#/definitions/web.EnumResponse"
},
"updated_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
}
}
},
"project.ProjectUpdateRequest": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"example": "985f1746-1d9f-459f-a2d9-fc53ece5ae86"
},
"name": {
"type": "string",
"example": "Rocket Launch to Moon"
}
}
},
"signup.SignupAccount": {
"type": "object",
"required": [
"address1",
"city",
"country",
"name",
"region",
"zipcode"
],
"properties": {
"address1": {
"type": "string",
"example": "221 Tatitlek Ave"
},
"address2": {
"type": "string",
"example": "Box #1832"
},
"city": {
"type": "string",
"example": "Valdez"
},
"country": {
"type": "string",
"example": "USA"
},
"name": {
"type": "string",
"example": "Company {RANDOM_UUID}"
},
"region": {
"type": "string",
"example": "AK"
},
"timezone": {
"type": "string",
"example": "America/Anchorage"
},
"zipcode": {
"type": "string",
"example": "99686"
}
}
},
"signup.SignupRequest": {
"type": "object",
"properties": {
"account": {
"type": "object",
"$ref": "#/definitions/signup.SignupAccount"
},
"user": {
"type": "object",
"$ref": "#/definitions/signup.SignupUser"
}
}
},
"signup.SignupResponse": {
"type": "object",
"properties": {
"account": {
"type": "object",
"$ref": "#/definitions/account.AccountResponse"
},
"user": {
"type": "object",
"$ref": "#/definitions/user.UserResponse"
}
}
},
"signup.SignupUser": {
"type": "object",
"required": [
"email",
"first_name",
"last_name",
"password",
"password_confirm"
],
"properties": {
"email": {
"type": "string",
"example": "{RANDOM_EMAIL}"
},
"first_name": {
"type": "string",
"example": "Gabi"
},
"last_name": {
"type": "string",
"example": "May"
},
"password": {
"type": "string",
"example": "SecretString"
},
"password_confirm": {
"type": "string",
"example": "SecretString"
}
}
},
"user.UserArchiveRequest": {
"type": "object",
"required": [
"id"
],
"properties": {
"force": {
"type": "boolean"
},
"id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
}
}
},
"user.UserCreateRequest": {
"type": "object",
"required": [
"email",
"first_name",
"last_name",
"password",
"password_confirm"
],
"properties": {
"email": {
"type": "string",
"example": "gabi@geeksinthewoods.com"
},
"first_name": {
"type": "string",
"example": "Gabi"
},
"last_name": {
"type": "string",
"example": "May"
},
"password": {
"type": "string",
"example": "SecretString"
},
"password_confirm": {
"type": "string",
"example": "SecretString"
},
"timezone": {
"type": "string",
"example": "America/Anchorage"
}
}
},
"user.UserResponse": {
"type": "object",
"properties": {
"archived_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"created_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"email": {
"type": "string",
"example": "gabi@geeksinthewoods.com"
},
"first_name": {
"type": "string",
"example": "Gabi"
},
"gravatar": {
"type": "string"
},
"id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
},
"last_name": {
"type": "string",
"example": "May"
},
"name": {
"type": "string",
"example": "Gabi"
},
"timezone": {
"type": "string",
"example": "America/Anchorage"
},
"updated_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
}
}
},
"user.UserUpdatePasswordRequest": {
"type": "object",
"required": [
"id",
"password",
"password_confirm"
],
"properties": {
"id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
},
"password": {
"type": "string",
"example": "NeverTellSecret"
},
"password_confirm": {
"type": "string",
"example": "NeverTellSecret"
}
}
},
"user.UserUpdateRequest": {
"type": "object",
"required": [
"id"
],
"properties": {
"email": {
"type": "string",
"example": "gabi.may@geeksinthewoods.com"
},
"first_name": {
"type": "string",
"example": "Gabi May Not"
},
"id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
},
"last_name": {
"type": "string",
"example": "Gabi May Not"
},
"timezone": {
"type": "string",
"example": "America/Anchorage"
}
}
},
"user_account.UserAccountArchiveRequest": {
"type": "object",
"required": [
"account_id",
"user_id"
],
"properties": {
"account_id": {
"type": "string",
"example": "c4653bf9-5978-48b7-89c5-95704aebb7e2"
},
"user_id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
}
}
},
"user_account.UserAccountCreateRequest": {
"type": "object",
"required": [
"account_id",
"roles",
"user_id"
],
"properties": {
"account_id": {
"type": "string",
"example": "c4653bf9-5978-48b7-89c5-95704aebb7e2"
},
"roles": {
"type": "array",
"items": {
"type": "string",
"enum": [
"admin",
"user"
]
},
"example": [
"admin"
]
},
"user_id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
}
}
},
"user_account.UserAccountResponse": {
"type": "object",
"required": [
"roles"
],
"properties": {
"account_id": {
"type": "string",
"example": "c4653bf9-5978-48b7-89c5-95704aebb7e2"
},
"archived_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"created_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"roles": {
"type": "array",
"items": {
"type": "string",
"enum": [
"admin",
"user"
]
},
"example": [
"admin"
]
},
"status": {
"type": "object",
"$ref": "#/definitions/web.EnumResponse"
},
"updated_at": {
"type": "object",
"$ref": "#/definitions/web.TimeResponse"
},
"user_id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
}
}
},
"user_account.UserAccountUpdateRequest": {
"type": "object",
"required": [
"account_id",
"user_id"
],
"properties": {
"account_id": {
"type": "string",
"example": "c4653bf9-5978-48b7-89c5-95704aebb7e2"
},
"roles": {
"type": "array",
"items": {
"type": "string",
"enum": [
"admin",
"user"
]
},
"example": [
"user"
]
},
"user_id": {
"type": "string",
"example": "d69bdef7-173f-4d29-b52c-3edc60baf6a2"
}
}
},
"web.EnumMultiResponse": {
"type": "object",
"properties": {
"options": {
"type": "array",
"items": {
"$ref": "#/definitions/web.EnumOption"
}
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"active_etc"
]
}
}
},
"web.EnumOption": {
"type": "object",
"properties": {
"selected": {
"type": "boolean",
"example": true
},
"title": {
"type": "string",
"example": "Active Etc"
},
"value": {
"type": "string",
"example": "active_etc"
}
}
},
"web.EnumResponse": {
"type": "object",
"properties": {
"options": {
"type": "array",
"items": {
"$ref": "#/definitions/web.EnumOption"
}
},
"title": {
"type": "string",
"example": "Active Etc"
},
"value": {
"type": "string",
"example": "active_etc"
}
}
},
"web.TimeResponse": {
"type": "object",
"properties": {
"date": {
"type": "string",
"example": "2019-06-25"
},
"kitchen": {
"type": "string",
"example": "3:00AM"
},
"local": {
"type": "string",
"example": "Tue Jun 25 3:00AM"
},
"local_date": {
"type": "string",
"example": "Tue Jun 25"
},
"local_time": {
"type": "string",
"example": "3:00AM"
},
"now_rel_time": {
"type": "string",
"example": "15 hours from now"
},
"now_time": {
"type": "string",
"example": "5 hours ago"
},
"rfc1123": {
"type": "string",
"example": "Tue, 25 Jun 2019 03:00:53 AKDT"
},
"time": {
"type": "string",
"example": "03:00:53"
},
"timezone": {
"type": "string",
"example": "America/Anchorage"
},
"value": {
"type": "string",
"example": "2019-06-25T03:00:53.284-08:00"
},
"value_utc": {
"type": "string",
"example": "2019-06-25T11:00:53.284Z"
}
}
},
"weberror.ErrorResponse": {
"type": "object",
"properties": {
"details": {
"type": "string"
},
"error": {
"type": "string"
},
"fields": {
"type": "array",
"items": {
"$ref": "#/definitions/weberror.FieldError"
}
},
"stack_trace": {
"type": "string"
},
"status_code": {
"type": "integer"
}
}
},
"weberror.FieldError": {
"type": "object",
"properties": {
"display": {
"type": "string"
},
"error": {
"type": "string"
},
"field": {
"type": "string"
},
"tag": {
"type": "string"
},
"value": {
"type": "object"
}
}
}
},
"securityDefinitions": {
"BasicAuth": {
"type": "basic"
},
"OAuth2Password": {
"type": "oauth2",
"flow": "password",
"tokenUrl": "/v1/oauth/token",
"scopes": {
"admin": " Grants administrative privileges with role of admin.",
"user": " Grants basic privileges with role of user."
}
}
}
}`
type swaggerInfo struct {
Version string
Host string
BasePath string
Schemes []string
Title string
Description string
}
// SwaggerInfo holds exported Swagger Info so clients can modify it
var SwaggerInfo = swaggerInfo{
Version: "",
Host: "",
BasePath: "",
Schemes: []string{},
Title: "SaaS Example API",
Description: "",
}
type s struct{}
func (s *s) ReadDoc() string {
sInfo := SwaggerInfo
sInfo.Description = strings.Replace(sInfo.Description, "\n", "\\n", -1)
t, err := template.New("swagger_info").Funcs(template.FuncMap{
"marshal": func(v interface{}) string {
a, _ := json.Marshal(v)
return string(a)
},
}).Parse(doc)
if err != nil {
return doc
}
var tpl bytes.Buffer
if err := t.Execute(&tpl, sInfo); err != nil {
return doc
}
return tpl.String()
}
func init() {
swag.Register(swag.Name, &s{})
}