Resources
The different operations that can be performed on the Business Directory resources are:
GET /resources
This API is used to retrieve a resource by type and path, id, or guid. Execute a free-text search for resources. Returns a set of tuples in a 2-dimensional JSON array: [[row1col1value, row1col2value], [row2col1value, row2col2value]].If the 'includeFilterCounts' parameter is true and the 'q' parameter is included (even if empty), then the SearchCount procedure is used to fetch a list of valid filters for the search, and the result includes 'resources' and 'counts' objects.
Parameters
Name | Description | Parameter Type | Data Type |
q | Free-text search criteria | query | string |
resourceTypeFilter | Filter by resource types | query | string |
siteNameFilter | filter by site names | query | string |
datasourceIdFilter | Filter by datasource ids | query | string |
categoryValueIdFilter | Filter by category value ids | query | string |
watchFilter | Filter by user's watches | query | boolean |
includeFilterCounts | Include filter counts | query | boolean |
offset | Offset of first result entry to return. Default = 0. | query | integer |
limit | Maximum number of entries to return. Default = 2147483647. | query | integer |
type | The type of the resource to retrieve | query | string |
path | The path of the resource to retrieve. URL Encode any slashes in the path. | query | string |
id | | query | integer |
guid | | query | string |
Example to search for resources
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/?q=foo&limit=10&offset=0"
Example to search for resources as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/?q=foo&limit=10&offset=0"
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources?type=database_table&id=410266"
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources?type=database_table&path=%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo"
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources?type=database_table&path=%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo"
Example to get a count of resources searched for
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/?q=foo&count"
GET /resources/{resourceType}/guid/{resourceGuid}
This API is used to retrieve a resource by guid.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource to retrieve. | path | string |
resourceGuid | The guid of the resource to retrieve. | path | integer |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/guid/09c50755-f0cb-46c3-83a0-b68d2d1c9cce"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/guid/09c50755-f0cb-46c3-83a0-b68d2d1c9cce"
GET /resources/{resourceType}/guid/{resourceGuid}/columns
This API is used to retrieve columns of a table by table type and guid.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource for which to retrieve columns | path | string |
resourceGuid | The guid of the resource | path | string |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/guid/09c50755-f0cb-46c3-83a0-b68d2d1c9cce/columns"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/guid/09c50755-f0cb-46c3-83a0-b68d2d1c9cce/columns"
GET /resources/{resourceType}/guid/{resourceGuid}/columns/id/{columnId}
This API is used to retrieve a table column by table type and guid and column ID.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource for which to retrieve columns | path | string |
resourceGuid | The guid of the resource | path | string |
columnId | The column ID | path | integer |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/guid/09c50755-f0cb-46c3-83a0-b68d2d1c9cce/columns/id/11515"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/guid/09c50755-f0cb-46c3-83a0-b68d2d1c9cce/columns/id/11515"
GET /resources/{resourceType}/guid/{resourceGuid}/columns/ {columnName}
This API is used to retrieve a table column by table type and guid and column name.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource for which to retrieve columns | path | string |
resourceGuid | The guid of the resource | path | string |
columnName | The column name | path | string |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/guid/09c50755-f0cb-46c3-83a0-b68d2d1c9cce/columns/m_integer"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/guid/09c50755-f0cb-46c3-83a0-b68d2d1c9cce/columns/m_integer"
GET /resources/{resourceType}/id/{resourceId}
This API is used to retrieve a Retrieve a resource by ID.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource to retrieve | path | string |
resourceId | The ID of the resource to retrieve. | path | integer |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/id/410266"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/id/410266"
GET /resources/{resourceType}/id/{resourceId}/columns
This API is used to retrieve columns of a table by table type and ID.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource to retrieve | path | string |
resourceId | The ID of the resource to retrieve. | path | integer |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/id/410266/columns"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/id/410266/columns"
GET /resources/{resourceType}/id/{resourceId}/columns/id/{columnId}
Retrieve a table column by table type and ID and column ID.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource to retrieve | path | string |
resourceId | The ID of the resource to retrieve. | path | integer |
columnId | The column ID | path | integer |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/id/410266/columns/id/11515"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/id/410266/columns/id/11515"
GET /resources/{resourceType}/id/{resourceId}/columns/{columnName}
Retrieve a table column by table type and id and column name.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource to retrieve | path | string |
resourceId | The ID of the resource to retrieve. | path | integer |
columnName | The column name | path | string |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/id/410266/columns/m_integer"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/id/410266/columns/m_integer"
GET /resources/{resourceType}/{resourcePath}
This API is used to retrieve a resource by type and path.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource to retrieve | path | string |
resourcePath | The path of the resource to retrieve. URL Encode any slashes in the path. | path | string |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo"
GET /resources/{resourceType}/{resourcePath}/categories
This API is used to fetch category classifications for a particular resource.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource for which to retrieve classifications | path | string |
resourcePath | The path of the resource for which to retrieve classifications. URL Encode any slashes in the path. | path | string |
Example to list classifications for the resource "/localhost_9400/services/ databases/ ds/ foo"
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/categories"
Example to list classifications for the resource "/localhost_9400/services/ databases/ ds/ foo" as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/categories"
Equivalent system query
curl -X POST -u admin:admin "https://localhost:9502/rest/v2/data/typed" -H "Content-Type:application/json" -d "{\"query\":\"select * from ALL_CLASSIFICATIONS where RESOURCE_ID in (select RESOURCE_ID from ALL_BD_RESOURCES where RESOURCE_TYPE = 'database_table' and PARENT_PATH || '/' || RESOURCE_NAME = '/localhost_9400/services/databases/ds/foo' )\",\"standardSQL\":true}"
Example to count of all classifications for the resource "/localhost_9400/ services/ databases/ds/foo"
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/categories&count"
POST /resources/{resourceType}/{resourcePath}/categories
This API is used to classify a resource by associating them with category/value pairs.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource to classify | path | string |
resourcePath | The path of the resource to classify. URL Encode any slashes in the path. | path | string |
Request Body
[
{
"categoryName": "string",
"categoryValues": [
"string"
]
}
]
Example to classify a resource with the products/bestseller and products/favorite category/value pairs
curl -X POST -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/categories" -H "Content-Type:application/json" -d "[{\"categoryName\":\"products\", \"categoryValues\": [\"bestseller\", \"favorite\"]}]"
Example to classify a resource with the products/bestseller and products/favorite category/value pairs (as ldap user)
curl -X POST -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/categories" -H "Content-Type:application/json" -d "[{\"categoryName\":\"products\", \"categoryValues\": [\"bestseller\", \"favorite\"]}]"
DELETE /resources/{resourceType}/{resourcePath}/categories
This API is used to remove resource classifications.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource from which a classification is to be removed. | path | string |
resourcePath | The path of the resource from which a classification is to be removed. URL Encode any slashes in the path | path | string |
Example to remove the products/bestseller and products/favorite category/value pair classification from a resource
curl -X DELETE -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/categories" -H "Content-Type:application/json" -d "[{\"categoryName\":\"products\", \"categoryValues\": [\"bestseller\", \"favorite\"]}]"
Example to remove the products/bestseller and products/favorite category/value pair classification from a resource (as ldap user)
curl -X DELETE -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/categories" -H "Content-Type:application/json" -d "[{\"categoryName\":\"products\", \"categoryValues\": [\"bestseller\", \"favorite\"]}]"
DELETE /resources/{resourceType}/{resourcePath}/categories/ {categoryName}/values/{valueName}
This API is used to remove a single resource classification.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource from which a classification is to be removed. | path | string |
resourcePath | The path of the resource from which a classification is to be removed. URL Encode any slashes in the path. | path | string |
categoryName | The name of the category associated with the classification to remove. | path | string |
valueName | The name of the category value associated with the classification to remove. | path | string |
Example to remove a classification from a resource
curl -X DELETE -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/categories/products/values/bestseller"
Example to remove a classification from a resource as ldap user
curl -X DELETE -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/categories/products/values/bestseller"
GET /resources/{resourceType}/{resourcePath}/columns
This API is used to retrieve columns of a table by table type and path.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource for which to retrieve columns | path | string |
resourcePath | The path of the resource. URL Encode any slashes in the path. | path | string |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/columns"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/columns"
GET /resources/{resourceType}/{resourcePath}/columns/id/{columnId}
This API is used to retrieve a table column by table type and path and column ID.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource for which to retrieve columns | path | string |
resourcePath | The path of the resource. URL Encode any slashes in the path. | path | string |
columnId | The column ID | path | integer |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/columns/id/11515"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/columns/id/11515"
GET /resources/{resourceType}/{resourcePath}/columns/{columnName}
This API is used to retrieve a table column by table type and path and column name.
Parameters
Name | Description | Parameter Type | Data Type |
resourceType | The type of the resource for which to retrieve columns | path | string |
resourcePath | The path of the resource. URL Encode any slashes in the path. | path | string |
columnName | The column name | path | string |
Example to retrieve a resource
curl -X GET -u admin:admin "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/columns/m_integer"
Example to retrieve a resource as ldap user
curl -X GET -u user@ldapDomain:password "https://localhost:9502/rest/v2/resources/database_table/%2Flocalhost_9400%2Fservices%2Fdatabases%2Fds%2Ffoo/columns/m_integer"