mirror of
https://github.com/hanzo-fi/stack.git
synced 2026-10-30 20:34:43 +00:00
2012 lines
50 KiB
YAML
2012 lines
50 KiB
YAML
openapi: 3.0.3
|
|
info:
|
|
title: Membership API
|
|
contact: {}
|
|
version: "0.1.0"
|
|
|
|
servers:
|
|
- url: http://localhost:8080
|
|
description: Local server
|
|
|
|
paths:
|
|
/_info:
|
|
get:
|
|
summary: Get server info
|
|
operationId: getServerInfo
|
|
responses:
|
|
200:
|
|
description: Server information
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ServerInfo"
|
|
/organizations:
|
|
get:
|
|
summary: List organizations of the connected user
|
|
operationId: listOrganizations
|
|
parameters:
|
|
- name: expand
|
|
in: query
|
|
schema:
|
|
type: bool
|
|
required: false
|
|
responses:
|
|
200:
|
|
description: List of organizations
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ListOrganizationExpandedResponse"
|
|
post:
|
|
summary: Create organization
|
|
operationId: createOrganization
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/CreateOrganizationRequest"
|
|
responses:
|
|
201:
|
|
description: Organization created
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/CreateOrganizationResponse"
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
|
|
/organizations/expanded:
|
|
get:
|
|
summary: List organizations of the connected user with expanded data
|
|
operationId: listOrganizationsExpanded
|
|
deprecated: true
|
|
responses:
|
|
200:
|
|
description: List of organizations with expanded data
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ListOrganizationExpandedResponse"
|
|
/organizations/{organizationId}:
|
|
get:
|
|
summary: Read organization
|
|
operationId: readOrganization
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: expand
|
|
in: query
|
|
schema:
|
|
type: bool
|
|
required: false
|
|
responses:
|
|
200:
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ReadOrganizationResponse"
|
|
|
|
put:
|
|
summary: Update organization
|
|
operationId: updateOrganization
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/OrganizationData"
|
|
responses:
|
|
200:
|
|
description: Organization updated
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ReadOrganizationResponse"
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
delete:
|
|
summary: Delete organization
|
|
operationId: deleteOrganization
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
204:
|
|
description: Organization deleted
|
|
/organizations/{organizationId}/logs:
|
|
get:
|
|
summary: List logs
|
|
operationId: listLogs
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: query
|
|
schema:
|
|
type: string
|
|
required: false
|
|
- name: cursor
|
|
in: query
|
|
schema:
|
|
type: string
|
|
required: false
|
|
- name: pageSize
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
minimum: 1
|
|
required: false
|
|
- name: action
|
|
in: query
|
|
schema:
|
|
$ref: "#/components/schemas/Action"
|
|
required: false
|
|
- name: userId
|
|
in: query
|
|
schema:
|
|
type: string
|
|
required: false
|
|
- name: key
|
|
in: query
|
|
schema:
|
|
type: string
|
|
required: false
|
|
- name: value
|
|
in: query
|
|
schema:
|
|
type: string
|
|
required: false
|
|
responses:
|
|
200:
|
|
description: Cursor of logs
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/LogCursor"
|
|
/organizations/{organizationId}/users:
|
|
get:
|
|
summary: List users of organization
|
|
operationId: listUsersOfOrganization
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
200:
|
|
description: List of users
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ListUsersResponse"
|
|
/organizations/{organizationId}/users/{userId}:
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: userId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
|
|
get:
|
|
summary: Read user of organization
|
|
operationId: readUserOfOrganization
|
|
responses:
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
200:
|
|
description: Read a user
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ReadOrganizationUserResponse"
|
|
put:
|
|
summary: Update user within an organization
|
|
operationId: upsertOrganizationUser
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/UpdateOrganizationUserRequest"
|
|
responses:
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
204:
|
|
description: Updated user
|
|
delete:
|
|
summary: delete user from organization
|
|
operationId: deleteUserFromOrganization
|
|
description: |
|
|
The owner of the organization can remove anyone while each user can leave any organization where it is not owner.
|
|
responses:
|
|
204:
|
|
description: User deleted from organization
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/stacks:
|
|
get:
|
|
summary: List stacks
|
|
operationId: listStacks
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: all
|
|
in: query
|
|
description: Include deleted and disabled stacks
|
|
schema:
|
|
type: boolean
|
|
required: false
|
|
- name: deleted
|
|
in: query
|
|
description: Include deleted stacks
|
|
deprecated: true
|
|
schema:
|
|
type: boolean
|
|
required: false
|
|
responses:
|
|
200:
|
|
description: List of stacks
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ListStacksResponse"
|
|
post:
|
|
summary: Create stack
|
|
operationId: createStack
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/CreateStackRequest"
|
|
responses:
|
|
202:
|
|
description: Stack created
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/CreateStackResponse"
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/stacks/{stackId}/modules:
|
|
get:
|
|
summary: List modules of a stack
|
|
operationId: listModules
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
200:
|
|
description: List of modules
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ListModulesResponse"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
post:
|
|
summary: enable module
|
|
operationId: enableModule
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: name
|
|
in: query
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
202:
|
|
description: Module enabled
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
delete:
|
|
summary: disable module
|
|
operationId: disableModule
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: name
|
|
in: query
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
202:
|
|
description: Module disabled
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
|
|
/organizations/{organizationId}/stacks/{stackId}/upgrade:
|
|
put:
|
|
summary: Upgrade stack
|
|
operationId: upgradeStack
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/StackVersion"
|
|
responses:
|
|
202:
|
|
description: Stack upgrade accepted
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/stacks/{stackId}:
|
|
get:
|
|
summary: Find stack
|
|
operationId: getStack
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
200:
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ReadStackResponse"
|
|
404:
|
|
description: NotFound
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
put:
|
|
summary: Update stack
|
|
operationId: updateStack
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/UpdateStackRequest"
|
|
responses:
|
|
200:
|
|
description: Updated stack
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ReadStackResponse"
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
|
|
delete:
|
|
summary: Delete stack
|
|
operationId: deleteStack
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: force
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
required: false
|
|
responses:
|
|
204:
|
|
description: Stack deleted
|
|
400:
|
|
description: Bad request
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/stacks/{stackId}/users:
|
|
get:
|
|
summary: List stack users accesses within an organization
|
|
operationId: listStackUsersAccesses
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
200:
|
|
description: Stack users access role
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/StackUserAccessResponse"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/stacks/{stackId}/users/{userId}:
|
|
get:
|
|
summary: Read stack user access role within an organization
|
|
operationId: readStackUserAccess
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: userId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
200:
|
|
description: Stack user access role
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ReadStackUserAccess"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
delete:
|
|
summary: Delete stack user access role within an organization
|
|
operationId: deleteStackUserAccess
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: userId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
204:
|
|
description: Updated user
|
|
put:
|
|
summary: Update stack user access role within an organization
|
|
operationId: upsertStackUserAccess
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: userId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/UpdateStackUserRequest"
|
|
responses:
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
204:
|
|
description: Updated user
|
|
/organizations/{organizationId}/stacks/{stackId}/disable:
|
|
put:
|
|
summary: Disable stack
|
|
operationId: disableStack
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
202:
|
|
description: Stack disabled
|
|
400:
|
|
description: Bad request
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/stacks/{stackId}/enable:
|
|
put:
|
|
summary: Enable stack
|
|
operationId: enableStack
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
202:
|
|
description: Stack enabled
|
|
400:
|
|
description: Bad request
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/stacks/{stackId}/restore:
|
|
put:
|
|
summary: Restore stack
|
|
operationId: restoreStack
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
202:
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ReadStackResponse"
|
|
400:
|
|
description: Bad request
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/stacks/{stackId}/stargate/enable:
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
put:
|
|
summary: Enable stargate on a stack
|
|
operationId: enableStargate
|
|
responses:
|
|
202:
|
|
description: OK
|
|
400:
|
|
description: Bad request
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/stacks/{stackId}/stargate/disable:
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: stackId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
put:
|
|
summary: Disable stargate on a stack
|
|
operationId: disableStargate
|
|
responses:
|
|
202:
|
|
description: OK
|
|
400:
|
|
description: Bad request
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/me/invitations:
|
|
get:
|
|
summary: List invitations of the user
|
|
operationId: listInvitations
|
|
parameters:
|
|
- in: query
|
|
name: status
|
|
required: false
|
|
description: Status of organizations
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: organization
|
|
required: false
|
|
description: Status of organizations
|
|
schema:
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: List of the invitations for the connected user
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ListInvitationsResponse"
|
|
/me/invitations/{invitationId}/accept:
|
|
post:
|
|
summary: Accept invitation
|
|
operationId: acceptInvitation
|
|
parameters:
|
|
- name: invitationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
204:
|
|
description: Invitation accepted
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/me/invitations/{invitationId}/reject:
|
|
post:
|
|
summary: Decline invitation
|
|
operationId: declineInvitation
|
|
parameters:
|
|
- name: invitationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
204:
|
|
description: Invitation declined
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/invitations:
|
|
get:
|
|
summary: List invitations of the organization
|
|
operationId: listOrganizationInvitations
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- in: query
|
|
name: status
|
|
required: false
|
|
description: Status of organizations
|
|
schema:
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: List of the invitations for the organization
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ListInvitationsResponse"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
post:
|
|
summary: Create invitation
|
|
operationId: createInvitation
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: email
|
|
in: query
|
|
schema:
|
|
type: string
|
|
required: true
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/InvitationClaim"
|
|
responses:
|
|
201:
|
|
description: Invitation created
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/CreateInvitationResponse"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/invitations/{invitationId}:
|
|
delete:
|
|
summary: Delete invitation
|
|
operationId: deleteInvitation
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: invitationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
responses:
|
|
204:
|
|
description: Invitation deleted
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not Authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/regions:
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
|
|
get:
|
|
summary: List regions
|
|
operationId: listRegions
|
|
responses:
|
|
200:
|
|
description: List of the regions
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ListRegionsResponse"
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
post:
|
|
summary: Create a private region
|
|
operationId: createPrivateRegion
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/CreatePrivateRegionRequest"
|
|
responses:
|
|
400:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
200:
|
|
description: Created region
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/CreatedPrivateRegionResponse"
|
|
/organizations/{organizationId}/regions/{regionId}:
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: regionId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
get:
|
|
summary: Get region
|
|
operationId: getRegion
|
|
responses:
|
|
404:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
200:
|
|
description: Get a specific region
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/GetRegionResponse"
|
|
delete:
|
|
summary: Delete region
|
|
operationId: deleteRegion
|
|
responses:
|
|
204:
|
|
description: Delete a specific region
|
|
404:
|
|
description: Not found
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
400:
|
|
description: Bad request
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Not authorized
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
/organizations/{organizationId}/regions/{regionId}/versions:
|
|
parameters:
|
|
- name: organizationId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- name: regionId
|
|
in: path
|
|
schema:
|
|
type: string
|
|
required: true
|
|
get:
|
|
summary: Get region versions
|
|
operationId: getRegionVersions
|
|
responses:
|
|
404:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
403:
|
|
description: Error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
200:
|
|
description: Get a specific region
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/GetRegionVersionsResponse"
|
|
/me:
|
|
get:
|
|
summary: Read user
|
|
operationId: readConnectedUser
|
|
responses:
|
|
200:
|
|
description: Read a user
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/ReadUserResponse"
|
|
security:
|
|
- oauth2: []
|
|
|
|
components:
|
|
securitySchemes:
|
|
oauth2:
|
|
type: oauth2
|
|
flows:
|
|
authorizationCode:
|
|
authorizationUrl: /authorize
|
|
tokenUrl: /oauth/token
|
|
scopes:
|
|
openid: Enable OIDC
|
|
email: Ask email access
|
|
schemas:
|
|
Module:
|
|
type: object
|
|
required:
|
|
- name
|
|
- state
|
|
- status
|
|
- lastStatusUpdate
|
|
- lastStateUpdate
|
|
properties:
|
|
name:
|
|
type: string
|
|
state:
|
|
type: string
|
|
status:
|
|
type: string
|
|
lastStatusUpdate:
|
|
type: string
|
|
format: date-time
|
|
lastStateUpdate:
|
|
type: string
|
|
format: date-time
|
|
ListModulesResponse:
|
|
type: object
|
|
required:
|
|
- data
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Module"
|
|
Action:
|
|
type: string
|
|
enum:
|
|
- agents.connected
|
|
- agents.disconnected
|
|
- invitations.created
|
|
- invitations.accepted
|
|
- invitations.rejected
|
|
- organizations.created
|
|
- organizations.updated
|
|
- organizations.deleted
|
|
- organizations.user.deleted
|
|
- organizations.user.updated
|
|
- regions.created
|
|
- regions.deleted
|
|
- users.created
|
|
- users.deleted
|
|
- stacks.disposal
|
|
- stacks.disposal-reset
|
|
- stacks.warned
|
|
- stacks.pruned
|
|
- stacks.status.updated
|
|
- stacks.created
|
|
- stacks.updated
|
|
- stacks.deleted
|
|
- stacks.restored
|
|
- stacks.disabled
|
|
- stacks.enabled
|
|
- stacks.upgraded
|
|
- stacks.stargate.enabled
|
|
- stacks.stargate.disabled
|
|
- stacks.user.updated
|
|
- stacks.user.deleted
|
|
- stacks.reachness.updated
|
|
- stacks.module.enabled
|
|
- stacks.module.disabled
|
|
- stacks.module.status.updated
|
|
LogCursor:
|
|
properties:
|
|
data:
|
|
allOf:
|
|
- $ref: "#/components/schemas/Cursor"
|
|
- type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Log"
|
|
required:
|
|
- data
|
|
Log:
|
|
type: object
|
|
required:
|
|
- seq
|
|
- organizationId
|
|
- userId
|
|
- action
|
|
- date
|
|
- data
|
|
properties:
|
|
seq:
|
|
type: string
|
|
example: 1e6f8b6e-1b6b-4b3b-8b3b-1b6b4b3b8b3b
|
|
organizationId:
|
|
type: string
|
|
userId:
|
|
type: string
|
|
action:
|
|
type: string
|
|
date:
|
|
type: string
|
|
format: date-time
|
|
data:
|
|
type: object
|
|
Cursor:
|
|
type: object
|
|
required:
|
|
- pageSize
|
|
- hasMore
|
|
- data
|
|
properties:
|
|
pageSize:
|
|
type: integer
|
|
format: int64
|
|
minimum: 1
|
|
maximum: 1000
|
|
example: 15
|
|
hasMore:
|
|
type: boolean
|
|
example: false
|
|
previous:
|
|
type: string
|
|
example: YXVsdCBhbmQgYSBtYXhpbXVtIG1heF9yZXN1bHRzLol=
|
|
next:
|
|
type: string
|
|
example: ""
|
|
|
|
CreatePrivateRegionRequest:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
required:
|
|
- name
|
|
CreatedPrivateRegionResponse:
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/PrivateRegion"
|
|
required:
|
|
- data
|
|
PrivateRegion:
|
|
allOf:
|
|
- $ref: "#/components/schemas/Region"
|
|
- type: object
|
|
properties:
|
|
organizationID:
|
|
type: string
|
|
creatorID:
|
|
type: string
|
|
secret:
|
|
type: object
|
|
properties:
|
|
lastDigits:
|
|
type: string
|
|
clear:
|
|
type: string
|
|
required:
|
|
- lastDigits
|
|
required:
|
|
- organizationID
|
|
- creatorID
|
|
PublicRegion:
|
|
allOf:
|
|
- $ref: "#/components/schemas/Region"
|
|
- type: object
|
|
properties:
|
|
production:
|
|
type: boolean
|
|
required:
|
|
- production
|
|
AnyRegion:
|
|
allOf:
|
|
- $ref: "#/components/schemas/Region"
|
|
- type: object
|
|
properties:
|
|
clientID:
|
|
type: string
|
|
organizationID:
|
|
type: string
|
|
creator:
|
|
$ref: "#/components/schemas/User"
|
|
production:
|
|
type: boolean
|
|
public:
|
|
type: boolean
|
|
version:
|
|
type: string
|
|
required:
|
|
- public
|
|
OrganizationData:
|
|
type: object
|
|
required:
|
|
- name
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: Organization name
|
|
defaultOrganizationAccess:
|
|
$ref: "#/components/schemas/Role"
|
|
defaultStackAccess:
|
|
$ref: "#/components/schemas/Role"
|
|
domain:
|
|
type: string
|
|
description: Organization domain
|
|
Organization:
|
|
allOf:
|
|
- $ref: "#/components/schemas/OrganizationData"
|
|
- type: object
|
|
required:
|
|
- id
|
|
- ownerId
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: Organization ID
|
|
ownerId:
|
|
type: string
|
|
description: Owner ID
|
|
availableStacks:
|
|
type: integer
|
|
description: Number of available stacks
|
|
availableSandboxes:
|
|
type: integer
|
|
description: Number of available sandboxes
|
|
createdAt:
|
|
type: string
|
|
format: date-time
|
|
updatedAt:
|
|
type: string
|
|
format: date-time
|
|
StackData:
|
|
type: object
|
|
required:
|
|
- name
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: Stack name
|
|
metadata:
|
|
type: object
|
|
additionalProperties:
|
|
type: string
|
|
StackVersion:
|
|
type: object
|
|
properties:
|
|
version:
|
|
type: string
|
|
description: Supported only with agent version >= v0.7.0
|
|
StackLifeCycle:
|
|
type: object
|
|
required:
|
|
- status
|
|
- state
|
|
- expectedStatus
|
|
- lastStateUpdate
|
|
- lastExpectedStatusUpdate
|
|
- lastStatusUpdate
|
|
properties:
|
|
status:
|
|
type: string
|
|
enum:
|
|
- UNKNOWN
|
|
- PROGRESSING
|
|
- READY
|
|
- DISABLED
|
|
- DELETED
|
|
state:
|
|
type: string
|
|
enum:
|
|
- ACTIVE
|
|
- DISABLED
|
|
- DELETED
|
|
expectedStatus:
|
|
type: string
|
|
enum:
|
|
- UNKNOWN
|
|
- PROGRESSING
|
|
- READY
|
|
- DISABLED
|
|
- DELETED
|
|
lastStateUpdate:
|
|
type: string
|
|
format: date-time
|
|
lastExpectedStatusUpdate:
|
|
type: string
|
|
format: date-time
|
|
lastStatusUpdate:
|
|
type: string
|
|
format: date-time
|
|
StackReachability:
|
|
properties:
|
|
reachable:
|
|
description: Stack is reachable through Stargate
|
|
type: boolean
|
|
lastReachableUpdate:
|
|
description: Last time the stack was reachable
|
|
format: date-time
|
|
type: string
|
|
required:
|
|
- reachable
|
|
type: object
|
|
Stack:
|
|
allOf:
|
|
- $ref: "#/components/schemas/StackData"
|
|
- $ref: "#/components/schemas/StackVersion"
|
|
- $ref: "#/components/schemas/StackLifeCycle"
|
|
- $ref: "#/components/schemas/StackReachability"
|
|
- type: object
|
|
required:
|
|
- id
|
|
- organizationId
|
|
- uri
|
|
- regionID
|
|
- stargateEnabled
|
|
- synchronised
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: Stack ID
|
|
organizationId:
|
|
type: string
|
|
description: Organization ID
|
|
uri:
|
|
type: string
|
|
description: Base stack uri
|
|
regionID:
|
|
type: string
|
|
description: The region where the stack is installed
|
|
stargateEnabled:
|
|
type: boolean
|
|
createdAt:
|
|
type: string
|
|
format: date-time
|
|
deletedAt:
|
|
type: string
|
|
format: date-time
|
|
disabledAt:
|
|
type: string
|
|
format: date-time
|
|
auditEnabled:
|
|
type: boolean
|
|
synchronised:
|
|
type: boolean
|
|
UserData:
|
|
allOf:
|
|
- type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
required:
|
|
- email
|
|
Role:
|
|
type: string
|
|
default: ""
|
|
enum:
|
|
- ""
|
|
- NONE
|
|
- ADMIN
|
|
- GUEST
|
|
- USER
|
|
User:
|
|
allOf:
|
|
- $ref: "#/components/schemas/UserData"
|
|
- type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: User ID
|
|
OrganizationUserArray:
|
|
type: array
|
|
items:
|
|
allOf:
|
|
- $ref: "#/components/schemas/OrganizationUser"
|
|
ReadOrganizationUserResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/OrganizationUser"
|
|
OrganizationUser:
|
|
allOf:
|
|
- type: object
|
|
required:
|
|
- role
|
|
properties:
|
|
role:
|
|
$ref: "#/components/schemas/Role"
|
|
- $ref: "#/components/schemas/User"
|
|
OrganizationArray:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Organization"
|
|
StackArray:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Stack"
|
|
UserArray:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/User"
|
|
ReadStackUserAccess:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/StackUserAccess"
|
|
StackUserAccess:
|
|
allOf:
|
|
- type: object
|
|
required:
|
|
- stackId
|
|
- userId
|
|
- role
|
|
properties:
|
|
stackId:
|
|
type: string
|
|
description: Stack ID
|
|
userId:
|
|
type: string
|
|
description: User ID
|
|
role:
|
|
$ref: "#/components/schemas/Role"
|
|
StackUserAccessResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/StackUserAccessArray"
|
|
StackUserAccessArray:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/StackUserAccess"
|
|
ListOrganizationResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/OrganizationArray"
|
|
CreateOrganizationRequest:
|
|
$ref: "#/components/schemas/OrganizationData"
|
|
CreateOrganizationResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/OrganizationExpanded"
|
|
ReadOrganizationResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/OrganizationExpanded"
|
|
ListStacksResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/StackArray"
|
|
ListUsersResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/OrganizationUserArray"
|
|
CreateStackRequest:
|
|
allOf:
|
|
- $ref: "#/components/schemas/StackData"
|
|
- $ref: "#/components/schemas/StackVersion"
|
|
- type: object
|
|
properties:
|
|
regionID:
|
|
type: string
|
|
required:
|
|
- regionID
|
|
UpdateStackRequest:
|
|
allOf:
|
|
- $ref: "#/components/schemas/StackData"
|
|
CreateStackResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/Stack"
|
|
ReadStackResponse:
|
|
$ref: "#/components/schemas/CreateStackResponse"
|
|
ReadUserResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/User"
|
|
ListInvitationsResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Invitation"
|
|
CreateInvitationResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/Invitation"
|
|
Error:
|
|
type: object
|
|
properties:
|
|
errorCode:
|
|
type: string
|
|
errorMessage:
|
|
type: string
|
|
required:
|
|
- errorCode
|
|
Invitation:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
organizationId:
|
|
type: string
|
|
userEmail:
|
|
type: string
|
|
status:
|
|
type: string
|
|
enum:
|
|
- PENDING
|
|
- ACCEPTED
|
|
- REJECTED
|
|
- CANCELLED
|
|
creationDate:
|
|
type: string
|
|
format: date-time
|
|
updatedAt:
|
|
type: string
|
|
format: date-tim
|
|
role:
|
|
$ref: "#/components/schemas/Role"
|
|
stackClaims:
|
|
$ref: "#/components/schemas/StackClaims"
|
|
userId:
|
|
type: string
|
|
organizationAccess:
|
|
$ref: "#/components/schemas/OrganizationUser"
|
|
required:
|
|
- creationDate
|
|
- status
|
|
- role
|
|
- userEmail
|
|
- organizationId
|
|
- id
|
|
InvitationClaim:
|
|
type: object
|
|
properties:
|
|
role:
|
|
$ref: "#/components/schemas/Role"
|
|
stackClaims:
|
|
$ref: "#/components/schemas/StackClaims"
|
|
required:
|
|
- orgClaim
|
|
- stackClaims
|
|
StackClaims:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/StackClaim"
|
|
StackClaim:
|
|
type: object
|
|
required:
|
|
- id
|
|
- role
|
|
properties:
|
|
id:
|
|
type: string
|
|
role:
|
|
$ref: "#/components/schemas/Role"
|
|
Region:
|
|
type: object
|
|
required:
|
|
- id
|
|
- baseUrl
|
|
- active
|
|
- createdAt
|
|
- name
|
|
- capabilities
|
|
properties:
|
|
id:
|
|
type: string
|
|
baseUrl:
|
|
type: string
|
|
createdAt:
|
|
type: string
|
|
format: datetime
|
|
active:
|
|
type: boolean
|
|
lastPing:
|
|
type: string
|
|
format: date-time
|
|
name:
|
|
type: string
|
|
capabilities:
|
|
$ref: "#/components/schemas/RegionCapability"
|
|
RegionCapability:
|
|
type: object
|
|
properties:
|
|
MODULE_LIST:
|
|
type: array
|
|
items:
|
|
type: string
|
|
EE:
|
|
type: array
|
|
items:
|
|
type: string
|
|
RegionCapabilityKeys:
|
|
type: string
|
|
enum:
|
|
- MODULE_LIST
|
|
- EE
|
|
ListOrganizationExpandedResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
allOf:
|
|
- $ref: "#/components/schemas/OrganizationExpanded"
|
|
OrganizationExpanded:
|
|
allOf:
|
|
- $ref: "#/components/schemas/Organization"
|
|
- type: object
|
|
properties:
|
|
totalStacks:
|
|
type: integer
|
|
totalUsers:
|
|
type: integer
|
|
owner:
|
|
$ref: "#/components/schemas/User"
|
|
ListRegionsResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/AnyRegion"
|
|
required:
|
|
- data
|
|
GetRegionResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: "#/components/schemas/AnyRegion"
|
|
required:
|
|
- data
|
|
|
|
ServerInfo:
|
|
type: object
|
|
required:
|
|
- version
|
|
properties:
|
|
version:
|
|
type: string
|
|
capabilities:
|
|
type: array
|
|
items:
|
|
allOf:
|
|
- $ref: "#/components/schemas/Capability"
|
|
consoleURL:
|
|
type: string
|
|
Capability:
|
|
type: string
|
|
enum:
|
|
- MODULE_SELECTION
|
|
Version:
|
|
type: object
|
|
required:
|
|
- name
|
|
- versions
|
|
properties:
|
|
name:
|
|
type: string
|
|
versions:
|
|
type: object
|
|
additionalProperties:
|
|
type: string
|
|
UpdateOrganizationUserRequest:
|
|
type: object
|
|
required:
|
|
- role
|
|
properties:
|
|
role:
|
|
$ref: "#/components/schemas/Role"
|
|
UpdateStackUserRequest:
|
|
type: object
|
|
required:
|
|
- role
|
|
properties:
|
|
role:
|
|
$ref: "#/components/schemas/Role"
|
|
GetRegionVersionsResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Version"
|
|
required:
|
|
- data
|