FINOS Admin API

The Admin API from FINOS — 3 operation(s) for admin.

Operations 3

POST /v1/admin/messages Fetch message details
GET /v1/admin/messages/{messageId}/receipts Fetch receipts details from a specific message.
GET /v1/admin/messages/{messageId}/metadata/relationships Get the message metadata relationship

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-admin-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-admin-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 20.17.1
  title: Pod Admin 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: Admin
paths:
  /v1/admin/messages:
    post:
      summary: Fetch message details
      parameters:
      - name: sessionToken
        description: Session authentication token
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MessageDetails'
        '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
        '404':
          description: 'Not Found: Message ID could not be found.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: // Not Found. Message ID could not be found. See response body for fruther details.
        '422':
          description: 'Unprocessable entity: Invalid message type.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 422
                message: // Unprocessable Entity. Invalid message type. See response body for further details.
        '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/MessageIds'
        description: the ids of the messages to be fetched
        required: true
      tags:
      - Admin
  /v1/admin/messages/{messageId}/receipts:
    get:
      summary: Fetch receipts details from a specific message.
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      - name: messageId
        description: The message ID
        in: path
        required: true
        schema:
          type: string
      - name: before
        description: Returns results from an opaque “before” cursor value as presented via a response cursor.
        in: query
        required: false
        schema:
          type: string
      - name: after
        description: Returns results from an opaque “after” cursor value as presented via a response cursor.
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MessageReceiptDetailResponse'
              example:
                creator:
                  id: 7215545058329
                  name: User Test
                stream:
                  id: lFpyw0ATFmji+Cc/cSzbk3///pZkWpe1dA==
                  name: Test Room
                  streamType: ROOM
                creationDate: 1552999333141
                deliveryReceiptCount: 1
                readReceiptCount: 1
                emailNotificationCount: 1
                downloadReceiptCounts:
                - fileName: internal_7078106
                  count: 1
                MessageReceiptDetail:
                - user:
                    id: 7215545058313
                    username: dpayet
                    firstName: Dimitiri
                    lastName: Payet
                    emailAddress: dpayet@om.fr
                  deliveryReceiptTimestamp: 1552999333784
                  readReceiptTimestamp: 1552999335114
                  emailNotificationTimestamp: 1552999335114
                  downloadReceiptCounts:
                  - fileName: Untitled Document.txt
                    timestamp: 1552999335740
        '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
        '404':
          description: 'Not Found: Message receipt details cannot be found.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                code: 403
                message: // Not Found. Message receipt details cannot be found. See response body for fruther details.
        '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.
      tags:
      - Admin
  /v1/admin/messages/{messageId}/metadata/relationships:
    get:
      summary: Get the message metadata relationship
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        schema:
          type: string
      - name: User-Agent
        description: Request user agent.
        in: header
        required: true
        schema:
          type: string
      - name: messageId
        in: path
        description: Valid id of a SOCIALMESSAGE
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful Operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MessageMetadataResponse'
        '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.
      tags:
      - Admin
components:
  schemas:
    Error:
      type: object
      properties:
        code:
          type: integer
          format: int32
          example: 401
        message:
          type: string
          example: Invalid session
    MessageStream:
      type: object
      properties:
        id:
          type: string
          example: lFpyw0ATFmji+Cc/cSzbk3///pZkWpe1dA==
        name:
          type: string
          example: Test Room
        streamType:
          type: string
          example: ROOM
    DownloadReceiptCount:
      type: object
      properties:
        fileName:
          type: string
          example: Untitled Document.txt
        timestamp:
          type: integer
          format: int64
          example: 1552999335740
    MessageReceiptDetailResponse:
      description: List of Message receipt details
      type: object
      properties:
        creator:
          $ref: '#/components/schemas/MessageUser'
        onBehalfOfUser:
          $ref: '#/components/schemas/MessageUser'
        stream:
          $ref: '#/components/schemas/MessageStream'
        creationDate:
          type: integer
          format: int64
          example: 1552999333141
        deliveryReceiptCount:
          type: integer
          example: 1
        readReceiptCount:
          type: integer
          example: 1
        emailNotificationCount:
          type: integer
          example: 1
        downloadReceiptCounts:
          type: array
          items:
            $ref: '#/components/schemas/MessageDownloadReceiptCount'
          example:
          - fileName: internal_70781
            count: 1
        MessageReceiptDetail:
          type: array
          items:
            $ref: '#/components/schemas/MessageReceiptDetail'
          example:
          - user:
              id: 7215545058329
              username: dpayet
              firstName: Dimitri
              lastName: Payet
              emailAddress: dpayet@om.fr
            deliveryReceiptTimestamp: 1552999333784
            readReceiptTimestamp: 1552999335114
            emailNotificationTimestamp: 1552999335114
            downloadReceiptCounts:
            - fileName: Untitled Document.txt
              timestamp: 1552999335740
        pagination:
          $ref: '#/components/schemas/Pagination'
    UserCompp:
      description: Basic user information to include in other models
      type: object
      properties:
        id:
          type: integer
          format: int64
          description: User ID
          example: 7215545058329
        username:
          type: string
          description: Username
          example: dpayet
        firstName:
          type: string
          description: User first name
          example: Dimitri
        lastName:
          type: string
          description: User last name
          example: Payet
        emailAddress:
          type: string
          description: User email addressIntegrationUserManagerTest
          example: dpayet@om.fr
    MessageMetadataResponse:
      description: Message metadata
      type: object
      properties:
        messageId:
          type: string
        parent:
          type: object
          properties:
            messageId:
              type: string
              description: Id of the parent message queried
            relationshipType:
              type: string
              enum:
              - REPLY_FORM
              - REPLY
              - FORWARD
        replies:
          type: array
          items:
            type: string
        forwards:
          type: array
          items:
            type: string
        formReplies:
          type: array
          items:
            type: string
    MessageUser:
      type: object
      properties:
        id:
          type: integer
          format: int64
          example: 7215545058329
        name:
          type: string
          example: User Test
    MessageDetail:
      description: Message detail
      type: object
      properties:
        messageId:
          description: message id
          type: string
        creator:
          $ref: '#/components/schemas/MessageUser'
        onBehalfOfUser:
          $ref: '#/components/schemas/MessageUser'
        stream:
          $ref: '#/components/schemas/MessageStream'
        creationDate:
          type: integer
          format: int64
        deliveryReceiptCount:
          type: integer
          format: int64
        readReceiptCount:
          type: integer
          format: int64
        emailNotificationCount:
          type: integer
          format: int64
        downloadReceiptCounts:
          type: array
          items:
            $ref: '#/components/schemas/MessageDownloadReceiptCount'
    MessageDownloadReceiptCount:
      type: object
      properties:
        fileName:
          type: string
          example: internal_707810
        count:
          type: integer
          format: int64
          example: 1
    StringList:
      type: array
      items:
        type: string
      example:
      - ftp
      - mailto
      - fdsup
      - skype
    MessageReceiptDetail:
      description: Message receipt details response object
      type: object
      properties:
        user:
          $ref: '#/components/schemas/UserCompp'
        deliveryReceiptTimestamp:
          description: Timestamp of message delivery receipts
          type: integer
          format: int64
          example: 1552999333784
        readReceiptTimestamp:
          description: Timestamp of message read receipts
          type: integer
          format: int64
          example: 1552999335114
        emailNotificationTimestamp:
          description: Timestamp of message email notifications
          type: integer
          format: int64
          example: 1552999335114
        downloadReceiptCounts:
          type: array
          items:
            $ref: '#/components/schemas/DownloadReceiptCount'
          example:
          - fileName: Untitled Document.txt
            timestamp: 1552999335740
    Pagination:
      type: object
      required:
      - cursors
      properties:
        cursors:
          type: object
          required:
          - before
          properties:
            before:
              type: string
              description: 'This is the opaque url-safe string that points to the start of the page of data

                that has been returned.

                '
              example: MTAxNTExOTQ1MjAwNzI5NDE=
            after:
              type: string
              description: 'This is the opaque url-safe string that points to the end of the page of data

                that has been returned.

                '
              example: NDMyNzQyODI3OTQw
        previous:
          type: string
          description: 'API endpoint that will return the previous page of data. If not included, this is

            the first page of data.

            '
          example: https://tenantapi.d.isym.io/v1/tenantinfo?limit=25&before=MTAxNTExOTQ1MjAwNzI5NDE=
        next:
          type: string
          description: 'API endpoint that will return the next page of data. If not included, this is the

            last page of data. Due to how pagination works with visibility and privacy, it is

            possible that a page may be empty but contain a ''next'' paging link. Stop paging when

            the ''next'' link no longer appears.

            '
          example: https://tenantapi.d.isym.io/v1/tenantinfo?limit=25&after=NDMyNzQyODI3OTQw
    MessageDetails:
      description: Message details
      type: array
      items:
        $ref: '#/components/schemas/MessageDetail'
    MessageIds:
      type: object
      properties:
        messageIds:
          $ref: '#/components/schemas/StringList'