FINOS User API

The User API from FINOS — 24 operation(s) for user.

OpenAPI Specification

finos-user-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Agent Admin User API
  description: 'This document refers to Symphony API calls to send and receive messages

    and content. They need the on-premise Agent installed to perform

    decryption/encryption of content.


    - sessionToken and keyManagerToken can be obtained by calling the

    authenticationAPI on the symphony back end and the key manager

    respectively. Refer to the methods described in authenticatorAPI.yaml.

    - Actions are defined to be atomic, ie will succeed in their entirety

    or fail and have changed nothing.

    - If it returns a 40X status then it will have sent no message to any

    stream even if a request to some subset of the requested streams

    would have succeeded.

    - If this contract cannot be met for any reason then this is an error

    and the response code will be 50X.

    - MessageML is a markup language for messages. See reference here:

    https://rest-api.symphony.com/docs/messagemlv2

    - **Real Time Events**: The following events are returned when reading

    from a real time messages and events stream ("datafeed"). These

    events will be returned for datafeeds created with the v5 endpoints.

    To know more about the endpoints, refer to Create Messages/Events

    Stream and Read Messages/Events Stream. Unless otherwise specified,

    all events were added in 1.46.

    '
  version: 25.8.1
servers:
- url: youragentURL.symphony.com/agent
tags:
- name: User
paths:
  /v2/admin/user/list:
    get:
      summary: Retrieve a list of all users in the company (pod)
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session Authentication token.
        in: header
        required: true
        type: string
      - name: skip
        description: Number of users to skip. Default is 0. Must be a integer equals or bigger than 0.
        in: query
        type: integer
        required: false
      - name: limit
        description: Maximum number of users to return. Default is 100. Must be a positive integer and must not exceed 1000.
        in: query
        type: integer
        required: false
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/V2UserDetailList'
          examples:
            application/json:
            - userAttributes:
                emailAddress: nexus.user@email.com
                userName: nexus.user
                displayName: nexus.user
                accountType: SYSTEM
              userSystemInfo:
                id: 9826885173290
                status: ENABLED
                suspended: false
                createdDate: 1499375475000
                createdBy: '9826885173255'
                lastUpdatedDate: 1499375475852
                lastLoginDate: 1504899124191
              roles:
              - USER_PROVISIONING
              - CONTENT_MANAGEMENT
              - INDIVIDUAL
            - userAttributes:
                emailAddress: admin@mail.com
                firstName: admin
                lastName: admin
                userName: admin@mail.com
                displayName: Admin Admin
                companyName: Company Name
                department: Departament
                division: Division
                title: Administrator
                twoFactorAuthPhone: '+15419999999'
                workPhoneNumber: '+15419999999'
                mobilePhoneNumber: '+15419999999'
                accountType: NORMAL
                assetClasses:
                - Currencies
                industries:
                - Technology
              userSystemInfo:
                id: 7696581394433
                status: ENABLED
                suspended: false
                createdDate: 1438054194000
                lastUpdatedDate: 1527532171729
                lastLoginDate: 1523912043015
              roles:
              - SUPER_COMPLIANCE_OFFICER
              - INDIVIDUAL
              - SUPER_ADMINISTRATOR
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/find:
    post:
      summary: Find a user based on attributes
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: skip
        description: Number of users to skip. Default is 0. Must be a integer equals or bigger than 0.
        in: query
        type: integer
        required: false
      - name: limit
        description: Maximum number of users to return. Default is 100. Must be a positive integer and must not exceed 1000.
        in: query
        type: integer
        required: false
      - name: payload
        in: body
        required: true
        schema:
          $ref: '#/definitions/UserFilter'
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/UserDetailList'
          examples:
            application/json:
            - userAttributes:
                emailAddress: janedoe@symphony.com
                firstName: Jane
                lastName: Doe
                userName: jane.doe
                displayName: Jane Doe
                accountType: NORMAL
                assetClasses:
                - Commodities
                industries:
                - Financials
                - Healthcare
              userSystemInfo:
                id: 9826885173258
                status: ENABLED
                suspended: true
                suspensionReason: The user will be OOO due to a mandatory leave
                suspendedUntil: 1601546400
                createdDate: 1499347606000
                createdBy: '9826885173252'
                lastUpdatedDate: 1499348554853
                lastLoginDate: 1504839044527
              roles:
              - INDIVIDUAL
            - userAttributes:
                emailAddress: nexus.user@email.com
                userName: nexus.user
                displayName: nexus.user
                accountType: SYSTEM
              userSystemInfo:
                id: 9826885173290
                status: ENABLED
                suspended: false
                createdDate: 1499375475000
                createdBy: '9826885173255'
                lastUpdatedDate: 1499375475852
                lastLoginDate: 1504899124191
              roles:
              - USER_PROVISIONING
              - CONTENT_MANAGEMENT
              - INDIVIDUAL
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/roles/add:
    post:
      summary: Add a role to a user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      - name: payload
        in: body
        required: true
        schema:
          $ref: '#/definitions/StringId'
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/SuccessResponse'
          examples:
            application/json:
              format: TEXT
              message: Role added
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/roles/remove:
    post:
      summary: Remove a role from a user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      - name: payload
        in: body
        required: true
        schema:
          $ref: '#/definitions/StringId'
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/SuccessResponse'
          examples:
            application/json:
              format: TEXT
              message: Role removed
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '404':
          description: 'Not Found: User cannot be found.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: // Not Found. User cannot be found. See response body for fruther details.
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/avatar:
    get:
      summary: Get the URL of the avatar of a particular user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/AvatarList'
          examples:
            application/json:
            - size: original
              url: ../avatars/izcQTdRVFOK_qhCrYeQOpIuHKuZuMk3J88Uz_bShzM8.png
            - size: small
              url: ../avatars/izcQTdRVFOK_qhCrYeQOpIuHKuZuMk3J88Uz_bShzM8_small.png
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/avatar/update:
    post:
      summary: Update the avatar of a particular user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      - name: payload
        in: body
        required: true
        schema:
          $ref: '#/definitions/AvatarUpdate'
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/SuccessResponse'
          examples:
            application/json:
              format: TEXT
              message: OK
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/disclaimer:
    get:
      summary: Get the disclaimer assigned to a user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/Disclaimer'
          examples:
            application/json:
              id: 571d2052e4b042aaf06d2e7a
              name: Enterprise Disclaimer
              content: This is a disclaimer for the enterprise.
              frequencyInHours: 24
              isDefault: false
              isActive: true
              createdDate: 1461526610846
              modifiedDate: 1461526610846
        '204':
          description: No content. User doesn't have an assigned disclaimer
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
    delete:
      summary: Unassign a disclaimer from a user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/SuccessResponse'
          examples:
            application/json:
              format: TEXT
              message: OK
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/disclaimer/update:
    post:
      summary: Assign a disclaimer to a user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      - name: payload
        in: body
        required: true
        schema:
          $ref: '#/definitions/StringId'
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/SuccessResponse'
          examples:
            application/json:
              format: TEXT
              message: OK
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/delegates:
    get:
      summary: Get the delegates assigned to a user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      tags:
      - User
      responses:
        '200':
          description: The userid's of the delegates of this user.
          schema:
            $ref: '#/definitions/IntegerList'
          examples:
            application/json:
            - 7215545078461
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/delegates/update:
    post:
      summary: Update the delegates assigned to a user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      - name: payload
        in: body
        required: true
        schema:
          $ref: '#/definitions/DelegateAction'
      tags:
      - User
      responses:
        '200':
          description: Sucesss.
          schema:
            $ref: '#/definitions/SuccessResponse'
          examples:
            application/json:
              format: TEXT
              message: Added delegate [7215545078461] for account [7215545078541]
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/features:
    get:
      summary: Get the list of Symphony feature entitlements enabled for a particular user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/FeatureList'
          examples:
            application/json:
            - entitlment: canCreatePublicRoom
              enabled: true
            - entitlment: isExternalRoomEnabled
              enabled: false
            - entitlment: delegatesEnabled
              enabled: true
            - entitlment: isExternalIMEnabled
              enabled: true
            - entitlment: sendFilesEnabled
              enabled: true
            - entitlment: canUpdateAvatar
              enabled: true
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/admin/user/{uid}/features/update:
    post:
      summary: Update the list of Symphony feature entitlements for a particular user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: 'User ID as a decimal integer

          '
        in: path
        required: true
        type: integer
        format: int64
      - name: payload
        in: body
        required: true
        schema:
          $ref: '#/definitions/FeatureList'
      tags:
      - User
      responses:
        '200':
          description: Success
          schema:
            $ref: '#/definitions/SuccessResponse'
          examples:
            application/json:
              format: TEXT
              message: OK
        '400':
          description: Client error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 400
              message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 401
              message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 403
              message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          schema:
            $ref: '#/definitions/Error'
          examples:
            application/json:
              code: 500
              message: // Server error, see response body for further details.
  /v1/user/{uid}/follow:
    post:
      summary: Make a list of users start following a specific user
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: uid
        description: User ID as a decimal integer of the user to be followed
        in: path
        required: true
        type: integer
        format: int64
      - name: uidList
        description: List of (integer) User IDs of the follower

# --- truncated at 32 KB (82 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/finos/refs/heads/main/openapi/finos-user-api-openapi.yml