The Resource Manager API endpoints live in the manager nodes only. They are responsible for serving component resources such as properties, icons and DXF (for UI configuration).



Get available resources

Lists resources configured in the Aspire, this endpoint needs the at least the OPERATOR role to be executed.

GET /aspire/_api/resources/:type


Path Parameters

NameTypeRequiredDescription
typestringRequired

The type of resource

  • "connector"
  • "application"
  • "publisher"
  • "service"
  • "framework"
  • "other"


Request and Response example

GET /aspire/_api/resources/connector
{
    "resource": [
        {
            "available": true,
            "mavenCoordinates": "com.accenture.aspire:aspire-sharepointonline-source",
            "type": "sharepoint-online",
            "displayName": "sharepoint-online",
            "versions": [
                "5.0-SNAPSHOT"
            ],
            "currentVersion": "5.0-SNAPSHOT",
            "properties": {
                "connector.framework.feature.hierarchy": "false",
                "connector.framework.feature.contentCrawling": "true",
                "checkSnapshotAfterProcess": "false",
                "mvnCoordinates": "com.accenture.aspire:aspire-sharepointonline-source",
                "component.default.dxf": "dxf/contentSource.xml",
                "component.appbundle.maven.coordinates": "app-rap-connector",
                "connector.framework.isRAP": "true",
                "connector.framework.feature.identityCrawling": "false"
            }
        },
        {
            "available": true,
            "mavenCoordinates": "com.accenture.aspire:aspire-filesystem-source",
            "type": "filesystem",
            "displayName": "filesystem",
            "versions": [
                "5.0-SNAPSHOT"
            ],
            "currentVersion": "5.0-SNAPSHOT",
            "properties": {
                "connector.framework.feature.hierarchy": "true",
                "connector.framework.feature.contentCrawling": "true",
                "checkSnapshotAfterProcess": "false",
                "mvnCoordinates": "com.accenture.aspire:aspire-filesystem-source",
                "component.default.dxf": "dxf/contentSource.xml",
                "useCredentials": "false",
                "component.appbundle.maven.coordinates": "app-rap-connector",
                "connector.framework.isRAP": "true",
                "connector.framework.feature.groupExpansion": "false",
                "connector.framework.feature.identityCrawling": "false"
            }
        }
    ]
}

Status: 200, 400

Get properties for the component

Gets properties for the component, this endpoint needs the at least the OPERATOR role to be executed.

GET /aspire/_api/resources/:type/:cmpName/properties


Path Parameters

NameTypeRequiredDescription
typestringRequired

The type of resource

  • "connector"
  • "application"
  • "publisher"
  • "service"
  • "framework"
  • "other"
cmpNamestringRequiredA component we require properties for.


Request and Response example

/aspire/_api/resources/connector/sharepoint-online/properties
{
    "properties": {
        "connector.framework.feature.hierarchy": "false",
        "connector.framework.feature.contentCrawling": "true",
        "checkSnapshotAfterProcess": "false",
        "mvnCoordinates": "com.accenture.aspire:aspire-sharepointonline-source",
        "component.default.dxf": "dxf/contentSource.xml",
        "component.appbundle.maven.coordinates": "app-rap-connector",
        "connector.framework.isRAP": "true",
        "connector.framework.feature.identityCrawling": "false"
    }
}

Status: 200, 400, 404



Get the icon for the component

Gets the icon for the component, this endpoint needs the at least the OPERATOR role to be executed.

GET /aspire/_api/resources/:type/:cmpName/icon


Path Parameters

NameTypeRequiredDescription
typestringRequired

The type of resource

  • "connector"
  • "application"
  • "publisher"
  • "service"
  • "framework"
  • "other"
cmpNamestringRequiredA component we require icon for.


Query Parameters

NameTypeRequiredDescription
thumbnailbooleanOptional

We want the thumbnail from the icon


Request and Response example

/aspire/_api/resources/connector/sharepoint-online/icon?thumbnail=true

[the image]

Status: 200, 400, 404

Get the dxf for the component

Gets the icon for the component, this endpoint needs the at least the OPERATOR role to be executed.

GET /aspire/_api/resources/:type/:cmpName/dxf


Path Parameters

NameTypeRequiredDescription
typestringRequired

The type of resource

  • "connector"
  • "application"
  • "publisher"
  • "service"
  • "framework"
  • "other"
cmpNamestringRequiredA component we require the DXF for.


Query Parameters

NameTypeRequiredDescription
filestringRequired

The DXF file name


Request and Response example

/aspire/_api/resources/connector/filesystem/dxf?file=server
{
    "General": [
        {
            "type": "text",
            "key": "url",
            "display": "Base Path",
            "placeholder": "C:\\",
            "tooltip": "All the seeds will be prefixed with this value to form the full path",
            "validations": [
                "required",
                "path"
            ]
        },
        {
            "type": "boolean",
            "key": "ignoreSymLinks",
            "display": "Ignore Symbolic Links",
            "default": false,
            "tooltip": "If selected, symbolic links will not be processed and links in the root items will cause error."
        },
        {
            "type": "boolean",
            "key": "ignoreScanErrors",
            "display": "Ignore Scan Errors",
            "default": false,
            "tooltip": "If selected, the scanning errors won't stop the crawl from continuing, but they are still going to be logged."
        }
    ],
    "Security": [
        {
            "type": "fieldset",
            "display": "Static ACLs",
            "tooltip": "These ACLs will be added to all of the documents.",
            "body": [
                {
                    "type": "multiple",
                    "key": "staticAcl",
                    "body": [
                        {
                            "type": "text",
                            "key": "name",
                            "display": "Name",
                            "placeholder": "john.doe",
                            "validations": [
                                "required"
                            ],
                            "tooltip": "Name of the ACL."
                        },
                        {
                            "type": "text",
                            "display": "Domain",
                            "key": "domain",
                            "placeholder": "domain",
                            "tooltip": "Domain to which the ACL belongs to."
                        },
                        {
                            "key": "entity",
                            "type": "select",
                            "display": "Entity",
                            "tooltip": "Whether or not this ACL is for a group or a user.",
                            "default": "user",
                            "options": [
                                {
                                    "key": "group",
                                    "display": "Group"
                                },
                                {
                                    "key": "user",
                                    "display": "User"
                                }
                            ]
                        },
                        {
                            "key": "access",
                            "type": "select",
                            "display": "Access",
                            "tooltip": "Whether or not this ACL will have access to crawled files",
                            "default": "allow",
                            "options": [
                                {
                                    "key": "allow",
                                    "display": "Allow"
                                },
                                {
                                    "key": "deny",
                                    "display": "Deny"
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ]
}

Status: 200, 400, 404

Add custom application

Delete one or more connectors from Aspire, this endpoint need the OPERATOR role to be executed.

PUT /aspire/_api/resources/:resourceType/addCustom


Path Parameters

NameTypeRequiredDescription
resourceTypestringRequired

The type of resource

  • "connector"
  • "application"
  • "publisher"
  • "other"


Request example

PUT /aspire/_api/resources/connector/addCustom
{
   "name" : "customFileSystem",
   "mvnCoordinates" : "com.accenture.aspire:aspire-customFilesystem-source:5.0"
}

Status: 200, 400, 409

Delete custom application

Delete the custom application, this endpoint need the OPERATOR role to be executed.

DELETE /aspire/_api/resources/:type/:cmpName/deleteCustom


Path Parameters

NameTypeRequiredDescription
typestringRequired

The type of resource

  • "connector"
  • "application"
  • "publisher"
  • "service"
  • "framework"
  • "other"
cmpNamestringRequiredA component to be deleted


Request example

DELETE /aspire/_api/resources/connector/customFileSystem/deleteCustom

Status: 200, 404

Dashboards enabled

Determine if there are dashboards properties enabled

GET /aspire/_api/resources/dashboard

Status: 200

Response example

{
  "enabled" : true
}

Get Main Dashboard

Get the URL to the Main Dashboard

GET /aspire/_api/resources/dashboard/main

Status: 200

Response example

{
  "url" : "https://kibana_host:5601/...."
}

Get Metrics Dashboard

Get the URL to the Metrics Dashboard for a list of given crawls

POST /aspire/_api/resources/dashboard/metrics

Request example

POST /aspire/_api/resources/dashboard/metrics
[
   {
      "seed" : "e11dac6b-0083-4d9a-ac3b-0e1bca4f0872",
      "crawlId" : "1623652817"
   },
   {
      "seed" : "98d65d8b-a7eb-4349-9f51-4139cf8a6404",
      "crawlId" : "1623642813"
   }
]

Status: 200

Response example

{
  "e11dac6b-0083-4d9a-ac3b-0e1bca4f0872" : {
     "url" : "https://kibana_host:5601/....."
  },
  "98d65d8b-a7eb-4349-9f51-4139cf8a6404" : {
     "url" : "https://kibana_host:5601/....."
  }
}

Upload File

Uploads a file to the Aspire resources repository, this endpoint needs the at least the OPERATOR role to be executed.

POST /aspire/_api/resources/file?description=:description

Body Form

NameTypeRequiredDescription
filefileRequired

The file to be uploaded

Query Parameters

NameTypeRequiredDescription
descriptionstringRequired

The file description

Request example

POST /aspire/_api/resources/file?description=groovy --form 'file=@"/C:/Directory/file.groovy"'

Status: 200

Response example

{
	"id" : "517f161623ea3f43cc567a33914b96c31cbaa2c63d2594174d2b6230b1912ae1"
	"name" : "file.groovy",
	"description" : "groovy",
	"checksum" : "12565092083235"
}

Download File

Downloads a file from the Aspire resources repository, this endpoint needs the at least the OPERATOR role to be executed.

GET /aspire/_api/resources/file/:id

Path Parameters

NameTypeRequiredDescription
idstringRequiredThe id of the file to download

Request example

GET /aspire/_api/resources/file/517f161623ea3f43cc567a33914b96c31cbaa2c63d2594174d2b6230b1912ae1

Status: 200

Response example

[the file]

Update File Description

Updates the description from a file to the Aspire resources repository, this endpoint needs the at least the OPERATOR role to be executed.

POST /aspire/_api/resources/file/:id?description=:description

Path Parameters

NameTypeRequiredDescription
idstringRequiredThe id of the file to update

Query Parameters

NameTypeRequiredDescription
descriptionstringRequired

The file description

Request example

POST/aspire/_api/resources/file/517f161623ea3f43cc567a33914b96c31cbaa2c63d2594174d2b6230b1912ae1?description=new_description

Status: 200

Response example

{
	"id" : "517f161623ea3f43cc567a33914b96c31cbaa2c63d2594174d2b6230b1912ae1"
}

Delete File

Deletes a file from the Aspire resources repository, this endpoint needs the at least the OPERATOR role to be executed.

DELETE /aspire/_api/resources/file/:id

Path Parameters

NameTypeRequiredDescription
idstringRequiredThe id of the file to delete

Request example

DELETE /aspire/_api/resources/file/517f161623ea3f43cc567a33914b96c31cbaa2c63d2594174d2b6230b1912ae1

Status: 200

Response example

{
	"id" : "517f161623ea3f43cc567a33914b96c31cbaa2c63d2594174d2b6230b1912ae1"
}

Get File List

Gets the list of files in the Aspire resources repository, this endpoint needs the at least the OPERATOR role to be executed.

GET /aspire/_api/resources/file?from=:from&size=:size

Query Parameters

NameTypeRequiredDescription
fromintegerOptionalThe offset for the results page


sizeintegerOptionalThe page size

Request example

GET /aspire/_api/resources/file

Status: 200

Response example

{
    "count": {
        "totalItems": 1
    },
    "resource": [
        {
            "id" : "517f161623ea3f43cc567a33914b96c31cbaa2c63d2594174d2b6230b1912ae1"
            "name" : "file.groovy",
            "description" : "groovy",
            "checksum" : "12565092083235"
        }
    ]
}
  • No labels