FINOS File Ext API

The File Ext API from FINOS — 2 operation(s) for file ext.

OpenAPI Specification

finos-file-ext-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Agent Admin File Ext 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: File Ext
paths:
  /file_ext/v1/allowed_extensions:
    get:
      consumes:
      - application/json
      produces:
      - application/json
      summary: Allows iteration of all file extensions supported for upload
      description: 'Provides a RESTful API to iterate all file extensions configured by the tenant admin

        that are allowed for the upload.  Pagination of this list is managed through a

        combination of the optional request parameters and service-side managed maximums.


        Pagination of the results is provided through the before or after input paramters

        and presented through the opaque cursor values provided as output from a previous

        response.  Only one of before or after or neither may be provided.


        DO NOT store cursors. Cursors can quickly become invalid if items are added or deleted.

        Use them only during a short-period of time that you are traversing the list.

        '
      operationId: listAllowedFileExtensions
      parameters:
      - name: limit
        type: integer
        required: false
        in: query
        description: 'This is the maximum number of objects that may be returned. A query may return

          fewer than the value of limit due to filtering or service-side maximums. Do not

          depend on the number of results being fewer than the limit value to indicate your

          query reached the end of the list of data, use the absence of next instead as

          described below. For example, if you set limit to 10 and 9 results are returned,

          there may be more data available, but one item was removed due to privacy filtering.

          Some maximums for limit may be enforced for performance reasons. In all cases, the

          API returns the correct pagination links.

          '
      - name: before
        type: string
        required: false
        in: query
        description: 'Returns results from an opaque "before" cursor value as presented via a response cursor

          '
      - name: after
        type: string
        required: false
        in: query
        description: 'Returns results from an opaque "after" cursor value as presented via a response cursor

          '
      responses:
        '200':
          description: 'Requested sequence of file extensions object records with the page size

            limited by the optional limit paramter or the service-specific maximum

            limit offered.

            '
          schema:
            $ref: '#/definitions/FileExtensionsResponse'
        '400':
          description: 'Invalid arguments were passed by the client

            '
          schema:
            $ref: '#/definitions/Error'
        '401':
          description: 'Authentication was not provided

            '
          schema:
            $ref: '#/definitions/Error'
        '403':
          description: 'Authorization is not provided to this request

            '
          schema:
            $ref: '#/definitions/Error'
        '500':
          description: 'Unexpected service error - a retry may work

            '
          schema:
            $ref: '#/definitions/Error'
        '503':
          description: 'Temporarily unable to handle request - could be due to service overload or maintenance

            '
        '504':
          description: 'Timeout waiting on response at gateway

            '
      tags:
      - File Ext
  /file_ext/v1/allowed_extensions/{extension}:
    put:
      consumes:
      - application/json
      produces:
      - application/json
      summary: Allows replacement or creation of a specific file extension supported for upload
      description: 'Provides a method to create or replace a specific file extension configured for upload

        support via an admin. The API treats the file extension in the path case-insensitively

        by converting it to lowecase.

        '
      operationId: putAllowedFileExtension
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: extension
        in: path
        required: true
        type: string
      - in: body
        name: V3FileExtension
        required: true
        schema:
          $ref: '#/definitions/FileExtension'
      responses:
        200:
          description: 200 response
          schema:
            $ref: '#/definitions/FileExtension'
        400:
          description: 'Invalid arguments were passed by the client: the file extension object specified

            the source as ''system'' yet the file extension is not known to the system (API cannot

            create system file extensions, only customer-defined file extensions), the extension

            in the path doesn''t match the extension in the body, the length of the file extension

            exceeded the maximum length (64 characters)

            '
          schema:
            $ref: '#/definitions/Error'
        403:
          description: 'Authorization is not provided to this request

            '
          schema:
            $ref: '#/definitions/Error'
        500:
          description: 'Unexpected service error - a retry may work

            '
          schema:
            $ref: '#/definitions/Error'
      tags:
      - File Ext
    delete:
      consumes:
      - application/json
      produces:
      - application/json
      summary: Allows deletion of a specific file extension supported for upload
      description: 'Provides a method to delete a specific file extension configured for upload

        support via an admin. The file extension identifying the resource is treated

        case-insensitively by the API.

        '
      operationId: deleteAllowedFileExtension
      parameters:
      - name: sessionToken
        description: Session authentication token.
        in: header
        required: true
        type: string
      - name: extension
        in: path
        required: true
        type: string
      responses:
        204:
          description: 204 response
        400:
          description: 'Invalid arguments were passed by the client

            '
          schema:
            $ref: '#/definitions/Error'
        403:
          description: 'Authorization is not provided to this request

            '
          schema:
            $ref: '#/definitions/Error'
        500:
          description: 'Unexpected service error - a retry may work

            '
          schema:
            $ref: '#/definitions/Error'
      tags:
      - File Ext
definitions:
  FileExtensionsResponse:
    type: object
    required:
    - data
    - paging
    properties:
      data:
        type: array
        items:
          $ref: '#/definitions/FileExtension'
  Error:
    type: object
    properties:
      code:
        type: integer
        format: int32
        example: 401
      message:
        type: string
        example: Invalid session
  FileExtension:
    type: object
    required:
    - extension
    properties:
      extension:
        type: string
        description: 'The file extension that this specific record is for.  This is a unique ID

          that allows this record to be referenced in the URI.

          '
        example: .txt
      scope_internal:
        type: boolean
        description: 'File extension allowed for internal scope

          '
      scope_external:
        type: boolean
        description: 'File extension allowed for external scope

          '
      scope_xpod:
        type: boolean
        description: 'File extension allowed to be received from another POD

          '
        x-since: 24.2
      source:
        type: string
        description: 'File extension with metadata understood by the system or file extension created by a customer

          '
        enum:
        - SYSTEM
        - CUSTOMER