From 28b556845f3eeb74df6c8dfffaaae39f3601d3cd Mon Sep 17 00:00:00 2001 From: Pranav C Date: Mon, 10 Jun 2024 11:59:46 +0530 Subject: [PATCH 1/2] chore: update swagger.json with missing v2 APIs --- meta-apis-v2/swagger-v2.json | 1054 ++++++++++++++++++++++++++++++++++ 1 file changed, 1054 insertions(+) diff --git a/meta-apis-v2/swagger-v2.json b/meta-apis-v2/swagger-v2.json index fe4efa4..a7dfc77 100644 --- a/meta-apis-v2/swagger-v2.json +++ b/meta-apis-v2/swagger-v2.json @@ -64,6 +64,1060 @@ } ], "paths": { + "/api/v2/meta/workspaces": { + "get": { + "summary": "List workspaces ☁", + "operationId": "workspace-list", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceList" + } + } + } + } + }, + "tags": [ + "Workspace" + ], + "description": "List workspaces" + }, + "post": { + "summary": "List workspaces", + "operationId": "workspace-create", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/components/schemas/Workspace" + } + }, + { + "$ref": "#/components/schemas/Workspace" + } + ] + } + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/components/schemas/Workspace" + } + }, + { + "$ref": "#/components/schemas/Workspace" + } + ] + } + } + } + }, + "tags": [ + "Workspace" + ], + "description": "List workspaces" + }, + "parameters": [] + }, + "/api/v2/meta/workspaces/{workspaceId}": { + "get": { + "summary": "Read workspace ☁", + "operationId": "workspace-read", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "workspace": { + "$ref": "#/components/schemas/Workspace", + "required": true + }, + "workspaceUserCount": { + "type": "number", + "required": true + } + } + } + } + } + } + }, + "tags": [ + "Workspace" + ], + "description": "Read workspace" + }, + "patch": { + "summary": "Update workspace ☁", + "operationId": "workspace-update", + "responses": { + "200": { + "description": "OK" + } + }, + "tags": [ + "Workspace" + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Workspace" + } + } + } + }, + "description": "Update workspace" + }, + "delete": { + "summary": "Delete workspace ☁", + "operationId": "workspace-delete", + "responses": { + "200": { + "description": "OK" + } + }, + "tags": [ + "Workspace" + ], + "description": "Delete workspace" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "workspaceId", + "in": "path", + "required": true + } + ] + }, + "/api/v2/meta/workspaces/{workspaceId}/upgrade": { + "post": { + "summary": "Upgrade workspace ☁", + "operationId": "workspace-upgrade", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + } + } + } + } + }, + "tags": [ + "Workspace" + ], + "description": "Upgrade workspace" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "workspaceId", + "in": "path", + "required": true + } + ] + }, + "/api/v2/meta/workspaces/{workspaceId}/users": { + "get": { + "summary": "Workspace users list ☁", + "operationId": "workspace-user-list", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceUserList" + } + } + } + } + }, + "tags": [ + "Workspace user" + ], + "description": "Workspace users list" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "workspaceId", + "in": "path", + "required": true + } + ] + }, + "/api/v2/meta/workspaces/{workspaceId}/bases": { + "get": { + "summary": "Workspace bases list ☁", + "operationId": "workspace-base-list", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectList" + } + } + } + } + }, + "tags": [ + "Workspace base" + ], + "description": "Workspace bases list" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "workspaceId", + "in": "path", + "required": true + } + ] + }, + "/api/v2/meta/workspaces/{toWorkspaceId}/bases/{baseId}/move": { + "post": { + "summary": "Workspace base move ☁", + "operationId": "workspace-base-move", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": {} + } + } + }, + "tags": [ + "Workspace base" + ], + "description": "Workspace bases list" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "toWorkspaceId", + "in": "path", + "required": true + }, + { + "schema": { + "type": "string" + }, + "name": "baseId", + "in": "path", + "required": true + } + ] + }, + "/api/v2/meta/workspaces/{workspaceId}/invitations": { + "post": { + "summary": "Workspace user invite ☁", + "operationId": "workspace-user-invite", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": {} + } + } + } + }, + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceUserInvite" + } + } + } + }, + "tags": [ + "Workspace user" + ], + "description": "Workspace user invite" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "workspaceId", + "in": "path", + "required": true + } + ] + }, + "/api/v2/meta/workspaces/{workspaceId}/users/{userId}": { + "get": { + "summary": "Workspace user read ☁", + "operationId": "workspace-user-read", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WorkspaceUser" + } + } + } + } + }, + "tags": [ + "Workspace user" + ], + "description": "Workspace user read" + }, + "patch": { + "summary": "Update workspace user ☁", + "operationId": "workspace-user-update", + "responses": { + "200": { + "description": "OK" + } + }, + "tags": [ + "Workspace user" + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "roles": { + "type": "string" + } + } + } + } + } + }, + "description": "Update workspace user" + }, + "delete": { + "summary": "Delete workspace user ☁", + "operationId": "workspace-user-delete", + "responses": { + "200": { + "description": "OK" + } + }, + "tags": [ + "Workspace User" + ], + "description": "Delete workspace user" + }, + "parameters": [ + { + "schema": { + "type": "string" + }, + "name": "workspaceId", + "in": "path", + "required": true + }, + { + "schema": { + "type": "string" + }, + "name": "userId", + "in": "path", + "required": true + } + ] + }, + + + "/api/v2/auth/user/signup": { + "post": { + "summary": "Signup", + "operationId": "auth-signup", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "token": { + "type": "string", + "description": "The signed JWT token for information exchange", + "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6IndAbm9jb2RiLmNvbSIsImZpcnN0bmFtZSI6bnVsbCwibGFzdG5hbWUiOm51bGwsImlkIjoidXNfYjN4bzJpNDRueDV5OWwiLCJyb2xlcyI6Im9yZy1sZXZlbC1jcmVhdG9yLHN1cGVyIiwidG9rZW5fdmVyc2lvbiI6ImJmMTc3ZGUzYjk3YjAzMjY4YjU0NGZmMjMzNGU5YjFhMGUzYzgxM2NiYzliOTJkYWMwYmM5NTRiNmUzN2ZjMTJjYmFkNDM2NmIwYzExZTdjIiwiaWF0IjoxNjc4MDc4NDMyLCJleHAiOjE2NzgxMTQ0MzJ9.gzwp_svZlbA5PV_eawYV-9UFjZVjniy-tCDce16xrkI" + } + } + }, + "examples": { + "Example 1": { + "value": { + "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6IndAbm9jb2RiLmNvbSIsImZpcnN0bmFtZSI6bnVsbCwibGFzdG5hbWUiOm51bGwsImlkIjoidXNfYjN4bzJpNDRueDV5OWwiLCJyb2xlcyI6Im9yZy1sZXZlbC1jcmVhdG9yLHN1cGVyIiwidG9rZW5fdmVyc2lvbiI6ImJmMTc3ZGUzYjk3YjAzMjY4YjU0NGZmMjMzNGU5YjFhMGUzYzgxM2NiYzliOTJkYWMwYmM5NTRiNmUzN2ZjMTJjYmFkNDM2NmIwYzExZTdjIiwiaWF0IjoxNjc4MDc4NDMyLCJleHAiOjE2NzgxMTQ0MzJ9.gzwp_svZlbA5PV_eawYV-9UFjZVjniy-tCDce16xrkI" + } + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "msg": { + "type": "string" + } + } + }, + "examples": { + "Invalid email": { + "value": { + "msg": "Invalid email" + } + }, + "Invalid invite url": { + "value": { + "msg": "Invalid invite url" + } + }, + "Expired invite url": { + "value": { + "msg": "Expired invite url, Please contact super admin to get a new invite url" + } + }, + "User already exist": { + "value": { + "msg": "User already exist" + } + }, + "Invite only signup": { + "value": { + "msg": "Not allowed to signup, contact super admin" + } + } + } + } + } + } + }, + "tags": [ + "Auth" + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignUpReq" + }, + "examples": { + "Example 1": { + "value": { + "email": "user@example.com", + "password": "password123456789", + "firstname": "Alice", + "lastname": "Smith", + "token": null, + "ignore_subscribe": 0 + } + } + } + } + } + }, + "description": "Create a new user with provided email and password and first user is marked as super admin. " + } + }, + "/api/v2/auth/user/signout": { + "post": { + "summary": "Signout", + "operationId": "auth-signout", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "msg": { + "type": "string", + "description": "Success Message", + "example": "Signed out successfully" + } + } + }, + "examples": { + "Example 1": { + "value": { + "msg": "Signed out successfully" + } + } + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + } + }, + "tags": [ + "Auth" + ], + "description": "Clear refresh token from the database and cookie." + }, + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ] + }, + "/api/v2/auth/user/signin": { + "post": { + "summary": "Signin", + "operationId": "auth-signin", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "token": { + "type": "string", + "description": "The signed JWT token for information exchange", + "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6IndAbm9jb2RiLmNvbSIsImZpcnN0bmFtZSI6bnVsbCwibGFzdG5hbWUiOm51bGwsImlkIjoidXNfYjN4bzJpNDRueDV5OWwiLCJyb2xlcyI6Im9yZy1sZXZlbC1jcmVhdG9yLHN1cGVyIiwidG9rZW5fdmVyc2lvbiI6ImJmMTc3ZGUzYjk3YjAzMjY4YjU0NGZmMjMzNGU5YjFhMGUzYzgxM2NiYzliOTJkYWMwYmM5NTRiNmUzN2ZjMTJjYmFkNDM2NmIwYzExZTdjIiwiaWF0IjoxNjc4MDc4NDMyLCJleHAiOjE2NzgxMTQ0MzJ9.gzwp_svZlbA5PV_eawYV-9UFjZVjniy-tCDce16xrkI" + } + } + }, + "examples": { + "Example 1": { + "value": { + "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6IndAbm9jb2RiLmNvbSIsImZpcnN0bmFtZSI6bnVsbCwibGFzdG5hbWUiOm51bGwsImlkIjoidXNfYjN4bzJpNDRueDV5OWwiLCJyb2xlcyI6Im9yZy1sZXZlbC1jcmVhdG9yLHN1cGVyIiwidG9rZW5fdmVyc2lvbiI6ImJmMTc3ZGUzYjk3YjAzMjY4YjU0NGZmMjMzNGU5YjFhMGUzYzgxM2NiYzliOTJkYWMwYmM5NTRiNmUzN2ZjMTJjYmFkNDM2NmIwYzExZTdjIiwiaWF0IjoxNjc4MDc4NDMyLCJleHAiOjE2NzgxMTQ0MzJ9.gzwp_svZlbA5PV_eawYV-9UFjZVjniy-tCDce16xrkI" + } + } + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + } + }, + "tags": [ + "Auth" + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SignInReq" + }, + "examples": { + "example-1": { + "value": { + "email": "user@example.com", + "password": "Password" + } + } + } + } + } + }, + "description": "Authenticate existing user with their email and password. Successful login will return a JWT access-token. " + }, + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ] + }, + "/api/v2/auth/user/me": { + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ], + "get": { + "summary": "Get User Info", + "operationId": "auth-me", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UserInfo" + }, + "examples": { + "example-1": { + "value": { + "id": "us_8kugj628ebjngs", + "email": "user@example.com", + "email_verified": true, + "firstname": "Alice", + "lastname": "Smith", + "roles": "org-level-viewer" + } + } + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + } + }, + "tags": [ + "Auth" + ], + "description": "Returns authenticated user info", + "parameters": [ + { + "schema": { + "$ref": "#/components/schemas/Id" + }, + "in": "query", + "name": "base_id", + "description": "Pass base id to get base specific roles along with user info" + } + ] + } + }, + "/api/v2/auth/password/forgot": { + "post": { + "summary": "Forget Password", + "operationId": "auth-password-forgot", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "msg": { + "type": "string", + "x-stoplight": { + "id": "q9s5vh2i34x6c" + }, + "example": "Please check your email to reset the password", + "description": "Success Message" + } + } + }, + "examples": { + "Example 1": { + "value": { + "msg": "Please check your email to reset the password" + } + } + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + } + }, + "description": "Emails user with a reset url.", + "tags": [ + "Auth" + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PasswordForgotReq" + }, + "examples": { + "Example 1": { + "value": { + "email": "user@example.com" + } + } + } + } + }, + "description": "Pass registered user email id in request body" + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ] + }, + "/api/v2/auth/password/change": { + "post": { + "summary": "Change Password", + "operationId": "auth-password-change", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "msg": { + "type": "string", + "description": "Success Message" + } + } + }, + "examples": { + "Success response": { + "value": { + "msg": "Password has been updated successfully" + } + } + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + } + }, + "description": "Change password of authenticated user with a new one.", + "tags": [ + "Auth" + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PasswordChangeReq" + }, + "examples": { + "example-1": { + "value": { + "currentPassword": "currentPassword", + "newPassword": "newPassword" + } + } + } + } + }, + "description": "Old password need to be passed along with new password for changing password." + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ] + }, + "/api/v2/auth/token/validate/{token}": { + "post": { + "summary": "Verify Reset Token", + "operationId": "auth-password-reset-token-validate", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "msg": { + "type": "string", + "x-stoplight": { + "id": "unxdsok22kg1y" + }, + "example": "Token has been validated successfully", + "description": "Success Message" + } + } + }, + "examples": { + "Example 1": { + "value": { + "msg": "Token has been validated successfully" + } + } + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + } + }, + "description": "Validate password reset url token.", + "tags": [ + "Auth" + ], + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ] + }, + "parameters": [ + { + "schema": { + "type": "string", + "format": "uuid", + "example": "a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11" + }, + "name": "token", + "in": "path", + "required": true, + "description": "Reset Token" + } + ] + }, + "/api/v2/auth/email/validate/{token}": { + "post": { + "summary": "Verify Email", + "operationId": "auth-email-validate", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "msg": { + "type": "string", + "x-stoplight": { + "id": "u49sbr20s9rgf" + }, + "description": "Success Message", + "example": "Email has been verified successfully" + } + } + }, + "examples": { + "Example 1": { + "value": { + "msg": "Email has been verified successfully" + } + } + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + } + }, + "description": "Api for verifying email where token need to be passed which is shared to user email.", + "tags": [ + "Auth" + ], + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ] + }, + "parameters": [ + { + "schema": { + "type": "string", + "format": "uuid", + "example": "a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11" + }, + "name": "token", + "in": "path", + "required": true, + "description": "Validation Token" + } + ] + }, + "/api/v2/auth/password/reset/{token}": { + "post": { + "summary": "Reset Password", + "operationId": "auth-password-reset", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "msg": { + "type": "string", + "x-stoplight": { + "id": "2to6ro4121rfx" + }, + "description": "Success Message", + "example": "Password has been reset successfully" + } + } + }, + "examples": { + "Example 1": { + "value": { + "msg": "Password has been reset successfully" + } + } + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + } + }, + "description": "Update user password to new by using reset token.", + "tags": [ + "Auth" + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PasswordResetReq" + }, + "examples": { + "Example 1": { + "value": { + "password": "newpassword" + } + } + } + } + } + }, + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ] + }, + "parameters": [ + { + "schema": { + "type": "string", + "format": "uuid", + "example": "a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11" + }, + "name": "token", + "in": "path", + "required": true, + "description": "Reset Password Token" + } + ] + }, + "/api/v2/auth/token/refresh": { + "post": { + "summary": "Refresh Token", + "operationId": "auth-token-refresh", + "responses": { + "200": { + "description": "OK", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "token": { + "type": "string", + "description": "New JWT auth token for user", + "example": "96751db2d53fb834382b682268874a2ea9ee610e4d904e688d1513f11d3c30d62d36d9e05dec0d63" + } + } + }, + "examples": { + "Example 1": { + "value": { + "token": "96751db2d53fb834382b682268874a2ea9ee610e4d904e688d1513f11d3c30d62d36d9e05dec0d63" + } + } + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + } + }, + "description": "Creates a new refresh token and JWT auth token for the user. The refresh token is sent as a cookie, while the JWT auth token is included in the response body.", + "tags": [ + "Auth" + ], + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ] + }, + "parameters": [ + { + "$ref": "#/components/parameters/xc-auth" + } + ] + }, + + "/api/v2/meta/user/profile": { + "patch": { + "summary": "Update User Profile", + "operationId": "user-profile-update", + "responses": { + "200": { + "$ref": "#/components/schemas/User" + } + }, + "tags": [ + "User profile" + ], + "description": "Update User Profile", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/User" + } + } + } + } + } + }, + + "/api/v2/meta/bases/{baseId}/users": { "get": { "summary": "List Base Users", From 2dc2d9f6483bbcfb42749e05d5fee0fdee13c136 Mon Sep 17 00:00:00 2001 From: Pranav C Date: Tue, 11 Jun 2024 14:41:51 +0530 Subject: [PATCH 2/2] fix: swagger corrections and redoc initialization corrections --- meta-apis-v2/index.html | 9 +- meta-apis-v2/swagger-v2.json | 325 +++++++++++++++++++---------------- 2 files changed, 188 insertions(+), 146 deletions(-) diff --git a/meta-apis-v2/index.html b/meta-apis-v2/index.html index a944054..23e5046 100644 --- a/meta-apis-v2/index.html +++ b/meta-apis-v2/index.html @@ -38,6 +38,11 @@ if (this.readyState == 4 && this.status == 200) { const swaggerJson = this.responseText; const swagger = JSON.parse(swaggerJson); + + swagger['x-tagGroups'] = (swagger['x-tagGroups'] || []).filter(group => { + return !/Organisation|Public/.test(group.name) + }) + swagger.paths = Object.entries(swagger.paths).reduce((pathObj, [path, pathMeta]) => { // skip api-token/plugin/org/public apis @@ -72,7 +77,7 @@ } if (!target) return; push({ - event: "meta/apis-v1", + event: "meta/apis-v2", $current_url: location.href, path: location.pathname, hash: location.hash, @@ -85,7 +90,7 @@ if (selectedElement) { push({ - event: "meta/apis-v1", + event: "meta/apis-v2", $current_url: location.href, path: location.pathname, hash: location.hash, diff --git a/meta-apis-v2/swagger-v2.json b/meta-apis-v2/swagger-v2.json index a7dfc77..003d804 100644 --- a/meta-apis-v2/swagger-v2.json +++ b/meta-apis-v2/swagger-v2.json @@ -56,6 +56,13 @@ "Org Tokens", "Org Users" ] + }, + { + "name": "Workspace APIs", + "tags": [ + "Workspace", + "Workspace base" + ] } ], "servers": [ @@ -86,7 +93,7 @@ "description": "List workspaces" }, "post": { - "summary": "List workspaces", + "summary": "Create workspaces ☁", "operationId": "workspace-create", "responses": { "200": { @@ -149,8 +156,7 @@ "type": "object", "properties": { "workspace": { - "$ref": "#/components/schemas/Workspace", - "required": true + "$ref": "#/components/schemas/Workspace" }, "workspaceUserCount": { "type": "number", @@ -213,37 +219,6 @@ } ] }, - "/api/v2/meta/workspaces/{workspaceId}/upgrade": { - "post": { - "summary": "Upgrade workspace ☁", - "operationId": "workspace-upgrade", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - } - } - } - } - }, - "tags": [ - "Workspace" - ], - "description": "Upgrade workspace" - }, - "parameters": [ - { - "schema": { - "type": "string" - }, - "name": "workspaceId", - "in": "path", - "required": true - } - ] - }, "/api/v2/meta/workspaces/{workspaceId}/users": { "get": { "summary": "Workspace users list ☁", @@ -308,42 +283,6 @@ } ] }, - "/api/v2/meta/workspaces/{toWorkspaceId}/bases/{baseId}/move": { - "post": { - "summary": "Workspace base move ☁", - "operationId": "workspace-base-move", - "responses": { - "200": { - "description": "OK", - "content": { - "application/json": {} - } - } - }, - "tags": [ - "Workspace base" - ], - "description": "Workspace bases list" - }, - "parameters": [ - { - "schema": { - "type": "string" - }, - "name": "toWorkspaceId", - "in": "path", - "required": true - }, - { - "schema": { - "type": "string" - }, - "name": "baseId", - "in": "path", - "required": true - } - ] - }, "/api/v2/meta/workspaces/{workspaceId}/invitations": { "post": { "summary": "Workspace user invite ☁", @@ -463,8 +402,6 @@ } ] }, - - "/api/v2/auth/user/signup": { "post": { "summary": "Signup", @@ -1091,7 +1028,6 @@ } ] }, - "/api/v2/meta/user/profile": { "patch": { "summary": "Update User Profile", @@ -1116,8 +1052,6 @@ } } }, - - "/api/v2/meta/bases/{baseId}/users": { "get": { "summary": "List Base Users", @@ -11969,59 +11903,60 @@ }, "examples": { "Example 1": { - "value": [{ - "SingleLineText": "David", - "LongText": "The sunsets in the small coastal town were a breathtaking sight. The sky would transform from a vibrant blue to warm hues of orange and pink as the day came to an end. Locals and tourists alike would gather at the beach, sipping on cool drinks and watching in awe as the sun dipped below the horizon.", - "CreatedAt": "2023-10-16 08:27:59+00:00", - "UpdatedAt": "2023-10-16 08:56:32+00:00", - "Decimal": 23.658, - "Checkbox": true, - "Attachment": [ - { - "url": "https://some-s3-server.com/nc/uploads/2023/10/16/some-key/3niqHLngUKiU2Hupe8.jpeg", - "title": "2 be loved.jpeg", - "mimetype": "image/jpeg", - "size": 146143, - "signedUrl": "https://some-s3-server.com/nc/uploads/2023/10/16/signed-url-misc-info" - } - ], - "MultiSelect": "Jan,Feb", - "SingleSelect": "Jan", - "Date": "2023-10-16", - "Year": 2023, - "Time": "06:02:00", - "PhoneNumber": "123456789", - "Email": "a@b.com", - "URL": "www.google.com", - "Currency": 23, - "Percent": 55, - "Duration": 74040, - "Rating": 1, - "JSON": { - "name": "John Doe", - "age": 30, - "email": "johndoe@example.com", - "isSubscribed": true, - "address": { - "street": "123 Main Street", - "city": "Anytown", - "zipCode": "12345" - }, - "hobbies": [ - "Reading", - "Hiking", - "Cooking" + "value": [ + { + "SingleLineText": "David", + "LongText": "The sunsets in the small coastal town were a breathtaking sight. The sky would transform from a vibrant blue to warm hues of orange and pink as the day came to an end. Locals and tourists alike would gather at the beach, sipping on cool drinks and watching in awe as the sun dipped below the horizon.", + "CreatedAt": "2023-10-16 08:27:59+00:00", + "UpdatedAt": "2023-10-16 08:56:32+00:00", + "Decimal": 23.658, + "Checkbox": true, + "Attachment": [ + { + "url": "https://some-s3-server.com/nc/uploads/2023/10/16/some-key/3niqHLngUKiU2Hupe8.jpeg", + "title": "2 be loved.jpeg", + "mimetype": "image/jpeg", + "size": 146143, + "signedUrl": "https://some-s3-server.com/nc/uploads/2023/10/16/signed-url-misc-info" + } ], - "scores": { - "math": 95, - "science": 88, - "history": 75 - } - }, - "DateTime": "2023-10-16 08:56:32+00:00", - "Geometry": "23.23, 36.54", - "Number": 5248 - } + "MultiSelect": "Jan,Feb", + "SingleSelect": "Jan", + "Date": "2023-10-16", + "Year": 2023, + "Time": "06:02:00", + "PhoneNumber": "123456789", + "Email": "a@b.com", + "URL": "www.google.com", + "Currency": 23, + "Percent": 55, + "Duration": 74040, + "Rating": 1, + "JSON": { + "name": "John Doe", + "age": 30, + "email": "johndoe@example.com", + "isSubscribed": true, + "address": { + "street": "123 Main Street", + "city": "Anytown", + "zipCode": "12345" + }, + "hobbies": [ + "Reading", + "Hiking", + "Cooking" + ], + "scores": { + "math": 95, + "science": 88, + "history": 75 + } + }, + "DateTime": "2023-10-16 08:56:32+00:00", + "Geometry": "23.23, 36.54", + "Number": 5248 + } ] } } @@ -12084,19 +12019,22 @@ }, "examples": { "Example 1": { - "value": [{ - "Id": 6, - "SingleLineText": "Updated text-1", - "DateTime": "2023-10-19 08:56:32+00:00", - "Geometry": "23.232, 36.542", - "Number": 52482 - },{ - "Id": 7, - "SingleLineText": "Updated text-2", - "DateTime": "2023-10-19 08:56:32+00:00", - "Geometry": "23.232, 36.542", - "Number": 52482 - }] + "value": [ + { + "Id": 6, + "SingleLineText": "Updated text-1", + "DateTime": "2023-10-19 08:56:32+00:00", + "Geometry": "23.232, 36.542", + "Number": 52482 + }, + { + "Id": 7, + "SingleLineText": "Updated text-2", + "DateTime": "2023-10-19 08:56:32+00:00", + "Geometry": "23.232, 36.542", + "Number": 52482 + } + ] } } } @@ -12459,7 +12397,6 @@ "name": "limit", "description": "Enables you to set a limit on the number of linked records you want to retrieve in your API response. By default, your response includes all the available linked records, but by using this parameter, you can control the quantity you receive.\n\nExample: `limit=100` will constrain your response to the first 100 linked records in the dataset." }, - { "$ref": "#/components/parameters/xc-auth" } @@ -12893,7 +12830,7 @@ "path": "download/noco/pm0umqsip16i1u5/m8yn03dncqal6ri//iDL5ednaHz2j2Sa3Cl.jpg", "signedPath": "dltemp/lNoLbqB62Jdo5Rmp/1709308800000/noco/pm0umqsip16i1u5/m8yn03dncqal6ri//iDL5ednaHz2j2Sa3Cl.jpg" }, - "Example 2" :{ + "Example 2": { "mimetype": "image/jpeg", "size": 146143, "title": "2 be loved.jpeg", @@ -14663,7 +14600,7 @@ "$ref": "#/components/schemas/AttachmentReq" }, { - "type" : "null" + "type": "null" } ], "description": "Banner Image URL" @@ -14684,7 +14621,7 @@ "$ref": "#/components/schemas/AttachmentReq" }, { - "type" : "null" + "type": "null" } ], "description": "Logo URL." @@ -20292,6 +20229,106 @@ "type": "boolean" } } + }, + "Workspace": { + "properties": { + "created_at": {}, + "deleted": { + "type": "boolean" + }, + "deleted_at": {}, + "description": { + "type": "string" + }, + "fk_user_id": { + "type": "string" + }, + "fk_org_id": { + "type": "string" + }, + "id": { + "type": "string" + }, + "meta": {}, + "order": { + "type": "number" + }, + "title": { + "type": "string" + }, + "updated_at": {} + }, + "title": "Workspace", + "type": "object" + }, + "WorkspaceList": { + "description": "", + "properties": { + "list": { + "items": { + "$ref": "#/components/schemas/Workspace" + }, + "type": "array" + }, + "pageInfo": { + "$ref": "#/components/schemas/Paginated" + } + }, + "type": "object" + }, + "WorkspaceUser": { + "description": "", + "properties": { + "email": { + "format": "email", + "type": "string" + }, + "fk_user_id": { + "type": "string" + }, + "invite_accepted": { + "type": "boolean" + }, + "invite_token": { + "type": "string" + }, + "roles": { + "type": "string" + } + }, + "title": "Workspace User", + "type": "object", + "x-internal": false + }, + "WorkspaceUserInvite": { + "description": "", + "properties": { + "email": { + "format": "email", + "type": "string" + }, + "roles": { + "type": "string" + } + }, + "title": "Workspace User Invite", + "type": "object", + "x-internal": false + }, + "WorkspaceUserList": { + "description": "", + "properties": { + "list": { + "items": { + "$ref": "#/components/schemas/WorkspaceUser" + }, + "type": "array" + }, + "pageInfo": { + "$ref": "#/components/schemas/Paginated" + } + }, + "type": "object" } }, "responses": {