REST Interfaces for File System Browsing and Searching

If a content connector uses the common picker available out of the box with Oracle Content Management, then the content connector needs to implement the following REST API.

This REST API is required for the common UI.

/api/v1/filesystem

Implements intradoc.connectorcommon.server.FilesystemResource

This interface supports search as well as where queryText is passed.

POST http://host:port/connector/rest/api/v1/filesystem

Request Headers
X-CEC-ClientID:client-id
X-CEC-ProxyHost:proxy
X-CEC-ProxyPort:80
X-CEC-ProxyScheme:http
Content-Type:application/json
  
Request Body
{
    "itemCount": "50",
    "itemStartRow": "0",
    "itemsSortField": "ASC",
    "queryText": "animals"
}
  
Response
{
    "numItems": 50,
    "hasMoreItems": true,
    "totalItemsCount": 7190,
    "fileSystemInfo": {
        "uri": "fFolderGUID:null",
        "parentUri": "fFolderGUID:null",
        "name": "/",
        "description": null,
        "isDirectory": true,
        "size": null,
        "mimeType": null,
        "extension": null,
        "creator": null,
        "createdTimeStamp": null,
        "lastModifiedBy": null,
        "lastModifiedTimeStamp": null,
        "browseURL": null,
        "thumbnailURL": null,
        "directoryContents": [
        {
                "uri": "45170",
                "parentUri": "fFolderGUID:null",
                "name": "kittens-cat-cat-puppy-rush-45170.jpeg",
                "description": "kitten cat rush lucky cat",
                "isDirectory": false,
                "size": null,
                "mimeType": "image/jpeg",
                "extension": "jpeg",
                "creator": "Pixabay",
                "createdTimeStamp": null,
                "lastModifiedBy": null,
                "lastModifiedTimeStamp": null,
                "browseURL": "https://images.pexels.com/photos/45170/kittens-cat-cat-puppy-rush-45170.jpeg",
                "thumbnailURL": "https://images.pexels.com/photos/45170/kittens-cat-cat-puppy-rush-45170.jpeg?auto=compress&cs=tinysrgb&fit=crop&h=200&w=280",
                "directoryContents": null,
                "version": null,
                "additionalInformation": {
                    "photographer": "Pixabay",
                    "photographer_url": "http://api-server.pexels.com/@pixabay"
                }
            },
            {
                "uri": "66898",
                "parentUri": "fFolderGUID:null",
                "name": "elephant-cub-tsavo-kenya-66898.jpeg",
                "description": "elephant cub kenya savanna",
                "isDirectory": false,
                "size": null,
                "mimeType": "image/jpeg",
                "extension": "jpeg",
                "creator": "Pixabay",
                "createdTimeStamp": null,
                "lastModifiedBy": null,
                "lastModifiedTimeStamp": null,
                "browseURL": "https://images.pexels.com/photos/66898/elephant-cub-tsavo-kenya-66898.jpeg",
                "thumbnailURL": "https://images.pexels.com/photos/66898/elephant-cub-tsavo-kenya-66898.jpeg?auto=compress&cs=tinysrgb&fit=crop&h=200&w=280",
                "directoryContents": null,
                "version": null,
                "additionalInformation": {
                    "photographer": "Pixabay",
                    "photographer_url": "http://api-server.pexels.com/@pixabay"
                }
            },
. . .more entries. . .
        ],
        "version": null,
        "additionalInformation": null
    }

The itemCount value represents the page size, and the itemStartRow value indicates the starting index of the current page requested. You can use these values to determine the page number to retrieve and the number of records to fetch from your backend.