Spectro Cloud users API
The users API from Spectro Cloud — 44 operation(s) for users.
The users API from Spectro Cloud — 44 operation(s) for users.
swagger: '2.0'
info:
title: Local Management APIs activations users API
version: v1
servers:
- url: https://edge-host-ip:5080
schemes:
- http
- https
consumes:
- application/json
produces:
- application/json
tags:
- name: users
x-displayName: Users
paths:
/v1/users/current:
get:
description: Get current logged in user's information
tags:
- users
summary: Get current logged in user's information
operationId: V1CurrentUser
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1UserSpec'
'500':
description: Server Error
schema:
$ref: '#/definitions/v1InternalServerError'
security:
- Authorization: []
patch:
description: Patches the current logged in user's configuration
tags:
- users
summary: Patches the current logged in user's configuration
operationId: v1PatchCurrentUser
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1UserSpec'
responses:
'202':
description: (empty)
schema:
$ref: '#/definitions/v1AcceptedResponseWithMessage'
'500':
description: Internal server error
schema:
$ref: '#/definitions/v1Error'
security:
- Authorization: []
/v1/users/default/login:
post:
description: Authenticates the user with the specified credentials
tags:
- users
summary: Authenticates the user with the specified credentials
operationId: V1UserLogin
parameters:
- type: boolean
default: true
description: Describes a way to set cookie from backend.
name: setCookie
in: query
- type: boolean
default: false
description: Flag which if set to true will extend token timeout for the user to 24hrs and if not set will default to 2hrs
name: extendedSession
in: query
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1AuthLogin'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1LoginSuccess'
'400':
description: Invalid input
schema:
$ref: '#/definitions/v1BadRequest'
'500':
description: Server Error
schema:
$ref: '#/definitions/v1InternalServerError'
/v1/users/default/logout:
post:
tags:
- users
summary: Logs out the user from the system
operationId: V1UserLogout
responses:
'200':
description: OK
'400':
description: Invalid input
schema:
$ref: '#/definitions/v1BadRequest'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/v1Unauthorized'
'500':
description: Server Error
schema:
$ref: '#/definitions/v1InternalServerError'
security:
- Authorization: []
/v1/users/default/password/reset:
post:
description: Resets the user's password
tags:
- users
summary: Resets the user's password
operationId: V1UserPasswordReset
parameters:
- name: body
in: body
required: true
schema:
$ref: '#/definitions/v1PasswordResetRequest'
responses:
'204':
description: No Content
schema:
$ref: '#/definitions/v1NoContent'
'400':
description: Invalid input
schema:
$ref: '#/definitions/v1BadRequest'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/v1Unauthorized'
security:
- Authorization: []
/v1/users/default/token/renewal:
post:
tags:
- users
summary: Refreshes the authentication token of the user
operationId: V1UserTokenRenewal
parameters:
- type: boolean
default: false
description: Flag which if set to true will extend token timeout for the user to 24hrs and if not set will default to 2hrs
name: extendedSession
in: query
- description: Refresh token in request body (optional - can also be sent via RefreshToken cookie)
name: body
in: body
schema:
type: object
properties:
refreshToken:
description: Refresh token for renewal (optional if sent via RefreshToken cookie)
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1UserToken'
'400':
description: Invalid input
schema:
$ref: '#/definitions/v1BadRequest'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/v1Unauthorized'
'500':
description: Server Error
schema:
$ref: '#/definitions/v1InternalServerError'
/v1/users:
get:
description: Lists users the given user context
operationId: v1UsersList
parameters:
- description: 'Set of fields to be presented in the response with values. The fields are comma separated. Eg: metadata.uid,metadata.name'
in: query
name: fields
type: string
- description: 'Filters can be combined with AND, OR operators with field path name. Eg: metadata.name=TestServiceANDspec.cloudType=aws
Server will be restricted to certain fields based on the indexed data for each resource.'
in: query
name: filters
type: string
- description: 'Specify the fields with sort order. 1 indicates ascending and -1 for descending. Eg: orderBy=metadata.name=1,metadata.uid=-1'
in: query
name: orderBy
type: string
- default: 50
description: 'limit is a maximum number of responses to return for a list call. Default and maximum value of the limit is 50.
If more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.'
format: int64
in: query
name: limit
type: integer
- description: offset is the next index number from which the response will start. The response offset value can be used along with continue token for the pagination.
format: int64
in: query
name: offset
type: integer
- description: continue token to paginate the subsequent data items
in: query
name: continue
type: string
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1Users'
security:
- ApiKey: []
- Authorization: []
summary: Lists users
tags:
- users
post:
description: A user is created for the given user context
operationId: v1UsersCreate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Create User
tags:
- users
/v1/users/assets/locations:
get:
operationId: v1UsersAssetsLocationGet
parameters:
- description: 'Filters can be combined with AND, OR operators with field path name. Eg: metadata.name=TestServiceANDspec.cloudType=aws
Server will be restricted to certain fields based on the indexed data for each resource.'
in: query
name: filters
type: string
- description: 'Specify the fields with sort order. 1 indicates ascending and -1 for descending. Eg: orderBy=metadata.name=1,metadata.uid=-1'
in: query
name: orderBy
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1UserAssetsLocations'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified users location
tags:
- users
/v1/users/assets/locations/azure:
post:
operationId: v1UsersAssetsLocationAzureCreate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetsLocationAzure'
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Create a Azure location
tags:
- users
/v1/users/assets/locations/azure/{uid}:
parameters:
- description: Specify the Azure location uid
in: path
name: uid
required: true
type: string
get:
operationId: v1UsersAssetsLocationAzureGet
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1UserAssetsLocationAzure'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified Azure location
tags:
- users
put:
operationId: v1UsersAssetsLocationAzureUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetsLocationAzure'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified Azure location
tags:
- users
/v1/users/assets/locations/gcp:
post:
operationId: v1UsersAssetsLocationGcpCreate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetsLocationGcp'
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Create a GCP location
tags:
- users
/v1/users/assets/locations/gcp/{uid}:
parameters:
- description: Specify the GCP location uid
in: path
name: uid
required: true
type: string
get:
operationId: v1UsersAssetsLocationGcpGet
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1UserAssetsLocationGcp'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified GCP location
tags:
- users
put:
operationId: v1UsersAssetsLocationGcpUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetsLocationGcp'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified GCP location
tags:
- users
/v1/users/assets/locations/minio:
post:
operationId: v1UsersAssetsLocationMinioCreate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetsLocationS3'
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Create a MinIO location
tags:
- users
/v1/users/assets/locations/minio/{uid}:
parameters:
- description: Specify the MinIO location uid
in: path
name: uid
required: true
type: string
get:
operationId: v1UsersAssetsLocationMinioGet
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1UserAssetsLocationS3'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified MinIO location
tags:
- users
put:
operationId: v1UsersAssetsLocationMinioUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetsLocationS3'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified MinIO location
tags:
- users
/v1/users/assets/locations/s3:
post:
operationId: v1UsersAssetsLocationS3Create
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetsLocationS3'
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Create a S3 location
tags:
- users
/v1/users/assets/locations/s3/{uid}:
parameters:
- description: Specify the S3 location uid
in: path
name: uid
required: true
type: string
delete:
operationId: v1UsersAssetsLocationS3Delete
responses:
'204':
description: The resource was deleted successfully
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified S3 location
tags:
- users
get:
operationId: v1UsersAssetsLocationS3Get
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1UserAssetsLocationS3'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified S3 location
tags:
- users
put:
operationId: v1UsersAssetsLocationS3Update
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetsLocationS3'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified S3 location
tags:
- users
/v1/users/assets/locations/{type}/{uid}/default:
parameters:
- description: Specify the location uid
in: path
name: uid
required: true
type: string
- description: Specify the location type [aws/azure/gcp/minio/s3]
in: path
name: type
required: true
type: string
patch:
operationId: v1UsersAssetsLocationDefaultUpdate
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Update the default backup location
tags:
- users
/v1/users/assets/locations/{uid}:
parameters:
- description: Specify the location uid
in: path
name: uid
required: true
type: string
delete:
operationId: v1UsersAssetsLocationDelete
responses:
'204':
description: The resource was deleted successfully
security:
- ApiKey: []
- Authorization: []
summary: Deletes the specified location
tags:
- users
/v1/users/assets/sshkeys:
get:
operationId: v1UsersAssetsSshGet
parameters:
- description: 'Filters can be combined with AND, OR operators with field path name. Eg: metadata.name=TestServiceANDspec.cloudType=aws
Server will be restricted to certain fields based on the indexed data for each resource.'
in: query
name: filters
type: string
- description: 'Specify the fields with sort order. 1 indicates ascending and -1 for descending. Eg: orderBy=metadata.name=1,metadata.uid=-1'
in: query
name: orderBy
type: string
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1UserAssetsSsh'
security:
- ApiKey: []
- Authorization: []
summary: Returns the SSH keys
tags:
- users
post:
operationId: v1UserAssetsSshCreate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetSshEntity'
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Creates a SSH key
tags:
- users
/v1/users/assets/sshkeys/{uid}:
parameters:
- description: Specify the SSH key uid
in: path
name: uid
required: true
type: string
delete:
operationId: v1UsersAssetSshDelete
responses:
'204':
description: The resource was deleted successfully
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified user ssh key
tags:
- users
get:
operationId: v1UsersAssetSshGetUid
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1UserAssetSsh'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified user ssh key
tags:
- users
put:
operationId: v1UsersAssetSshUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UserAssetSsh'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified user ssh key
tags:
- users
/v1/users/assets/vsphere/dnsMapping:
get:
operationId: v1VsphereMappingGet
parameters:
- description: Specify the vSphere gateway uid
in: query
name: gatewayUid
required: true
type: string
- description: Specify the vSphere datacenter name
in: query
name: datacenter
required: true
type: string
- description: Specify the vSphere network name
in: query
name: network
required: true
type: string
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1VsphereDnsMapping'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified vSphere DNS mapping
tags:
- users
/v1/users/assets/vsphere/dnsMappings:
get:
operationId: v1VsphereDnsMappingsGet
parameters:
- description: 'Filters can be combined with AND, OR operators with field path name. Eg: metadata.name=TestServiceANDspec.cloudType=aws
Server will be restricted to certain fields based on the indexed data for each resource.'
in: query
name: filters
type: string
- description: 'Specify the fields with sort order. 1 indicates ascending and -1 for descending. Eg: orderBy=metadata.name=1,metadata.uid=-1'
in: query
name: orderBy
type: string
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1VsphereDnsMappings'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified vSphere DNS mappings
tags:
- users
post:
operationId: v1VsphereDnsMappingCreate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1VsphereDnsMapping'
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Create a vSphere DNS mapping
tags:
- users
/v1/users/assets/vsphere/dnsMappings/{uid}:
parameters:
- description: Specify the vSphere DNS mapping uid
in: path
name: uid
required: true
type: string
delete:
operationId: v1VsphereDnsMappingDelete
responses:
'204':
description: The resource was deleted successfully
security:
- ApiKey: []
- Authorization: []
summary: Deletes the specified vSphere DNS mapping
tags:
- users
get:
operationId: v1VsphereDnsMappingGet
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1VsphereDnsMapping'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified vSphere DNS mapping
tags:
- users
put:
operationId: v1VsphereDnsMappingUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1VsphereDnsMapping'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified vSphere DNS mapping
tags:
- users
/v1/users/auth/tokens/revoke:
post:
operationId: v1UsersAuthTokensRevoke
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1AuthTokenRevoke'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Revoke access of specific token(s)
tags:
- users
/v1/users/config/scar:
get:
operationId: V1UsersConfigScarGet
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1SystemScarSpec'
security:
- ApiKey: []
- Authorization: []
summary: Get the system Spectro repository. Restricted to edge services
tags:
- users
/v1/users/info:
get:
description: Returns a basic information of User for the specified uid.
operationId: v1UsersInfoGet
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1UserInfo'
security:
- ApiKey: []
- Authorization: []
summary: Returns the base information of specified User
tags:
- users
/v1/users/kubectl/session/{sessionUid}:
get:
description: gets users kubectl session
operationId: V1UsersKubectlSessionUid
parameters:
- in: path
name: sessionUid
required: true
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1UserKubectlSession'
security:
- ApiKey: []
- Authorization: []
summary: gets users kubectl session
tags:
- users
/v1/users/meta:
get:
operationId: v1UsersMetadata
responses:
'200':
description: An array of users metadata items
schema:
$ref: '#/definitions/v1UsersMetadata'
security:
- ApiKey: []
- Authorization: []
summary: Retrieves a list of users metadata
tags:
- users
/v1/users/mfa/devices:
get:
operationId: V1UsersMfaDevicesList
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1MfaDevices'
security:
- ApiKey: []
- Authorization: []
summary: V1UsersMfaDevicesList
tags:
- users
/v1/users/mfa/devices/{deviceName}:
delete:
operationId: V1UsersMfaDevicesNameDelete
parameters:
- in: path
name: deviceName
required: true
type: string
responses:
'204':
description: Ok response without content
headers:
AuditUid:
description: Audit uid for the request
type: string
security:
- ApiKey: []
- Authorization: []
summary: V1UsersMfaDevicesNameDelete
tags:
- users
get:
operationId: V1UsersMfaDevicesNameGet
parameters:
- in: path
name: deviceName
required: true
type: string
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1MfaDeviceMeta'
security:
- ApiKey: []
- Authorization: []
summary: V1UsersMfaDevicesNameGet
tags:
- users
/v1/users/mfa/register/device/finish:
post:
operationId: V1UsersMfaRegisterDeviceFinish
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1MfaCredentialCreationRequest'
responses:
'204':
description: Ok response without content
headers:
AuditUid:
description: Audit uid for the request
type: string
security:
- ApiKey: []
- Authorization: []
summary: V1UsersMfaRegisterDeviceFinish
tags:
- users
/v1/users/mfa/register/device/start:
post:
operationId: V1UsersMfaRegisterDeviceStart
parameters:
- in: query
name: token
type: string
- in: body
name: body
schema:
$ref: '#/definitions/v1MfaDeviceName'
responses:
'200':
description: (empty)
schema:
$ref: '#/definitions/v1MfaRegistrationStart'
security:
- ApiKey: []
- Authorization: []
summary: V1UsersMfaRegisterDeviceStart
tags:
- users
/v1/users/password/change:
patch:
description: User password change request via current password and emailId
operationId: V1UsersPasswordChange
parameters:
- in: body
name: body
required: true
schema:
properties:
currentPassword:
type: string
emailId:
type: string
newPassword:
type: string
required:
- newPassword
- emailId
- currentPassword
type: object
responses:
'204':
description: Ok response without content
headers:
AuditUid:
description: Audit uid for the request
type: string
security:
- ApiKey: []
- Authorization: []
summary: User password change request using the user emailId
tags:
- users
/v1/users/password/reset:
patch:
description: User password request will be sent to the supplied emailId
operationId: v1UsersEmailPasswordReset
parameters:
- in: body
name: body
required: true
schema:
properties:
emailId:
type: string
required:
- emailId
type: object
responses:
'204':
description: Ok response without content
headers:
AuditUid:
description: Audit uid for the request
type: string
security:
- ApiKey: []
- Authorization: []
summary: User password reset request using the email id
tags:
- users
/v1/users/summary:
get:
description: Deprecated, Use Post api - Returns a list of user summaries
operationId: v1UsersSummary
parameters:
- default: 50
description: 'limit is a maximum number of responses to return for a list call. Default and maximum value of the limit is 50.
If more items exist, the server will set the `continue` field on the list metadata to a value that can be used with the same initial query to retrieve the next set of results.'
format: int64
in: query
name: limit
type: integer
- description: offset is the next index number from which the response will start. The response offset value can be used along with continue token for the pagination.
format: int64
in: query
name: offset
type: integer
- description: continue token to paginate the subsequent data items
in: query
name: continue
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1UsersSummary'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified user summary list
tags:
- users
post:
operationId: v1UsersSummaryGet
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1UsersSummarySpec'
responses:
'200':
description: An array of users summary items
schema:
$ref: '#/definitions/v1UsersSummaryList'
security:
- ApiKey: []
- Authorization: []
summary: Retrieves a list of users summary with provided filter spec
tags:
- users
/v1/users/system/features:
get:
description: Returns the users system feature
operationId: v1UsersSystemFeature
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1SystemFeatures'
security:
- ApiKey: []
- Authorization: []
summary: Returns the users system feature
tags:
- users
/v1/users/system/macros:
delete:
operationId: v1UsersSystemMacrosDeleteByMacroName
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1Macros'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Delete the macros for the system user by macro name
tags:
- users
get:
operationId: v1UsersSystemMacrosList
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1Macros'
security:
- ApiKey: []
- Authorization: []
summary: List the macros of the system
tags:
- users
patch:
operationId: v1UsersSystemMacrosUpdateByMacroName
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1Macros'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Update the macros for the system user by macro name
tags:
- users
post:
operationId: v1UsersSystemMacrosCreate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1Macros'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Create or add new macros for the system user
tags:
- users
put:
operationId: v1UsersSystemMacrosUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1Macros'
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Update the macros of the system
tags:
- users
/v1/users/{uid}:
parameters:
- in: path
name: uid
required: true
type: string
# --- truncated at 32 KB (72 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/spectro-cloud/refs/heads/main/openapi/spectro-cloud-users-api-openapi.yml