FINOS Room Membership API

The Room Membership API from FINOS — 8 operation(s) for room membership.

Operations 8

POST /v1/room/{id}/membership/add Adds new member to an existing room.
POST /v1/room/{id}/membership/remove Removes member from an existing room.
POST /v1/room/{id}/membership/promoteOwner Promotes user to owner.
POST /v1/room/{id}/membership/demoteOwner Demotes room owner.
GET /v2/room/{id}/membership/list Lists current members of an existing room.
GET /v1/admin/room/{id}/membership/list Lists current and previous members of an existing room.
POST /v1/admin/room/{id}/membership/add Add a member to an existing room.
POST /v1/admin/room/{id}/membership/remove Remove a member from a room.

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/finos-room-membership-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

finos-room-membership-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 20.17.1
  title: Pod Room Membership API
  description: 'This document refers to Symphony API calls that do not need

    encryption or decryption of content.


    - sessionToken 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 made no change to the

    system even if ome subset of the request would have succeeded.

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

    and the response code will be 50X.

    '
servers:
- url: https://yourpodURL.symphony.com/pod
tags:
- name: Room Membership
paths:
  /v1/room/{id}/membership/add:
    post:
      summary: Adds new member to an existing room.
      parameters:
      - name: id
        description: Room streamId
        in: path
        required: true
        schema:
          type: string
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      tags:
      - Room Membership
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              example:
                format: TEXT
                message: Member added
        '400':
          description: Client error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 400
                message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 401
                message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 500
                message: // Server error, see response body for further details.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserId'
        required: true
  /v1/room/{id}/membership/remove:
    post:
      summary: Removes member from an existing room.
      parameters:
      - name: id
        description: Room streamId
        in: path
        required: true
        schema:
          type: string
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      tags:
      - Room Membership
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              example:
                format: TEXT
                message: Member removed
        '400':
          description: Client error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 400
                message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 401
                message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 500
                message: // Server error, see response body for further details.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserId'
        required: true
  /v1/room/{id}/membership/promoteOwner:
    post:
      summary: Promotes user to owner.
      parameters:
      - name: id
        description: Room streamId
        in: path
        required: true
        schema:
          type: string
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      tags:
      - Room Membership
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              example:
                format: TEXT
                message: Member promoted to owner
        '400':
          description: Client error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 400
                message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 401
                message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 500
                message: // Server error, see response body for further details.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserId'
        required: true
  /v1/room/{id}/membership/demoteOwner:
    post:
      summary: Demotes room owner.
      parameters:
      - name: id
        description: Room streamId
        in: path
        required: true
        schema:
          type: string
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      tags:
      - Room Membership
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
              example:
                format: TEXT
                message: Owner demoted
        '400':
          description: Client error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 400
                message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 401
                message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 500
                message: // Server error, see response body for further details.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserId'
        required: true
  /v2/room/{id}/membership/list:
    get:
      summary: Lists current members of an existing room.
      parameters:
      - name: id
        description: Room streamId
        in: path
        required: true
        schema:
          type: string
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      tags:
      - Room Membership
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MembershipList'
              example:
              - id: 7078106103900
                owner: false
                joinDate: 1461430710531
              - id: 7078106103809
                owner: true
                joinDate: 1461426797875
              - id: 7078106103810
                owner: true
                joinDate: 1461426797833
                addedThroughGroups:
                - 68719476744
        '400':
          description: Client error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 400
                message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 401
                message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 500
                message: // Server error, see response body for further details.
  /v1/admin/room/{id}/membership/list:
    get:
      summary: Lists current and previous members of an existing room.
      parameters:
      - name: id
        description: Room streamId
        in: path
        required: true
        schema:
          type: string
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      - name: includePastMembers
        in: query
        required: false
        description: If true, the membership list will include past members of the stream. If false, the listing will only incude current members. Default false.
        schema:
          type: boolean
      tags:
      - Room Membership
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MembershipList'
              example:
              - id: 7078106103900
                owner: false
                joinDate: 1461430710531
              - id: 7078106103809
                owner: true
                joinDate: 1461426797875
              - id: 7078106103810
                owner: true
                joinDate: 1461426797833
                addedThroughGroups:
                - 68719476744
        '400':
          description: Client error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 400
                message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 401
                message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 500
                message: // Server error, see response body for further details.
  /v1/admin/room/{id}/membership/add:
    post:
      summary: Add a member to an existing room.
      parameters:
      - name: id
        description: Room streamId
        in: path
        required: true
        schema:
          type: string
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      tags:
      - Room Membership
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '400':
          description: Client error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 400
                message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 401
                message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 500
                message: // Server error, see response body for further details.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserId'
        required: true
  /v1/admin/room/{id}/membership/remove:
    post:
      summary: Remove a member from a room.
      parameters:
      - name: id
        description: Room streamId
        in: path
        required: true
        schema:
          type: string
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      tags:
      - Room Membership
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '400':
          description: Client error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 400
                message: // Client error, see response body for further details.
        '401':
          description: 'Unauthorized: Invalid session token.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 401
                message: Invalid session
        '403':
          description: 'Forbidden: Caller lacks necessary entitlement.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: The user lacks the required entitlement to perform this operation
        '500':
          description: Server error, see response body for further details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 500
                message: // Server error, see response body for further details.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserId'
        required: true
components:
  schemas:
    Error:
      type: object
      properties:
        code:
          type: integer
          format: int32
          example: 401
        message:
          type: string
          example: Invalid session
    MembershipList:
      description: List of members in a room.
      type: array
      items:
        $ref: '#/components/schemas/MemberInfo'
      example:
      - id: 7078106103900
        owner: false
        joinDate: 1461430710531
      - id: 7078106103809
        owner: true
        joinDate: 1461426797875
      - id: 7078106103810
        owner: true
        joinDate: 1461426797833
        addedThroughGroups:
        - 68719476744
    UserId:
      type: object
      properties:
        id:
          type: integer
          format: int64
          example: 7215545058313
    MemberInfo:
      description: Detailed membership record.
      type: object
      properties:
        id:
          type: integer
          format: int64
          example: 7078106103810
        owner:
          type: boolean
          example: true
        joinDate:
          type: integer
          format: int64
          example: 1461426797833
        addedThroughGroups:
          description: When the user has been added to the stream through a group (aka SDL), this array contains the group ID which the user belongs to. Since SBE 20.14.
          x-since: 20.14
          type: array
          items:
            type: integer
            format: int64
          example:
          - 68719476744
    SuccessResponse:
      type: object
      properties:
        format:
          type: string
          enum:
          - TEXT
          - XML
          example: TEXT
        message:
          type: string
          example: Success