fireblocks Workspace Management API

The Workspace Management API from fireblocks — 13 operation(s) for workspace management.

OpenAPI Specification

fireblocks-workspace-management-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Fireblocks Blockchains and Assets Approval Requests Workspace Management API
  description: 'Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain.


    - Visit our website for more information: [Fireblocks Website](https://fireblocks.com)

    - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)

    '
  version: 1.8.0
  contact:
    email: developers@fireblocks.com
servers:
- url: https://api.fireblocks.io/v1
  description: Fireblocks Production Environment Base URL
- url: https://sandbox-api.fireblocks.io/v1
  description: Fireblocks Sandbox Environment Base URL
security: []
tags:
- name: Workspace Management
paths:
  /workspace/freeze:
    post:
      x-internal: true
      operationId: freezeWorkspace
      summary: Freeze
      description: "Freezes a Workspace so that ALL operations by ANY user are blocked.\nYou should only perform this action when the workspace faces imminent risk, such as when you have a security breach.\nTo unfreeze a workspace, the workspace Owner must submit a request to Fireblocks Support.\n**NOTE:** \n- This operation can only be performed by the workspace Admins - Your workspace continues to receive incoming transfers during this time.\n</br>Endpoint Permission: Admin, Non-Signing Admin."
      tags:
      - Workspace Management
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      responses:
        '204':
          description: Indicates that the workspace is now frozen
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: python
        label: Python
        source: vault_accounts = fireblocks.get_vault_accounts()
      - lang: javascript
        label: Javascript
        source: const vaultAccounts = await fireblocks.getVaultAccounts();
  /management/user_groups:
    get:
      operationId: getUserGroups
      summary: List user groups
      description: 'Get all user groups in your workspace


        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<UserGroupsResponse>> = fireblocks.userGroupsBeta.getUserGroups();'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<List<UserGroupResponse>>> response = fireblocks.userGroupsBeta().getUserGroups();
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.user_groups_beta.get_user_groups();
          name: Fireblocks SDK Python example
      tags:
      - Workspace Management
      responses:
        '200':
          description: List of the user groups in your workspace
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserGroupsResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<UserGroupsResponse>> = fireblocks.userGroupsBeta.getUserGroups();'
      - lang: Java
        source: CompletableFuture<ApiResponse<List<UserGroupResponse>>> response = fireblocks.userGroupsBeta().getUserGroups();
      - lang: Python
        source: response = fireblocks.user_groups_beta.get_user_groups();
    post:
      operationId: createUserGroup
      summary: Create user group
      description: 'Create a new user group. Users with the Viewer role cannot be added to groups.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<CreateUserGroupResponse>> = fireblocks.userGroupsBeta.createUserGroup(userGroupsBetaApiCreateUserGroupRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<CreateUserGroupResponse>> response = fireblocks.userGroupsBeta().createUserGroup(userGroupCreateRequest, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.user_groups_beta.create_user_group(user_group_create_request, idempotency_key);
          name: Fireblocks SDK Python example
      tags:
      - Workspace Management
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserGroupCreateRequest'
      responses:
        '201':
          description: User group created and pending approval
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateUserGroupResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<CreateUserGroupResponse>> = fireblocks.userGroupsBeta.createUserGroup(userGroupsBetaApiCreateUserGroupRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<CreateUserGroupResponse>> response = fireblocks.userGroupsBeta().createUserGroup(userGroupCreateRequest, idempotencyKey);
      - lang: Python
        source: response = fireblocks.user_groups_beta.create_user_group(user_group_create_request, idempotency_key);
  /management/user_groups/{groupId}:
    get:
      operationId: getUserGroup
      summary: Get user group
      description: 'Get a user group by ID


        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      parameters:
      - in: path
        required: true
        name: groupId
        description: The ID of the user group
        schema:
          type: string
          example: 777d084b-e1d5-4040-8d73-38c8f8a321b2
      responses:
        '200':
          description: User group
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserGroupResponse'
        default:
          $ref: '#/components/responses/Error'
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<UserGroupResponse>> = fireblocks.userGroupsBeta.getUserGroup(userGroupsBetaApiGetUserGroupRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<UserGroupResponse>> response = fireblocks.userGroupsBeta().getUserGroup(groupId);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.user_groups_beta.get_user_group(group_id);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<UserGroupResponse>> = fireblocks.userGroupsBeta.getUserGroup(userGroupsBetaApiGetUserGroupRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<UserGroupResponse>> response = fireblocks.userGroupsBeta().getUserGroup(groupId);
      - lang: Python
        source: response = fireblocks.user_groups_beta.get_user_group(group_id);
    put:
      operationId: updateUserGroup
      summary: Update user group
      description: 'Update a user group by ID

        - Please note that this endpoint is available only for API keys with Admin permissions.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      parameters:
      - in: path
        required: true
        name: groupId
        description: The ID of the user group
        schema:
          type: string
          example: 777d084b-e1d5-4040-8d73-38c8f8a321b2
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserGroupUpdateRequest'
      responses:
        '200':
          description: User group updated and the changes are pending approval
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserGroupCreateResponse'
        default:
          $ref: '#/components/responses/Error'
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<UserGroupCreateResponse>> = fireblocks.userGroupsBeta.updateUserGroup(userGroupsBetaApiUpdateUserGroupRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<UserGroupCreateResponse>> response = fireblocks.userGroupsBeta().updateUserGroup(userGroupUpdateRequest, groupId, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.user_groups_beta.update_user_group(user_group_update_request, group_id, idempotency_key);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<UserGroupCreateResponse>> = fireblocks.userGroupsBeta.updateUserGroup(userGroupsBetaApiUpdateUserGroupRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<UserGroupCreateResponse>> response = fireblocks.userGroupsBeta().updateUserGroup(userGroupUpdateRequest, groupId, idempotencyKey);
      - lang: Python
        source: response = fireblocks.user_groups_beta.update_user_group(user_group_update_request, group_id, idempotency_key);
    delete:
      operationId: deleteUserGroup
      summary: Delete user group
      description: 'Delete a user group by ID.</br>

        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      parameters:
      - in: path
        required: true
        name: groupId
        description: The ID of the user group
        schema:
          type: string
          example: 777d084b-e1d5-4040-8d73-38c8f8a321b2
      responses:
        '204':
          description: Request to delete user group submitted for approval
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
        default:
          $ref: '#/components/responses/Error'
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<void>> = fireblocks.userGroupsBeta.deleteUserGroup(userGroupsBetaApiDeleteUserGroupRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<Void>> response = fireblocks.userGroupsBeta().deleteUserGroup(groupId);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.user_groups_beta.delete_user_group(group_id);
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<void>> = fireblocks.userGroupsBeta.deleteUserGroup(userGroupsBetaApiDeleteUserGroupRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<Void>> response = fireblocks.userGroupsBeta().deleteUserGroup(groupId);
      - lang: Python
        source: response = fireblocks.user_groups_beta.delete_user_group(group_id);
  /users:
    get:
      summary: List users
      deprecated: true
      description: 'DEPRECATED - please use `GET /management/users` instead

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      x-readme:
        code-samples:
        - language: javascript
          code: const users = await fireblocks.getUsers();
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<GetUsersResponse>> = fireblocks.users.getUsers();'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<List<UserResponse>>> response = fireblocks.users().getUsers();
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.users.get_users();
          name: Fireblocks SDK Python example
      responses:
        '200':
          description: List of users
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetUsersResponse'
        default:
          $ref: '#/components/responses/Error'
      operationId: getUsers
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<GetUsersResponse>> = fireblocks.users.getUsers();'
      - lang: Java
        source: CompletableFuture<ApiResponse<List<UserResponse>>> response = fireblocks.users().getUsers();
      - lang: Python
        source: response = fireblocks.users.get_users();
  /audits:
    get:
      summary: Get audit logs
      deprecated: true
      description: 'Deprecated. Please use the `GET /management/audit_logs` endpoint instead.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      x-readme:
        code-samples:
        - language: python
          code: audits = fireblocks.get_audit_logs(TimePeriod.DAY)
          name: Fireblocks SDK Python example
        - language: javascript
          code: const audits = await fireblocks.getAuditsLogs(TimePeriod.DAY);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<GetAuditLogsResponseDTO>> = fireblocks.workspaceManagement.getAudits(workspaceManagementApiGetAuditsRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<GetAuditLogsResponseDTO>> response = fireblocks.workspaceManagement().getAudits(timePeriod);
          name: Fireblocks SDK Java example
      parameters:
      - in: query
        name: timePeriod
        required: false
        description: The last time period to fetch audit logs
        schema:
          type: string
          enum:
          - DAY
          - WEEK
      responses:
        '200':
          description: Audit logs from requested time period
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAuditLogsResponseDTO'
        default:
          $ref: '#/components/responses/Error'
      operationId: getAudits
      x-codeSamples:
      - lang: python
        label: Python
        source: audits = fireblocks.get_audit_logs(TimePeriod.DAY)
      - lang: javascript
        label: Javascript
        source: const audits = await fireblocks.getAuditsLogs(TimePeriod.DAY);
  /management/audit_logs:
    get:
      summary: Get audit logs
      description: 'Get Audit logs for the last Day/Week.


        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<GetAuditLogsResponse>> = fireblocks.auditLogs.getAuditLogs(auditLogsApiGetAuditLogsRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<GetAuditLogsResponse>> response = fireblocks.auditLogs().getAuditLogs(timePeriod, cursor);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.audit_logs.get_audit_logs(time_period, cursor);
          name: Fireblocks SDK Python example
      parameters:
      - in: query
        name: timePeriod
        required: false
        description: The last time period to fetch audit logs
        schema:
          type: string
          enum:
          - DAY
          - WEEK
      - in: query
        name: cursor
        required: false
        description: The next id to start fetch audit logs from
        schema:
          type: string
          example: next_page_cursor
      responses:
        '200':
          description: Audit logs from requested time period
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAuditLogsResponse'
        default:
          $ref: '#/components/responses/Error'
      operationId: getAuditLogs
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<GetAuditLogsResponse>> = fireblocks.auditLogs.getAuditLogs(auditLogsApiGetAuditLogsRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<GetAuditLogsResponse>> response = fireblocks.auditLogs().getAuditLogs(timePeriod, cursor);
      - lang: Python
        source: response = fireblocks.audit_logs.get_audit_logs(time_period, cursor);
  /admin_quorum:
    put:
      x-internal: true
      operationId: setAdminQuorumThreshold
      summary: Update admin quorum threshold
      description: 'Update admin quorum threshold.



        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      x-readme:
        code-samples:
        - language: javascript
          code: const result = await fireblocks.setAdminQuorumThreshold(adminQuorumThreshold)
          name: Fireblocks SDK Javascript example
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetAdminQuorumThresholdRequest'
      responses:
        '202':
          description: OK
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetAdminQuorumThresholdResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: python
        label: Python
        source: result = fireblocks.set_admin_quorum_threshold(adminQuorumThreshold)
      - lang: javascript
        label: Javascript
        source: 'const result = await fireblocks.setAdminQuorumThreshold(adminQuorumThreshold)

          '
  /management/ota:
    put:
      operationId: setOtaStatus
      summary: Enable or disable transactions to OTA
      description: 'Enable or disable transactions to One Time Addresses (Non Whitelisted addresses).

        Learn more about [One Time Addresses](https://support.fireblocks.io/hc/en-us/articles/4409104568338-One-Time-Address-OTA-feature)

        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<SetOtaStatusResponse>> = fireblocks.oTABeta.setOtaStatus(oTABetaApiSetOtaStatusRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<SetOtaStatusResponse>> response = fireblocks.oTABeta().setOtaStatus(setOtaStatusRequest, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.o_t_a_beta.set_ota_status(set_ota_status_request, idempotency_key);
          name: Fireblocks SDK Python example
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetOtaStatusRequest'
      responses:
        '202':
          description: Successfully updated OTA status
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SetOtaStatusResponse'
        '400':
          description: Bad request
        '409':
          description: Similar request already pending
        '500':
          description: Internal server error
      tags:
      - Workspace Management
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<SetOtaStatusResponse>> = fireblocks.oTABeta.setOtaStatus(oTABetaApiSetOtaStatusRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<SetOtaStatusResponse>> response = fireblocks.oTABeta().setOtaStatus(setOtaStatusRequest, idempotencyKey);
      - lang: Python
        source: response = fireblocks.o_t_a_beta.set_ota_status(set_ota_status_request, idempotency_key);
    get:
      operationId: getOtaStatus
      summary: Returns current OTA status
      description: 'Returns current One Time Address status.

        Learn more about [One Time Addresses](https://support.fireblocks.io/hc/en-us/articles/4409104568338-One-Time-Address-OTA-feature)

        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<GetOtaStatusResponse>> = fireblocks.oTABeta.getOtaStatus();'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<GetOtaStatusResponse>> response = fireblocks.oTABeta().getOtaStatus();
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.o_t_a_beta.get_ota_status();
          name: Fireblocks SDK Python example
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetOtaStatusResponse'
          description: Current OTA status
        '404':
          description: Configuration not found for the workspace
      tags:
      - Workspace Management
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<GetOtaStatusResponse>> = fireblocks.oTABeta.getOtaStatus();'
      - lang: Java
        source: CompletableFuture<ApiResponse<GetOtaStatusResponse>> response = fireblocks.oTABeta().getOtaStatus();
      - lang: Python
        source: response = fireblocks.o_t_a_beta.get_ota_status();
  /management/workspace_status:
    get:
      operationId: getWorkspaceStatus
      summary: Returns current workspace status
      description: 'Returns current workspace status (Beta).

        **Note**:

        - This endpoint is now in Beta, disabled for general availability at this time.

        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.


        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetWorkspaceStatusResponse'
          description: Current workspace status
        '404':
          description: Workspace not found
      tags:
      - Workspace Management
      x-readme:
        code-samples:
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<GetWorkspaceStatusResponse>> = fireblocks.workspaceStatusBeta.getWorkspaceStatus();'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<GetWorkspaceStatusResponse>> response = fireblocks.workspaceStatusBeta().getWorkspaceStatus();
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.workspace_status_beta.get_workspace_status();
          name: Fireblocks SDK Python example
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<GetWorkspaceStatusResponse>> = fireblocks.workspaceStatusBeta.getWorkspaceStatus();'
      - lang: Java
        source: CompletableFuture<ApiResponse<GetWorkspaceStatusResponse>> response = fireblocks.workspaceStatusBeta().getWorkspaceStatus();
      - lang: Python
        source: response = fireblocks.workspace_status_beta.get_workspace_status();
  /management/users:
    get:
      operationId: getConsoleUsers
      summary: Get console users
      description: 'Get console users for your workspace.

        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      x-readme:
        code-samples:
        - language: javascript
          code: const consoleUsers = await fireblocks.getConsoleUsers();
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<GetConsoleUsersResponse>> = fireblocks.consoleUser.getConsoleUsers();'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<GetConsoleUsersResponse>> response = fireblocks.consoleUser().getConsoleUsers();
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.console_user.get_console_users();
          name: Fireblocks SDK Python example
      responses:
        '200':
          description: got console users
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetConsoleUsersResponse'
        '401':
          description: Unauthorized. Missing / invalid JWT token in Authorization header.
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Lacking permissions.
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        5XX:
          description: Internal error.
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<GetConsoleUsersResponse>> = fireblocks.consoleUser.getConsoleUsers();'
      - lang: Java
        source: CompletableFuture<ApiResponse<GetConsoleUsersResponse>> response = fireblocks.consoleUser().getConsoleUsers();
      - lang: Python
        source: response = fireblocks.console_user.get_console_users();
    post:
      operationId: createConsoleUser
      summary: Create console user
      description: 'Create console users in your workspace

        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.

        Learn more about Fireblocks Users management in the following [guide](https://developers.fireblocks.com/docs/manage-users).

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      x-readme:
        code-samples:
        - language: javascript
          code: const res = await fireblocks.createConsoleUser(firstName, lastName, email, role);
          name: Fireblocks SDK Javascript example
        - language: typescript
          code: 'const response: Promise<FireblocksResponse<void>> = fireblocks.consoleUser.createConsoleUser(consoleUserApiCreateConsoleUserRequest);'
          name: Fireblocks SDK TypeScript example
        - language: java
          code: CompletableFuture<ApiResponse<Void>> response = fireblocks.consoleUser().createConsoleUser(createConsoleUser, idempotencyKey);
          name: Fireblocks SDK Java example
        - language: python
          code: response = fireblocks.console_user.create_console_user(create_console_user, idempotency_key);
          name: Fireblocks SDK Python example
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateConsoleUser'
      responses:
        '200':
          description: User creation approval request has been sent
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
        '400':
          description: bad request
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
        '401':
          description: Unauthorized. Missing / invalid JWT token in Authorization header.
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Lacking permissions.
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        5XX:
          description: Internal error.
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
      - lang: TypeScript
        source: 'const response: Promise<FireblocksResponse<void>> = fireblocks.consoleUser.createConsoleUser(consoleUserApiCreateConsoleUserRequest);'
      - lang: Java
        source: CompletableFuture<ApiResponse<Void>> response = fireblocks.consoleUser().createConsoleUser(createConsoleUser, idempotencyKey);
      - lang: Python
        source: response = fireblocks.console_user.create_console_user(create_console_user, idempotency_key);
  /management/api_users:
    get:
      operationId: getApiUsers
      summary: Get API Keys
      description: 'List all API keys in your workspace.

        - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions.

        </br>Endpoint Permission: Admin, Non-Signing Admin.'
      tags:
      - Workspace Management
      x-readme:
        code-samples:
        - language: javascript
          code: const apiUsers = await fireblocks.getApiUsers();
          name: Fireblocks SDK Javascript example
        - language: types

# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fireblocks/refs/heads/main/openapi/fireblocks-workspace-management-api-openapi.yml