Delos Users API

The users API from Delos — 6 operation(s) for users.

Operations 6

GET /users/{userId}/products Users: List associated products with bundles #
POST /users/product-invitations Users: Product Invitation Create #
GET /users/product-invitations/{invitationId} Users: Product Invitation Show #
POST /users/product-invitations/{invitationId}/confirm Users: Product Invitation Confirm #
POST /users/product-invitations/{invitationId}/revoke Users: Product Invitation Revoke #
POST /users/product-invitations/{invitationId}/renew Users: Product Invitation Renew #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/delos-users-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

delos-users-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 11.13.9
  title: Cloud BE Users API
  license:
    name: MIT
servers:
- url: https://cloud.wellcube.io/api/v1
security:
- Authorization: []
tags:
- name: users
paths:
  /users/{userId}/products:
    get:
      summary: 'Users: List associated products with bundles'
      operationId: userProductsList
      tags:
      - users
      parameters:
      - name: userId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Common associated products list response
          content:
            application/json:
              schema:
                type: object
                required:
                - status
                - data
                properties:
                  status:
                    type: integer
                    example: 1
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Product'
        x-permission-denied:
          summary: List associated products for another user than auth token
          $ref: '#/components/responses/PermissionDeniedError'
  /users/product-invitations:
    post:
      summary: 'Users: Product Invitation Create'
      operationId: userProductInvitationCreate
      tags:
      - users
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - data
              properties:
                data:
                  type: object
                  required:
                  - email
                  - product
                  properties:
                    email:
                      type: string
                    emailTemplate:
                      type: object
                      properties:
                        bucket:
                          type: string
                        key:
                          type: string
                        sender:
                          type: string
                        subject:
                          type: string
                        params:
                          type: object
                    product:
                      type: string
                    localState:
                      type: object
                    localGroups:
                      type: array
                      items:
                        type: string
                    expirationTime:
                      type: integer
                      description: Time to expire in seconds, default 2 days
                      default: 172800
      responses:
        default:
          description: Created product invitation
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 1
                  data:
                    $ref: '#/components/schemas/ProductInvitation'
        x-permission-denied:
          summary: Create invitation with no access to product installation
          $ref: '#/components/responses/PermissionDeniedError'
        x-product-not-exists:
          summary: Product to create invitation not exists
          $ref: '#/components/responses/NotExistsError'
        x-user-not-unique:
          summary: User data to invite is not unique
          $ref: '#/components/responses/NotUniqueError'
  /users/product-invitations/{invitationId}:
    get:
      summary: 'Users: Product Invitation Show'
      operationId: userProductInvitationShow
      tags:
      - users
      parameters:
      - name: invitationId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Product invitation
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 1
                  data:
                    $ref: '#/components/schemas/ProductInvitation'
        x-action-not-exists:
          summary: Invite action not exists
          $ref: '#/components/responses/NotExistsError'
  /users/product-invitations/{invitationId}/confirm:
    post:
      summary: 'Users: Product Invitation Confirm'
      operationId: userProductInvitationConfirm
      tags:
      - users
      parameters:
      - name: invitationId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - data
              properties:
                data:
                  type: object
                  required:
                  - cognitoUserId
                  - firstName
                  - secondName
                  properties:
                    cognitoUserId:
                      type: string
                    firstName:
                      type: string
                    secondName:
                      type: string
                    company:
                      type: string
                    phone:
                      type: string
      responses:
        default:
          description: Access data for confirmed user
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 1
                  data:
                    $ref: '#/components/schemas/AccessData'
        x-action-expired:
          $ref: '#/components/responses/ExpiredError'
        x-action-not-exists:
          $ref: '#/components/responses/NotExistsError'
        x-user-not-exists:
          $ref: '#/components/responses/NotExistsError'
        x-product-not-exists:
          $ref: '#/components/responses/NotExistsError'
        x-permission-denied:
          $ref: '#/components/responses/PermissionDeniedError'
  /users/product-invitations/{invitationId}/revoke:
    post:
      summary: 'Users: Product Invitation Revoke'
      operationId: userProductInvitationRevoke
      tags:
      - users
      parameters:
      - name: invitationId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Success status
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 1
                  data:
                    type: boolean
                    example: true
        x-action-not-exists:
          $ref: '#/components/responses/NotExistsError'
        x-user-not-exists:
          $ref: '#/components/responses/NotExistsError'
        x-product-not-exists:
          $ref: '#/components/responses/NotExistsError'
        x-permission-denied:
          $ref: '#/components/responses/PermissionDeniedError'
  /users/product-invitations/{invitationId}/renew:
    post:
      summary: 'Users: Product Invitation Renew'
      operationId: userProductInvitationRenew
      tags:
      - users
      parameters:
      - name: invitationId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - data
              properties:
                data:
                  type: object
                  properties:
                    expirationTime:
                      type: integer
                      description: Time to expire in seconds, default 2 days
                      default: 172800
      responses:
        default:
          description: Updated product invitation
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    example: 1
                  data:
                    $ref: '#/components/schemas/ProductInvitation'
        x-action-not-exists:
          $ref: '#/components/responses/NotExistsError'
        x-user-not-exists:
          $ref: '#/components/responses/NotExistsError'
        x-product-not-exists:
          $ref: '#/components/responses/NotExistsError'
        x-permission-denied:
          $ref: '#/components/responses/PermissionDeniedError'
components:
  responses:
    ExpiredError:
      description: Entity has expired state
      content:
        application/json:
          schema:
            type: object
            required:
            - status
            - error
            properties:
              status:
                type: integer
                example: 0
              error:
                type: object
                required:
                - code
                - fields
                properties:
                  code:
                    type: string
                    example: EXPIRED
                  fields:
                    type: object
    NotExistsError:
      description: Entity not exists
      content:
        application/json:
          schema:
            type: object
            required:
            - status
            - error
            properties:
              status:
                type: integer
                example: 0
              error:
                type: object
                required:
                - code
                - fields
                properties:
                  code:
                    type: string
                    example: NOT_EXISTS
                  fields:
                    type: object
    PermissionDeniedError:
      description: permission-denied
      content:
        application/json:
          schema:
            type: object
            required:
            - status
            - error
            properties:
              status:
                type: integer
                example: 0
              error:
                type: object
                required:
                - code
                - fields
                properties:
                  code:
                    type: string
                    example: PERMISSION_DENIED
                  message:
                    type: string
                    example: Permission denied
                  fields:
                    type: object
                    properties:
                      userRole:
                        type: string
                        enum:
                        - USER
                        - GLOBAL_ROUTER_ADMIN
                        example: USER
    NotUniqueError:
      description: Entity data is not unique
      content:
        application/json:
          schema:
            type: object
            required:
            - status
            - error
            properties:
              status:
                type: integer
                example: 0
              error:
                type: object
                required:
                - code
                - fields
                properties:
                  code:
                    type: string
                    example: NOT_UNIQUE
                  fields:
                    type: object
  schemas:
    InstallationToProduct:
      type: object
      required:
      - id
      - productId
      - installationId
      - createdAt
      - updatedAt
      properties:
        id:
          type: string
          format: uuid
        productId:
          type: string
          format: uuid
        installationId:
          type: string
          format: uuid
        defaultGroup:
          type: string
          example: guests
        defaultAction:
          type: string
          example: NOTIFY_BETA
        productName:
          type: string
        installationName:
          type: string
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
    AccessData:
      type: object
      required:
      - accessToken
      - refreshToken
      properties:
        accessToken:
          type: string
        refreshToken:
          type: string
    Product:
      type: object
      required:
      - id
      - name
      - isOpenRegistration
      - canAssociateInstallation
      - createdAt
      - updatedAt
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        details:
          type: string
        resources:
          type: string
        isOpenRegistration:
          type: boolean
          example: false
        canAssociateInstallation:
          type: boolean
          example: false
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        bundles:
          type: array
          items:
            $ref: '#/components/schemas/ProductBundle'
        installationsToProduct:
          type: array
          items:
            $ref: '#/components/schemas/InstallationToProduct'
    ProductBundle:
      type: object
      required:
      - id
      - productId
      - bundleName
      - createdAt
      - updatedAt
      properties:
        id:
          type: string
          format: uuid
        productId:
          type: string
          format: uuid
        bundleName:
          type: string
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
    ProductInvitation:
      type: object
      required:
      - id
      - userId
      - email
      - productName
      - invitedBy
      - isExpired
      - expiresAt
      - createdAt
      properties:
        id:
          type: string
          format: uuid
        userId:
          type: string
          format: uuid
        email:
          type: string
        productName:
          type: string
        invitedBy:
          type: string
          format: uuid
        isExpired:
          type: boolean
        expiresAt:
          type: string
          format: date-time
        createdAt:
          type: string
          format: date-time
  securitySchemes:
    Authorization:
      type: apiKey
      name: Authorization
      in: header