Archive the asset container

POST /v2/asset_containers/archive

Archive the assets database of the asset container.<br/><br/>Archiving the assets database of not used asset containers helps saving storage and computing resources of the database, therefore reduce the footprint of CAMS.The information stored in the archived asset containers will not be accessible until the asset containers are restored.

Request

Request Body

CatalogArchiveCatalogRequest

Archive request

comment

string

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

202 - Accepted

state

string

archive_comment

string

archive_file_path

string

archive_schedule_time

string

archive_schedule_time_ticks

integer

archive_stop_time

string

archive_stop_time_ticks

integer

restore_schedule_time

string

restore_schedule_time_ticks

integer

restore_stop_time

string

restore_stop_time_ticks

integer

failed_times

integer

The times that the archive/restore process failed for the asset container. Note that a successful archive/restore will reset this field.

failure

CatalogErrorContainerModel

The details of the error.

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get archive information of the asset container

GET /v2/asset_containers/archive_info

Get archive information of the asset container.

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

state

string

archive_comment

string

archive_file_path

string

archive_schedule_time

string

archive_schedule_time_ticks

integer

archive_stop_time

string

archive_stop_time_ticks

integer

restore_schedule_time

string

restore_schedule_time_ticks

integer

restore_stop_time

string

restore_stop_time_ticks

integer

failed_times

integer

The times that the archive/restore process failed for the asset container. Note that a successful archive/restore will reset this field.

failure

CatalogErrorContainerModel

The details of the error.

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get configurations

GET /v2/asset_containers/configurations

Get the configurations of a catalog/project/space.

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

duplicate_action

string

Action to take if duplicate assets are found for a given asset

default_duplicate_strategy

string

Default duplicate detection strategy for assets of types that do not have duplicate detection strategy defined

duplicate_strategies

array

Duplicate detection strategies of assets with specified asset types in this catalog/project/space

reporting_authorized

boolean

Authorize reporting in this catalog

default_purge_on_delete

boolean

Whether assets has to be purged on delete

default_purge_after_days

integer

Days after which assets has to be purged after soft delete

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

Replace or create configurations

PUT /v2/asset_containers/configurations

Replace the configurations of a catalog/project/space or create the configurations if they do not exist.

Request

Request Body

CatalogAssetContainerConfiguration

Configurations

duplicate_action

string

Action to take if duplicate assets are found for a given asset

default_duplicate_strategy

string

Default duplicate detection strategy for assets of types that do not have duplicate detection strategy defined

duplicate_strategies

array

Duplicate detection strategies of assets with specified asset types in this catalog/project/space

reporting_authorized

boolean

Authorize reporting in this catalog

default_purge_on_delete

boolean

Whether assets has to be purged on delete

default_purge_after_days

integer

Days after which assets has to be purged after soft delete

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

duplicate_action

string

Action to take if duplicate assets are found for a given asset

default_duplicate_strategy

string

Default duplicate detection strategy for assets of types that do not have duplicate detection strategy defined

duplicate_strategies

array

Duplicate detection strategies of assets with specified asset types in this catalog/project/space

reporting_authorized

boolean

Authorize reporting in this catalog

default_purge_on_delete

boolean

Whether assets has to be purged on delete

default_purge_after_days

integer

Days after which assets has to be purged after soft delete

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Restore the asset container

POST /v2/asset_containers/restore

Restore the assets database of the archived asset container. Only successfully archived asset container can be restored.

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

state

string

archive_comment

string

archive_file_path

string

archive_schedule_time

string

archive_schedule_time_ticks

integer

archive_stop_time

string

archive_stop_time_ticks

integer

restore_schedule_time

string

restore_schedule_time_ticks

integer

restore_stop_time

string

restore_stop_time_ticks

integer

failed_times

integer

The times that the archive/restore process failed for the asset container. Note that a successful archive/restore will reset this field.

failure

CatalogErrorContainerModel

The details of the error.

202 - Accepted

state

string

archive_comment

string

archive_file_path

string

archive_schedule_time

string

archive_schedule_time_ticks

integer

archive_stop_time

string

archive_stop_time_ticks

integer

restore_schedule_time

string

restore_schedule_time_ticks

integer

restore_stop_time

string

restore_stop_time_ticks

integer

failed_times

integer

The times that the archive/restore process failed for the asset container. Note that a successful archive/restore will reset this field.

failure

CatalogErrorContainerModel

The details of the error.

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

List all asset lists defined for an account

GET /v2/asset_lists

Retrieve a paginated list of asset lists defined for an account.

Request

Path Parameters

Query Parameters

query

string

Query to retrieve a paginated list of asset list metadatas for which the request user has permission to view.<br/><br/>Search query in Common Expression Language, with special characters encoded. For example, & is %26.<br/><br/>Examples of query parameters:<br/>* id<br/>* type<br/>* state<br/>* access_control.owner<br/>* created_at<br/>* last_updated_at

start

string

Start token for pagination

limit

integer

Search result limit

sort

This parameter can be repeated to add additional sort fields. <br><br>Default: null

Examples of sort fields (these are case insensitive):

  • created_at
  • -created_at
  • last_updated_at
  • -last_updated_at

Response

200 - OK

limit

integer

The limit on the number of results returned.

total_count

integer

The total count on the number of results returned, accounting for filtering but not pagination.

first

CatalogBaseCollectionPage

A page in a pagination collection.

next

CatalogBaseCollectionNextPage

The next page in the collection.

asset_lists

array

Collection of asset list results.

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Create a new asset list

POST /v2/asset_lists

Use this API to creates a new asset list.<br/><br/>If the `state` is not specified, the asset list will be created in DEFAULT state.<br/>The list may be created with items, or without items.<br/>The list will be owned by the request user.

Request

Request Body

CatalogAssetListPrototype

The asset list for creation.

name

Required *

string

Asset list name. A name can contain letters, numbers, understores, dashes, spaces or periods. Names are mutable and reusable.

description

string

A description of the asset list.

type

Required *

string

The type of the asset list. Valid types are: ['order', 'cart', 'wishlist']

state

string

The state of the asset list. Valid states are: ['default_state', 'confirmed']. If not specified, the default value will be 'DEFAULT'.

message

string

A message used for communicating reasons for state changes.

properties

CatalogPropertiesObject

The properties of an asset list item.

asset

CatalogAssetReference

An asset from a container.

id

Required *

string

The unique identifier of the asset formatted as a UUID.

type

string

The type (primary attribute) of the asset

container

object

The container for the asset ('catalog', 'project' or 'space').

items

array

The items in the asset list.

Response

201 - Created

name

string

Asset list name. A name can contain letters, numbers, understores, dashes, spaces or periods. Names are mutable and reusable.

description

string

A description of the asset list.

type

string

The type of the asset list. Valid types are: ['order', 'cart', 'wishlist']

state

string

The state of the asset list. Valid states are: ['default_state', 'confirmed']. If not specified, the default value will be 'DEFAULT'.

message

string

A message used for communicating reasons for state changes.

properties

CatalogPropertiesObject

The properties of an asset list item.

id

string

The unique identifier of the asset list formatted either as a UUID or a special case such as cart_userID.

asset

CatalogAssetReference

An asset from a container.

access_control

CatalogAssetListAccessControl

Access control permissions for the asset list.

created_at

string

RFC 3339 timestamp when the asset list was created (system managed).

last_updated_at

string

RFC 3339 timestamp when the asset list was last updated (system managed).

last_updated_by

string

The user who last updated the asset list.

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

409 - Conflict

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

429 - Too Many Requests

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Delete asset lists

DELETE /v2/asset_lists

Deletes asset lists based on a query in Common Expression Language format.

Request

Path Parameters

Query Parameters

query

string

Query to delete asset lists for which the request user has permission.<br/><br/>Search query in Common Expression Language, with special characters encoded. For example, & is %26.<br/><br/>Examples of query parameters:<br/>* id<br/>* type<br/>* state<br/>* access_control.owner<br/>* created_at<br/>* last_updated_at

Response

204 - No Content

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

404 - Not Found

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

429 - Too Many Requests

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Retrieve an asset list identified by ID

GET /v2/asset_lists/{asset_list_id}

Retrieves the metadata of an asset list of a given identified by ID.

Request

Response

200 - OK

name

string

Asset list name. A name can contain letters, numbers, understores, dashes, spaces or periods. Names are mutable and reusable.

description

string

A description of the asset list.

type

string

The type of the asset list. Valid types are: ['order', 'cart', 'wishlist']

state

string

The state of the asset list. Valid states are: ['default_state', 'confirmed']. If not specified, the default value will be 'DEFAULT'.

message

string

A message used for communicating reasons for state changes.

properties

CatalogPropertiesObject

The properties of an asset list item.

id

string

The unique identifier of the asset list formatted either as a UUID or a special case such as cart_userID.

asset

CatalogAssetReference

An asset from a container.

access_control

CatalogAssetListAccessControl

Access control permissions for the asset list.

created_at

string

RFC 3339 timestamp when the asset list was created (system managed).

last_updated_at

string

RFC 3339 timestamp when the asset list was last updated (system managed).

last_updated_by

string

The user who last updated the asset list.

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

404 - Not Found

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Delete an asset list identified by ID

DELETE /v2/asset_lists/{asset_list_id}

Deletes an asset list identified by ID. The user must have permission to perform this action.

Request

Response

204 - No Content

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

404 - Not Found

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

409 - Conflict

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

429 - Too Many Requests

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Update the metadata of an asset list

PATCH /v2/asset_lists/{asset_list_id}

Use this API to update the asset list metadata. Specify patch operations using http://jsonpatch.com/ syntax.

Fields that can be patched:

  • /name
  • /description
  • /type
  • /state (Approvers and Functional users only)
  • /message (Approvers and Functional users only)

Note: The ownership cannot be modified after creation.

Request

Request Body

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info.

Response

200 - OK

name

string

Asset list name. A name can contain letters, numbers, understores, dashes, spaces or periods. Names are mutable and reusable.

description

string

A description of the asset list.

type

string

The type of the asset list. Valid types are: ['order', 'cart', 'wishlist']

state

string

The state of the asset list. Valid states are: ['default_state', 'confirmed']. If not specified, the default value will be 'DEFAULT'.

message

string

A message used for communicating reasons for state changes.

properties

CatalogPropertiesObject

The properties of an asset list item.

id

string

The unique identifier of the asset list formatted either as a UUID or a special case such as cart_userID.

asset

CatalogAssetReference

An asset from a container.

access_control

CatalogAssetListAccessControl

Access control permissions for the asset list.

created_at

string

RFC 3339 timestamp when the asset list was created (system managed).

last_updated_at

string

RFC 3339 timestamp when the asset list was last updated (system managed).

last_updated_by

string

The user who last updated the asset list.

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

409 - Conflict

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

415 - Unsupported Media Type

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

List the items of an asset list identified by ID

GET /v2/asset_lists/{asset_list_id}/items

Retrieves the list items of an asset list identified by ID.

Request

Path Parameters

asset_list_id

Required *

string

Asset list id (GUID, or [type]_[userId])

Query Parameters

query

string

Query to retrieve a paginated list of asset list items for which the request user has permission to view.<br/><br/>Search query in Common Expression Language, with special characters encoded. For example, & is %26.<br/><br/>

start

string

Start token for pagination

limit

integer

Search result limit

sort

This parameter can be repeated to add additional sort fields. <br><br>Default: null

Examples of sort fields (these are case insensitive):

  • created_at
  • -created_at
  • last_update_time
  • -last_update_time

Response

200 - OK

limit

integer

The limit on the number of results returned.

total_count

integer

The total count on the number of results returned, accounting for filtering but not pagination.

first

CatalogBaseCollectionPage

A page in a pagination collection.

next

CatalogBaseCollectionNextPage

The next page in the collection.

items

array

Collection of asset list item results.

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

404 - Not Found

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Retrieve an item in an asset list

GET /v2/asset_lists/{asset_list_id}/items/{asset_list_item_id}

Retrieves an item identified by ID of an asset list identified by ID.

Request

Response

200 - OK

asset

CatalogAssetReference

An asset from a container.

properties

CatalogPropertiesObject

The properties of an asset list item.

id

string

The unique identifier of the asset list item formatted as a UUID.

access_control

CatalogAssetListAccessControl

Access control permissions for the asset list.

created_at

string

RFC 3339 timestamp when the asset list item was created (system managed).

last_updated_at

string

RFC 3339 timestamp when the asset list item was last updated (system managed).

last_updated_by

string

The user who last updated the asset list item.

asset_list

object

The reference to the asset list to which the item belongs.

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

404 - Not Found

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Update an asset list item

PATCH /v2/asset_lists/{asset_list_id}/items/{asset_list_item_id}

Use this API to update an asset list item. Specify patch operations using http://jsonpatch.com/ syntax.

Fields that can be patched:

  • /properties

Request

Request Body

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info.

Response

200 - OK

asset

CatalogAssetReference

An asset from a container.

properties

CatalogPropertiesObject

The properties of an asset list item.

id

string

The unique identifier of the asset list item formatted as a UUID.

access_control

CatalogAssetListAccessControl

Access control permissions for the asset list.

created_at

string

RFC 3339 timestamp when the asset list item was created (system managed).

last_updated_at

string

RFC 3339 timestamp when the asset list item was last updated (system managed).

last_updated_by

string

The user who last updated the asset list item.

asset_list

object

The reference to the asset list to which the item belongs.

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

415 - Unsupported Media Type

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Searches for relationship types

GET /v2/asset_relationship_types

Searches for relationship types using various criteria. The query parameters here provide filters for the relationship types that are returned in the result. If no query parameters are provided, the result will include all relationship types that are visible to your bss account. If an asset container is specified, the results are limited to relationship types where at least one end can be used with the specified asset container. This is the case if the relationship end either has no declared asset container (for example because the end references a global asset type or is untyped) or if the end has an asset container that is the same as the asset container specified. If a `relname` filter is specified, the results are limited to relationship types where at least one end has a relationship name in the list. In order to see relationship types where at least one end is in the container asset type(s), you must either belong to the container's BSS account or have at least editor permission on the container. All users have permission to see global relationship types.

Limit the relationship types based on the item types:

  • If the `asset_type` is specified, the results are limited to relationship types where at least one end is either untyped or is in the specified asset type list.
  • If both `asset_type` and `related_asset_type` are specified, the results are limited to relationship types where both ends are untyped, or where one end is in the specified asset type list and the other end has the specified asset type list.
  • If the `artifact_type` is specified, the results are limited to relationship types where at least one end is either untyped or is in the specified artifact type list.
  • If both `artifact_type` and `related_asset_type` are specified, the results are limited to relationship types where both ends are untyped, or where one end is in the specified artifact type list and the other end has the specified asset type list.
  • If the `asset_type` or `related_asset_type` is set to `*#_column`, the results are limited to relationship types where one end can be used with any supported column type (currently limited to `data_asset` columns)
  • If the item type is set to `*`, the results are limited to relationship types where one end can be used with any asset type or any artifact type.

Note: In CP4D environments there is just one global bss account, so all relationship types are always visible to all users.

Request

Path Parameters

Query Parameters

container_type

string

Required when container_id is specified and the container is not a catalog. Specifies the type of the container (CATALOG/PROJECT/SPACE). Defaults to CATALOG.

container_id

string

Container ID. This limits results to relationship types that have an endpoint with the specified ID of a catalog, project, or space. If the container is a project or space, the container_type parameter must be also specified, otherwise container_id is treated as a catalog ID. This parameter is required when querying for relationship types associated with a catalog, project, or space. If this parameter is omitted, relationships types are not filtered by their container. Note that any type with an endpoint that has no container ID will also be included the result.

type_name

string

The parameter `type_name` is deprecated, please use `asset_type` instead

asset_type

array

Asset Type Name(s). This limits the results to only relationship types that have an endpoint in the specified asset type list, or have an endpoint that is untyped.

artifact_type

array

Artifact Type Name(s). This limits the results to only relationship types that have an endpoint in the specified artifact type list, or have an endpoint that is untyped.

array

Related Asset Type Name(s). This parameter can only be set when either asset_type or artifact_type is also set.

When asset_type is set, this limits the results to only relationship types that have an endpoint with the specified asset type and the other endpoint with this specified asset type.

When artifact_type is set, this limits the results to only relationship types that have an endpoint with the specified artifact type and the other endpoint with this specified asset type.

limit

integer

limit to use when finding relationship types

bookmark

string

Optional bookmark to use when finding relationship types.

relname

array

Relationship name(s). This limits the results to relationship types that have an endpoint with the specified name. The parameter should be repeated for each allowed relationship name.

default_display_name

array

Default display name(s). This limits the results to relationship types that have an endpoint with the specified name. The parameter should be repeated for each allowed relationship name.

scope

string

Specifies the scope of the relationship types which can be (GLOBAL/BSS_ACCOUNT). If GLOBAL - it returns all types scoped to Global.If BSS_ACCOUNT - it returns all types scoped to BSS_ACCOUNT.If query parameter is omitted, it returns all.

bss_account_id

string

If specified, the results are limited to relationship types that can be accessed by the specified BSS account. If `container_id` is also specified, the catalog's BSS account must be the same as the BSS account specified here.

If `bss_account_id` is not specified and the API is called with an accredited service ID access token, then there is no filtering of the results based on BSS account.

If `bss_account_id` is not specified, and the API is called with a regular user (i.e. non-service ID) access token, then the result depends on whether `container_id` is specified. If `container_id` is specified, then the result includes global relationship types and account-scoped relationship types for the container's BSS account. If `container_id` is not specified, then the result includes global relationship types, and account-scoped relationship types for all of the user's BSS accounts.

Response

200 - Success

resources

array

relationship types that match the search criteria

total_rows

integer

total number of rows in the search result

next

object

URL to fetch the next page of search results

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

429 - Too Many Requests

Specifying the Type

The combination of `container_type`, `container_id`, and `containing_asset_type(s)` control what asset types can be used at each end of the relationship. The asset type can be a global asset type, an account-level asset type, a container-scoped asset type, or any asset type.

Global Asset Type

To define a relationship end for a global asset type, the `containing_asset_type(s)` field must be set to the name of the asset type and the `container_id` must be omitted. In this case, the relationship end can only be used with the specified global asset type. If the `container_type` field is set when using a global asset type, it is ignored.

Account Level Asset Type

To define a relationship end for an account-level asset type, the `containing_asset_type(s)` field must be set to the name of the asset type and the `container_id` must be omitted. In addition, the `bss_account_id` query parameter must be set to the bss account that owns the account-level asset type. In this case, the relationship end can only be used with the specified account-level asset type. If the `container_type` field is set when using an account-level asset type, it is ignored.

Container-Scoped Asset Type

The relationship mechanism allows relationship ends to be restricted to an asset type defined in a specific catalog, project, or space. To do this, the `containing_asset_type(s)`, `container_type`, and `container_id` fields must all be set.

Artifact Type

To define a relationship end for an governance artifact type, the `containing_artifact_type(s)` field must be set to the name of the artifact type and the `container_id` must be omitted. The on_delete field can only set to IGNORE on both ends

Column Type

To define a relationship end for a column type, the `containing_asset_type(s)` field must be set in the format of `<asset_type>#_column`. When `*#_column` is specified, the relationship end can be used with any supported column type. Currently, only `data_asset` columns are supported. The `on_delete` field can only set to `IGNORE` on both ends

Any Type

To allow a relationship end to be used with any asset type, the `containing_artifact_type(s)`, `containing_asset_type(s)` and `container_id` fields for the relationship end must be omitted. In this case, the relationship end can be used with any asset type, any artifact type, and any supported column type in any container. If the `container_type` field is set, it will be ignored.

Note: Cannot have `containing_artifact_type(s)` specified in both ends

Specifying the Relationship Type Scope

A relationship type can either be global or be scoped to a BSS account.

A relationship type can be explicitly scoped to a specific bss account using the `bss_account_id` query parameter. When a relationship type is scoped to a bss account, all specified asset containers and account-level asset types must belong to that bss account. If either endpoint for the relationship type has a specific asset container, the relationship type is automatically scoped to the bss account for the asset container. Account scoped relationship types can only be created if the user either belongs to the same bss account or is an administrator of all asset containers in the relationship type definition.

By default, if neither end of the relationship type specifies an asset container, the relationship type is created in the global scope and is accessible to all users. Only service ids with permission to create global asset types are allowed to create globally scoped relationship types. It is possible to scope a relationship type where neither end has an asset container to a specific BSS account. To do this, you must set the `bss_account_id` query parameter when creating the relationship type. The bss account must be set to a bss account that you have access to. In that case, the relationship type will be created, but its use will be restricted to asset containers associated with that bss account.

By default, on_delete is set to `IGNORE` if it is not specified

Note that in CP4D environments, there is only one bss account (`999`). As a result, in that context relationship types scoped to a specific BSS account are effectively global.

Cascading clone/publish/promote to Referenced Assets

The following flags control how related assets are processed when an asset is copied using the `deepcopy` endpoint

Option Allowed Value Default Description
on_clone CASCADE/IGNORE IGNORE If CASCADE, deepcopy from a catalog to a project causes the referenced assets to be copied as well
on_publish CASCADE/IGNORE IGNORE If CASCADE, deepcopy from project to a catalog causes the referenced assets to be copied as well
on_promote CASCADE/IGNORE IGNORE If CASCADE, deepcopy from a project to a space causes the referenced assets to be coped as well

">

Creates an asset relationship type

POST /v2/asset_relationship_types

Use this API to create an asset relationship type. The type definition consists of two endpoints which specify the two ends of a bidirectional relationship. The endpoints define the name of the relationship at each end, and the qualified asset type or the qualified artifact type that contains the relationship endpoint. The names of the relationships that can be used with any given asset type or artifact type are required to be unique. If the qualified asset type and the qualified artifact type are omitted, that end can be used with any asset type and any artifact type in any container.

Specifying the Type

The combination of `container_type`, `container_id`, and `containing_asset_type(s)` control what asset types can be used at each end of the relationship. The asset type can be a global asset type, an account-level asset type, a container-scoped asset type, or any asset type.

Global Asset Type

To define a relationship end for a global asset type, the `containing_asset_type(s)` field must be set to the name of the asset type and the `container_id` must be omitted. In this case, the relationship end can only be used with the specified global asset type. If the `container_type` field is set when using a global asset type, it is ignored.

Account Level Asset Type

To define a relationship end for an account-level asset type, the `containing_asset_type(s)` field must be set to the name of the asset type and the `container_id` must be omitted. In addition, the `bss_account_id` query parameter must be set to the bss account that owns the account-level asset type. In this case, the relationship end can only be used with the specified account-level asset type. If the `container_type` field is set when using an account-level asset type, it is ignored.

Container-Scoped Asset Type

The relationship mechanism allows relationship ends to be restricted to an asset type defined in a specific catalog, project, or space. To do this, the `containing_asset_type(s)`, `container_type`, and `container_id` fields must all be set.

Artifact Type

To define a relationship end for an governance artifact type, the `containing_artifact_type(s)` field must be set to the name of the artifact type and the `container_id` must be omitted. The on_delete field can only set to IGNORE on both ends

Column Type

To define a relationship end for a column type, the `containing_asset_type(s)` field must be set in the format of `<asset_type>#_column`. When `*#_column` is specified, the relationship end can be used with any supported column type. Currently, only `data_asset` columns are supported. The `on_delete` field can only set to `IGNORE` on both ends

Any Type

To allow a relationship end to be used with any asset type, the `containing_artifact_type(s)`, `containing_asset_type(s)` and `container_id` fields for the relationship end must be omitted. In this case, the relationship end can be used with any asset type, any artifact type, and any supported column type in any container. If the `container_type` field is set, it will be ignored.

Note: Cannot have `containing_artifact_type(s)` specified in both ends

Specifying the Relationship Type Scope

A relationship type can either be global or be scoped to a BSS account.

A relationship type can be explicitly scoped to a specific bss account using the `bss_account_id` query parameter. When a relationship type is scoped to a bss account, all specified asset containers and account-level asset types must belong to that bss account. If either endpoint for the relationship type has a specific asset container, the relationship type is automatically scoped to the bss account for the asset container. Account scoped relationship types can only be created if the user either belongs to the same bss account or is an administrator of all asset containers in the relationship type definition.

By default, if neither end of the relationship type specifies an asset container, the relationship type is created in the global scope and is accessible to all users. Only service ids with permission to create global asset types are allowed to create globally scoped relationship types. It is possible to scope a relationship type where neither end has an asset container to a specific BSS account. To do this, you must set the `bss_account_id` query parameter when creating the relationship type. The bss account must be set to a bss account that you have access to. In that case, the relationship type will be created, but its use will be restricted to asset containers associated with that bss account.

By default, on_delete is set to `IGNORE` if it is not specified

Note that in CP4D environments, there is only one bss account (`999`). As a result, in that context relationship types scoped to a specific BSS account are effectively global.

Cascading clone/publish/promote to Referenced Assets

The following flags control how related assets are processed when an asset is copied using the `deepcopy` endpoint

Option Allowed Value Default Description
on_clone CASCADE/IGNORE IGNORE If CASCADE, deepcopy from a catalog to a project causes the referenced assets to be copied as well
on_publish CASCADE/IGNORE IGNORE If CASCADE, deepcopy from project to a catalog causes the referenced assets to be copied as well
on_promote CASCADE/IGNORE IGNORE If CASCADE, deepcopy from a project to a space causes the referenced assets to be coped as well

Request

Request Body

CatalogRelationshipTypeEntity

Relationship Type request body

end1

Required *

object

First relationship type endpoint (order is not important)

default_display_name

Required *

string

Default display name for this end of the relationship. This is what will be shown in the UI.

localized_display_name

object

Map of localized display names, keyed on the ISO 639 language code (e.g. "zh")

relationship_name

Required *

string

Internal, non-translated, name for this end of the relationship. This becomes part of the path in the APIs for manipulating and querying relationship types.

containing_artifact_type

string

Optionally specifies the type of the artifact that contains this relationship. If omitted with containing_artifact_types, any artifact types are allowed.

containing_artifact_types

array

Optionally specify the types of the artifacts that contain this relationship. If omitted with containing_artifact_type, any artifact types are allowed.

container_id

string

Specifies the catalog, project, or space id that contains the asset type. This is only required if the asset type is scoped to a particular catalog, project, or space. It is not allowed for global asset types, for example data_asset.

container_type

string

Specifies the type of the container which contains the asset type. This field is required if the container_id is set. It is ignored if the container_id is unset. Allowed values: 'CATALOG', 'SPACE', 'PROJECT'

multiplicity

Required *

string

Multiplicity of this end of the relationship. This controls how many targets the relationship can point to.

displayInChild

boolean

Whether the relationship attribute is displayed in child asset.

on_delete

string

Determines processing of the relationship target when the source object is deleted. Allowed values: CASCADE - delete the referenced object, IGNORE - do not delete the referenced object. Default: IGNORE

on_clone

string

Determines processing of the relationship target when the source object is cloned. Allowed values: CASCADE - clone the referenced object, IGNORE - do not clone the referenced object. Default: IGNORE

on_catalog_clone

string

Determines processing of the relationship target when the source object is cloned to a target catalog. Allowed values: CASCADE - clone the referenced object, IGNORE - do not clone the referenced object. Default: IGNORE

on_publish

string

Determines processing of the relationship target when the source object is published. Allowed values: CASCADE - publish the referenced object, IGNORE - do not publish the referenced object. Default: IGNORE

on_promote

string

Determines processing of the relationship target when the source object is promoted. Allowed values: CASCADE - promote the referenced object, IGNORE - do not promote the referenced object. Default: IGNORE

option_overrides

array

Optionally specifies any override of cascade behavior on `delete, clone, promote and publish` based on specific asset type pairs Note: All duplicate elements will be ignored by the option_overrides `Set` when provided via create or patch REST API(s)

containing_asset_types

array

Optionally specify the types of the assets that contain this relationship. If omitted with containing_asset_type, any asset types are allowed.

containing_asset_type

string

Optionally specifies the type of the asset that contains this relationship. If omitted with containing_asset_types, any asset types are allowed.

end2

Required *

object

Second relationship type endpoint (order is not important)

default_display_name

Required *

string

Default display name for this end of the relationship. This is what will be shown in the UI.

localized_display_name

object

Map of localized display names, keyed on the ISO 639 language code (e.g. "zh")

relationship_name

Required *

string

Internal, non-translated, name for this end of the relationship. This becomes part of the path in the APIs for manipulating and querying relationship types.

containing_artifact_type

string

Optionally specifies the type of the artifact that contains this relationship. If omitted with containing_artifact_types, any artifact types are allowed.

containing_artifact_types

array

Optionally specify the types of the artifacts that contain this relationship. If omitted with containing_artifact_type, any artifact types are allowed.

container_id

string

Specifies the catalog, project, or space id that contains the asset type. This is only required if the asset type is scoped to a particular catalog, project, or space. It is not allowed for global asset types, for example data_asset.

container_type

string

Specifies the type of the container which contains the asset type. This field is required if the container_id is set. It is ignored if the container_id is unset. Allowed values: 'CATALOG', 'SPACE', 'PROJECT'

multiplicity

Required *

string

Multiplicity of this end of the relationship. This controls how many targets the relationship can point to.

displayInChild

boolean

Whether the relationship attribute is displayed in child asset.

on_delete

string

Determines processing of the relationship target when the source object is deleted. Allowed values: CASCADE - delete the referenced object, IGNORE - do not delete the referenced object. Default: IGNORE

on_clone

string

Determines processing of the relationship target when the source object is cloned. Allowed values: CASCADE - clone the referenced object, IGNORE - do not clone the referenced object. Default: IGNORE

on_catalog_clone

string

Determines processing of the relationship target when the source object is cloned to a target catalog. Allowed values: CASCADE - clone the referenced object, IGNORE - do not clone the referenced object. Default: IGNORE

on_publish

string

Determines processing of the relationship target when the source object is published. Allowed values: CASCADE - publish the referenced object, IGNORE - do not publish the referenced object. Default: IGNORE

on_promote

string

Determines processing of the relationship target when the source object is promoted. Allowed values: CASCADE - promote the referenced object, IGNORE - do not promote the referenced object. Default: IGNORE

option_overrides

array

Optionally specifies any override of cascade behavior on `delete, clone, promote and publish` based on specific asset type pairs Note: All duplicate elements will be ignored by the option_overrides `Set` when provided via create or patch REST API(s)

containing_asset_types

array

Optionally specify the types of the assets that contain this relationship. If omitted with containing_asset_type, any asset types are allowed.

containing_asset_type

string

Optionally specifies the type of the asset that contains this relationship. If omitted with containing_asset_types, any asset types are allowed.

flags

object

Set of flags. These flags determine the relationship type's behavior

description

string

Description of the relationship type

Path Parameters

Query Parameters

bss_account_id

string

This parameter forces the relationship type to be scoped to the specified bss account. It allows the creation of an account-scoped relationship type where both ends are either untyped, or are global asset types. It is required if the relationship type entity references any account-level asset types. An account-scoped relationship type is only visible to users in the BSS account for the relationship type. If the query parameter is unset, such relationships will be global in scope and can only be created if the user has permission to create a global asset type. Note: the BSS account can also be set via an impersonation header. If it is set in both places, the `bss_account_id` query parameter has precedence. This parameter is not required if either end of the relationship type has a catalog asset type. If it is set for a relationship type that has a catalog asset type, it must be the same as the BSS account for the catalog.

Response

201 - Created

metadata

object

relationship type metadata

entity

object

relationship type entity

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

429 - Too Many Request

For a column type:
  • set `asset_type` as `<asset_type>#_column`
  • if `asset_type` is specific to a container (catalog, space, or project), then set a container ID parameter as appropriate (`catalog_id`, `space_id`, `project_id`).

For a governance artifact type:

  • set `artifact_type`. This parameter should be repeated for each allowed artifact type

">

Searches for relationship type ends

POST /v2/asset_relationship_types/search_ends

Find relationship type ends that can be used with an asset type or artifact type. This API supports finding relationship type ends that use global or catalog asset types.

For an asset type:

  • set `asset_type`. This parameter should be repeated for each allowed asset type
  • All asset types in the list must either be global/account level asset types or be scoped to the asset container specified by the `catalog_id`, `project_id`, or `space_id`.

For a column type:

  • set `asset_type` as `<asset_type>#_column`
  • if `asset_type` is specific to a container (catalog, space, or project), then set a container ID parameter as appropriate (`catalog_id`, `space_id`, `project_id`).

For a governance artifact type:

  • set `artifact_type`. This parameter should be repeated for each allowed artifact type

Request

Path Parameters

Query Parameters

catalog_id

string

catalog_id. If no container parameters are set, any asset container the user has access to are allowed.

project_id

string

project_id. If no container parameters are set, any asset containers the user has access to are allowed.

space_id

string

space_id. If no container parameters are set, any asset containers the user has access to are allowed.

asset_type

array

asset_type(s). This specifies the asset type(s) whose relationship type ends should be found. This parameter should be repeated for each allowed asset type.

artifact_type

array

artifact_type(s). This specifies the artifact type(s) whose relationship type ends should be found. This parameter should be repeated for each allowed artifact type.

end_types

array

end_types. This filters the result to only include relationship type ends of the specified type(s) - valid filter values are {ASSET, ARTIFACT, COLUMN}. If this parameter is not specified, all relationship ends that match other criteria will be returned.

limit

integer

Optional limit to use when finding relationship type ends

bookmark

string

Optional bookmark to use when finding relationship type ends.

orderby

array

orderby. This parameter can be repeated to add additional sort fields. <br><br>Default: relationship_display_name_asc

Supported sort fields (these are case insensitive):

  • relationship_name_asc
  • relationship_name_desc
  • relationship_display_name_asc
  • relationship_display_name_desc
  • create_time_asc
  • create_time_desc

relationship_names

array

Limits results to only include the specified relationships. By default, all relationship type ends which match the other search criteria are included. Repeat the query parameter to specify multiple relationship names.

Response

200 - Success

options

object

array

array

array

resources

array

total_rows

integer

next

object

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

429 - Too Many Requests

Finds relationship types that are used by an asset, column or governance artifact

POST /v2/asset_relationship_types/search_used_ends

Finds relationship types that are used by an asset, column or a governance artifact. This API only returns the first page of results. It does not accept a bookmark. Any additional pages of results must be fetched using the next page url included in the response.<br/></br>You can refer to the options in the response to get the full list of relationship names.

Request

Path Parameters

Query Parameters

catalog_id

string

Catalog ID

project_id

string

Project ID

space_id

string

Space ID

asset_id

string

Asset ID

artifact_id

string

Artifact ID

artifact_type

string

Artifact Type

limit

integer

Optional limit to use when finding relationship types

boolean

Includes a list of the related asset types and artifact types in the result. This option adds overhead, so enable it only if the related type information is needed.

orderby

array

orderby. This parameter can be repeated to add additional sort fields. <br><br>Default: relationship_display_name_asc

Supported sort fields (these are case insensitive):

  • relationship_name_asc
  • relationship_name_desc
  • relationship_display_name_asc
  • relationship_display_name_desc
  • create_time_asc
  • create_time_desc

Response

200 - Success

options

object

array

array

array

resources

array

total_rows

integer

next

object

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

429 - Too Many Requests

DELETE /v2/asset_relationship_types/{relationship_type_id}

Deletes a relationship type.

Request

Path Parameters

relationship_type_id

Required *

string

Query Parameters

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

429 - Too Many Request

Add a display name to an endpoint without an existing `localized_display_name` element:

``` [ { "op": "add", "path": "/end2/localized_display_name", "value": {" "en-us": "English Display Name" } } ] ```

Add a display name to an endpoint with an existing `localized_display_name` element:

``` [ { "op": "add", "path": "/end2/localized_display_name/en-gb", "value": "British Display Name", } ] ```

Change localized display name for en-gb in end2:"

``` [ { "op": "replace", "path": "/end2/localized_display_name/en-gb", "value": "New British Display Name" } ] ```

Remove localized display name for en-gb rom end1:

``` [ { "op": "remove", "path": "/end1/localized_display_name/en-gb" } ] ```

Add a relationship option override, replace an existing relationship option override, delete an existing relationship option override:

``` [ { "op": "add", "path": "/end1/option_overrides/-", "value": { "this_asset_type": "ibm_bi_report", "other_asset_type": "ibm_bi_report_query", "on_delete": "CASCADE", "on_publish": "IGNORE", "on_promote": "CASCADE", "on_clone": "IGNORE" } }, { "op": "replace", "path": "/end1/option_overrides/1/on_delete", "value": "CASCADE" }, { "op": "add", "path": "/end1/option_overrides/1/on_promote", "value": "IGNORE" }, { "op": "remove", "path": "/end1/option_overrides/1/on_promote" } [ ``` ">

Patches a relationship type

PATCH /v2/asset_relationship_types/{relationship_type_id}

Updates an existing relationship type. The patch body must be an array of json patch operations as defined in RFC 6902.

The following fields can be patched in each relationship type endpoint:

  • `default_display_name` (value can be changed but not removed)
  • `localized_display_name` (values can be added, changed, and removed)
  • `on_delete` (value can be added, removed, or deleted)

Relationship types where at least one endpoint is a catalog asset type can be patched either by an admin member of the catalog, or by a user in the catalog's BSS account. Global relationship types can only be patched by a user with permission to create global asset types.

It is important to note that the patch specifies updates to apply the current json representation of the relationship types. When specifying an add/replace/remove patch operation, all of parent elements in the path must already exist. In particular, if the relationship type endpoint was originally created without a `localized_display_name` element, that element needs to be created by the patch operations.

Here are some examples of patches that can be applied:

Add a display name to an endpoint without an existing `localized_display_name` element:

``` [ { "op": "add", "path": "/end2/localized_display_name", "value": {" "en-us": "English Display Name" } } ] ```

Add a display name to an endpoint with an existing `localized_display_name` element:

``` [ { "op": "add", "path": "/end2/localized_display_name/en-gb", "value": "British Display Name", } ] ```

Change localized display name for en-gb in end2:"

``` [ { "op": "replace", "path": "/end2/localized_display_name/en-gb", "value": "New British Display Name" } ] ```

Remove localized display name for en-gb rom end1:

``` [ { "op": "remove", "path": "/end1/localized_display_name/en-gb" } ] ```

Add a relationship option override, replace an existing relationship option override, delete an existing relationship option override:

``` [ { "op": "add", "path": "/end1/option_overrides/-", "value": { "this_asset_type": "ibm_bi_report", "other_asset_type": "ibm_bi_report_query", "on_delete": "CASCADE", "on_publish": "IGNORE", "on_promote": "CASCADE", "on_clone": "IGNORE" } }, { "op": "replace", "path": "/end1/option_overrides/1/on_delete", "value": "CASCADE" }, { "op": "add", "path": "/end1/option_overrides/1/on_promote", "value": "IGNORE" }, { "op": "remove", "path": "/end1/option_overrides/1/on_promote" } [ ```

Request

Request Body

 JSON array of patch operations as defined in RFC 6902.
 Note: Any ‘~’ characters need to be escaped as ~0 in the path field.
 Any ‘/’ characters need to be escaped as ~1 in the path field.
 For example, in &#x60;{&quot;foo/&quot; : {&quot;~bar&quot; : &quot;value&quot;}}&#x60;, the path for &#x60;&quot;~bar&quot;&#x60; is &#x60;&quot;/foo~1/~0bar&quot;&#x60;.

Path Parameters

relationship_type_id

Required *

string

relationship_type_id

Query Parameters

Response

200 - Relationship type was successfully patched

metadata

object

relationship type metadata

entity

object

relationship type entity

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

429 - Too Many Requests

List all asset types defined for an account, catalog, project or space.

GET /v2/asset_types

Get all asset types in an account, catalog, project or space. Custom properties added/updated at the account level asset types can only be fetched if bss_account_id parameter is passed

Request

Path Parameters

Query Parameters

catalog_id

string

This parameter allows retrieving catalog-scoped asset types. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

project_id

string

This parameter allows retrieving project-scoped asset types. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

space_id

string

This parameter allows retrieving space-scoped asset types. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

bss_account_id

string

This parameter allows retrieving account-scoped asset types. May be different than account of user specified in Bearer token. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

permits_decorators

boolean

This parameter allows to retrieve asset types which can be decorated. You can provide either a true or a false.

custom_attributes

boolean

This parameter allows to retrieve asset types which can be used only as attributes and are user defined. You can provide either a true or a false. At a time, either permits_decorators or custom_attributes can be true.

locale

string

Language code, such as default, en, etc.

Response

200 - OK

resources

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Creates an asset type in an account, catalog, project or space.

POST /v2/asset_types

Creates an asset type in account, catalog, project or space.

Request

Request Body

CatalogCreationType

Asset Type request body

description

string

Asset type description

fields

Required *

array

Fields that are indexed if present in the asset.

external_asset_preview

object

External Asset Preview. Clients can make use of this to render content appropriately for this asset type.

base_client_url

Required *

string

Base client URL

url_parameters_from_asset_attributes

array

URL parameters

url_path_from_asset_attributes

string

URL path

url_parameters_fixed

string

URL parameters fixed

relationships

array

Relationship definitions for this asset type.

properties

object

Provides the IKC UI with information about displaying properties that can be present in the asset

localized_metadata_attributes

object

Example "localized_metadata_attributes": { "name": { "default": "Data Asset", "en": "Data Asset", "fr": "Data Asset" } }

decorates

array

List of pointers to types this type can decorate.

identity

object

Identity definition of the assets of the type

strategy

string

The strategy for detecting duplicate asset of the type

global_search_searchable

array

List of fields made searchable through Global Search functionality

attribute_behavior

object

Define the behavior only if this asset type is used as an attribute.

remove_on_copy

boolean

Remove the attribute when cloning, publishing or promoting the asset

attribute_only

boolean

If set to true, the type definition will be custom attributes, which can be used to decorate other asset types and cannot create this as a top level asset of this asset type. If set to false, the type definition will be custom asset type, which can be used to create top level assets of this asset type and/or also decorate other asset types.

data_protection

object

Asset type properties and attachments that should be filtered out for users without data access

all_fields

boolean

Indicates if all fields of the asset type are protected. If 'all_fields' is true, then 'fields' is ignored.

all_attachments

boolean

Indicates if all attachments of the asset type are protected. If 'all_attachments' is true, then 'attachment_types' is ignored.

field_search_paths

array

List of json paths that lead to the fields to be protected. e.g., "scoring.input_data", "columns[].name", "columns[0].code", "*.connection_id", etc. If 'all_fields' is true, then 'field_search_paths' is ignored.

attachment_types

array

List of types of attachments of the asset type to be protected. If 'all_attachments' is true, then 'attachment_types' is ignored.

is_column_custom_attribute

boolean

Set it to true if this is to be used for column custom attributes. Set to false if this is used for asset types or attribute. If true, allow_decorators should be false.

can_have_image

boolean

Set it to true if the type is expected to support uploading of images, else set it to false.

icon_id

string

Name/id of the svg image to be used as the icon for the to be created asset type.

version

number

The version of defined asset type

name

Required *

string

Asset type name

allow_decorators

boolean

Path Parameters

Query Parameters

catalog_id

string

This parameter allows the creation of a catalog-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

project_id

string

This parameter allows the creation of a project-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

space_id

string

This parameter allows the creation of a space-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

bss_account_id

string

This parameter allows the creation of an account-scoped asset type. May be different than account of user specified in Bearer token. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

Response

201 - Created

description

string

Asset type description

fields

array

Fields that are indexed if present in the asset.

external_asset_preview

object

External Asset Preview. Clients can make use of this to render content appropriately for this asset type.

relationships

array

Relationship definitions for this asset type.

properties

object

Provides the IKC UI with information about displaying properties that can be present in the asset

localized_metadata_attributes

object

Example "localized_metadata_attributes": { "name": { "default": "Data Asset", "en": "Data Asset", "fr": "Data Asset" } }

decorates

array

List of pointers to types this type can decorate.

identity

object

Identity definition of the assets of the type

global_search_searchable

array

List of fields made searchable through Global Search functionality

attribute_behavior

object

Define the behavior only if this asset type is used as an attribute.

attribute_only

boolean

If set to true, the type definition will be custom attributes, which can be used to decorate other asset types and cannot create this as a top level asset of this asset type. If set to false, the type definition will be custom asset type, which can be used to create top level assets of this asset type and/or also decorate other asset types.

data_protection

object

Asset type properties and attachments that should be filtered out for users without data access

is_column_custom_attribute

boolean

Set it to true if this is to be used for column custom attributes. Set to false if this is used for asset types or attribute. If true, allow_decorators should be false.

can_have_image

boolean

Set it to true if the type is expected to support uploading of images, else set it to false.

icon_id

string

Name/id of the svg image to be used as the icon for the to be created asset type.

version

number

The version of defined asset type

name

string

Asset type name

scope

string

The scope of defined asset type. Derived-field. Will be one of GLOBAL, ACCOUNT, CATALOG, PROJECT, or SPACE.

decorated_by

array

List of pointers to types this type can be decorated by.

allow_decorators

boolean

202 - Accepted - indicates the asset type creation is being completed in the background

description

string

Asset type description

fields

array

Fields that are indexed if present in the asset.

external_asset_preview

object

External Asset Preview. Clients can make use of this to render content appropriately for this asset type.

relationships

array

Relationship definitions for this asset type.

properties

object

Provides the IKC UI with information about displaying properties that can be present in the asset

localized_metadata_attributes

object

Example "localized_metadata_attributes": { "name": { "default": "Data Asset", "en": "Data Asset", "fr": "Data Asset" } }

decorates

array

List of pointers to types this type can decorate.

identity

object

Identity definition of the assets of the type

global_search_searchable

array

List of fields made searchable through Global Search functionality

attribute_behavior

object

Define the behavior only if this asset type is used as an attribute.

attribute_only

boolean

If set to true, the type definition will be custom attributes, which can be used to decorate other asset types and cannot create this as a top level asset of this asset type. If set to false, the type definition will be custom asset type, which can be used to create top level assets of this asset type and/or also decorate other asset types.

data_protection

object

Asset type properties and attachments that should be filtered out for users without data access

is_column_custom_attribute

boolean

Set it to true if this is to be used for column custom attributes. Set to false if this is used for asset types or attribute. If true, allow_decorators should be false.

can_have_image

boolean

Set it to true if the type is expected to support uploading of images, else set it to false.

icon_id

string

Name/id of the svg image to be used as the icon for the to be created asset type.

version

number

The version of defined asset type

name

string

Asset type name

scope

string

The scope of defined asset type. Derived-field. Will be one of GLOBAL, ACCOUNT, CATALOG, PROJECT, or SPACE.

decorated_by

array

List of pointers to types this type can be decorated by.

allow_decorators

boolean

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

429 - Too Many Request

Retrieves an asset type of a given name.

GET /v2/asset_types/{type_name}

Retrieves an asset type of a given name. Custom properties added/updated at the account level asset types can only be fetched if bss_account_id parameter is passed

Request

Path Parameters

type_name

Required *

string

Asset Type name (eg: data_asset)

Query Parameters

catalog_id

string

This parameter allows retrieving a catalog-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

project_id

string

This parameter allows retrieving a project-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

space_id

string

This parameter allows retrieving a space-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

bss_account_id

string

This parameter allows retrieving an account-scoped asset type. May be different than account of user specified in Bearer token. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

locale

string

Language code, such as default, en, etc.

search_scopes

array

This parameter can have one or more values as below:

  • GLOBAL - return asset type in global scope
  • BSS_ACCOUNT - return asset type in account scope
  • CONTAINER - return asset type in catalog/ project/ space scope

If no value is provided, the default value is taken as null, and the asset type with the highest search scope is returned. A combination of more than one search scope is also valid. In this case, an asset type with the highest search scope from the given scopes will be returned.

Response

200 - OK

description

string

Asset type description

fields

array

Fields that are indexed if present in the asset.

external_asset_preview

object

External Asset Preview. Clients can make use of this to render content appropriately for this asset type.

relationships

array

Relationship definitions for this asset type.

properties

object

Provides the IKC UI with information about displaying properties that can be present in the asset

localized_metadata_attributes

object

Example "localized_metadata_attributes": { "name": { "default": "Data Asset", "en": "Data Asset", "fr": "Data Asset" } }

decorates

array

List of pointers to types this type can decorate.

identity

object

Identity definition of the assets of the type

global_search_searchable

array

List of fields made searchable through Global Search functionality

attribute_behavior

object

Define the behavior only if this asset type is used as an attribute.

attribute_only

boolean

If set to true, the type definition will be custom attributes, which can be used to decorate other asset types and cannot create this as a top level asset of this asset type. If set to false, the type definition will be custom asset type, which can be used to create top level assets of this asset type and/or also decorate other asset types.

data_protection

object

Asset type properties and attachments that should be filtered out for users without data access

is_column_custom_attribute

boolean

Set it to true if this is to be used for column custom attributes. Set to false if this is used for asset types or attribute. If true, allow_decorators should be false.

can_have_image

boolean

Set it to true if the type is expected to support uploading of images, else set it to false.

icon_id

string

Name/id of the svg image to be used as the icon for the to be created asset type.

version

number

The version of defined asset type

name

string

Asset type name

scope

string

The scope of defined asset type. Derived-field. Will be one of GLOBAL, ACCOUNT, CATALOG, PROJECT, or SPACE.

decorated_by

array

List of pointers to types this type can be decorated by.

allow_decorators

boolean

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

Replace an asset type

PUT /v2/asset_types/{type_name}

Replace asset attributes for the given asset type or create a new asset type if the given asset type does not exist.

Request

Request Body

CatalogUpdateType

Asset Type request body

description

string

Asset type description

fields

Required *

array

Fields that are indexed if present in the asset.

external_asset_preview

object

External Asset Preview. Clients can make use of this to render content appropriately for this asset type.

base_client_url

Required *

string

Base client URL

url_parameters_from_asset_attributes

array

URL parameters

url_path_from_asset_attributes

string

URL path

url_parameters_fixed

string

URL parameters fixed

relationships

array

Relationship definitions for this asset type.

properties

object

Provides the IKC UI with information about displaying properties that can be present in the asset

localized_metadata_attributes

object

Example "localized_metadata_attributes": { "name": { "default": "Data Asset", "en": "Data Asset", "fr": "Data Asset" } }

decorates

array

List of pointers to types this type can decorate.

identity

object

Identity definition of the assets of the type

strategy

string

The strategy for detecting duplicate asset of the type

global_search_searchable

array

List of fields made searchable through Global Search functionality

attribute_behavior

object

Define the behavior only if this asset type is used as an attribute.

remove_on_copy

boolean

Remove the attribute when cloning, publishing or promoting the asset

attribute_only

boolean

If set to true, the type definition will be custom attributes, which can be used to decorate other asset types and cannot create this as a top level asset of this asset type. If set to false, the type definition will be custom asset type, which can be used to create top level assets of this asset type and/or also decorate other asset types.

data_protection

object

Asset type properties and attachments that should be filtered out for users without data access

all_fields

boolean

Indicates if all fields of the asset type are protected. If 'all_fields' is true, then 'fields' is ignored.

all_attachments

boolean

Indicates if all attachments of the asset type are protected. If 'all_attachments' is true, then 'attachment_types' is ignored.

field_search_paths

array

List of json paths that lead to the fields to be protected. e.g., "scoring.input_data", "columns[].name", "columns[0].code", "*.connection_id", etc. If 'all_fields' is true, then 'field_search_paths' is ignored.

attachment_types

array

List of types of attachments of the asset type to be protected. If 'all_attachments' is true, then 'attachment_types' is ignored.

is_column_custom_attribute

boolean

Set it to true if this is to be used for column custom attributes. Set to false if this is used for asset types or attribute. If true, allow_decorators should be false.

can_have_image

boolean

Set it to true if the type is expected to support uploading of images, else set it to false.

icon_id

string

Name/id of the svg image to be used as the icon for the to be created asset type.

allow_decorators

boolean

Path Parameters

type_name

Required *

string

Asset Type name (eg: data_asset)

Query Parameters

catalog_id

string

This parameter allows creating or updating a catalog-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

project_id

string

This parameter allows creating or updating a project-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

space_id

string

This parameter allows creating or updating a space-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

bss_account_id

string

This parameter allows creating or updating an account-scoped asset type. May be different than account of user specified in Bearer token. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

Response

200 - OK

description

string

Asset type description

fields

array

Fields that are indexed if present in the asset.

external_asset_preview

object

External Asset Preview. Clients can make use of this to render content appropriately for this asset type.

relationships

array

Relationship definitions for this asset type.

properties

object

Provides the IKC UI with information about displaying properties that can be present in the asset

localized_metadata_attributes

object

Example "localized_metadata_attributes": { "name": { "default": "Data Asset", "en": "Data Asset", "fr": "Data Asset" } }

decorates

array

List of pointers to types this type can decorate.

identity

object

Identity definition of the assets of the type

global_search_searchable

array

List of fields made searchable through Global Search functionality

attribute_behavior

object

Define the behavior only if this asset type is used as an attribute.

attribute_only

boolean

If set to true, the type definition will be custom attributes, which can be used to decorate other asset types and cannot create this as a top level asset of this asset type. If set to false, the type definition will be custom asset type, which can be used to create top level assets of this asset type and/or also decorate other asset types.

data_protection

object

Asset type properties and attachments that should be filtered out for users without data access

is_column_custom_attribute

boolean

Set it to true if this is to be used for column custom attributes. Set to false if this is used for asset types or attribute. If true, allow_decorators should be false.

can_have_image

boolean

Set it to true if the type is expected to support uploading of images, else set it to false.

icon_id

string

Name/id of the svg image to be used as the icon for the to be created asset type.

version

number

The version of defined asset type

name

string

Asset type name

scope

string

The scope of defined asset type. Derived-field. Will be one of GLOBAL, ACCOUNT, CATALOG, PROJECT, or SPACE.

decorated_by

array

List of pointers to types this type can be decorated by.

allow_decorators

boolean

202 - Accepted

description

string

Asset type description

fields

array

Fields that are indexed if present in the asset.

external_asset_preview

object

External Asset Preview. Clients can make use of this to render content appropriately for this asset type.

relationships

array

Relationship definitions for this asset type.

properties

object

Provides the IKC UI with information about displaying properties that can be present in the asset

localized_metadata_attributes

object

Example "localized_metadata_attributes": { "name": { "default": "Data Asset", "en": "Data Asset", "fr": "Data Asset" } }

decorates

array

List of pointers to types this type can decorate.

identity

object

Identity definition of the assets of the type

global_search_searchable

array

List of fields made searchable through Global Search functionality

attribute_behavior

object

Define the behavior only if this asset type is used as an attribute.

attribute_only

boolean

If set to true, the type definition will be custom attributes, which can be used to decorate other asset types and cannot create this as a top level asset of this asset type. If set to false, the type definition will be custom asset type, which can be used to create top level assets of this asset type and/or also decorate other asset types.

data_protection

object

Asset type properties and attachments that should be filtered out for users without data access

is_column_custom_attribute

boolean

Set it to true if this is to be used for column custom attributes. Set to false if this is used for asset types or attribute. If true, allow_decorators should be false.

can_have_image

boolean

Set it to true if the type is expected to support uploading of images, else set it to false.

icon_id

string

Name/id of the svg image to be used as the icon for the to be created asset type.

version

number

The version of defined asset type

name

string

Asset type name

scope

string

The scope of defined asset type. Derived-field. Will be one of GLOBAL, ACCOUNT, CATALOG, PROJECT, or SPACE.

decorated_by

array

List of pointers to types this type can be decorated by.

allow_decorators

boolean

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

409 - Conflict

429 - Too Many Request

500 - Internal Server Error

Deletes an asset type

DELETE /v2/asset_types/{type_name}

Deletes an asset type in given account or container. Note that, deletion of an account scope asset type or a container scope asset type triggers background clean up of assets:<br/><ul><li>Assets of this type are deleted.</li><li>And in case of other assets, attributes of this type are removed.</li></ul>

Request

Path Parameters

type_name

Required *

string

Asset Type name (eg: data_asset)

Query Parameters

catalog_id

string

This parameter allows creating or updating a catalog-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

project_id

string

This parameter allows creating or updating a project-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

space_id

string

This parameter allows creating or updating a space-scoped asset type. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

bss_account_id

string

This parameter allows creating or updating an account-scoped asset type. May be different than account of user specified in Bearer token. You must provide either a catalog_id, a project_id, a space_id, OR a bss_account_id but not more than one.

Response

200 - OK

202 - Accepted

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

409 - Conflict

429 - Too Many Request

500 - Internal Server Error

Finds relationship types for an asset type

GET /v2/asset_types/{type_name}/relationships

Finds relationship types that originate from a given asset type. This API supports limiting the results to a specific set of relationship types as well as providing pagination and sorting options. It also supports finding relationship types that use both global and catalog asset types.<br>This API is deprecated - use `POST /v2/asset_relationship_types/search_ends` instead

Request

Path Parameters

type_name

Required *

string

type_name. This specifies the asset type whose relationships should be found.

Query Parameters

catalog_id

string

catalog_id. If set, this restricts catalog asset types in the result to the given catalog. If no container parameters are set, any asset container the user has access to are allowed.

project_id

string

catalog_id. If set, this restricts catalog asset types in the result to the given project. If no container parameters are set, any asset containers the user has access to are allowed.

space_id

string

catalog_id. If set, this restricts catalog asset types in the result to the given space. If no container parameters are set, any asset containers the user has access to are allowed.

limit

integer

Optional limit to use when finding relationship types

bookmark

string

Optional bookmark to use when finding relationship types.

orderby

array

orderby. This parameter can be repeated to add additional sort fields. <br><br>Default: relationship_display_name_asc

Supported sort fields (these are case insensitive):

  • relationship_name_asc
  • relationship_name_desc
  • relationship_display_name_asc
  • relationship_display_name_desc
  • create_time_asc
  • create_time_desc

relname

array

Limits results to only include the specified relationships. By default, all relationship types for the asset type are included. Repeat the query parameter to specify multiple relationship names.

Response

200 - Success

options

object

array

array

array

resources

array

total_rows

integer

next

object

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

429 - Too Many Requests

Search for asset metadata within assets of the specified type

POST /v2/asset_types/{type_name}/search

Use this API to search for assets of the generic asset type (asset) or any specific asset type in a Catalog, Space, or Project.

The request body must contain a `query` field, which specifies a Lucene query to search for assets on indexed fields.<br/> See <b>Searchable Asset and Attachment Fields</b> below for the list of fields that can be searched in the query.<br/>

If `query` contains no selection criteria (`":"`), then the result includes all assets that are instances of the type specified in the `type_name` path parameter, including assets whose primary asset type (i.e. its `metadata.asset_type` value) is that type, and assets that have an attribute of that type.<br/> To filter out assets whose primary type does not match the `type_name` parameter, the query must include an `asset.asset_type:{type_name}` predicate.

The query results can be sorted by specifying a `sort` field in the request with format `field<sort_type>`. The `sort_type` can be either `number` or `string` (e.g. `"sort" : "asset.name<string>"`).

<b> Search With Pagination </b>

The `limit` request body field can be specified to limit the number of assets in the search results.<br/> The default `limit` is 200. The maximum `limit` value is 200, and any greater value is ignored.<br/>

Sample Request Body: ``` { "query" : "asset.name:Asset*", "limit" : 2, "sort" : "asset.name<string>" } ```

Response: ``` { "next": { "bookmark": "g1AAAXXXXXXXX", "query" : "asset.name:Asset*", "limit" : 2, "sort" : "asset.name<string>" }, "results": [ { ..asset 1... }, { ..asset 2... } ], "total_rows": 3 } ```

When more search results are available, then the response will contain a `next` JSON object - `next` contains `bookmark` along with original query which needs to be returned to retrieve the next page of results. To paginate through the entire result set, the request should be re-executed with the `bookmark` from the `next.bookmark` value of the previous response until there is no `next` object in the response (note that this response may contain an empty `results` array).

Sample request body to get the next page of results: ``` { "bookmark": "g1AAAXXXXXXXX", "query" : "asset.name:Asset*", "limit" : 2, "sort" : "asset.name<string>" } ```

<b>Searchable Asset and Attachment Fields</b>

The following asset and attachment fields can be searched in the query - note that type `<string>` or `<number>` only needs to be added for use in the `sort` request field:<br/> `asset.asset_attributes<string>`<br/> `asset.asset_category<string>`<br/> `asset.asset_state<string>`<br/> `asset.asset_type<string>`<br/> `asset.catalog_id<string>`<br/> `asset.created_at<string>`<br/> `asset.delete_timestamp<string>`<br/> `asset.description<string>`<br/> `asset.memberIds<string>`<br/> `asset.editor_id<string>`<br/> `asset.viewer_id<string>`<br/> `asset.member_or_owner_id<string>`<br/> `asset.memberGroupIds<string>`<br/> `asset.editor_group_id<string>`<br/> `asset.viewer_group_id<string>`<br/> `asset.member_or_owner_group_id<string>`<br/> `asset.mode<number>`<br/> `asset.name<string>`<br/> `asset.owner_id<string>`<br/> `asset.owner_group_id<string>`<br/> `asset.project_id<string>`<br/> `asset.rating<number>`<br/> `asset.resource_key<string>`<br/> `asset.identity_key<string>`<br/> `asset.source_asset_id<string>`<br/> `asset.source_catalog_id<string>`<br/> `asset.source_project_id<string>`<br/> `asset.source_space_id<string>`<br/> `asset.source_system<string>`<br/> `asset.source_system_asset_id<string>`<br/> `asset.source_system_created_at<string>`<br/> `asset.source_system_id<string>`<br/> `asset.source_history_asset_id<string>`<br/> `asset.source_history_system_id<string>`<br/> `asset.space_id<string>`<br/> `asset.tags<string>`<br/> `attachment.connection_id<string>`<br/> `attachment.connection_path<string>`<br/> `attachment.name<string>`<br/> `attachment.object_key<string>`<br/>

Request

Request Body

CatalogCatalogSearch

Search Criteria. The "include" field in the request body is a list of asset sections to include in the search results, values are comma-separated and the supported values are "entity" or "entity,attachments".

query

Required *

string

Lucene query

limit

integer

counts

array

Returns the number of query results for each unique value of each named field.

drilldown

array

Restrict results to documents with a dimension equal to the specified label. Note that, multiple values for a single key in a drilldown means an OR relation between them and there is an AND relation between multiple keys.

bookmark

string

Bookmark of the query result

sort

string

Sort order for the query

include

string

entity

Path Parameters

type_name

Required *

string

Asset Type name (eg: data_asset)

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

include

string

The parameter `include` is deprecated, please use `exclude` instead

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

Response

200 - OK

next

CatalogCatalogSearch

Catalog Search Model

total_rows

integer

results

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

Get the status of an account scope or global scope asset type.

GET /v2/asset_types/{type_name}/status

Retrieves an account scope or global scope status, If bss_account_id is not provided, api will try to retreive status of an asset type at global level if present.

Request

Path Parameters

type_name

Required *

string

Asset Type name (eg: account_type)

Query Parameters

bss_account_id

string

This parameter allows retrieving status of an account-scoped asset type. May be different than account of user specified in Bearer token.

Response

200 - OK

name

string

status

string

303 - See Other

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

Create an asset

POST /v2/assets

Use this API to create an asset in catalog or project. Assets contain information about the contents of your data and how to access the data. You store asset metadata in a catalog and add collaborators from your organization to analyze data. Your data can reside in a variety of sources. For example, you can keep your data in your existing on-premises data sources, cloud data services, or streaming data feeds. By adding connection information to these remote sources in the catalog, you can allow other catalog users to access the data with the stored credentials. Alternatively, you can copy a snapshot of the remote data into the catalog's encrypted cloud storage.<br/>All asset types have a common set of properties. Some asset types have additional properties.<br/>When you add an asset to a catalog, you specify these common properties:

  • The asset name and an optional description. The name can only contain letters, numbers, underscore, dash, space, and period. The name can't be only blank spaces.
  • Privacy. You can choose to restrict access to the asset with the privacy level and asset membership.
    • Public = Default. No restrictions on finding or using the asset.
    • Private = Only asset members can find or use the asset.
  • Members. The catalog collaborators can be added as members of the asset. Members are important if you restrict access to the asset. When you create an asset, you are the owner (and implicitly a member) of it. Members can be set in metadata/rov/collaborator_ids or metadata/rov/member_roles, but not both. Members set in metadata/rov/member_roles are given an explicit set of roles. Members can have up to two roles: OWNER and either EDITOR or VIEWER. Only service ids can assign the OWNER role. The request to add the OWNER role is ignored for other callers. Asset members with the EDITOR or VIEWER role must also be members of the catalog. Members set in metadata/rov/collaborator_ids are automatically assigned a role based on their role in the catalog.
  • Tags. Metadata that makes searching for the asset easier. Tags can contain only letters, numbers, underscores, dashes, and the symbols # and @.

Request

Request Body

CatalogAsset

Asset metadata

metadata

CatalogAssetMetadata

AssetMetadata Model

name

Required *

string

Choose Any Name for your Asset

description

string

A longer description describes an asset.

tags

array

asset_type

Required *

string

asset type

origin_country

string

resource_key

string

identity_key

string

rov

object

asset_category

Required *

string

source_system

object

Source System Info

child_source_systems

array

source_system_history

array

History of external repository assets that were the source of an imported/synced/rehomed asset.

entity

Required *

object

attachments

array

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

duplicate_action

string

Action to take if the call would result in a duplicate asset. `IGNORE` means the call will ignore the duplicate and create a new asset. `REJECT` means the call will fail and no asset will be created. `UPDATE` means the best matched duplicate will be updated with the incoming changes according to the predefined rules. `REPLACE` means the best matched duplicate will be overwritten with the input values according to the predefined rules. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

201 - Created

metadata

CatalogResponseAssetMetadata

entity

object

href

string

attachments

CatalogAttachment

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get one or more assets.

GET /v2/assets/bulk

Use this API to retrieve one or more assets located in catalog or project or space. Access to an asset is controlled by a combination of the privacy level and the members of the asset. For a governed catalog, data assets are protected from unauthorized access by the governance policies that are defined in Data Governance. Data assets in ungoverned catalogs are not subject to governance policies.<br/><br/>Response includes, for each asset, asset ID, status, HTTP status and, if no errors, asset details & relationship count or list of errors. For example:

``` { "resources":[ { "asset_id":"cf38d92c-eb55-462e-89bf-cdb9fe67f0b7", "status":"success", "http_status":200, "asset":{...}, "relationship_count":2 }, { "asset_id":"c6650020-3176-4d67-8fbe-5a19ba1c2c7e", "status":"failed", "http_status":404, "errors":[ ... ] }, ... ] } ```

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

asset_ids

Required *

string

Comma separated list of asset IDs; maximum of 20. For assets with revisions, an optional revision number can be specified using colon character in the form of '&lt;asset id&gt;:&lt;revision&gt;,&lt;asset id&gt;,...'. Revision numbers are non-zero positive numbers likes 1, 2, 3 etc.

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated, please use `exclude` instead

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

include_relationship_count

boolean

Whether to include per-asset relationship count. Note: The default will be changed to 'false' in a later release.

include_source_columns

boolean

Whether to include relationships where source end is a column of the source asset in the asset's relationship counter.

Response

200 - OK

trace

string

resources

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Marks existing assets for delete

DELETE /v2/assets/bulk

Use this API to delete assets. You can delete an asset if you are the owner of the asset or a member of the asset with Admin or Editor permissions on the catalog or project or space.

Purge Options to Delete Assets

purge_on_delete = true and purge_after_days is not specified: the asset is purged immediately. purge_on_delete = true and purge_after_days = n: the asset is moved to trash and purged after n days. purge_on_delete = false and purge_after_days is not specified: the asset is moved to trash and never purged. purge_on_delete is not specified and purge_after_days is not specified: the asset will be deleted/purged based on the catalog setting. purge_on_delete = false or is not specified and purge_after_days = n: invalid combination - the call will fail with a 400 Bad Request error.

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

purge_on_delete

boolean

If true, asset is also deleted from the trash.

purge_after_days

integer

Number of days after which asset will be purged. Purge On Delete should be true for this to be valid

asset_ids

Required *

string

Comma separated list of asset IDs; maximum of 20.

Response

207 - Check response body for status of each asset being deleted

status

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get assets membership for a specific user

GET /v2/assets/bulk/members/{member_id}

Returns any memberships this user has on assets, including direct membership and any access group memberships.

Request

Path Parameters

member_id

Required *

string

member_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

asset_ids

Required *

string

Comma separated list of asset IDs; maximum of 25.

resolve_member_roles

boolean

Should resolve member roles from usergroup(s) and collaborator roles

member_type

string

Type of the member specified by the member_id. If not specified, the service will determine if the member is a user or an access group based on the member_id, which is not always possible or accurate. Always supplying the member type is recommended.

profile_id

string

IAM Profile ID for Trusted Profile users: If the getMemberForAssetV2 API is called to fetch details for a Trusted Profile, the member_id is the IAM ID of the actual user, and the profile_id will be the IAM ID of the trusted user. For IBM users and App ID users, this value should be null.

Response

200 - OK

members

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Copies one or more assets and, if deep copy option is on, their related assets from a source container to a target container.

POST /v2/assets/bulk_copy

Use this API to publish one or more assets from a project to a catalog or promote from a project to a space. This API can also be used to clone one or more assets from a catalog to a project. The default maximum number of assets in a request is 50. <br/><br/>Copy sends the same Rabbit MQ messages as publish, promote or clone. Messages are sent for all assets that are copied.<br/><br/>This API supports using a refresh token in place of an access token. This can be helpful if the copy is expected to be a long running operation. The copy operation uses the access token to authenticate with other services, so it is important that it not expire while the operation is in progress. When a refresh token is specified, it is used to generate an initial access token as well as additional access tokens if the initial access token expires

Request

Request Body

CatalogBulkAssetsCopyRequest

Request body should include target container ID and list of assets with metadata overrides, and may include asset permissions override. Target container ID should be either that of a catalog (publish) or of a space (promote) if source conatiner is a project, or that of a project (clone) if source is a catalog. Example:

``` { "catalog_id": "string", "rov_mode": "integer", "member_roles": { "Member's IAM ID": { "user_iam_id": "Member's IAM ID", "roles": ["EDITOR"] }, "Access Group ID": { "access_group_id": "Access Group ID", "roles": ["VIEWER"] }, "Another IAM ID": { ... } }, "copy_configurations":[ { "asset_id": "string", "revision_id": "string", "metadata_overrides": { "name":"string", "description":"string", "tags":["string","string"] } }, ... ] } ``` Fields 'rov_mode' and 'member_roles' are optional.

  • If specified, they apply to all newly copied (target) assets.
  • If not supplied, newly copied asset gets mode and 'member_roles' from its corresponding source asset.
  • Valid values for 'rov_mode' are 0 (public), 8 (private) and 16 (hidden).
  • If caller doesn't have permissions to set any of the roles then 'member_roles' is completely ignored.
  • If supplied, 'member_roles' should include at least one OWNER role.

The 'metadata_overrides' field is optional and may contain attributes to overwrite the values in original asset. Currently only name, description and tags can be overriden. If specified 'metadata_overrides' cannot be empty and only applies to respective root asset.

Any cross-referenced asset is copied only once.

catalog_id

string

project_id

string

space_id

string

rov_mode

integer

member_roles

object

To assign owners and other collaborators on newly copied target assets.

copy_configurations

Required *

array

Path Parameters

Query Parameters

catalog_id

string

Source catalog ID. Only one of either catalog ID or project ID must be provided.

project_id

string

Source project ID. Only one of either catalog ID or project ID must be provided.

deepcopy

boolean

Determines if the copy operation should be cascaded to referenced assets. Referenced assets are determined using bidirectional external relationships and as well as in-line relationships. In-line relationship types are defined as part of asset type definitions. Cascading happens only if `CASCADE` is set for the following relationship type property:

  • `on_clone`, in case of copying from catalog to project,
  • `on_publish`, in case of copying from project to catalog and
  • `on_promote`, in case of copying from project to space.

auto_copy_connections_in_remote_attachments

boolean

Whether to automatically copy connections in remote attachments

duplicate_action

string

Action to take if the call would result in a duplicate asset. `IGNORE` means the call will ignore the duplicate and create a new asset. `REJECT` means the call will fail and no asset will be created. `UPDATE` means the best matched duplicate will be updated with the incoming changes according to the predefined rules. `REPLACE` means the best matched duplicate will be overwritten with the input values according to the predefined rules. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

copy_task_id

string

copy_status_href

string

state

string

trace

string

responses

array

202 - Accepted - indicates that the copy request is being completed in the background.

copy_task_id

string

copy_status_href

string

state

string

trace

string

responses

array

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Create one or more assets.

POST /v2/assets/bulk_create

Use this API to create one or more assets in a catalog or a project or a space. The default maximum number of assets in a request is 20. Example of request (POST) data:<br/><br/> ``` { "assets":[ { "name":"<Name of the first asset>", "description":"<Description of the first asset>", "tags":["<Tag 1>", "<Tag 2>", ...], "asset_type":"<Asset type such as "connection", "data_asset", etc.>", "entity":{ ... } "attachments":{ ... } }, { "name":"<Name of the second asset>", ... }, ... ] } ``` Response includes, for each asset in the request and in the same order, details of newly created asset or details of updated asset if a duplicate/match is found or errors if any:

``` { "trace":"<Trace ID, if failed to create or update one or more assets>", "responses":[ { "http_status":201, "asset":{...} }, { "http_status":400, "errors":[ ... ] }, ... ] } ```

Request

Request Body

CatalogBulkAssetsCreateRequest

JSON containing list of assets to be created.

assets

Required *

array

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

duplicate_action

string

Action to take if the call would result in a duplicate asset. `IGNORE` means the call will ignore the duplicate and create a new asset. `REJECT` means the call will fail and no asset will be created. `UPDATE` means the best matched duplicate will be updated with the incoming changes according to the predefined rules. `REPLACE` means the best matched duplicate will be overwritten with the input values according to the predefined rules. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

trace

string

responses

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

RFC 6902 specification.

Example of request (POST) data:

``` { "resources": [ { "asset_id": "cf38d92c-eb55-462e-89bf-cdb9fe67f0b7", "operations": [ { "op": "add", "path": "/metadata/description", "value": "Four score and seven years ago..." }, { "op": "add", "path": "/entity/data_asset/mime_type", "value": "text/csv" }, { "op": "replace", "path": "/attachments/1/name", "value": "New name for the 2nd attachment." }, { "op": "remove", "path": "/attachments/0" } { "op":"add", "path":"/attachments/-", "value":{...} }, { "op":"replace", "path":"/attachments/1/name", "value":"New name for the 2nd attachment." }, { "op":"add", "path":"/attachments/2", "value":{...} }, ] }, { "asset_id":"c6650020-3176-4d67-8fbe-5a19ba1c2c7e", "operations": [ ... ] }, ... ] } ``` Response includes, for each asset, asset ID, status and updated version or errors, if any: ``` { "resources": [ { "asset_id": "cf38d92c-eb55-462e-89bf-cdb9fe67f0b7", "status": 200, "http_status": 200, "asset": { ... } }, { "asset_id": "c6650020-3176-4d67-8fbe-5a19ba1c2c7e", "status": 404, "http_status": 404, "errors": [ ... ] }, ... ] } ```

Currently the API allows to patch up to twenty (20) assets. There is no limit on number of patch instructions. Any number of (allowed) metadata properties and/or attributes can be:

  • modified,
  • new ones added,
  • existing ones be replaced or
  • deleted

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info.

> Note: Any `~` characters need to be escaped as `~0` in the path field

Any `/` characters need to be escaped as `~1` in the path field

For example, in `{"foo/: {"~bar: "value"}}`, the path for `~bar` is `/foo~1/~0bar` ">

Patch one or more assets.

POST /v2/assets/bulk_patch

Use this API to patch one or more assets in catalog or project or space. The default maximum number of assets in a request is 20.

The API supports the following operations:

  • Patching of allowed metadata properties. See `PATCH /v2/assets/{asset_id}` API for list of allowed metadata properties that can be patched."
  • Add, update and delete of attributes such as `asset_terms`, `data_profile`, etc."
  • Create, update and delete of attachments:
    • The (asset) `attachments` field is an array and the index of the first attachment is 0, the index of the second one is 1 and so on. Adding or deleting an attachment shifts indexes of any attachments that follow it.
    • A newly created attachment is added at the specified location. If the `path` is `/attachments/-` then it will be added at the end.
    • Newly added attachment cannot be updated or deleted (in the same API call). And, newly updated attachment cannot be deleted.
    • Some of the new attachment fields like `attachment_id`, `url1`, `url2`, etc. are only included in the response the first time when the attachments are created.
    • Only the following attachment fields can be updated: `name`, `description`, `mime`, `size`, `partitions` and `transfer_complete`.

The API does not support patching of whole metadata, entity and attachments.

  • i.e. The `path` cannot be the following values: `/metadata`, `/entity` or `/attachments`.

Access to an asset is controlled by a combination of the privacy level and the members of the asset. For a governed catalog, data assets are protected from unauthorized access by the governance policies that are defined in Data Governance. Data assets in ungoverned catalogs are not subject to governance policies.

> Note: Patch 'operations' should conform to RFC 6902 specification.

Example of request (POST) data:

``` { "resources": [ { "asset_id": "cf38d92c-eb55-462e-89bf-cdb9fe67f0b7", "operations": [ { "op": "add", "path": "/metadata/description", "value": "Four score and seven years ago..." }, { "op": "add", "path": "/entity/data_asset/mime_type", "value": "text/csv" }, { "op": "replace", "path": "/attachments/1/name", "value": "New name for the 2nd attachment." }, { "op": "remove", "path": "/attachments/0" } { "op":"add", "path":"/attachments/-", "value":{...} }, { "op":"replace", "path":"/attachments/1/name", "value":"New name for the 2nd attachment." }, { "op":"add", "path":"/attachments/2", "value":{...} }, ] }, { "asset_id":"c6650020-3176-4d67-8fbe-5a19ba1c2c7e", "operations": [ ... ] }, ... ] } ``` Response includes, for each asset, asset ID, status and updated version or errors, if any: ``` { "resources": [ { "asset_id": "cf38d92c-eb55-462e-89bf-cdb9fe67f0b7", "status": 200, "http_status": 200, "asset": { ... } }, { "asset_id": "c6650020-3176-4d67-8fbe-5a19ba1c2c7e", "status": 404, "http_status": 404, "errors": [ ... ] }, ... ] } ```

Currently the API allows to patch up to twenty (20) assets. There is no limit on number of patch instructions. Any number of (allowed) metadata properties and/or attributes can be:

  • modified,
  • new ones added,
  • existing ones be replaced or
  • deleted

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info.

> Note: Any `~` characters need to be escaped as `~0` in the path field

Any `/` characters need to be escaped as `~1` in the path field

For example, in `{"foo/: {"~bar: "value"}}`, the path for `~bar` is `/foo~1/~0bar`

Request

Request Body

CatalogBulkAssetsUpdateRequest

JSON containing per-asset updates/patches.

resources

Required *

array

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

duplicate_action

string

Action to take if the changes to an asset would make it a duplicate to other assets. `IGNORE` means the call will continue and update the asset anyway; as a result, the asset will become a duplicate to other assets. `REJECT` means the call will fail and the asset will not be changed. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK - indicates successful completion of overall request. The 'http_status' of sub-response provides status of corresponding sub-request i.e. asset.

trace

string

resources

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Gets the status of asset copy operation

GET /v2/assets/copy_status/{copy_task_id}

For large deep copies, portions of the copy operation are performed in the background. This API provides a way to get the status of the background processing. It also provides additional details about deep copy operations that have already been completed.

Similar to /v2/assets/deepcopy/{deep_copy_task_id} API but response can support completion details of multiple source assets.

Note: The status of completed copy operations is only available for 24 hours.

Request

Path Parameters

copy_task_id

Required *

string

Query Parameters

Response

200 - OK

source

CatalogAssetContainer

target

CatalogAssetContainer

started_at

string

start_time

integer

finished_at

string

finish_time

integer

expires_at

string

expiration_time

integer

state

string

error

CatalogErrorContainerModel

The details of the error.

status_code

integer

transaction_id

string

cams_transaction_id

string

instance_id

string

stack_trace

string

responses

array

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

404 - Not Found

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Create a PUT signed url for an object or a file

POST /v2/assets/create_object_url

Use this API to create a PUT signed url to an object or a file in the catalog/project/space bucket/storage. <br/>You must specify both name and asset_type (to create a new object or a file) OR the asset_id (to overwrite an existing object or a file) in the request.<br/>You must specify one of these -- catalog_id, project_id or the space_id as a query parameter.<br/>Details:

  • No new meta-data (asset_id) is created or updated for this request.
  • Only the PUT signed url is returned for the object or the file.
  • If the asset_id is given in the request, a PUT signed url is returned for that asset's attachment's object/file, if the object/file is stored in the catalog/project/space bucket/storage. If the asset_type is given, the object/file from the first attachment with that asset_type is the one for which the PUT signed url will be returned. If the asset_type is not given, then, the asset's asset_type, then the "data_asset", will be used to find the attachment with the object/file.
  • If the asset_id is not given in the request, and asset_type and name are specified, a PUT signed url is returned for an object_key where the object_key value is created using the combination of asset_type, sanitized name, and a random string.
  • The name in the request can only contain letters, numbers, underscore, dash, space, and period -- same requirements as the attachment name.
  • The value of expires_in is in seconds. The default value of expires_in is 604800 (7 days). Given a value of 0, the default value will be applied. The max value is the same as the default value; if a value larger than the max value is input, the max value will be used.

Request

Request Body

CatalogObjectURLReqResp

object_url request

asset_id

string

asset_type

string

name

string

description

string

mime

string

expires_in

integer

path

string

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

201 - Created

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Gets the status of a deep copy operation

GET /v2/assets/deepcopy/{deep_copy_task_id}

For large deep copies, portions of the copy operation are performed in the background. This API provides a way to get the status of the background processing. It also provides additional details about deep copy operations that have already been completed.

Note: The status of completed deep copy operations is only available for 24 hours.

Request

Path Parameters

deep_copy_task_id

Required *

string

Query Parameters

Response

200 - OK

source

CatalogAssetContainer

target

CatalogAssetContainer

started_at

string

start_time

integer

finished_at

string

finish_time

integer

expires_at

string

expiration_time

integer

state

string

error

CatalogErrorContainerModel

The details of the error.

status_code

integer

transaction_id

string

cams_transaction_id

string

instance_id

string

stack_trace

string

source_asset_id

string

source_asset_rev

string

copied_assets

array

copy_errors

array

result

array

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

404 - Not Found

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Bulk search duplicate assets

POST /v2/assets/duplicates/bulk_search

Use this API to search for duplicate assets of an array of assets in the target catalog, project, or space. The maximum number of assets in a request is 20.

Each asset in the request can either be an existing asset, or an asset object that is the same as the user would provide for creating a new asset. E.g., ``` { "resources":[ { "asset": { "metadata": {}, "entity": {} } }, { "project_id": "6f79ff7d-9227-4cba-81e7-726db8984d16", "asset_id": "faad7530-4a30-41da-ac27-d3a0f07b2070" }, { "asset": { "metadata": {}, "entity": {} } } ] } ``` The response contains an array of duplicate search results. The index of the results in the array is the same as the index of the corresponding asset in the request array. Each result can be a success or failure depending on the corresponding request asset. E.g., ``` { "trace":"32s0wywr3wdqpsn86b4cfzb4i", "resources":[ { "http_status": 200, "total_count": 1, "best_updatable_duplicate_asset_id": "b81c84f5-a551-43bb-9a6e-c8e7820995f9", "results": [ { "asset_id": "b81c84f5-a551-43bb-9a6e-c8e7820995f9", "highest_match_score": {}, "asset": { "metadata": {}, "entity": {} } } ] }, { "http_status": 404, "errors": [ { "code": "does_not_exist", "message": "ATTSV3024E: There is no asset with an ID of 'faad7530-4a30-41da-ac27-d3a0f07b2070' in a project with an ID of '6f79ff7d-9227-4cba-81e7-726db8984d16' ." } ] }, { "http_status": 200, "total_count": 0, "results": [ ] } ] } ``` The response of each requested item contains a `http_status` field that can be used to determine if the specific request was successful or not. If a request failed, the corresponding response will contain a field `errors` indicating the cause of the failure. For detail explaination of other fields in the request and response of each item, please refer to the `POST /v2/assets/duplicates/search` endpoint.

Request

Request Body

CatalogBulkSearchDuplicateRequest

The assets to search for duplicate assets.

resources

Required *

array

the assets to search duplicates for

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated, please use `exclude` instead

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

limit

integer

The maximum number of items to return for each requested asset

Response

200 - OK

trace

string

trace id of the transaction. only avaialbe if any of the request item failed.

resources

array

the responses

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Search duplicate assets

POST /v2/assets/duplicates/search

Use this API to search for duplicate assets of an asset in the target catalog, project, or space.

Users can provide an existing asset like below to search for duplicate assets of the given asset in the target asset container. The authenticated user needs to have the read access to the specified asset. ``` { "project_id": "6f79ff7d-9227-4cba-81e7-726db8984d16", "asset_id": "faad7530-4a30-41da-ac27-d3a0f07b2070" } ```

Or provide an asset object to search for duplicate assets of the given asset payload in the target asset container. The asset payload is the same as the user would provide for creating a new asset. ``` { "asset": { "metadata": {}, "entity": {} } } ```

The query parameter `limit` can be used to limit the number of duplicates in the response. If not supplied, the maximum allowed value `100` is used. Note that the API does not support paignation as users usually only care about top `x` number of duplicates instead of all duplicates. If they do, they can always use a large limit to retrieve all duplicates. There number of the duplicates of any given asset should be far less than the maximum allowed value of the parameter `limit`. The system would become unusable long before the number of duplicates reaches that value.

The duplicate assets in the response are ordered by the matching score from high to low. The higher the matching score, the more certain that the asset is a duplicate of the incoming asset.

The `total_count` indicates the total number of duplicates of the given asset. This is useful in case the total number of duplicates is greater than the specified limit.

The `best_updatable_duplicate_asset_id` indicates the highest ranking duplicate asset that can be updated by the authenticated user. This duplicate asset would be updated/replaced if the incoming asset were to be added in the target asset container and the effective `duplicate_action` were `UPDATE/REPLACE`. If duplicates are found but this field doesn't have a value, it indicates that the authenticated user doesn't have permission to update any of the duplicates. In such a case, if the incoming asset were to be added in the target asset container and the effective `duplicate_action` were `UPDATE/REPLACE`, the transaction would fail.

Request

Request Body

CatalogSearchDuplicateRequest

Supply either an existing asset or an asset payload to search for duplicate assets.

catalog_id

string

Id of the catalog the existing asset resides in. You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

Id of the project the existing asset resides in. You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

Id of the space the existing asset resides in. You must provide either a catalog id, a project id, or a space id, but not more than one

asset_id

string

Id of the existing asset

revision_id

string

Revision of the existing asset

asset

object

The asset payload, which is the same as the user would provide for creating a new asset.

metadata

object

AssetMetadata Model

entity

Required *

object

attachments

array

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated, please use `exclude` instead

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

limit

integer

The maximum number of items to return

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

results

array

List of matching duplicate assets

best_updatable_duplicate_asset_id

string

The id of the best updatable duplicate asset that would be chosen for updating/overwriting in a real persistence transaction. It is possible that there are matching duplicate assets but this field is null, which indicates the caller does not have permission to update/replace any of the matching duplicate assets

total_count

integer

Total number of duplicates

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Finds related assets

POST /v2/assets/get_relationships

Finds assets related to a given asset or a given governance artifact. This API supports limiting the results to a specific set of relationships as well as providing pagination and sorting options.

  • One of the {`catalog_id`, `project_id`, `space_id`} must be specified.
  • asset_id must be specified.
  • artifact_id and artifact_type cannot be specified.
  • artifact_id and artifact_type must be specified.
  • asset_id and container id cannot be specified.
  • One of the {`catalog_id`, `project_id`, `space_id`} must be specified.
  • asset_id must be specified. asset_id should be in the format of `<asset_id>#COLUMN#<column_identifier>`
  • artifact_id and artifact_type cannot be specified.

<br/><br/>Note:When self references are present (i.e. when the source and target asset in the relationship are the same), more rows than specified by the limit may be returned. When this happens, the total rows reported is accurate and the bookmark points to next page of results.

Request

Path Parameters

Query Parameters

catalog_id

string

Catalog ID

project_id

string

Project ID

space_id

string

Space ID

asset_id

string

Asset ID

artifact_id

string

Artifact ID

artifact_type

string

Artifact Type

array

Related Asset Types

array

Related Artifact Types

bookmark

string

bookmark

limit

integer

limit. Defaults to 25

orderby

array

orderby. This parameter can be repeated to add additional sort fields. <br><br>Default: update_time_asc

Supported sort fields (these are case insensitive):

  • create_time_asc
  • create_time_desc
  • update_time_asc
  • update_time_desc
  • creator_id_asc
  • creator_id_desc
  • updater_id_asc
  • updater_id_desc

relationship_names

array

Limits results to only include the specified relationships. By default, all relationships are included. Repeat the query parameter to specify multiple relationship names.

lookup_asset_names

boolean

Whether to lookup the asset names. This adds overhead, so only set this to true if the asset names are required. Defaults to false.

lookup_artifact_names

boolean

Whether to lookup the artifact names. This adds overhead, so only set this to true if the artifact names are required. Defaults to false.

lookup_container_names

boolean

Whether to lookup the container names. This adds overhead, so only set this to true if the asset names are required. Defaults to false.

include_columns

boolean

(DEPRECATED) Whether to return relationships where target end is a column for the given source asset, artifact, or column. This parameter is deprecated. Use 'include_target_columns' instead.

include_target_columns

boolean

Whether to return relationships where target end is a column for the given source asset, artifact, or column.

include_source_columns

boolean

Whether to return relationships where source end is either the given asset or a column of the given asset. When this parameter set to 'true', 'include_target_columns' must also be set to 'true'. By this, all relationships of asset-asset, asset-column, asset-artifact, column-asset, column-column, column-artifact will be returned.Use this parameter when 'asset_id' refers to an asset which has columns.

Response

200 - Success

options

object

resources

array

total_rows

integer

next

object

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Get an ibm_data_source asset

GET /v2/assets/ibm_data_source

Use this API to get an ibm_data_source asset with provided endpoint or physical_collection. There is only one ibm_data_source asset that meets the specified parameters. Currently we only support the following three query methods:

  1. host + port, the host is either ipV4 or ipV6 or a DNS name
  2. host + port + physical_collection
  3. physical_collection

Request

Path Parameters

Query Parameters

catalog_id

string

Catalog GUID or UID

bss_account_id

string

the bss_account_id

host

string

port

string

physical_collection

string

It can be database, project_id or bucket

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Publish an asset from a project which is only referenced in that project

POST /v2/assets/publish

Use this API to publish an asset whose only metadata are only in project as reference to a target catalog. Assets contain information about the contents of your data and how to access the data. You store asset metadata in a catalog and add collaborators from your organization to analyze data. Your data can reside in a variety of sources. For example, you can keep your data in your existing on-premises data sources, cloud data services, or streaming data feeds. By adding connection information to these remote sources in the catalog, you can allow other catalog users to access the data with the stored credentials. Alternatively, you can copy a snapshot of the remote data into the catalog's encrypted cloud storage.<br/>All asset types have a common set of properties. Some asset types have additional properties.<br/>When you add an asset to a catalog, you specify these common properties:

  • The asset name and an optional description. The name can only contain letters, numbers, underscore, dash, space, and period. The name can't be only blank spaces.
  • Privacy. You can choose to restrict access to the asset with the privacy level and asset membership.
    • Public = Default. No restrictions on finding or using the asset.
    • Private = Only asset members can find or use the asset.
  • Members. The catalog collaborators can be added as members of the asset. Members are important if you restrict access to the asset. When you create an asset, you are the owner (and a member) of it.
  • Tags. Metadata that makes searching for the asset easier. Tags can contain only letters, numbers, underscores, dashes, and the symbols # and @.

Request

Request Body

CatalogPublishAsset

Asset metadata

metadata

CatalogPublishAssetMetadata

Publish Asset Metadata

name

Required *

string

Choose Any Name for your Asset

description

string

A longer description describes an asset.

tags

array

asset_type

Required *

string

asset type

origin_country

string

resource_key

string

identity_key

string

rov

object

asset_category

Required *

string

source_system

object

Source System Info

child_source_systems

array

source_system_history

array

History of external repository assets that were the source of an imported/synced/rehomed asset.

published_from

object

Asset metadata where its published from

published_to

object

Asset metadata where it published to

entity

object

Path Parameters

Query Parameters

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

201 - Created

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Specifying conditions that at least one end of the relationship must match

There are three different conditions of this type that can be specified:

* relationship name  - limits results to relationships with the specified name(s)

* Required object criteria:
* required artifact — must specify artifact_type and artifact_id
* required asset - must specify asset_id and one of: catalog_id, project_id, space_id
* required asset container - must specify one of: catalog_id, project_id, space_id
* Only one type of required object criteria can be used

* Opposite end criteria:
* related_asset_types - specifies that opposite end must have one of the specified asset types
* related_artifact_types - specifies that opposite end must have one of the specified artifact types	
* related_asset_types and related_artifact_types can be used together to specify that the opposite end must have either the specified asset or artifact types

Specifying global conditions that the overall relationship much match:

There are 2 global conditions that can be specified: * modified_after - Restricts results to relationships created/updated after a specific date and time * modified_before - Restricts results to relationships created/updated before a specific date and time * modified_after and modified_before can be used together to filter for relationships created/updated within a specific time window.">

Searches for relationships

POST /v2/assets/search_relationships

Finds relationships that match the specified criteria. There are two general kinds of criteria that can be used: criteria that at least one relationship end must match and criteria that the overall relationship must match.

Specifying conditions that at least one end of the relationship must match

There are three different conditions of this type that can be specified:

* relationship name  - limits results to relationships with the specified name(s)

* Required object criteria:
* required artifact — must specify artifact_type and artifact_id
* required asset - must specify asset_id and one of: catalog_id, project_id, space_id
* required asset container - must specify one of: catalog_id, project_id, space_id
* Only one type of required object criteria can be used

* Opposite end criteria:
* related_asset_types - specifies that opposite end must have one of the specified asset types
* related_artifact_types - specifies that opposite end must have one of the specified artifact types	
* related_asset_types and related_artifact_types can be used together to specify that the opposite end must have either the specified asset or artifact types

Specifying global conditions that the overall relationship much match:

There are 2 global conditions that can be specified: * modified_after - Restricts results to relationships created/updated after a specific date and time * modified_before - Restricts results to relationships created/updated before a specific date and time * modified_after and modified_before can be used together to filter for relationships created/updated within a specific time window.

Request

Path Parameters

Query Parameters

catalog_id

string

Catalog ID. Specifies that a specific catalog_id must be in the returned relationships. If filtering by asset container, either catalog_id, project_id, or space_id must be specified.

project_id

string

Project ID. Specifies that a specific project_id must be in the returned relationships. If filtering by asset container, either catalog_id, project_id, or space_id must be specified.

space_id

string

Space ID. Specifies that a specific space_id must be in the returned relationships. If filtering by asset container, either catalog_id, project_id, or space_id must be specified.

asset_id

string

Asset ID. Specifies that a specific asset must be in the returned relationships If specified, either catalog_id, project_id, or space_id must also be specified.

artifact_id

string

Artifact ID. Specifies that a specific artifact must be in the returned relationships. If specified, artifact_type must also be specified

artifact_type

string

Artifact Type. Required if artifact_id is specified

array

Related Asset Types. Filters the result to include relationships based on their target asset type. The parameter can be repeated to specify multiple asset types. If both related_artifact_types and related_asset types are omitted, all target types are included in the result.

array

Related Artifact Types. Filters the result to include relationships based on their target artifact type. The parameter can be repeated to specify multiple artifact types. If both related_artifact_types and related_asset types are omitted, all target types are included in the result.

bookmark

string

bookmark

limit

integer

limit. Defaults to 25

orderby

array

orderby. This parameter can be repeated to add additional sort fields. <br><br>Default: update_time_asc

Supported sort fields (these are case insensitive):

  • create_time_asc
  • create_time_desc
  • update_time_asc
  • update_time_desc
  • creator_id_asc
  • creator_id_desc
  • updater_id_asc
  • updater_id_desc

relationship_names

array

Limits results to only include the specified relationships. By default, all relationships are included. Repeat the query parameter to specify multiple relationship names.

lookup_asset_names

boolean

Whether to lookup the asset names. This adds overhead, so only set this to true if the asset names are required. Defaults to false.

lookup_artifact_names

boolean

Whether to lookup the artifact names. This adds overhead, so only set this to true if the artifact names are required. Defaults to false.

lookup_container_names

boolean

Whether to lookup the container names. This adds overhead, so only set this to true if the asset names are required. Defaults to false.

modified_after

string

Includes relationships modified after this date/time - specified in ISO-8601 format (examples: 2022-09-01T14:32:17Z, 2022-09-01T14:32:17.802Z). This can be used in conjunction with modified_before to specify a required modification time window.

modified_before

string

Includes relationships modified before this date/time - specified in ISO-8601 format (examples: 2022-09-01T14:32:17Z, 2022-09-01T14:32:17.802Z). This can be used in conjunction with modified_after to specify a required modification time window.

include_columns

boolean

(DEPRECATED) Whether to return relationships where target end is a column for the given source asset, artifact, or column. This parameter is deprecated. Use 'include_target_columns' instead.

include_target_columns

boolean

Whether to return relationships where target end is a column for the given source asset, artifact, or column.

include_source_columns

boolean

Whether to return relationships where source end is either the given asset or a column of the given asset. When this parameter set to 'true', 'include_target_columns' must also be set to 'true'. By this, all relationships of asset-asset, asset-column, asset-artifact, column-asset, column-column, column-artifact will be returned.Use this parameter when 'asset_id' refers to an asset which has columns.

Response

200 - Success

options

object

resources

array

total_rows

integer

next

object

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

For Asset
  • The `asset_id` and one of the {`catalog_id`, `project_id`, `space_id`} must be set

For Column

  • The `asset_id` and one of the {`catalog_id`, `project_id`, `space_id`} must be set
  • The `asset_id` of a column must be in the format of `<asset_id>#COLUMN#<column_identifier>`

For Artifact

  • The `artifact_id` and `artifact_type` must be set. Use the global id of the artifact for `artifact_id` ">

Create asset relationships

POST /v2/assets/set_relationships

Use this API to create up to 20 asset relationships.

  • The relationship name must correspond to a relationship type defined on the source type.
  • The source must be an asset, column or governance artifact of the type specified in the relationship type definition.<br> Relationships created with a governance artifact as the source cannot be retrieved, modified, or deleted in the IKC UI.<br> These relationships can only be accessed through API calls such as `POST /v2/assets/search_relationships`, `POST /v2/assets/get_relationships`, and `POST /v2/assets/unset_relationships`.
  • The target must be an asset, column or governance artifact of the type specified in the relationship type definition.
  • If the specified relationship does not exist between a source and target, a new relationship is created.
  • If either end of the relationship is defined as multiplicity-one, any existing value of a multiplicity-one end is replaced.

For Asset

  • The `asset_id` and one of the {`catalog_id`, `project_id`, `space_id`} must be set

For Column

  • The `asset_id` and one of the {`catalog_id`, `project_id`, `space_id`} must be set
  • The `asset_id` of a column must be in the format of `<asset_id>#COLUMN#<column_identifier>`

For Artifact

  • The `artifact_id` and `artifact_type` must be set. Use the global id of the artifact for `artifact_id`

Request

Request Body

CatalogBulkAssetRelationshipsRequest

relationships

relationships

Required *

array

Response

207 - Check response body for results of processing each target artifact

results

array

Result(s) of relationship creation operation(s)

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

For Column
  • The `asset_id` and one of the {`catalog_id`, `project_id`, `space_id`} must be set
  • The `asset_id` of a column must be in the format of `<asset_id>#COLUMN#<column_identifier>`

For Artifact

  • The `artifact_id` and `artifact_type` must be set">

Deletes asset relationships

POST /v2/assets/unset_relationships

Use this API to delete up to 20 asset relationships.

  • The relationship name must correspond to a relationship type defined on the source type.
  • The source must be an asset or governance artifact of the type specified in the relationship type definition.
  • The target must be an asset or governance artifact of the type specified in the relationship type definition.
  • If the specified relationship does not exist between the source and the target, it will be ignored.

For Asset

  • The `asset_id` and one of the {`catalog_id`, `project_id`, `space_id`} must be set

For Column

  • The `asset_id` and one of the {`catalog_id`, `project_id`, `space_id`} must be set
  • The `asset_id` of a column must be in the format of `<asset_id>#COLUMN#<column_identifier>`

For Artifact

  • The `artifact_id` and `artifact_type` must be set

Request

Request Body

relationships

Response

207 - Check response body for status of each asset relationships being deleted.

results

array

Result(s) of relationship deletion operation(s)

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Get an asset

GET /v2/assets/{asset_id}

Use this API to retrieve an asset located in catalog or project. Access to an asset is controlled by a combination of the privacy level and the members of the asset. For a governed catalog, data assets are protected from unauthorized access by the governance policies that are defined in Data Catalog. Data assets in ungoverned catalogs are not subject to governance policies.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated, please use `exclude` instead

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

To delete an asset in a project or space, all of the following must hold:
  • Caller must have the EDITOR or ADMIN role in the project/space

To delete a public asset in a catalog, any of the following must hold:

  • Caller must have the ADMIN role in the catalog
  • Caller must have the EDITOR role in the catalog and caller must have either the OWNER or EDITOR role on the asset

To delete a private asset in a catalog, all of the following must hold:

  • Caller must have either the ADMIN or EDITOR role in the CATALOG
  • Caller must have either the OWNER, EDITOR, or VIEWER role in the asset

Purge Options to Delete an Asset

purge_on_delete = true and purge_after_days is not specified: the asset is purged immediately. purge_on_delete = true and purge_after_days = n: the asset is moved to trash and purged after n days. purge_on_delete = false and purge_after_days is not specified: the asset is moved to trash and never purged. purge_on_delete is not specified and purge_after_days is not specified: the asset will be deleted/purged based on the catalog setting. purge_on_delete = false or is not specified and purge_after_days = n: invalid combination - the call will fail with a 400 Bad Request error.

">

Marks an existing asset for delete

DELETE /v2/assets/{asset_id}

Use this API to delete an existing asset.

Permissions Required to Delete an Asset

To delete an asset in a project or space, all of the following must hold:

  • Caller must have the EDITOR or ADMIN role in the project/space

To delete a public asset in a catalog, any of the following must hold:

  • Caller must have the ADMIN role in the catalog
  • Caller must have the EDITOR role in the catalog and caller must have either the OWNER or EDITOR role on the asset

To delete a private asset in a catalog, all of the following must hold:

  • Caller must have either the ADMIN or EDITOR role in the CATALOG
  • Caller must have either the OWNER, EDITOR, or VIEWER role in the asset

Purge Options to Delete an Asset

purge_on_delete = true and purge_after_days is not specified: the asset is purged immediately. purge_on_delete = true and purge_after_days = n: the asset is moved to trash and purged after n days. purge_on_delete = false and purge_after_days is not specified: the asset is moved to trash and never purged. purge_on_delete is not specified and purge_after_days is not specified: the asset will be deleted/purged based on the catalog setting. purge_on_delete = false or is not specified and purge_after_days = n: invalid combination - the call will fail with a 400 Bad Request error.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

purge_on_delete

boolean

If true, asset is also deleted from the trash.

purge_after_days

integer

Number of days after which asset will be purged. Purge On Delete should be true for this to be valid

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Fields that can be patched:
  • `/metadata/name`
  • `/metadata/description`
  • `/metadata/tags`
  • `/metadata/origin_country`
  • `/metadata/resource_key`
  • `/metadata/source_system/last_modification_timestamp`, Expected Format: `yyyy-MM-ddTHH:mm:ssX`
  • `/metadata/child_source_systems/{idx}/last_modification_timestamp`, Expected Format: `yyyy-MM-ddTHH:mm:ssX`
  • `/metadata/source_system_history` - array, use `add` operation with path `/metadata/source_system_history/-` to append a new element
  • `/metadata/rov/mode` - allowed values are 0 (public), 8 (private) or 16 (hidden)
  • `/metadata/rov/collaborator_ids`
  • `/metadata/rov/member_roles`
  • `/metadata/rov/member_roles/{iam id}/roles` - array, allowed values are OWNER/EDITOR/VIEWER, see below for details

Updating Asset Collaborators and Owners

Either the metadata/rov/collaborator_ids field or the metadata/rov/member_roles field can be updated, but not both.

The collaborator_ids field shown in the asset is derived from the information in member_roles, so updating one of these fields will automatically update the other. The collaborator_ids field shows the members in the member_roles field that have either the asset editor role or the asset viewer role. This field is present for backward compatibility with earlier versions of the catalog service.

Collaborators added to the metadata/rov/collaborator_ids field will be assigned a default asset role based on their role in the catalog. Catalog editors will be assigned the asset editor role, and Catalog viewers will be assigned the asset viewer role.

Users added to the metadata/rov/member_roles present must have either the OWNER role, the OWNER role and EDITOR role, or the OWNER role and VIEWER role. Other combinations of roles are not allowed. Asset users with the VIEWER or EDITOR role must be members of the catalog. In addition, asset users with the OWNER role must also be members if the catalog with either the EDITOR or ADMIN role unless certain service ids are used. For projects and spaces, new owners must have a role in the project/space.

Permissions Required to Modify Asset

To update non-governed fields an asset in a project or space, all of the following must hold:

  • Caller must have the EDITOR or ADMIN role in the project/space

To update non-governed fields in a private asset in a catalog, all of the following must hold:

  • Caller must have either the ADMIN or EDITOR role in the CATALOG
  • Caller must have either the OWNER, EDITOR, or VIEWER role in the asset

To update non-governed fields in a public asset in a catalog, any of the following must hold:

  • Caller must have the ADMIN role in the CATALOG
  • Caller must have the EDITOR role in the CATALOG and caller must have either the OWNER or EDITOR role in the asset

Permissions required to modify governed metadata fields

The "tags" field is the only governed field. For governed catalogs a policy check is made to determine whether updates to it are allowed and if an asset transformation is needed. The outcome of the policy check can either be "ALLOW", "DENY", or "TRANSFORM"

  • If the outcome is "ALLOW", the operation is allowed if the caller has either the "ADMIN" or "EDITOR" catalog role
  • If the outcome is "TRANSFORM", the permission checks described above for non-governed fields are applied
  • If the outcome is "DENY", the permission checks described above for non-governed fields are applied

Allowed Operations

The combination of asset roles and catalog roles determines what asset operations are allowed by users.

These abilities apply to public assets:

  • All members of the catalog can find the asset and see its properties.
  • All members of the catalog who have the Editor, Auditor, or Admin roles can use the asset.

These abilities apply to private assets:

  • All asset collaborators can find the asset and see its properties. Asset collaborators with the Editor, Auditor, or Admin role can use the asset.">

Update an asset

PATCH /v2/assets/{asset_id}

Overview

Use this API to update certain metadata fields in assets.

Fields that can be patched:

  • `/metadata/name`
  • `/metadata/description`
  • `/metadata/tags`
  • `/metadata/origin_country`
  • `/metadata/resource_key`
  • `/metadata/source_system/last_modification_timestamp`, Expected Format: `yyyy-MM-ddTHH:mm:ssX`
  • `/metadata/child_source_systems/{idx}/last_modification_timestamp`, Expected Format: `yyyy-MM-ddTHH:mm:ssX`
  • `/metadata/source_system_history` - array, use `add` operation with path `/metadata/source_system_history/-` to append a new element
  • `/metadata/rov/mode` - allowed values are 0 (public), 8 (private) or 16 (hidden)
  • `/metadata/rov/collaborator_ids`
  • `/metadata/rov/member_roles`
  • `/metadata/rov/member_roles/{iam id}/roles` - array, allowed values are OWNER/EDITOR/VIEWER, see below for details

Updating Asset Collaborators and Owners

Either the metadata/rov/collaborator_ids field or the metadata/rov/member_roles field can be updated, but not both.

The collaborator_ids field shown in the asset is derived from the information in member_roles, so updating one of these fields will automatically update the other. The collaborator_ids field shows the members in the member_roles field that have either the asset editor role or the asset viewer role. This field is present for backward compatibility with earlier versions of the catalog service.

Collaborators added to the metadata/rov/collaborator_ids field will be assigned a default asset role based on their role in the catalog. Catalog editors will be assigned the asset editor role, and Catalog viewers will be assigned the asset viewer role.

Users added to the metadata/rov/member_roles present must have either the OWNER role, the OWNER role and EDITOR role, or the OWNER role and VIEWER role. Other combinations of roles are not allowed. Asset users with the VIEWER or EDITOR role must be members of the catalog. In addition, asset users with the OWNER role must also be members if the catalog with either the EDITOR or ADMIN role unless certain service ids are used. For projects and spaces, new owners must have a role in the project/space.

Permissions Required to Modify Asset

To update non-governed fields an asset in a project or space, all of the following must hold:

  • Caller must have the EDITOR or ADMIN role in the project/space

To update non-governed fields in a private asset in a catalog, all of the following must hold:

  • Caller must have either the ADMIN or EDITOR role in the CATALOG
  • Caller must have either the OWNER, EDITOR, or VIEWER role in the asset

To update non-governed fields in a public asset in a catalog, any of the following must hold:

  • Caller must have the ADMIN role in the CATALOG
  • Caller must have the EDITOR role in the CATALOG and caller must have either the OWNER or EDITOR role in the asset

Permissions required to modify governed metadata fields

The "tags" field is the only governed field. For governed catalogs a policy check is made to determine whether updates to it are allowed and if an asset transformation is needed. The outcome of the policy check can either be "ALLOW", "DENY", or "TRANSFORM"

  • If the outcome is "ALLOW", the operation is allowed if the caller has either the "ADMIN" or "EDITOR" catalog role
  • If the outcome is "TRANSFORM", the permission checks described above for non-governed fields are applied
  • If the outcome is "DENY", the permission checks described above for non-governed fields are applied

Allowed Operations

The combination of asset roles and catalog roles determines what asset operations are allowed by users.

These abilities apply to public assets:

  • All members of the catalog can find the asset and see its properties.
  • All members of the catalog who have the Editor, Auditor, or Admin roles can use the asset.

These abilities apply to private assets:

  • All asset collaborators can find the asset and see its properties. Asset collaborators with the Editor, Auditor, or Admin role can use the asset.

Request

Request Body

CatalogJsonPatch

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info. <br/> Note: <br/> Any ‘~’ characters need to be escaped as ~0 in the path field. <br/> Any ‘/’ characters need to be escaped as ~1 in the path field. <br/> For example, in {"foo/" : {"~bar" : "value"}}, the path for "~bar" is "/foo~1/~0bar".

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

duplicate_action

string

Action to take if the changes to an asset would make it a duplicate to other assets. `IGNORE` means the call will continue and update the asset anyway; as a result, the asset will become a duplicate to other assets. `REJECT` means the call will fail and the asset will not be changed. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Create an attachment

POST /v2/assets/{asset_id}/attachments

Creates an attachment.

Request

Request Body

CatalogAttachment

Attachment meta-data.
The "asset_type" is required.
The "mime" is a reliable way to indicate the nature and format of the attachment. It should be used instead of other implementation-specific means, e.g., file extension.
If not supplied, or if the value given is less than 1, data_partitions defaults to 1 (for non-remote and non-referenced attachments).
For remote attachments, both connection_id and connection_path are required.
For referenced attachments, both object_key and object_key_is_read_only are required.

asset_type

Required *

string

name

string

description

string

mime

string

data_partitions

integer

test_doc

integer

private_url

boolean

connection_id

string

connection_path

string

object_key

string

object_key_is_read_only

boolean

user_data

object

is_partitioned

boolean

partitions

CatalogAttachmentPartitions

temporal

boolean

Indicate if the partitions are time based.

hierarchical

boolean

Indicate if the partitions are stored hierarchical or flat.

timestamp

string

The timestamp the partition information is collected, in format yyyy-MM-dd'T'HH:mm:ss.SSSX or yyyy-MM-dd'T'HH:mm:ssX

latest_partitions

array

The latest partitions.

Path Parameters

asset_id

Required *

string

Asset GUID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

duplicate_action

string

Action to take if the changes to an asset would make it a duplicate to other assets. `IGNORE` means the call will continue and update the asset anyway; as a result, the asset will become a duplicate to other assets. `REJECT` means the call will fail and the asset will not be changed. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

Response

201 - Created

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Get an attachment

GET /v2/assets/{asset_id}/attachments/{attachment_id}

Retrieve an attachment.

Request

Path Parameters

asset_id

Required *

string

Asset GUID

attachment_id

Required *

string

Attachment GUID

Query Parameters

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

private_url

boolean

private_url

response-content-disposition

string

response-content-disposition

response-content-type

string

response-content-type

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Delete an attachment

DELETE /v2/assets/{asset_id}/attachments/{attachment_id}

Delete an attachment.

Request

Path Parameters

asset_id

Required *

string

Asset GUID

attachment_id

Required *

string

Attachment GUID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

duplicate_action

string

Action to take if the changes to an asset would make it a duplicate to other assets. `IGNORE` means the call will continue and update the asset anyway; as a result, the asset will become a duplicate to other assets. `REJECT` means the call will fail and the asset will not be changed. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Update attachment metadata

PATCH /v2/assets/{asset_id}/attachments/{attachment_id}

Update attachment metadata. Only the following fields are allowed to update:

  • name
  • description
  • mime
  • size
  • partitions
  • transfer_complete

Request

Request Body

CatalogJsonPatch

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info. <br/>[ { "op": "add", "path": "/name", "value": "my_attachment"},
{ "op": "replace", "path": "/mime", "value": "text/csv" },
{ "op": "remove", "path":"/description"} ] <br/> Note: <br/>

  1. Any ‘~’ characters need to be escaped as ~0 in the path field. <br/> Any ‘/’ characters need to be escaped as ~1 in the path field. <br/> For example, in {"foo/" : {"~bar" : "value"}}, the path for "~bar" is "/foo~1/~0bar".
  2. The transfer_complete field can only be set to true if its current value is false and the type of attachment is managed.

Path Parameters

asset_id

Required *

string

Asset GUID

attachment_id

Required *

string

Attachment GUID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

asset_type

string

name

string

description

string

mime

string

data_partitions

integer

test_doc

integer

private_url

boolean

connection_id

string

connection_path

string

object_key

string

object_key_is_read_only

boolean

user_data

object

is_partitioned

boolean

partitions

CatalogAttachmentPartitions

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

409 - Conflict

422 - Unprocessable Entity

500 - Internal Server Error

Mark an attachment as transfer complete

POST /v2/assets/{asset_id}/attachments/{attachment_id}/complete

Marks an attachment as transfer complete.

Request

Path Parameters

asset_id

Required *

string

Asset GUID

attachment_id

Required *

string

Attachment GUID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Auto update attachment's datasource_type from connection asset

PATCH /v2/assets/{asset_id}/attachments/{attachment_id}/datasource_type

Auto update attachment's datasource_type from connection asset

Request

Path Parameters

asset_id

Required *

string

Asset GUID

attachment_id

Required *

string

Attachment GUID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

asset_type

string

name

string

description

string

mime

string

data_partitions

integer

test_doc

integer

private_url

boolean

connection_id

string

connection_path

string

object_key

string

object_key_is_read_only

boolean

user_data

object

is_partitioned

boolean

partitions

CatalogAttachmentPartitions

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

409 - Conflict

422 - Unprocessable Entity

500 - Internal Server Error

Get resources info for an attachment

GET /v2/assets/{asset_id}/attachments/{attachment_id}/resources

Get resources info for an attachment.

Request

Path Parameters

asset_id

Required *

string

Asset GUID

attachment_id

Required *

string

Attachment GUID

Query Parameters

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Increase resources for an attachment

PUT /v2/assets/{asset_id}/attachments/{attachment_id}/resources

Increase resources for an attachment.

Request

Request Body

CatalogAttachmentIncRes

attachment resource to increase, e.g. {"data_partitions":5, "private_url":false}

data_partitions

Required *

integer

private_url

boolean

Path Parameters

asset_id

Required *

string

Asset GUID

attachment_id

Required *

string

Attachment GUID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

List all attributes

GET /v2/assets/{asset_id}/attributes

Use this API to retrieve all attributes of an asset.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated, please use `exclude` instead

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

column_info attribute

The built-in `column_info` type defines metadata (e.g. description, tags) for columns contained in a data asset which represents a relational database table or columnar data file (e.g. csv file).

Create a `column_info` asset attribute to add column descriptions and/or tags if that attribute does not already exist on the asset. <br/>Once the `column_info` attribute has been created, entries can be added, updated, or removed using the `PATCH /v2/assets/{asset_id}/attributes/column_info` endpoint.

The `column_info` attribute is a map structure where the key is a column name corresponding to an existing entry in the asset's `entity.data_asset.columns` array. <br/>For example, here is the request payload to create a `column_info` attribute that assigns a description and tags to `ACCOUNT_HOLDER_ID` and `NAME` columns: ``` { "name": "column_info", "entity": { "ACCOUNT_HOLDER_ID": { "column_description": "Globally unique identifier of the account holder.", "column_tags": [ "identifier", "unique_key" ] }, "NAME": { "column_description": "Full legal name of the account holder.", "column_tags": [ "legal_name" ] } } } ``` ">

Create an attribute

POST /v2/assets/{asset_id}/attributes

Use this API to create an asset attribute. An attribute is identically named with, and has fields that are partially defined by, an asset type. The `name` specified in the request payload must match an existing built-in or user-defined asset type.

column_info attribute

The built-in `column_info` type defines metadata (e.g. description, tags) for columns contained in a data asset which represents a relational database table or columnar data file (e.g. csv file).

Create a `column_info` asset attribute to add column descriptions and/or tags if that attribute does not already exist on the asset. <br/>Once the `column_info` attribute has been created, entries can be added, updated, or removed using the `PATCH /v2/assets/{asset_id}/attributes/column_info` endpoint.

The `column_info` attribute is a map structure where the key is a column name corresponding to an existing entry in the asset's `entity.data_asset.columns` array. <br/>For example, here is the request payload to create a `column_info` attribute that assigns a description and tags to `ACCOUNT_HOLDER_ID` and `NAME` columns: ``` { "name": "column_info", "entity": { "ACCOUNT_HOLDER_ID": { "column_description": "Globally unique identifier of the account holder.", "column_tags": [ "identifier", "unique_key" ] }, "NAME": { "column_description": "Full legal name of the account holder.", "column_tags": [ "legal_name" ] } } } ```

Request

Request Body

CatalogAttribute

Attribute metadata. The "entity" is required.

name

Required *

string

entity

object

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

duplicate_action

string

Action to take if the changes to an asset would make it a duplicate to other assets. `IGNORE` means the call will continue and update the asset anyway; as a result, the asset will become a duplicate to other assets. `REJECT` means the call will fail and the asset will not be changed. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

Response

201 - Created

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Get an attribute

GET /v2/assets/{asset_id}/attributes/{attribute_key}

Use this API to retrieve an attribute of an asset.

Request

Path Parameters

asset_id

Required *

string

asset_id

attribute_key

Required *

string

attribute_key

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated, please use `exclude` instead

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Delete an attribute

DELETE /v2/assets/{asset_id}/attributes/{attribute_key}

Use this API to delete an attribute of an asset.

Request

Path Parameters

asset_id

Required *

string

asset_id

attribute_key

Required *

string

attribute_key

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

duplicate_action

string

Action to take if the changes to an asset would make it a duplicate to other assets. `IGNORE` means the call will continue and update the asset anyway; as a result, the asset will become a duplicate to other assets. `REJECT` means the call will fail and the asset will not be changed. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Updating the column_info attribute

Use this API for updating an existing `column_info` attribute to set or replace the `column_description` or `column_tags` for any column.

> Note: Use `POST /v2/assets/{asset_id}/attributes` to create the `column_info` attribute if it does not exist on the asset. > Use `GET /v2/assets/{asset_id}/attributes/column_info` to check the existence of the attribute.

Payload Examples

To add a `column_info` entry that specifies a description and tags for the `INVOICE_ID` column: `[{"op":"add","path":"/INVOICE_ID","value":{"column_description":"Unique identifier of the invoice", "column_tags":["tag1", "tag2"]}}]`

To add or update a description on the existing `column_info` entry for the `ADDRESS` column: `[{"op":"add","path":"/ADDRESS/column_description","value":"customer street address"}]` To unset/remove the `ADDRESS` column's description: `[{"op": "remove", "path":"/ADDRESS/column_description"}]` To remove the entire `column_info` entry for the `ADDRESS` column: `[{"op": "remove", "path":"/ADDRESS"}]`

To update value of `properties` of data_asset: ``` { "entity": { "data_asset": { "mime_type": "text/csv", "dataset": true, "properties": [ { "name": "schema_name", "value": "GOSALES1021" }, { "name": "table_name", "value": "COUNTRY" } ] } } } ``` Request body: ``` [ { "op": "replace", "path": "/properties/1/value", "value": "COUNTRY2" } ] ```

To update value of `data_source_deployment`: ``` { "entity": { "ibm_data_source": { "data_source_type_id": "8c1a4480-1c29-4b33-9086-9cb799d7b157", "data_source_deployment": "on_cloud", "data_source_flags": [], "data_source_state": "ACTIVE", "data_source_encoding": "UTF-8", "data_source_protection_method": "guardium" } } } ``` Request body: ``` [ { "op": "replace", "path": "/data_source_deployment", "value": "cpd" } ] ```

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info. > Note: > Any ‘~’ characters need to be escaped as ~0 in the path field. > Any ‘/’ characters need to be escaped as ~1 in the path field. > For example, in {"foo/" : {"~bar" : "value"}}, the path for "~bar" is "/foo~1/~0bar". ">

Update attributes

PATCH /v2/assets/{asset_id}/attributes/{attribute_key}

Use this API to update/modify an asset attribute.

Updating the column_info attribute

Use this API for updating an existing `column_info` attribute to set or replace the `column_description` or `column_tags` for any column.

> Note: Use `POST /v2/assets/{asset_id}/attributes` to create the `column_info` attribute if it does not exist on the asset. > Use `GET /v2/assets/{asset_id}/attributes/column_info` to check the existence of the attribute.

Payload Examples

To add a `column_info` entry that specifies a description and tags for the `INVOICE_ID` column: `[{"op":"add","path":"/INVOICE_ID","value":{"column_description":"Unique identifier of the invoice", "column_tags":["tag1", "tag2"]}}]`

To add or update a description on the existing `column_info` entry for the `ADDRESS` column: `[{"op":"add","path":"/ADDRESS/column_description","value":"customer street address"}]` To unset/remove the `ADDRESS` column's description: `[{"op": "remove", "path":"/ADDRESS/column_description"}]` To remove the entire `column_info` entry for the `ADDRESS` column: `[{"op": "remove", "path":"/ADDRESS"}]`

To update value of `properties` of data_asset: ``` { "entity": { "data_asset": { "mime_type": "text/csv", "dataset": true, "properties": [ { "name": "schema_name", "value": "GOSALES1021" }, { "name": "table_name", "value": "COUNTRY" } ] } } } ``` Request body: ``` [ { "op": "replace", "path": "/properties/1/value", "value": "COUNTRY2" } ] ```

To update value of `data_source_deployment`: ``` { "entity": { "ibm_data_source": { "data_source_type_id": "8c1a4480-1c29-4b33-9086-9cb799d7b157", "data_source_deployment": "on_cloud", "data_source_flags": [], "data_source_state": "ACTIVE", "data_source_encoding": "UTF-8", "data_source_protection_method": "guardium" } } } ``` Request body: ``` [ { "op": "replace", "path": "/data_source_deployment", "value": "cpd" } ] ```

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info. > Note: > Any ‘~’ characters need to be escaped as ~0 in the path field. > Any ‘/’ characters need to be escaped as ~1 in the path field. > For example, in {"foo/" : {"~bar" : "value"}}, the path for "~bar" is "/foo~1/~0bar".

Request

Request Body

CatalogJsonPatch

JSON array of patch operations as defined in RFC 6902.<br/>

Path Parameters

asset_id

Required *

string

asset_id

attribute_key

Required *

string

attribute_key

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

duplicate_action

string

Action to take if the changes to an asset would make it a duplicate to other assets. `IGNORE` means the call will continue and update the asset anyway; as a result, the asset will become a duplicate to other assets. `REJECT` means the call will fail and the asset will not be changed. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

Response

200 - Created

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Clone an asset

POST /v2/assets/{asset_id}/clone

Use this API to clone catalog asset to project. This will create new copy of asset metadata, including asset attachments.

Request

Request Body

CatalogAssetCopyTo

Request body should include project ID, and may include asset permissions override.

``` { "project_id": "string", "member_roles": { "Member's IAM ID": { "user_iam_id": "Member's IAM ID", "roles": ["EDITOR"] }, "Access Group ID": { "access_group_id": "Access Group ID", "roles": ["VIEWER"] }, "Another IAM ID": { ... } } } ```
Field 'member_roles' is optional.

  • If specified, 'member_roles' apply to newly cloned asset.
  • If not supplied, newly cloned asset gets 'member_roles' from its source asset.
  • If caller doesn't have permissions to set any of the roles then 'member_roles' is completely ignored.
  • If supplied, 'member_roles' should include at least one OWNER role.
  • If caller has only EDITOR role on the source asset and if 'member_roles' does not include all the owners of the source asset then it will be ignored.

'project_id' is the target project id.

projectId

Required *

string

member_roles

object

Optional owners and other collaborators to assign to newly copied target assets

mode

integer

Set the privacy level mode to be Public (0), Private (8), or Hidden (16)

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

Required *

string

catalog_id must be provided

duplicate_action

string

Action to take if the call would result in a duplicate asset. `IGNORE` means the call will ignore the duplicate and create a new asset. `REJECT` means the call will fail and no asset will be created. `UPDATE` means the best matched duplicate will be updated with the incoming changes according to the predefined rules. `REPLACE` means the best matched duplicate will be overwritten with the input values according to the predefined rules. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

201 - Created

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Permissions Required to Modify Asset Members

To add or remove asset owners for a private asset in a catalog, any of the following must hold:

  • Caller must have OWNER role on the asset
  • Caller must have the ADMIN role on catalog and caller must have either the OWNER, EDITOR, or VIEWER role in the asset

To add or remove asset owners for a public asset in a catalog, any of the following must hold:

  • Caller must have OWNER role on the asset
  • Caller must have the ADMIN role in the catalog

To add or remove asset collaborators, other than asset owner, for a private asset in a catalog, any of the following must hold:

  • Caller must have OWNER role on the asset
  • Caller must have EDITOR role on the asset
  • Caller must have the ADMIN role on catalog and caller must have either the OWNER, EDITOR, or VIEWER role in the asset

To add or remove asset collaborators, other than asset owner, for a public asset in a catalog, any of the following must hold:

  • Caller must have OWNER role on the asset
  • Caller must have EDITOR role on the asset
  • Caller must have the ADMIN role on catalog

Allowed Operations

The combination of asset roles and catalog roles determines what asset operations are allowed by users.

These abilities apply to public assets:

  • All members of the catalog can find the asset and see its properties.
  • All members of the catalog who have the Editor, Auditor, or Admin catalog roles can use the asset.

These abilities apply to private assets:

  • All asset collaborators can find the asset and see its properties. Asset collaborators with the Editor, Auditor, or Admin catalog role can use the asset. ">

Add/Update asset collaborators

PATCH /v2/assets/{asset_id}/collaborators

Overview

This API adds and removes users as collaborators and owners on an asset. A collaborator or owner is identified by user ID. Note that access groups are not supported as asset collaborators or owners. Access groups can be configured as catalog members.

Either the `metadata/rov/collaborator_ids` field or the `metadata/rov/member_roles` field can be updated, but not both. The `collaborator_ids` field shown in the asset is derived from the information in `member_roles`, so updating one of these fields will automatically update the other. The `collaborator_ids` field shows the members in the `member_roles` field that have either the asset editor role or the asset viewer role. This field is present for backward compatibility with earlier versions of the catalog service.

Collaborators added to the `metadata/rov/collaborator_ids` field will be assigned a default asset role based on their role in the catalog. Catalog editors will be assigned the asset editor role, and Catalog viewers will be assigned the asset viewer role.

Users added to the `metadata/rov/member_roles` present must have either the OWNER role, the OWNER role and EDITOR role, or the OWNER role and VIEWER role. Other combinations of roles are not allowed. Asset users with the VIEWER or EDITOR role must be members of the catalog. In addition, asset users with the OWNER role must also be members of the catalog with either the EDITOR or ADMIN role unless certain service ids are used. For projects and spaces, new owners must have a role in the project/space.

Permissions Required to Modify Asset Members

To add or remove asset owners for a private asset in a catalog, any of the following must hold:

  • Caller must have OWNER role on the asset
  • Caller must have the ADMIN role on catalog and caller must have either the OWNER, EDITOR, or VIEWER role in the asset

To add or remove asset owners for a public asset in a catalog, any of the following must hold:

  • Caller must have OWNER role on the asset
  • Caller must have the ADMIN role in the catalog

To add or remove asset collaborators, other than asset owner, for a private asset in a catalog, any of the following must hold:

  • Caller must have OWNER role on the asset
  • Caller must have EDITOR role on the asset
  • Caller must have the ADMIN role on catalog and caller must have either the OWNER, EDITOR, or VIEWER role in the asset

To add or remove asset collaborators, other than asset owner, for a public asset in a catalog, any of the following must hold:

  • Caller must have OWNER role on the asset
  • Caller must have EDITOR role on the asset
  • Caller must have the ADMIN role on catalog

Allowed Operations

The combination of asset roles and catalog roles determines what asset operations are allowed by users.

These abilities apply to public assets:

  • All members of the catalog can find the asset and see its properties.
  • All members of the catalog who have the Editor, Auditor, or Admin catalog roles can use the asset.

These abilities apply to private assets:

  • All asset collaborators can find the asset and see its properties. Asset collaborators with the Editor, Auditor, or Admin catalog role can use the asset.

Request

Request Body

CatalogJsonPatch

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info. ``` [{ "op": "add", "path": "/metadata/rov/collaborator_ids/test-iam-id", "value": { "user_id": "test@us.ibm.com", "user_iam_id": "test-iam-id" } }, { "op": "replace", "path": "/metadata/rov/collaborator_ids/test-iam-id", "value": { "user_id": "test2-iam-id", "user_iam_id": "test-iam-id" } }, { "op": "remove", "path": "/metadata/rov/collaborator_ids/test2-iam-id" } ] ``` (DEPRECATED) ``` [{ "op": "add", "path": "/metadata/rov/collaborators/test@us.ibm.com", "value": { "user_id": "test@us.ibm.com" } }, { "op": "replace", "path": "/metadata/rov/collaborators/test@us.ibm.com", "value": { "user_id": "test2@us.ibm.com" } }, { "op": "remove", "path": "/metadata/rov/collaborators/test2@us.ibm.com" } ] ``` Note: Any ‘~’ characters need to be escaped as ~0 in the path field. Any ‘/’ characters need to be escaped as ~1 in the path field. For example, in `{"foo/" : {"~bar" : "value"}}`, the path for "~bar" is `/foo~1/~0bar`.

Path Parameters

asset_id

Required *

string

Asset GUID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

409 - Conflict

422 - Unprocessable Entity

500 - Internal Server Error

Get asset document conflicts

GET /v2/assets/{asset_id}/conflicts

Use this API to retrieve asset document conflicts in database.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

offset

integer

The number of items to skip before starting to collect the result set

limit

integer

The maximum number of items to return

fetch_conflicting_revisions

boolean

Whether to retrieve conflict revision document content

Response

200 - OK

resources

array

List of document conflicts

limit

integer

offset

integer

total_count

integer

first

CatalogLink

last

CatalogLink

next

CatalogLink

prev

CatalogLink

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Delete asset document conflicts

DELETE /v2/assets/{asset_id}/conflicts

Use this API to delete asset document conflicts in database.

Request

Request Body

CatalogDeleteAssetDocumentConflictsRequest

Document conflicts to delete

revs

Required *

array

List of conflicting documents revs

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Deep copies an asset and its related assets to a catalog, project, or space

POST /v2/assets/{asset_id}/deepcopy

Use this API to deep copy an asset to a project, catalog, or space. Unlike clone, publish, and promote, this API enables cascading the copy operation to referenced assets. <br/><br/> When copying from a project to a space, the on_promote relationship option is used to determine whether the related assets for a given relationship type should be copied. In addition, you must have Admin or Editor permissions on both the project and the space.<br/><br/>Deep copy sends the same Rabbit MQ messages as clone, publish, and promote. Messages are sent for all assets that are copied.<br/><br/>This API supports copying from a project to a catalog (publish), from a project to a space (promote), and from a catalog to a project (clone).<br/></br>This API supports using a refresh token in place of an access token. This can be helpful if the deep copy is expected to be a long running operation. The deep copy uses the access token to authenticate with other services, so it is important that it not expire while the operation is in progress.<be/>When a refresh token is specified, it is used to generate an initial access token as well as additional access tokens if the initial access token expires

Request

Request Body

Request body should include target (container) ID, and may include asset permissions and metadata overrides. Fields 'mode' and 'member_roles' are optional.

  • If specified, they apply to newly copied (target) assets.
  • If not supplied, newly copied asset gets mode and 'member_roles' from its corresponding source asset.
  • Valid values for 'mode' are 0 (public), 8 (private) and 16 (hidden).
  • If caller doesn't have permissions to set any of the roles then 'member_roles' is completely ignored.
  • If supplied, 'member_roles' should include at least one OWNER role.

'space_id' is the target space ID i.e. target container ID.

'metadata' is optional and may contain attributes to overwrite the values in original asset;currently only name, description and tags may be overwritten.

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

project_id

string

project_id

catalog_id

string

catalog_id

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

duplicate_action

string

Action to take if the call would result in a duplicate asset. `IGNORE` means the call will ignore the duplicate and create a new asset. `REJECT` means the call will fail and no asset will be created. `UPDATE` means the best matched duplicate will be updated with the incoming changes according to the predefined rules. `REPLACE` means the best matched duplicate will be overwritten with the input values according to the predefined rules. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

Response

options

CatalogDeepCopyOptions

copy_task_id

string

copy_status_href

string

copied_asset

CatalogResponseAsset

202 - Accepted - indicates that the copy request is being completed in the background.

options

CatalogDeepCopyOptions

copy_task_id

string

copy_status_href

string

copied_asset

CatalogResponseAsset

400 - Bad Request

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

401 - Unauthorized

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

403 - Forbidden

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

500 - Internal Server Error

trace

string

Trace (transaction) ID for the failed operation

errors

array

Errors thrown during the operation

Get the image of asset

GET /v2/assets/{asset_id}/images

Get the image of asset.

Request

Path Parameters

asset_id

Required *

string

Asset GUID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

id

string

Image id

assetId

string

The asset id of the image

name

string

Image name

mime

string

Image type mime

createdAt

string

Image created at

creatorId

string

Image creator id

url

string

Image download url

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Upload an image for asset

PUT /v2/assets/{asset_id}/images

Upload an image for asset. Use this api, you must put the image's binary data to the HTTP body.<br>For example:<br>&nbsp;&nbsp;&nbsp;&nbsp;<i>curl -X "PUT" "api_url" -H "Authorization: $access token" --data-binary "@/image_dir_path/abc.png"</i>

Request

Path Parameters

asset_id

Required *

string

Asset GUID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - Uploaded

id

string

Image id

assetId

string

The asset id of the image

name

string

Image name

mime

string

Image type mime

createdAt

string

Image created at

creatorId

string

Image creator id

url

string

Image download url

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Delete the image of asset

DELETE /v2/assets/{asset_id}/images/{image_id}

Delete the image of asset.

Request

Path Parameters

asset_id

Required *

string

Asset GUID

image_id

Required *

string

Image id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Get asset or column notes

GET /v2/assets/{asset_id}/notes

Use this API to retrieve a paginated list of notes from an asset or a column within an asset. Any user who has viewer permission on an asset can retrieve its notes.

Request

Path Parameters

asset_id

Required *

string

Asset ID

Query Parameters

limit

integer

The maximum number of asset/column notes to return.<br/>The default value is 25. The limit cannot exceed 200.<br/>Use the `next` URL from the response to retrieve the next page of notes.

sort

string

Sorting order.<BR/> <BR/> The following fields can be used for sorting. Use hyphen prefix (`-`) for descending order:<BR/>`column_name`<BR/>`created_at`<BR/>`updated_at`<BR/>

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

column_names

array

Filters the result to include notes on the specified column(s). The parameter should be repeated for each column name.

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

note_type

string

Type of notes to include in the search result: <br><table border="1"><thead><tr><th>Note Type</th><th>Description</th></tr></thead><tbody><tr><td><code>`ALL`</code></td><td>Include all asset and column notes</td></tr><tr><td><code>`ASSET`</code></td><td>Include asset notes only - cannot be used with the `column_names` parameter</td></tr><tr><td><code>`COLUMN`</code></td><td>Include column notes only</td></tr></tbody></table>

Response

200 - OK

resources

array

limit

integer

count

integer

first

CatalogLink

next

CatalogLink

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Create notes on an asset

POST /v2/assets/{asset_id}/notes

Use this API to create notes for an asset and for columns within an asset. Accredited Service Editors and Viewers, and any user who has edit permission on an asset can create a note.

Request

Request Body

CatalogAssetNotesCreationRequest

Asset notes to be created - limited to 20 notes per request

notes

Required *

array

notes to be created for an asset and for columns of an asset

Path Parameters

asset_id

Required *

string

Asset ID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

Response

207 - Check response body for results of processing each requested note

results

array

Result(s) of asset note creation operation(s)

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get an asset or column note

GET /v2/assets/{asset_id}/notes/{note_id}

Use this API to retrieve a note from an asset or a column within an asset. Any user who has viewer permission on an asset can retrieve a note.

Request

Path Parameters

asset_id

Required *

string

Asset ID

note_id

Required *

string

Note ID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

Response

200 - OK

metadata

object

Asset note metadata

entity

object

Asset note entity

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Delete an asset or a column note

DELETE /v2/assets/{asset_id}/notes/{note_id}

Use this API to delete an asset or a column note. Accredited Service Editors and Viewers, and any user who has edit permission on an asset can delete a note.

Request

Path Parameters

asset_id

Required *

string

Asset ID

note_id

Required *

string

Asset or column note ID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Update an asset or column note

PATCH /v2/assets/{asset_id}/notes/{note_id}

Use this API to update a note on an asset or a column within an asset. Accredited Service Editors and Viewers, and any user who has edit permission on an asset can update a note.

Request

Request Body

CatalogJsonPatch

JSON array of patch operations as defined in RFC 6902. See http://jsonpatch.com/ for more info. <br/>Example :<br/> `[ {"op": "replace", "path": "/note", "value": "Description of a Note" } ]` <br/> Note: <br/> Only supported operation is `replace`. <br/> Any ‘~’ characters need to be escaped as ~0 in the path field. <br/> Any ‘/’ characters need to be escaped as ~1 in the path field. <br/> For example, in `{"foo/" : {"~bar" : "value"}}`, the path for `~bar` is `/foo~1/~0bar`.

Path Parameters

asset_id

Required *

string

Asset ID

note_id

Required *

string

Note ID

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

Response

200 - OK

metadata

object

Asset note metadata

entity

object

Asset note entity

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Update the owner of an asset

PUT /v2/assets/{asset_id}/owner

Use this API to assign new owner of an asset. You must be the current owner of the asset or a collaborator of the asset with Admin permissions to change the owner. If the asset has multiple owners and the specified user is not currently an owner, the last owner in the owner list (which is the one shown in the owner_id field) is replaced with the specified owner. If the specified user is already an owner of the asset, the user is moved to the end of the owner list so that it is reported in the owner_id field.

This API is deprecated, since this is an older API and supports only single asset owner, not assets with multiple owners. Moving forward owners should be created or updated using below APIs

`/v2/assets/{asset_id}`

or

`/v2/assets/{asset_id}/collaborators`

Request

Request Body

CatalogAssetOwner

Asset Owner

owner

string

owner_id

string

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Update privacy settings of an asset

PUT /v2/assets/{asset_id}/perms

Use this API to change privacy settings on an asset.<br/>

  • The owner of the asset or asset collaborators with the Admin role can change the owner of the asset or delete the asset.
  • Asset collaborators with the Editor, Auditor, or Admin role can change the asset members or the privacy setting.

Request

Request Body

CatalogAssetRov

Asset ROV

mode

integer

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Promote an asset

POST /v2/assets/{asset_id}/promote

Use this API to promote project assets to space. You must have Admin or Editor permissions on both the project and the space.

Request

Request Body

Request body should include space ID, and may include asset permissions and metadata overrides. Fields 'mode' and 'member_roles' are optional.

  • If specified, they apply to newly promoted asset.
  • If not supplied, newly promoted asset gets mode and 'member_roles' from source asset.
  • Valid values for 'mode' are 0 (public), 8 (private) and 16 (hidden).
  • If caller doesn't have permissions to set any of the roles then 'member_roles' is completely ignored.
  • If supplied, 'member_roles' should include at least one OWNER role.
  • If caller has only EDITOR role on the source asset and if 'member_roles' does not include all the owners of the source asset then it will be ignored.

'space_id' is the target space id.'

metadata' is optional and may contain attributes to overwrite the values in original asset; currently only name, description and tags may be overwritten.

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

project_id

Required *

string

project_id must be provided

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

duplicate_action

string

Action to take if the call would result in a duplicate asset. `IGNORE` means the call will ignore the duplicate and create a new asset. `REJECT` means the call will fail and no asset will be created. `UPDATE` means the best matched duplicate will be updated with the incoming changes according to the predefined rules. `REPLACE` means the best matched duplicate will be overwritten with the input values according to the predefined rules. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Publish an asset

POST /v2/assets/{asset_id}/publish

Use this API to publish project assets to catalog. You can publish data assets from a project into a catalog. You must have Admin or Editor permissions on both the project and the catalog.

Request

Request Body

Request body should include catalog ID, and may include asset permissions and metadata overrides. Fields 'mode' and 'member_roles' are optional.

  • If specified, they apply to newly published asset.
  • If not supplied, newly published asset gets mode and 'member_roles' from source asset.
  • Valid values for 'mode' are 0 (public), 8 (private) and 16 (hidden).
  • If caller doesn't have permissions to set any of the roles then 'member_roles' is completely ignored.
  • If supplied, 'member_roles' should include at least one OWNER role.
  • If caller has only EDITOR role on the source asset and if 'member_roles' does not include all the owners of the source asset then it will be ignored.

'catalog_id' is the target catalog id. To support backwards compatibility when it is not supplied, the asset is published to the catalog associated with the project.

'metadata' is optional and may contain attributes to overwrite the values in original asset; currently only name, description and tags may be overwritten.

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

project_id

Required *

string

project_id must be provided

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

duplicate_action

string

Action to take if the call would result in a duplicate asset. `IGNORE` means the call will ignore the duplicate and create a new asset. `REJECT` means the call will fail and no asset will be created. `UPDATE` means the best matched duplicate will be updated with the incoming changes according to the predefined rules. `REPLACE` means the best matched duplicate will be overwritten with the input values according to the predefined rules. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get ratings of an asset

GET /v2/assets/{asset_id}/ratings

Get ratings for the specified asset.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

limit

integer

The maximum number of asset ratings to return.<br/>The default value is 25.

start

string

Bookmark that gives the start of the page.

sort

string

Sorting order.<BR/> Valid values: <code>updated_at</code>, <code>rating</code><BR/> Use hyphen prefix (-) for descending order

user_filter

string

Filter results by user.<BR/> Valid values: <code>all</code>, <code>user</code>, <code>other</code><br/> The default value is <code>all</code>

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

Response

200 - OK

resources

array

limit

integer

count

integer

first

CatalogLink

next

CatalogLink

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Rate an asset

POST /v2/assets/{asset_id}/ratings

Use this API to rate an asset.

Request

Request Body

CatalogAssetRatingEntity

Asset rating to be created

rating

Required *

integer

user's rating of an asset

review

string

user's review of an asset

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

Response

201 - Created

metadata

CatalogAssetRatingMetadata

AssetRatingMetadata

entity

CatalogAssetRatingEntity

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get the count of each rating value for the specified asset

GET /v2/assets/{asset_id}/ratings/stats

Get the counts of each rating value for the specified asset.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

Response

200 - OK

asset_id

string

identifier for asset

revision_id

integer

revision for asset

stats

array

count of ratings for each rating value

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Delete an asset rating

DELETE /v2/assets/{asset_id}/ratings/{asset_rating_id}

Use this API to delete an asset rating.

Request

Path Parameters

asset_id

Required *

string

asset_id

asset_rating_id

Required *

string

asset_rating_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Use this API to update an asset rating.

PATCH /v2/assets/{asset_id}/ratings/{asset_rating_id}

Update an asset rating

Request

Request Body

CatalogAssetRatingEntity

Asset rating to be updated

rating

Required *

integer

user's rating of an asset

review

string

user's review of an asset

Path Parameters

asset_id

Required *

string

asset_id

asset_rating_id

Required *

string

asset_rating_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

Response

200 - OK

metadata

CatalogAssetRatingMetadata

AssetRatingMetadata

entity

CatalogAssetRatingEntity

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Finds relationship types used by an asset

GET /v2/assets/{asset_id}/relationship_types

Finds relationship types that are used by a given asset. This API only returns the first page of results. It does not accept a bookmark. Any additional pages of results must be be fetched using the next page url included in the response.<br/></br>You can refer to the options in the response to get the full list of relationship names.<br><br> This API is deprecated - use `POST /v2/assets/search_relationships` instead.

Request

Path Parameters

asset_id

Required *

string

Asset ID

Query Parameters

catalog_id

string

Catalog ID

project_id

string

Project ID

space_id

string

Space ID

limit

integer

Optional limit to use when finding relationship types

orderby

array

orderby. This parameter can be repeated to add additional sort fields. <br><br>Default: relationship_display_name_asc

Supported sort fields (these are case insensitive):

  • relationship_name_asc
  • relationship_name_desc
  • relationship_display_name_asc
  • relationship_display_name_desc
  • create_time_asc
  • create_time_desc

Response

200 - Success

options

object

array

array

array

resources

array

total_rows

integer

next

object

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

429 - Too Many Requests

Finds related assets

GET /v2/assets/{asset_id}/relationships

Finds assets related to a given asset. This API supports limiting the results to a specific set of relationships as well as providing pagination and sorting options.<br/><br/>Note:When self references are present (i.e. when the source and target asset in the relationship are the same), more rows than specified by the limit may be returned. When this happens, the total rows reported is accurate and the bookmark points to next page of results.<br><br> This API is deprecated - use `POST /v2/assets/get_relationships` instead.

Request

Path Parameters

asset_id

Required *

string

Asset ID

Query Parameters

catalog_id

string

Catalog ID

project_id

string

Project ID

space_id

string

Space ID

bookmark

string

bookmark

limit

integer

limit. Defaults to 25

orderby

array

orderby. This parameter can be repeated to add additional sort fields. <br><br>Default: update_time_asc

Supported sort fields (these are case insensitive):

  • create_time_asc
  • create_time_desc
  • update_time_asc
  • update_time_desc
  • creator_id_asc
  • creator_id_desc
  • updater_id_asc
  • updater_id_desc

relname

array

Limits results to only include the specified relationships. By default, all relationships are included. Repeat the query parameter to specify multiple relationship names.

lookup_asset_names

boolean

Whether to lookup the asset names. This adds overhead, so only set this to true if the asset names are required. Defaults to false.

lookup_container_names

boolean

Whether to lookup the container names. This adds overhead, so only set this to true if the asset names are required. Defaults to false.

Response

200 - Success

options

object

resources

array

total_rows

integer

next

object

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Create asset relationships

PUT /v2/assets/{asset_id}/relationships/{relationship_name}

Use this API to create relationships between a source asset and up to 20 target artifacts.

  • The relationship name must correspond to a relationship type defined on the source asset's type.
  • The target artifacts must be assets of the type specified in the relationship type definition.
  • If the specified relationship does not exist between a source and target asset, a new relationship is created.
  • If either end of the relationship is defined as multiplicity-one, any existing value of a multiplicity-one end is replaced.

This API is deprecated - use `POST /v2/assets/set_relationships` instead.

Request

Request Body

CatalogCreateRelationshipsRequestBody

Target artifacts

relationship_targets

Required *

array

target artifacts

Path Parameters

asset_id

Required *

string

Asset ID

relationship_name

Required *

string

Name of relationship defined on the source asset type

Query Parameters

catalog_id

string

Catalog ID

project_id

string

Project ID

space_id

string

Space ID

Response

207 - Check response body for results of processing each target artifact

results

array

Result(s) of relationship creation operation(s)

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Deletes asset relationships

DELETE /v2/assets/{asset_id}/relationships/{relationship_name}

Use this API to remove a relationship between an asset and one or more target artifacts. The relationship name must correspond to a relationship type defined on the source asset's type. If the specified relationship does not exist between the source and one or more target assets, it will be ignored. For this api, all of the relationship targets need to be in the same catalog, project, or space. If the target space/catalog/project is omitted, it is assumed to be the same as the source.<br><br> This API is deprecated - use `POST /v2/assets/unset_relationships` instead.

Request

Path Parameters

asset_id

Required *

string

Source Asset Id

relationship_name

Required *

string

Name of relationship defined on the source asset type

Query Parameters

catalog_id

string

Source Asset Catalog

project_id

string

Source Asset Project

space_id

string

Source Asset Space

target_catalog_id

string

Target Asset Catalog

target_project_id

string

Target Asset Project

target_space_id

string

Target Asset Space

target_asset_id

Required *

array

target asset id. To delete multiple relationships, this parameter can be repeated.

Response

200 - OK. Check response body for results of processing each target artifact

error_results

array

source_asset

CatalogQualifiedAssetId

relationship_name

string

source_asset_type

string

target_asset_type

string

target_asset_types

array

target_assets_disconnected

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Determine if a relationship exists between an asset and a target artifact

HEAD /v2/assets/{asset_id}/relationships/{relationship_name}

Use this API to determine if a relationship exists between an asset and a target artifact. The relationship name must correspond to a relationship type defined on the source asset's type. The target artifact must be an asset of the type specified in the relationship type definition. The source and target assets must reside in the same catalog.

Request

Request Body

CatalogRelationshipTarget

Target artifact

catalog_id

string

Catalog ID

project_id

string

Project ID

space_id

string

Space ID

asset_id

string

Asset ID

artifact_type

string

Artifact Type

artifact_id

string

Artifact ID

artifact_name

string

Asset or Artifact Name

Path Parameters

asset_id

Required *

string

Asset ID

relationship_name

Required *

string

Name of relationship defined on the source asset type

Query Parameters

catalog_id

string

Catalog ID

project_id

string

Project ID

space_id

string

Space ID

Response

204 - The relationship exists

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

410 - Gone - If either asset in the relationship is in the deleted state

500 - Internal Server Error

Get a list of revisions for an asset

GET /v2/assets/{asset_id}/revisions

Use this API to retrieve an ordered list of revisions for an asset, most to least recent.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

include

string

The parameter `include` is deprecated.

limit

integer

The maximum number of revisions to return. The default is 25. Maximum is 200

start

string

The revision number to start from, or 'latest'. Latest revision is the default.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Commit a revision of an asset

POST /v2/assets/{asset_id}/revisions

Use this API to commit a revision of an asset.

Request

Request Body

CatalogAssetCommitOptions

Commit options

commit_message

string

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

201 - Created

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

500 - Internal Server Error

Delete a revision

DELETE /v2/assets/{asset_id}/revisions

Use this API to delete a revision of an asset.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

Required *

string

You must provide a revision id (1, 2, 3, ...)

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Find and repair stuck temporary design documents by creating cache entries that resume their processing

POST /v2/cams/admin/index_repairs

Use this API to find and repair broken indexes

Request

Path Parameters

Query Parameters

catalog_id

array

Optionally limits to checking to certain catalogs. For projects and spaces you must use the id of the private catalog. Repeat this parameter to check multiple catalogs. If this is omitted, all catalogs are checked

sleep_every

integer

Allows rate limiting the creation of cache entries. To disable rate limiting, set to -1. If set, the operation pauses every time this number of cache entries have been created.

sleep_time_mins

integer

When using cache entry rate limiting, this controls how long the service pauses between creating groups of cache entries.

max_cache_entries_to_create

integer

Allows restricting total the number of cache entries created.

preview_only

boolean

Response

202 - Accept, the processing was successfully started

options

object

The options being used for the indexing repair task.

string

Link that can be used to get the status of the indexing repair task.

task_id

string

The id of the indexing repair task that was created.

400 - Bad Request

401 - Unauthorized

403 - Forbidden

Gets the status of a temporary design document repair operation

GET /v2/cams/admin/index_repairs/{id}

Use this API to get the status of the task to find and repair stuck temporary design documents

Request

Path Parameters

id

Required *

string

Query Parameters

Response

200 - OK

options

object

The options being used for the indexing repair task.

state

string

The current state of the repair task.

start_time

string

The time when the task started.

elapsed_time

string

The amount of time the repair task has been running.

percent_complete

number

The percentage of the databases that have been processed.

estimated_end_time

string

The estimated time when the processing will be complete.

end_time

string

The time when the processing completed.

estimated_remaining_time

string

The estimated amount of processing time remaining.

databases_processed

integer

The number of databases that have been processed so far.

total_databases_to_process

integer

The total number of databases that need to be processed.

stuck_design_docs

integer

The number of stuck temporary design documents that have been found.

stuck_design_doc_ids

array

The stuck temporary design documents that have been found.

stuck_design_docs_repaired

integer

The number of stuck temporary design documents that have been repaired so far.

temp_design_docs_processed

integer

The number of temporary design documents that have been processed so far.

failed_catalog_ids

array

The ids of any catalogs that were unable to be processed.

failure_message

string

The error message if the processing failed.

400 - Bad Request

401 - Unauthorized

403 - Forbidden

Reconfigure the asset container

POST /v2/cams/admin/reconfigure

Use this API to reconfigure the asset container. The supported items are:<br/>

  • type_search_indexes - reconfigure type search indexes for all asset types. It requires the user to have permission to register asset types.

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

item

Required *

string

The item to reconfigure, e.g. type_search_indexes

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

DELETE /v2/cams/admin/roles_cache_entry

Request

Path Parameters

Query Parameters

catalog_id

string

The catalog id

project_id

string

The project id

space_id

string

The space id

user_id

Required *

string

The id of the user whose role to remove from the cache

Response

200 - Cache entry was deleted

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Cache entry was not found

Add a task result to the task

DELETE /v2/cams/admin/tasks/delete

Add a task result for future reference and servicability.

Request

Request Body

Lucene Query Syntax to search for task result objects to be deleted.

Response

200 - OK

statusCode

integer

statusMessage

string

id

string

rev

string

reason

string

error

string

isOK

boolean

causedBy

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get metrics of the asset lists

GET /v2/cams/metrics/asset_list_count

Get metrics of the asset lists. <br><br>The caller should use the `href` returned by the service to navigate through pages and should not try to manually construct URLs for pagination. The `href` for the first page is always available, and the `href` for the next page is only available if there may be a next page. <br><br>The `total_rows` field is only available when `summary_level` is `CATALOG`. <br><br>The caller must be in at least one of the allow-lists based on the product offering to perform the operation:

  • `DATA_PRODUCT` - `data_product_account_viewers`, `data_product_account_managers`

Request

Path Parameters

Query Parameters

month

string

The month of the metrics to retrieve. The value must be in format `yyyy-MM`. If not supplied, the metrics of the current month are retrieved.

bss_account_ids

string

Retrieve metrics only for asset lists belonging to any of the given bss accounts. Specify as a comma-separated list.

limit

integer

The maximum number of items to return. If not specified, it will be set to 200.

start

string

Start token for pagination

Response

200 - OK

limit

integer

The limit on the number of results returned.

total_count

integer

The total count on the number of results returned, accounting for filtering but not pagination.

first

CatalogBaseCollectionPage

A page in a pagination collection.

next

CatalogBaseCollectionNextPage

The next page in the collection.

resources

array

Collection of user access statistics

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

Get metrics of the users who accessed the catalogs

GET /v2/cams/metrics/user_access_count

Get metrics of the users who accessed the catalogs. <br><br>The caller should use the `href` returned by the service to navigate through pages and should not try to manually construct URLs for pagination. The `href` for the first page is always available, and the `href` for the next page is only available if there may be a next page. <br><br>The `total_rows` field is only available when `summary_level` is `CATALOG`. <br><br>The caller must be in at least one of the allow-lists based on the product offering to perform the operation: (Note: the `WKC` product offering represents IBM Knowledge Catalog):

  • `DATA_PRODUCT` - `data_product_account_viewers`, `data_product_account_managers`
  • `WATSONX_GOVERNANCE` - `watsonx_governance_account_viewers`, `watsonx_governance_account_managers`
  • `WKC` - `wkc_account_viewers`, `wkc_account_managers`

Request

Path Parameters

Query Parameters

month

string

The month of the metrics to retrieve. The value must be in format `yyyy-MM`. If not supplied, the metrics of the current month is retrieved.

summary_level

string

The level for aggregating the user access statistics.

product_offering

string

Product offering. If omitted, it is default to WKC.

bss_account_ids

string

Retrieve metrics only for catalogs belonging to any of the given bss accounts. Specify as a comma-separated list.

catalog_ids

string

Retrieve metrics only for catalogs with the given ids. Specify as a comma-separated list.

limit

integer

The maximum number of items to return. If not specified, it will be set to 200.

start

string

Start token for pagination

Response

200 - OK

limit

integer

The limit on the number of results returned.

total_count

integer

The total count on the number of results returned, accounting for filtering but not pagination.

first

CatalogBaseCollectionPage

A page in a pagination collection.

next

CatalogBaseCollectionNextPage

The next page in the collection.

resources

array

Collection of user access statistics

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

List all catalogs for a specific account

GET /v2/catalogs

Use this API to get a list of catalogs or projects or spaces, or to get the total number of public catalogs, for a given account. You can use 'roles' parameter to filter results by roles for standard callers.<br/>

  • Standard Callers: to list all catalogs where caller is collaborator, omit "bss_account_id" field and "include" field.<br/>
  • Accredited Services: to list all catalogs or projects or spaces for a specific account, enter bss account value in "bss_account_id" field and one of 'catalogs', 'projects', or 'spaces' in "include" field.<br/>
  • Accredited Services: to get the number of public catalogs for a specific account, enter bss account value in "bss_account_id" field and 'total_count' in "include" field.

Request

Path Parameters

Query Parameters

limit

integer

limit

bookmark

string

bookmark

skip

integer

skip

include

string

Limited to use by accredited services (which must also supply 'bss_account_id'). Currently, the only supported values are 'catalogs', 'projects', 'spaces' or 'total_count'. Not supplying any of these values results in public 'catalogs', 'projects', AND 'spaces' being returned for a specific account.<br/>

  • Use 'catalogs' for including all public catalogs for a specific bss_account_id.<br/>
  • Use 'projects' for including all projects for a specific bss_account_id.<br/>
  • Use 'spaces' for including all spaces for a specific bss_account_id.<br/>
  • Use 'total_count' for including total number of public catalogs for a specific account.

bss_account_id

string

"Used for listing catalogs, projects, or spaces for the account, or for retrieving the number of public catalogs for the account. Must be supplied when caller is an accredited service."

  • "If caller is a non-service id user, then the catalogs from that user's bss account are included in the list.

roles

string

Filter results by user roles. Use comma separated list for multiple roles. Valid role value: admin, editor, viewer. This param is not allowed if caller is from accredited service or ICIP mode is enabled.

orderby

array

orderby. This parameter can be repeated to add additional sort fields. <br><br>Default: null

Supported sort fields (these are case insensitive):

  • catalog_name_asc
  • catalog_name_desc
  • create_time_asc
  • create_time_desc
  • update_time_asc
  • update_time_desc

exclude_subtypes

boolean

(DEPRECATED) Indicates whether results should include catalogs with a subtype. If not specified, catalogs with a subtype are excluded.This parameter is deprecated. Use 'subtype' instead.

subtype

array

Filter results by catalogs with the specified subtypes.

If nothing is specified, by default catalogs with subtype are not returned.

  • If set to 'NO_SUBTYPES', catalogs with subtype are not returned
  • If set to 'ALL_SUBTYPES', only catalogs with a subtype are returned
  • If set to 'ALL_SUBYTPES, NO_SUBTYPES', both catalogs which have subtypes and not are returned
  • If set to 'subtypeA, subtypeB' , only catalogs with those subtypes are returned.

name

string

Filter results by catalogs with a case insensitive name. This matches substrings.

governance_type

string

Filter results by catalogs with the specified governance type. Allowed values: governed, ungoverned, all. Default: all

Response

200 - OK

catalogs

array

nextBookmark

string

nextSkip

integer

totalCount

integer

400 - Bad Request

401 - Unauthorized

403 - Forbidden

catalogadmin@mycompany.com", "bucket": { "bucket_type": "assetfiles" } } ``` ">

Create a catalog

POST /v2/catalogs

Use this API to create a catalog to organize your assets and collaborators. You can use a catalog to easily find and share data for your organization, regardless of the location or format of the data.

On IBM Cloud, to create a catalog you must have the Manager role in your organization's IBM Knowledge Catalog account.<br/> In CPD, to create a catalog you must have the Administrator role.

The catalog name can be 1 to 256 printable Unicode characters - ISO control characters and Unicode Special characters are not permitted.

On IBM Cloud, IBM Cloud Object Storage (S3 API) credentials are required in the request body's `bucket` structure. This provides encrypted storage for file assets that are copied to the catalog.

In CPD, file asset storage for a catalog is provisioned <b>after</b> catalog creation, via a separate call to the Asset Files API. Creating a catalog does not automatically provision this storage.<br/> When creating a catalog in CPD, set the `check_bucket_existence` query parameter to `false`, and the request body's `bucket` structure should just have `bucket_type` set to `assetfiles`.<br/> After the catalog is created, call the `PUT /v2/asset_files` API to create a bucket for this catalog.

Sample request body for creating a catalog in CPD: ``` { "name": "catalog1", "description": "A catalog in CPD", "generator": "catalogadmin@mycompany.com", "bucket": { "bucket_type": "assetfiles" } } ```

Request

Request Body

CatalogCatalogEntityWithBucket

Note: `name`, `generator`, and the `bucket` structure are required fields in the request body.

name

Required *

string

Name of the Catalog instance

description

string

Description of the Catalog instance

generator

Required *

string

Generator of the Catalog instance

project_id

string

Project id

space_id

string

Space id

bss_account_id

string

Account ID

capacity_limit

integer

Capacity Limit

is_governed

boolean

Indicates if the assets in the Catalog are governed. if not specified, it defaults to false. For private catalogs, 'false' should be always passed, because private catalogs can not be governed.

auto_profiling

boolean

Indicates if the assets in the Catalog are allowed for profiling. if not specified

saml_instance_name

string

SAML instance type

uid

string

UID

subtype

string

configurations

CatalogAssetContainerConfiguration

duplicate_action

string

Action to take if duplicate assets are found for a given asset

default_duplicate_strategy

string

Default duplicate detection strategy for assets of types that do not have duplicate detection strategy defined

duplicate_strategies

array

Duplicate detection strategies of assets with specified asset types in this catalog/project/space

reporting_authorized

boolean

Authorize reporting in this catalog

default_purge_on_delete

boolean

Whether assets has to be purged on delete

default_purge_after_days

integer

Days after which assets has to be purged after soft delete

bucket

CatalogCatalogBucket

bucket_name

Required *

string

Bucket Name

bucket_location

string

endpoint_url

string

role_arn

string

The ARN of the AWS role for accessing S3 bucket. Only applicable to buckets of type aws_s3 and is mandatory in which case.

shared

boolean

Indicate if the bucket is shared by more than one asset containers. Only applicable to buckets of type aws_s3. Default to false.

resource_instance_id

string

Bluemix COS Resource Instance ID

credentials_rw

object

Bucket Credentials

bluemix_cos_credentials

object

Bluemix COS Credentials

location_definition

object

location_definition

Path Parameters

Query Parameters

check_bucket_existence

boolean

Whether an existence check should be performed on the catalog bucket

check_duplicate_name

boolean

Whether to check if catalogs with the same name already exist

Response

201 - Created

metadata

object

Metadata of the Catalog instance

entity

object

Entity of the Catalog instance

href

string

URL of the Catalog instance

400 - Bad Request

401 - Unauthorized

403 - Forbidden

429 - Too Many Request

Retrieve the default catalog

GET /v2/catalogs/default

Use this API to retrieve the default catalog.

Request

Response

200 - OK

metadata

object

Metadata of the Catalog instance

entity

object

Entity of the Catalog instance

href

string

URL of the Catalog instance

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Create the default catalog

POST /v2/catalogs/default

Use this API to create the default catalog.

Request

Request Body

CatalogCreateDefaultCatalogRequest

Example: ``` { "catalog": { "name": "The Default Catalog", "generator": "API", "description": "The default catalog", "bss_account_id": "999", "is_governed": true, "bucket": { "bucket_type": "assetfiles" } } } ```

catalog

CatalogCatalogEntityWithBucket

Schema for catalogEntity with bucket details

name

Required *

string

Name of the Catalog instance

description

string

Description of the Catalog instance

generator

Required *

string

Generator of the Catalog instance

project_id

string

Project id

space_id

string

Space id

bss_account_id

string

Account ID

capacity_limit

integer

Capacity Limit

is_governed

boolean

Indicates if the assets in the Catalog are governed. if not specified, it defaults to false. For private catalogs, 'false' should be always passed, because private catalogs can not be governed.

auto_profiling

boolean

Indicates if the assets in the Catalog are allowed for profiling. if not specified

saml_instance_name

string

SAML instance type

uid

string

UID

subtype

string

configurations

object

bucket

object

Path Parameters

Query Parameters

check_bucket_existence

boolean

Whether an existence check should be performed on the catalog bucket

check_duplicate_name

boolean

Whether to check if catalogs with the same name already exist

Response

201 - Created

catalog

CatalogCatalog

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

500 - Internal Server Error

Rehome one or more synced assets.

POST /v2/catalogs/default/rehome

Use this API for rehoming assets in a catalog that had been synced from an external OMRS repository to be native IKC assets. The API supports rehoming a single asset, or a bulk rehome of all synced data assets of specific external repository.

If the request is accepted, the response header contains the rehome request ID `x-future-id` which can then be used to monitor the request status via `/v2/catalogs/default/rehome/status?request_id=<x-future-id>`.

> Service ID is required to call this API.

Request

Path Parameters

Query Parameters

asset_id

string

Synced asset to be rehomed - if omitted, all synced assets of `source_metadata_collection_id` repository will be rehomed

source_metadata_collection_id

string

Source metadata collection id required if all assets of single external repository need to be rehomed

is_bulk_rehome

Required *

boolean

Set to true to bulk re-home all synced data assets in a catalog

catalog_id

string

Catalog containing the synced assets to be re-homed. If not specified, synced assets in the default catalog are re-homed.

Response

202 - Accepted - indicates request has been accepted

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Monitor status of rehome task

GET /v2/catalogs/default/rehome/status

Use this API to check the status of a rehome asset(s) request, using the x-future-id response header value returned by a previous `/v2/catalogs/default/rehome` request.

Request

Path Parameters

Query Parameters

request_id

string

x-future-id response header value returned by a previous rehome request

Response

200 - OK - indicates successful completion of the rehome request

202 - Accepted - indicates the rehome request corresponding to the specified request_id is still processing

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Export as a zip file containing appropriate csv files for the selected assets

POST /v2/catalogs/export_assets

This API is responsible for preparing a zip file containing csv files related to the selected assets for export.

Request

Request Body

A json object containing a list of asset IDs; maximum of 100.

Path Parameters

Query Parameters

catalog_id

Required *

string

You must provide either a catalog id, a project id, or a space id, but not more than one

export_asset_id

Required *

string

The id of the ibm_export_asset type asset

export_type

Required *

array

The list of export types the operation is expected to handle. Export Type includes `metadata, relationship, lineage`. But, for now, we are supporting only `metadata, relationship`.

Response

202 - Accepted

status

integer

statusInfo

CatalogStatusType

entity

object

mediaType

CatalogMediaType

language

CatalogLocale

length

integer

allowedMethods

array

cookies

object

entityTag

CatalogEntityTag

date

string

lastModified

string

location

string

array

metadata

object

headers

object

stringHeaders

object

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Process an import asset

POST /v2/catalogs/import_assets

This API begins processing of import assets. This function is used to import lineage mappings from EMD CSV documents.

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

import_asset_id

Required *

string

The id of the import_asset

action

Required *

string

The action to perform on this import_asset. "process" (default): Validate and run an import job, "validate": Validate an import only without starting an import job.

force

boolean

When performing a processing request, proceed with the import even if validation fails. This option is only used when 'action' = 'process' (which is the default case)

duplicate_action

string

Action to take if the call would result in a duplicate asset. `IGNORE` means the call will ignore the duplicate and create a new asset. `REJECT` means the call will fail and no asset will be created. `UPDATE` means the best matched duplicate will be updated with the incoming changes according to the predefined rules. `REPLACE` means the best matched duplicate will be overwritten with the input values according to the predefined rules. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

Response

202 - Accepted

status

integer

statusInfo

CatalogStatusType

entity

object

mediaType

CatalogMediaType

language

CatalogLocale

length

integer

allowedMethods

array

cookies

object

entityTag

CatalogEntityTag

date

string

lastModified

string

location

string

array

metadata

object

headers

object

stringHeaders

object

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Request temporary security credentials

POST /v2/catalogs/temporary_credentials

Request temporary security credentails that can be used for storing asset attachment files.

<B>The endpoint is currently only applicable for AWS deployments.</B>

If role_arn and external_id are supplied, the caller must be a sevice id in the allow-list 'aws_s3_administrator'. The requested credentials will have permission for accessing the resources in the bucket of the catalog or the bucket itself depending on the supplied information. The allowed combinations of the fields are:

  • role_arn, external_id: list and create buckets in the account that the role is defined in
  • role_arn, external_id, bucket_name, shared (optional, default to false), catalog_id (must be supplied if shared is true): put/get/list/delete objects in the bucket, and list multipart uploads and delete the bucket if the bucket is not shared.

If catalog_id is supplied, the caller must be a member of the catalog, or a service id that is in the allow-list 'aws_s3_administrator', 'accredited_service_editors', 'accredited_service_viewers', or 'accredited_service_exporters'. The requested credentials will have permission for accessing the resources in the bucket of the catalog or the bucket itself based on the membership.

  • admin or service id in allow-list 'aws_s3_administrator': put/get/list/delete objects in the bucket, and list multipart uploads and delete the bucket if the bucket is not shared.
  • editor or service id in allow-list 'accredited_service_editors': put/get/delete objects in the bucket
  • viewer or service id in allow-list 'accredited_service_viewers' or 'accredited_service_exporters': get objects in the bucket

If none of above is supplied, the caller must have permission to create catalogs in the account that the access token is scoped for. The requested credentials will have permission to list and create buckets in the account.

If min_duration_seconds is supplied, the requested temporary credentials must be valid for at least the specified duration. If it is not supplied or if the cached temporary credentials of the same requirement is valid for at least specified duration, the cached credentials will be returned.

Note: when a bucket is shared, the objects in the shared bucket must have the prefix of '{catalog_id}/', e.g. '553fa5a8-bea5-43fa-9f04-b2f5ed39e6d3/myreport.csv'. All the permissions in shared buckets are granted to only allow accesing resources with the prefix of a specific catalog id.

Request

Request Body

CatalogTemporaryCredentialsRequest

Request body

catalog_id

Required *

string

Catalog id

role_arn

Required *

string

ARN of the AWS integration role

external_id

Required *

string

External id for AWS integration

bucket_name

Required *

string

Name of the bucket

shared

Required *

boolean

Indicate if the bucket is shared by multiple asset containers

min_duration_seconds

Required *

integer

Minimum duration (in seconds) that the credentials should be valid for. The value cannot be greater than 3600 seconds. If not supplied, cached credentials that have the same requested permission can be returned.

Response

200 - OK

access_key_id

string

AWS access key, used to identify the user interacting with AWS

secret_access_key

string

AWS secret access key, used to authenticate the user interacting with AWS

session_token

string

AWS session token. This token is retrieved from an AWS token service, and is used for authenticating that this user has received temporary permission to access some resource.

session_policy

string

Session policy applied on the role session created for the temporary credentials. The field is only available in development environment and not in production environment for performance reason.

expires_at

integer

The epoch timestamp when the credentials will expire.

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get a catalog by catalog ID

GET /v2/catalogs/{catalog_id}

Members of the catalog can use this API to retrieve information about a catalog.

Request

Path Parameters

catalog_id

Required *

string

Catalog GUID or UID

Query Parameters

bss_account_id

string

You must provide bss_account_id when querying for uid

Response

200 - OK

metadata

object

Metadata of the Catalog instance

entity

object

Entity of the Catalog instance

href

string

URL of the Catalog instance

400 - Bad Request

401 - Unauthorized

403 - Forbidden

Delete a catalog by catalog ID

DELETE /v2/catalogs/{catalog_id}

Use this API to delete a catalog if you have the Admin role.Deleting a catalog removes all items that are associated with the catalog, such as metadata for all assets in the catalog.

Request

Path Parameters

catalog_id

Required *

string

Catalog GUID

Query Parameters

delete_bucket

boolean

delete_bucket

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

Update catalog

PATCH /v2/catalogs/{catalog_id}

Use this API to update the name or description of the catalog.

Request

Request Body

CatalogJsonPatch

JSON array of patch operations as defined in RFC 6902.<br/>[ { "op": "replace", "path": "/entity/name", "value": "new-name" },<br/>{ "op": "replace", "path": "/entity/description", "value": "new-description" } ] <br/> Note: <br/> Any ‘~’ characters need to be escaped as ~0 in the path field. <br/> Any ‘/’ characters need to be escaped as ~1 in the path field. <br/> For example, in {"foo/" : {"~bar" : "value"}}, the path for "~bar" is "/foo~1/~0bar".

Path Parameters

catalog_id

Required *

string

catalog GUID

Query Parameters

check_duplicate_name

boolean

Whether to check if catalogs with the same name already exist. Only applicable if the name is to be updated.

Response

200 - OK

metadata

object

Metadata of the Catalog instance

entity

object

Entity of the Catalog instance

href

string

URL of the Catalog instance

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

500 - Internal Server Error

Get a catalog-level collection by collection ID

GET /v2/catalogs/{catalog_id}/collections/{collection_id}

Use this API to retrieve a catalog-level collection in catalog.

Request

Path Parameters

catalog_id

Required *

string

catalog GUID

collection_id

Required *

string

Collection GUID

Query Parameters

Response

200 - OK

metadata

CatalogCollectionMetadata

collection_id

string

name

string

application_label

string

created_at

string

last_updated_at

string

Scope

string

assets

array

tags

array

assets_metadata

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Update a catalog-level collection for a catalog

PUT /v2/catalogs/{catalog_id}/collections/{collection_id}

Update a catalog-level collection for a catalog

Request

Request Body

CatalogCollection

Collection updates

name

string

application_label

string

assets

array

tags

array

Path Parameters

catalog_id

Required *

string

catalog GUID

collection_id

Required *

string

Collection GUID

Query Parameters

Response

200 - OK

metadata

CatalogCollectionMetadata

collection_id

string

name

string

application_label

string

created_at

string

last_updated_at

string

Scope

string

assets

array

tags

array

assets_metadata

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Delete a catalog-level collection by collection id

DELETE /v2/catalogs/{catalog_id}/collections/{collection_id}

Use this API to retrieve a catalog-level collection in catalog.

Request

Path Parameters

catalog_id

Required *

string

catalog GUID

collection_id

Required *

string

Collection GUID

Query Parameters

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

List all members of the catalog

GET /v2/catalogs/{catalog_id}/members

Get members for the catalog.

Request

Path Parameters

catalog_id

Required *

string

catalog GUID

Query Parameters

limit

integer

limit

bookmark

string

bookmark

member_type

string

member_type

Response

200 - OK

total_results

integer

members

array

nextBookmark

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Add members to a catalog

POST /v2/catalogs/{catalog_id}/members

Adds members to a catalog. A catalog member can be a user (specified as a user name or user ID), a service ID, or an access group.

Request

Request Body

CatalogMemberSet

Members with roles

members

Required *

array

Path Parameters

catalog_id

Required *

string

catalog GUID

Query Parameters

Response

200 - OK

members

array

failures

array

trace

string

201 - Created

members

array

failures

array

trace

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Delete members from a catalog

DELETE /v2/catalogs/{catalog_id}/members/bulk

Delete members from a catalog.You can delete a member or more if you are the owner of the catalog or a member of the catalog with Admin or Editor permissions on the catalog.

Request

Path Parameters

catalog_id

Required *

string

catalog GUID

Query Parameters

member_ids

Required *

string

Comma-separated list of Member GUIDs, with a maximum of 20.

member_type

string

Type of the members specified in the `member_ids` parameter. Specify `user` or `group` if all members are user or access group IDs. If `member_ids` contains a mixture of user or group IDs, then specify `all` for `member_type` or alternatively do not specify any value. If `member_type` is `all` or not specified, use `member_types` to indicate the type of each member in `member_ids`

member_types

string

Comma-separated list of types for each member specified in `member_ids`. The supported types are `user` and `group`. If both `member_types` and `member_type` parameters are specified, `member_types` takes precedence over `member_type`. If `member_types` is not specified, and `member_type` is not specified or is `all`, the API will attempt to determine the member type based on the member ID. In a CPD environment, user and access group IDs are numeric and have no prefix indicating whether the ID represents a user or group ID, so `member_types` should be specified if `member_ids` contains a mixture of user and access group IDs

Response

207 - Check response body for status of each member being deleted

responses

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Get catalog membership for a specific user

GET /v2/catalogs/{catalog_id}/members/{member_id}

Returns any memberships this user has on the catalog, including direct membership and any access group memberships.

Request

Path Parameters

catalog_id

Required *

string

catalog GUID

member_id

Required *

string

member ID

Query Parameters

resolve_member_roles

boolean

Should resolve member roles from usergroup(s) and collaborator roles

member_type

string

Type of the member specified by the member_id. If not specified, the service will determine if the member is a user or an access group based on the member_id, which is not always possible or accurate. Always supplying the member type is recommended.

profile_id

string

IAM Profile ID for Trusted Profile users: If the getMemberV2 API is called to fetch details for a Trusted Profile, the member_id is the IAM ID of the actual user, and the profile_id will be the IAM ID of the trusted user. For IBM users and App ID users, this value should be null.

Response

200 - OK

members

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Delete a member from a catalog

DELETE /v2/catalogs/{catalog_id}/members/{member_id}

Delete a member from a catalog.

Request

Path Parameters

catalog_id

Required *

string

catalog GUID

member_id

Required *

string

Member GUID

Query Parameters

member_type

string

Type of the member specified by the member_id. If not specified, the service will determine if the member is a user or an access group based on the member_id, which is not always possible or accurate. Always supplying the member type is recommended.

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Update members in a catalog

PATCH /v2/catalogs/{catalog_id}/members/{member_id}

Update a member of a catalog.

Request

Request Body

CatalogMemberRole

Member updates

role

string

Path Parameters

catalog_id

Required *

string

catalog GUID

member_id

Required *

string

Member GUID

Query Parameters

member_type

string

Type of the member specified by the member_id. If not specified, the service will determine if the member is a user or an access group based on the member_id, which is not always possible or accurate. Always supplying the member type is recommended.

Response

200 - Updated

user_id

string

(Deprecated) User id like user email address of the member.

user_iam_id

string

Identity and Access Management ID (IAM) of the member

access_group_id

string

ID of the access group member

role

string

Role of the member in the Catalog

roles

array

href

string

create_time

string

Read only - The date and time when the member is added to the catalog

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

List all properties of a catalog

GET /v2/catalogs/{catalog_id}/properties

Use this API to get all properties of catalog.

Request

Path Parameters

catalog_id

Required *

string

catalog GUID

Query Parameters

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Update catalog properties

PATCH /v2/catalogs/{catalog_id}/properties

Use this API to patch catalog properties.

Request

Request Body

CatalogJsonPatch

JSON array of patch operations as defined in RFC 6902.<br/>[ { "op": "add", "path": "/properties/new-property", "value": "new-value" } ] <br/> Note: <br/> Any ‘~’ characters need to be escaped as ~0 in the path field. <br/> Any ‘/’ characters need to be escaped as ~1 in the path field. <br/> For example, in {"foo/" : {"~bar" : "value"}}, the path for "~bar" is "/foo~1/~0bar".

Path Parameters

catalog_id

Required *

string

catalog GUID

Query Parameters

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

500 - Internal Server Error

Get a single property in a catalog

GET /v2/catalogs/{catalog_id}/properties/{property_key}

Use this API to get the property of catalog by given property key.

Request

Path Parameters

catalog_id

Required *

string

catalog GUID

property_key

Required *

string

catalog property key

Query Parameters

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Update catalog connections

PATCH /v2/catalogs/{catalog_id}/reconfigure

Use this API to patch catalog properties.

Request

Path Parameters

catalog_id

Required *

string

catalog GUID

Query Parameters

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

409 - Conflict

500 - Internal Server Error

Get the catalog state

GET /v2/catalogs/{catalog_id}/state

Request

Path Parameters

catalog_id

Required *

string

Catalog GUID

Query Parameters

Response

200 - OK

catalogId

string

state

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

Create a data asset

POST /v2/data_assets

You can use this API to add data assets to a catalog. Data assets could be data from a connection to a data source (ex. tables) or files from your local system uploaded into cloud object storage associated with Projects or Catalog.All asset types have a common set of properties, such as name, description, asset type, visibility, tags, classifications. Data Asset have additional attributes such as mime type, columns with types, and properties. Use v2/attachments API to indicate location of data (ex. table path) from a connection to a data source.

Request

Request Body

CatalogDataAsset

Data Asset Metadata

metadata

CatalogAssetMetadata

AssetMetadata Model

name

Required *

string

Choose Any Name for your Asset

description

string

A longer description describes an asset.

tags

array

asset_type

Required *

string

asset type

origin_country

string

resource_key

string

identity_key

string

rov

object

asset_category

Required *

string

source_system

object

Source System Info

child_source_systems

array

source_system_history

array

History of external repository assets that were the source of an imported/synced/rehomed asset.

entity

Required *

object

attachments

array

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

duplicate_action

string

Action to take if the call would result in a duplicate asset. `IGNORE` means the call will ignore the duplicate and create a new asset. `REJECT` means the call will fail and no asset will be created. `UPDATE` means the best matched duplicate will be updated with the incoming changes according to the predefined rules. `REPLACE` means the best matched duplicate will be overwritten with the input values according to the predefined rules. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

201 - Created

metadata

CatalogResponseAssetMetadata

entity

object

href

string

attachments

CatalogAttachment

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get a data asset

GET /v2/data_assets/{data_asset_id}

Use this API to retrieve metadata about a data asset. The response document will contain three top-level fields:<br/>

  • 'metadata': contains metadata common to all types of assets
  • 'entity': contains metadata specific to the asset_type - in this case 'data_asset'
  • 'attachments': an array containing one item of metadata per attached resource<br/><br/>The data described by the above metadata is stored in attached resources. Examples of attached resources are database tables, csv files, word documents, extended metadata documents, etc. Because an item in the 'attachments' array only contains metadata about an attached resource, accessing the actual attached resource requires additional server calls. Exactly which additional server calls are needed depends on the kind of attached resource. Follow the steps below to access an attached resource.<br/><br/> Step 1: find the index i of the item in the above 'attachments' array whose 'asset_type' value matches the type of the attached resource you want to access. For a 'data_asset' attached resource look for the item i where 'attachments[i].asset_type' is 'data_asset'.<br/><br/>There are two important pairs of fields (among many others) which may appear in 'attachments[i]'. Only one of those pairs will actually appear. Which pair appears influences which steps to perform next.<br/>
  • Pair 1: 'connection_id' and 'connection_path':
    • The above two fields will appear in 'attachments[i]' if the value of 'attachments[i].is_remote' is true.
    • 'attachments[i].is_remote' WILL be true if the attached resource is a database table. In this case, 'attachments[i].connection_path' will contain a schema name and table name.
    • 'attachments[i].is_remote' MAY be true if the attached resource is, for example, a csv file. In this case, 'attachments[i].connection_path' will contain a folder path and file name.<br/><br/>If the above pair of fields are present in 'attachments[i]' then:<br/> Step 2: use the value of the 'attachments[i].connection_id' field to make a call to the GET /v2/connections/{connection_id} API. You'll need appropriate credentials.<br/> Step 3: use the values in the 'entity.properties' field of the result from Step 2 to either create a connection to the database containing the table or to retrieve the file.<br/><br/>Note: even if 'attachments[i].is_remote' is true and the above pair of fields are present in 'attachments[i]', if the attached resource is located in the catalog/project bucket then you may optionally perform the two steps discussed for Pair 2 ('object_key' and 'handle') below.<br/>
  • Pair 2: 'object_key' and 'handle':
    • The above two fields will appear in 'attachments[i]' if the value of 'attachments[i].is_remote' is false. In this case, 'attachments[i].handle' will contain information about the attached resource.<br/> Step 2: use the value of the 'attachments[i].id' field as the value for 'attachment_id' in a call to the GET /v2/assets/{asset_id}/attachments/{attachment_id} API. The value to use for 'asset_id' in the call to the attachments API is the same as the value that was used for 'data_asset_id' in the original call to the GET /v2/data_assets/{data_asset_id} API.<br/> Step 3: use the value in the 'url' field of the result from Step 2 to download (for example, with a browser) a copy of the file.

Request

Path Parameters

data_asset_id

Required *

string

data_asset_id

Query Parameters

catalog_id

string

catalog_id

project_id

string

project_id (only catalog_id is supported at this time)

space_id

string

space_id (only catalog_id is supported at this time)

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated, please use `exclude` instead

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get columns of a data asset

GET /v2/data_assets/{data_asset_id}/columns

Use this API to retrieve columns of a data asset located in catalog or project. Access to an asset is controlled by a combination of the privacy level and the members of the asset. For a governed catalog, data assets are protected from unauthorized access by the governance policies that are defined in Data Catalog. Data assets in ungoverned catalogs are not subject to governance policies.

Request

Path Parameters

data_asset_id

Required *

string

data_asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

revision_id

string

Revision id (1, 2, 3, ...), or leave empty for the current asset version. Use 'latest' for the most recent revision.

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

limit

integer

The maximum number of items to return

bookmark

string

The bookmark for the next page of results, received from a previous call.

sort

string

Sorting the columns, e.g., 'data_asset.columns', '-column_info.column_info_quality_score', 'data_asset.columns,column_info.column_info_quality_score

filter

string

Filter columns by name, e.g., 'A*'

Response

200 - OK

total_rows

integer

resources

array

bookmark

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

404 - Not Found

500 - Internal Server Error

Create a folder asset

POST /v2/folder_assets

You can use this API to add folder assets to a catalog. Folder assets are similar to folders or directories in a file system. In the same way that a directory in a file system can contain many files, a folder asset can represent groups of files or objects all sharing a common path. An example of a path may be '/sales_data/by_month/february'. There may be many different files with that common path, but we only need to register just the common path when we create a folder asset.<br/><br/>Along with other types of assets, such as data assets, folder assets share a common set of properties such as name, description, asset type, visibility, tags, classifications, etc. In addition to other types of assets, folder assets are denoted by a `folder_asset` json object within the common `entity` object. The `folder_asset` json object contains a `connection_id`, and a `connection_path`. E.g.,

``` { "metadata":{...}, "entity":{ "folder_asset":{ "connection_id":"f1fea17c-a7e5-49e4-9f8e-23cef3e11ed5", "connection_path":"/bucket1/folder1/folder1.1" } } } ``` <br/>A folder asset can be mediated by a connection. In other words, you can access the contents of the folder asset only through a connection in the connection service. The connection can be to any external data store such as DashDB, Salesforce.com,IBM's Cloud Object Storage, etc. You must specify the `connection_id` and the `connection_path` within the `folder_asset` json object. <br/><br/>Folder assets can also be local to the catalog or project, similar to local or referenced data attachments. For such a folder asset you don't need the connection_id in the `folder_asset` json. You only need to provide the connection_path. The API can use it's internal connection to asset storage associated with the catalog/project/space (Cloud Object Storage in IBM Cloud, or Asset Files storage in CPD) for accessing that folder.<br/><br/>A connection path is like the path of a folder or a directory in a file system. Using IBM Cloud Object Storage as an example, a `connection_path` for a folder object might be `/Bucket1/monthly_data_collection/March`. Any objects falling under that path are part of the folder asset. This API cannot show you those files directly. Instead, you can use your IBM Cloud Object Storage connection to traverse to that folder location and retrieve the files.

Request

Request Body

CatalogFolderAsset

Folder Asset Metadata

metadata

CatalogAssetMetadata

AssetMetadata Model

name

Required *

string

Choose Any Name for your Asset

description

string

A longer description describes an asset.

tags

array

asset_type

Required *

string

asset type

origin_country

string

resource_key

string

identity_key

string

rov

object

asset_category

Required *

string

source_system

object

Source System Info

child_source_systems

array

source_system_history

array

History of external repository assets that were the source of an imported/synced/rehomed asset.

entity

Required *

object

attachments

array

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

201 - Created

metadata

CatalogResponseAssetMetadata

entity

object

href

string

attachments

CatalogAttachment

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get a folder asset

GET /v2/folder_assets/{asset_id}

Use this API to retrieve metadata about a folder asset.

Request

Path Parameters

asset_id

Required *

string

Enter the id of the folder asset whose metadata you want to retrieve.

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get a signed URL of an item to be downloaded

GET /v2/folder_assets/{asset_id}/contents

If you have created folder assets for things that you store in IBM Cloud Object Storage, you can download individual contents of that folder. Every item within a folder has a path within that folder. For example there may be a folder asset in IBM Cloud Object Storage whose path is `/bucket1/retail_sales/cosmetics`. Within that folder, there may be several individual files. You can download these files with this API. When you call the API, you will receive a URL that, when you invoke it with a GET HTTP command, you can download a file that is within that folder.

Request

Path Parameters

asset_id

Required *

string

Enter the id of the folder asset whose content you want to download.

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

path

Required *

string

The path to the object from where the folder leaves off. For example if your folder path is `/Bucket1/homedecore` and your object path is `/bathrooms/sinkaccessories/soapdish1000.jpg` then the API will return a signed URL that includes the full object key `/Bucket1/homedecore/bathrooms/sinkaccessories/soapdish1000.jpg`.

content_type

string

The type of content you will download. Default is `application/octet-stream`

content_disposition

string

content_disposition specifies how you want the content downloaded. The default is as an attachment (i.e. a separate file).

Response

200 - OK

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

List all assets in the trash (Marked for delete)

GET /v2/trashed_assets

Retrieve all assets in the trash (Marked for delete.

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

older_than

string

older than the given timestamp. Format: "yyyy-MM-dd'T'hh:mm:ss[.sss]X" Example '2017-11-23T00:00:00-12', '2017-11-23T23:59:59.999Z', etc.

newer_than

string

newer than the given timestamp. Format: "yyyy-MM-dd'T'hh:mm:ss[.sss]X" Example '2017-11-23T00:00:00-12', '2017-11-23T23:59:59.999Z', etc.

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

limit

integer

limit

bookmark

string

bookmark

Response

201 - Created

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get count of all assets in the trash (Marked for delete)

GET /v2/trashed_assets/count

Get count of all assets in the trash (Marked for delete.

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

200 - OK

trashed_assets_count

integer

Count of trashed assets

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Delete all assets from trash

DELETE /v2/trashed_assets/purge_all

Delete all assets from trash.

If number of assets in trash is less than or equal to 20 , the assets will be deleted synchrnonously and response will be 204 - No Content.

If number of assets in trash is more than 20, the assets will be deleted asynchrnonously, response will be 202 - Accepted and the status can be tracked using `/v2/trashed_assets/count`.

Request

Path Parameters

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

202 - Accepted

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Get a soft-deleted object from trash

GET /v2/trashed_assets/{asset_id}

Get a soft-deleted object from trash.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

allow_metadata_on_dpr_deny

boolean

Whether to allow access to metadata when the evaluation outcome of data protection rules is Deny.

include

string

The parameter `include` is deprecated, please use `exclude` instead

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Delete an asset from the trash

DELETE /v2/trashed_assets/{asset_id}

Purge an asset from the trash.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

Response

204 - No Content

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Restore an asset from the trash

POST /v2/trashed_assets/{asset_id}/restore

Restore an asset from the trash.

Request

Path Parameters

asset_id

Required *

string

asset_id

Query Parameters

catalog_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

project_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

space_id

string

You must provide either a catalog id, a project id, or a space id, but not more than one

exclude

string

Exclude columns from the asset result. Available value: columns. Default value is empty, which will return the complete asset, including the columns.

hide_deprecated_response_fields

boolean

Defaults to false. If true, deprecated fields are not included in the response. This parameter is provided as a way to check compatibility with future releases and remove duplicated information from responses. It has not been implemented for all deprecated fields. The primary fields that are omitted are collaborator_ids in the asset metadata rov and the owner_id field in the asset metadata.

duplicate_action

string

Action to take if the changes to an asset would make it a duplicate to other assets. `IGNORE` means the call will continue and update the asset anyway; as a result, the asset will become a duplicate to other assets. `REJECT` means the call will fail and the asset will not be changed. No value means the duplicate_action specified in catalogs/projects/spaces will be used.

Response

200 - OK

metadata

CatalogResponseAssetMetadata

entity

object

attachments

array

Depending on the API, either asset_attachments or attachments will be present.

href

string

asset_id

string

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal Server Error

Field Example entity.name ?_sort=+entity.name metadata.create_time ?_sort=-metadata.create_time

Use the following parameters to filter the results:

Field Example
entity.name ?entity.name=MyConnection
entity.datasource_type ?entity.datasource_type=<asset_id>
entity.context ?entity.context=source
entity.properties ?entity.properties={"name":"value"}
entity.flags ?entity.flags=+personal_credentials
metadata.creator_id ?metadata.creator_id=userid

Filtering is done by specifying the fields to filter on.

To filter on the properties of a connection, the exact values to compare must be provided in the entities.properties field and all values supplied must exactly match a property of a connection.

The entity.flags field specifies the flags a connection can have to be included in the list results. By default, all connections with no flags are returned.

Adding the name of a flag to entity.flags will add the connections with that flag to the list results. The name can be optionally prefixed with a plus sign (+) to indicate that it is being added.

Adding the name of a flag to entity.flags with a minus sign (-) prefix will remove those connections with that flag from the list results. All additions are done before the subtractions. ">

List defined connections

GET /v2/connections

Lists defined connections.

Connections created with shared credentials will return secrets such as database passwords and API keys in clear text. Such secrets are stored encrypted but will be decrypted by the API when retrieved by the caller in order to access the data source defined by the connection. Clear text credentials are allowed because it is understood that the caller has already been explicitly added as a collabaorator in the project or catalog in which the connection is stored and is thus implicitly permitted access to the credentials required to connect to a data source.

Connections created with personal credentials will only display clear text credentials to the same user who provided them.

Use the following parameters to sort the results:

Field Example
entity.name ?_sort=+entity.name
metadata.create_time ?_sort=-metadata.create_time

Use the following parameters to filter the results:

Field Example
entity.name ?entity.name=MyConnection
entity.datasource_type ?entity.datasource_type=<asset_id>
entity.context ?entity.context=source
entity.properties ?entity.properties={"name":"value"}
entity.flags ?entity.flags=+personal_credentials
metadata.creator_id ?metadata.creator_id=userid

Filtering is done by specifying the fields to filter on.

To filter on the properties of a connection, the exact values to compare must be provided in the entities.properties field and all values supplied must exactly match a property of a connection.

The entity.flags field specifies the flags a connection can have to be included in the list results. By default, all connections with no flags are returned.

Adding the name of a flag to entity.flags will add the connections with that flag to the list results. The name can be optionally prefixed with a plus sign (+) to indicate that it is being added.

Adding the name of a flag to entity.flags with a minus sign (-) prefix will remove those connections with that flag from the list results. All additions are done before the subtractions.

Request

Path Parameters

Query Parameters

sort

string

The field to sort the results on, including whether to sort ascending (+) or descending (-), for example, sort=-metadata.create_time

start

string

The page token indicating where to start paging from.

limit

integer

The limit of the number of items to return, for example limit=50. If not specified a default of 100 will be used.

metadata.creator

string

The creator of the connection.

entity.name

string

The name of the connection.

entity.datasource_type

string

The data source type of the connection. To specify multiple data source types, use a comma-separated string, such as entity.datasource_type=<asset_id>,<asset_id>.

entity.context

string

The context of the connection. Can be one of "source", "target", or "source,target".

entity.properties

string

The properties of the connection that must match for the connection to be included in the list.

entity.flags

string

A comma separated list of flags that must be present for the connection to be included in the list. If not provided, only connections with no flags will be returned.

interaction_properties

boolean

Whether to return information about source and target interaction properties.

decrypt_secrets

boolean

Whether to return decrypted secrets for unrestricted connections.

include_properties

boolean

Whether to return information about connection and interaction properties.

Response

200 - Connections with metadata.

resources

array

List of connections

first

HrefModel

prev

HrefModel

next

HrefModel

last

HrefModel

offset

integer

The number of assets skipped before this page.

total_count

integer

The total number of assets available.

401 - You are not authorized to list the defined connections.

403 - You are not permitted to perform this action.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The defined connections cannot be listed.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Define connection

POST /v2/connections

Defines a connection.

By default, a connection is created with shared credentials. Though credentials' secrets are stored encrypted, all credentials including secrets will be visible in clear text to API users who retrieve the connection and who are collaborators of the project or catalog in which a connection with shared credentials has been created.

Alternatively, a connection can be created with personal credentials by using the personal_credentials flag. The credentials' secrets will be visible only to the user who created the connection.

Request

Request Body

ConnectionsConnectionEntity

The definition of the connection.

datasource_type

Required *

string

The id or the name of the data source type to connect to. For example "cfdcb449-1204-44ba-baa6-9a8a878e6aa7" or "db2".

data_source_definition_asset_id

string

The id of the data source definition asset related to connection. For example "cfdcb449-1204-44ba-baa6-9a8a878e6aa7".

data_source_definition_asset_name

string

The name of the data source definition asset related to connection. For example "Data privacy profile for DB2".

data_source_definition_searchable

string

The concatenation of values of conection properties identified as data source definition asset identity properties. For example "host1.fyre.ibm.com|12212|BLUEDB".

derived_properties

ConnectionsDerivedProperties

Properties that are not stored and obtained from CAMS, but calculated/derived on-the-fly by reading operation

data_source_definition_id

string

Id of an assigned Data Source Definition Asset

data_source_identity_properties

array

Identity properties that consititute id of the assigned datasource_type.

data_source_identity_mapping

object

Mapping of connection properties to CAMS query parameters.

description

string

The description of the connection.

directory_asset

ConnectionsDirectoryAsset

Folder that the connection asset lives in.

path

string

Folder ID that the connection asset lives in.

name

Required *

string

The name of the connection.

ref_catalog_id

string

The ID of the catalog that this connection refers to for properties values.

ref_asset_id

string

The ID of the connection in reference catalog that this connection refers to for properties values.

gateway_id

string

The id of the secure gateway to use with the connection. A Secure Gateway is needed when connecting to an on-premises data source. This is the id of the Secure Gateway created with the SecureGateway Service. Your Secure Gateway Client running on-premises must be connected to the gateway with this Id. For example, "E9oXGRIhv1e_prod_ng".

flags

array

Specifies how a connection is to be treated internally.

origin_country

string

Country which data originated from. - ISO 3166 Country Codes.

owner_id

string

Owner or creator of connection. Provided when a service ID token is used to create connection.

rov

ConnectionsConnectionRov

Rules of visibility for connections.

mode

integer

The Rules of Visibility mode. Value can be:

| mode | description| | 0 | Connection is searchable and viewable by everyone with access to the catalog or project associated with this connection | | 8 | Connection is searchable by everyone and cannot be viewed unless the user has proper view permissions | | 16 | Connection is searchable by users with proper view permissions |

member_roles

object

Contains map of key as user_iam_id and value as member_roles

properties

ConnectionsConnectionProperties

Connection properties.

interaction_properties

ConnectionsConnectionInteractionProperties

Interaction properties allowed for a connection.

source

array

The properties that can be set for a source interaction.

target

array

The properties that can be set for a target interaction.

source_system

ConnectionsCommonCustomObject

Custom data to be associated with a given object

source_system_history

array

asset_category

string

The asset category

child_source_systems

array

tags

array

location_definition

ConnectionsLocationDefinition

Indicates the location used by this connection.

physical_location_code

string

The code of the physical location.

sovereign_location_code

string

The code of the sovereign location.

Path Parameters

Query Parameters

test

boolean

Whether to test the connection before saving it. By default an attempt to establish a connection will be made, and the connection will not be saved if the connection cannot be established.

persist

boolean

Whether to persist assets or changes on assets. If set to false, it makes the service to perform all the actions on the way, execute testing, inject properties (like satellite properties or vault properties), if applicable, and then return the object as it would look like if persisted + with all the usual additioanl elements of response properties returned via Java API (like interaction_properties), but metadata record itself that gets filled with properties from the response from CAMS service is not filled, so it only contains those properties that are set directly from the entity taken from payload.

Response

201 - The connection was created.

metadata

ConnectionsConnectionAssetSystemMetadata

System metadata about an asset

entity

ConnectionsConnectionEntity

The connection definition.

400 - The connection test failed. See the error message for details.

trace

string

errors

array

401 - You are not authorized to define a connection.

403 - You are not permitted to perform this action.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. A connection was not created.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Get connection

GET /v2/connections/{connection_id}

Gets details of a specific connection definition.

Connections created with shared credentials will return secrets such as database passwords and API keys in clear text. Such secrets are stored encrypted but will be decrypted by the API when retrieved by the caller in order to access the data source defined by the connection. Clear text credentials are allowed because it is understood that the caller has already been explicitly added as a collabaorator in the project or catalog in which the connection is stored and is thus implicitly permitted access to the credentials required to connect to a data source.

Connections created with personal credentials will only display clear text credentials to the same user who provided them.

Request

Path Parameters

Query Parameters

entity.product

string

Specify the product the data source type must support to be returned. The available products are 'catalog', 'cpd', 'datastage', 'dv', 'igc', 'mdi', 'ml' and 'studio'. If no entity.product is specified, no filtering is applied. To specify multiple products, use a comma-separated string, such as entity.product=catalog,studio.

interaction_properties

boolean

Whether to return information about source and target interaction properties.

decrypt_secrets

boolean

Whether to return decrypted secrets for unrestricted connections.

Response

200 - The connection object.

metadata

ConnectionsConnectionAssetSystemMetadata

System metadata about an asset

entity

ConnectionsConnectionEntity

The connection definition.

401 - You are not authorized to get details about the connection.

403 - You are not permitted to perform this action.

404 - The connection cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The connection definition details cannot be retrieved.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Delete connection

DELETE /v2/connections/{connection_id}

Deletes a connection definition. This call does not check whether the connection is used by activities, data sets or other assets. The caller must check this before deleting a connection.

Request

Response

204 - The connection was deleted.

401 - You are not authorized to delete a connection.

403 - You are not permitted to perform this action.

404 - The connection cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The connection was not deleted.

trace

string

errors

array

Update connection

PATCH /v2/connections/{connection_id}

Updates the definition of a connection.

Request

Request Body

Fields to update within the connection.

Path Parameters

Query Parameters

test

boolean

Whether to test the connection before saving it. By default an attempt to establish a connection will be made, and the connection will not be saved if the connection cannot be established.

persist

boolean

Whether to persist assets or changes on assets. If set to false, it makes the service to perform all the actions on the way, execute testing, inject properties (like satellite properties or vault properties), if applicable, and then return the object as it would look like if persisted + with all the usual additioanl elements of response properties returned via Java API (like interaction_properties), but metadata record itself that gets filled with properties from the response from CAMS service is not filled, so it only contains those properties that are set directly from the entity taken from payload.

Response

200 - The updated connection definition object.

datasource_type

string

The id or the name of the data source type to connect to. For example "cfdcb449-1204-44ba-baa6-9a8a878e6aa7" or "db2".

data_source_definition_asset_id

string

The id of the data source definition asset related to connection. For example "cfdcb449-1204-44ba-baa6-9a8a878e6aa7".

data_source_definition_asset_name

string

The name of the data source definition asset related to connection. For example "Data privacy profile for DB2".

data_source_definition_searchable

string

The concatenation of values of conection properties identified as data source definition asset identity properties. For example "host1.fyre.ibm.com|12212|BLUEDB".

derived_properties

ConnectionsDerivedProperties

Properties that are not stored and obtained from CAMS, but calculated/derived on-the-fly by reading operation

description

string

The description of the connection.

directory_asset

ConnectionsDirectoryAsset

Folder that the connection asset lives in.

name

string

The name of the connection.

ref_catalog_id

string

The ID of the catalog that this connection refers to for properties values.

ref_asset_id

string

The ID of the connection in reference catalog that this connection refers to for properties values.

gateway_id

string

The id of the secure gateway to use with the connection. A Secure Gateway is needed when connecting to an on-premises data source. This is the id of the Secure Gateway created with the SecureGateway Service. Your Secure Gateway Client running on-premises must be connected to the gateway with this Id. For example, "E9oXGRIhv1e_prod_ng".

flags

array

Specifies how a connection is to be treated internally.

origin_country

string

Country which data originated from. - ISO 3166 Country Codes.

owner_id

string

Owner or creator of connection. Provided when a service ID token is used to create connection.

rov

ConnectionsConnectionRov

Rules of visibility for connections.

properties

ConnectionsConnectionProperties

Connection properties.

interaction_properties

ConnectionsConnectionInteractionProperties

Interaction properties allowed for a connection.

source_system

ConnectionsCommonCustomObject

Custom data to be associated with a given object

source_system_history

array

asset_category

string

The asset category

child_source_systems

array

tags

array

location_definition

ConnectionsLocationDefinition

Indicates the location used by this connection.

400 - The connection test failed. See the error message for details.

trace

string

errors

array

401 - You are not authorized to update the connection definition.

403 - You are not permitted to perform this action.

404 - The connection cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The connection definition was not updated.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Copy connection

POST /v2/connections/{connection_id}/copy

Copy a connection.

The copy connection is created with same attributes as source connection, and the credentials will be removed from target connection. If source connection is personal, then copy connection will also have the personal_credentials flag.

Request

Path Parameters

Query Parameters

Response

201 - The connection was created.

metadata

ConnectionsConnectionAssetSystemMetadata

System metadata about an asset

entity

ConnectionsConnectionEntity

The connection definition.

400 - The connection test failed. See the error message for details.

trace

string

errors

array

401 - You are not authorized to define a connection.

403 - You are not permitted to perform this action.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. A connection was not created.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Discover assets

POST /v2/connections/assets

Discovers assets from the data source accessed via a connection description.

Request

Request Body

ConnectionsConnectionEntity

The connection definition.

datasource_type

Required *

string

The id or the name of the data source type to connect to. For example "cfdcb449-1204-44ba-baa6-9a8a878e6aa7" or "db2".

data_source_definition_asset_id

string

The id of the data source definition asset related to connection. For example "cfdcb449-1204-44ba-baa6-9a8a878e6aa7".

data_source_definition_asset_name

string

The name of the data source definition asset related to connection. For example "Data privacy profile for DB2".

data_source_definition_searchable

string

The concatenation of values of conection properties identified as data source definition asset identity properties. For example "host1.fyre.ibm.com|12212|BLUEDB".

derived_properties

ConnectionsDerivedProperties

Properties that are not stored and obtained from CAMS, but calculated/derived on-the-fly by reading operation

data_source_definition_id

string

Id of an assigned Data Source Definition Asset

data_source_identity_properties

array

Identity properties that consititute id of the assigned datasource_type.

data_source_identity_mapping

object

Mapping of connection properties to CAMS query parameters.

description

string

The description of the connection.

directory_asset

ConnectionsDirectoryAsset

Folder that the connection asset lives in.

path

string

Folder ID that the connection asset lives in.

name

Required *

string

The name of the connection.

ref_catalog_id

string

The ID of the catalog that this connection refers to for properties values.

ref_asset_id

string

The ID of the connection in reference catalog that this connection refers to for properties values.

gateway_id

string

The id of the secure gateway to use with the connection. A Secure Gateway is needed when connecting to an on-premises data source. This is the id of the Secure Gateway created with the SecureGateway Service. Your Secure Gateway Client running on-premises must be connected to the gateway with this Id. For example, "E9oXGRIhv1e_prod_ng".

flags

array

Specifies how a connection is to be treated internally.

origin_country

string

Country which data originated from. - ISO 3166 Country Codes.

owner_id

string

Owner or creator of connection. Provided when a service ID token is used to create connection.

rov

ConnectionsConnectionRov

Rules of visibility for connections.

mode

integer

The Rules of Visibility mode. Value can be:

| mode | description| | 0 | Connection is searchable and viewable by everyone with access to the catalog or project associated with this connection | | 8 | Connection is searchable by everyone and cannot be viewed unless the user has proper view permissions | | 16 | Connection is searchable by users with proper view permissions |

member_roles

object

Contains map of key as user_iam_id and value as member_roles

properties

ConnectionsConnectionProperties

Connection properties.

interaction_properties

ConnectionsConnectionInteractionProperties

Interaction properties allowed for a connection.

source

array

The properties that can be set for a source interaction.

target

array

The properties that can be set for a target interaction.

source_system

ConnectionsCommonCustomObject

Custom data to be associated with a given object

source_system_history

array

asset_category

string

The asset category

child_source_systems

array

tags

array

location_definition

ConnectionsLocationDefinition

Indicates the location used by this connection.

physical_location_code

string

The code of the physical location.

sovereign_location_code

string

The code of the sovereign location.

Path Parameters

Query Parameters

path

Required *

string

Path of the asset.

limit

integer

The limit of the number of items to return, for example limit=50. If not specified a default of 100 will be used.

offset

integer

The 0-based index of the first result to return, for example, offset=200. If not specified, the default offset of 0 is used.

fetch

string

Specify whether to return the asset's metadata, the asset's data, interaction properties, connection properties, or data source type. If not specified, metadata is used by default. This parameter only applies when requesting details about a data set. To specify multiple fetch values, use a comma-separated string, such as fetch=data,metadata,interaction,connection,datasource_type.

detail

boolean

Specify whether to return additional asset-specific details. If not specified, these details are not returned.

context

string

Specify whether assets are discovered for the purpose of reading (source) or writing (target). If not specified, source is used by default.

properties

string

A JSON object containing a set of properties to configure aspects of the asset browsing.

filters

string

A JSON object containing a set of properties to define filtering of the assets to be returned.

Response

200 - The discovered assets.

description

string

A page from a collection of discovered assets.

path

string

The path of the asset.

id

string

An ID for the asset.

properties

ConnectionsDiscoveredAssetsProperties

Properties defining the returned assets.

asset_types

array

Discovered types

assets

array

Discovered assets

fields

array

Discovered fields

datasource_type

ConnectionsDatasourceType

The definition of a data source type.

connection_properties

ConnectionsConnectionProperties

Connection properties.

interaction_properties

ConnectionsDiscoveredAssetInteractionProperties

The interaction properties needed to find the asset.

extended_metadata

array

Extended metadata properties

data

object

The data returned when the fetch parameter contains the value "data".

details

ConnectionsDiscoveredAssetDetails

Details about a discovered asset.

first

HrefModel

prev

HrefModel

next

HrefModel

last

HrefModel

offset

integer

The number of assets skipped before this page.

total_count

integer

The total number of assets available.

logs

array

Log events created during the discovery of the assets.

401 - You are not authorized to discover assets.

403 - You are not permitted to perform this action.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. No assets were found.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Discover assets

GET /v2/connections/{connection_id}/assets

Discovers assets from the data source accessed via the connection.

Request

Path Parameters

connection_id

Required *

string

The ID of the connection.

Query Parameters

path

Required *

string

Path of the asset.

catalog_id

string

The ID of the catalog to use. catalog_id, project_id, or space_id is required.

project_id

string

The ID of the project to use. catalog_id, project_id, or space_id is required.

space_id

string

The ID of the space to use. catalog_id, project_id, or space_id is required.

userfs

boolean

true for a project needs assets managed by the /userfs API, i.e. if it has git integration

data_asset_id

string

The ID of the data asset.

data_asset_catalog_id

string

The ID of the catalog that contains the data asset.

data_asset_project_id

string

The ID of the project that contains the data asset.

data_asset_space_id

string

The ID of the space that contains the data asset.

limit

integer

The limit of the number of items to return, for example limit=50. If not specified a default of 100 will be used.

offset

integer

The 0-based index of the first result to return, for example, offset=200. If not specified, the default offset of 0 is used.

fetch

string

Specify whether to return the asset's metadata, the asset's data, interaction properties, connection properties, or data source type. If not specified, metadata is used by default. This parameter only applies when requesting details about a data set. To specify multiple fetch values, use a comma-separated string, such as fetch=data,metadata,interaction,connection,datasource_type.

detail

boolean

Specify whether to return additional asset-specific details. If not specified, these details are not returned.

context

string

Specify whether assets are discovered for the purpose of reading (source) or writing (target). If not specified, source is used by default.

properties

string

A JSON object containing a set of properties to configure aspects of the asset browsing.

filters

string

A JSON object containing a set of properties to define filtering of the assets to be returned.

Response

200 - The discovered assets.

description

string

A page from a collection of discovered assets.

path

string

The path of the asset.

id

string

An ID for the asset.

properties

ConnectionsDiscoveredAssetsProperties

Properties defining the returned assets.

asset_types

array

Discovered types

assets

array

Discovered assets

fields

array

Discovered fields

datasource_type

ConnectionsDatasourceType

The definition of a data source type.

connection_properties

ConnectionsConnectionProperties

Connection properties.

interaction_properties

ConnectionsDiscoveredAssetInteractionProperties

The interaction properties needed to find the asset.

extended_metadata

array

Extended metadata properties

data

object

The data returned when the fetch parameter contains the value "data".

details

ConnectionsDiscoveredAssetDetails

Details about a discovered asset.

first

HrefModel

prev

HrefModel

next

HrefModel

last

HrefModel

offset

integer

The number of assets skipped before this page.

total_count

integer

The total number of assets available.

logs

array

Log events created during the discovery of the assets.

401 - You are not authorized to discover assets in the data source accessed through the connection.

403 - You are not permitted to perform this action.

404 - The connection cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. No assets were discovered in the data source.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Discover data asset

GET /v2/connections/assets/{data_asset_id}

Discover a data asset.

Request

Path Parameters

data_asset_id

Required *

string

The ID of the data asset.

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id, project_id, or space_id is required.

project_id

string

The ID of the project to use. catalog_id, project_id, or space_id is required.

space_id

string

The ID of the space to use. catalog_id, project_id, or space_id is required.

userfs

boolean

true for a project needs assets managed by the /userfs API, i.e. if it has git integration

limit

integer

The limit of the number of items to return, for example limit=50. If not specified a default of 100 will be used.

offset

integer

The 0-based index of the first result to return, for example, offset=200. If not specified, the default offset of 0 is used.

fetch

string

Specify whether to return the asset's metadata, the asset's data, interaction properties, connection properties, or data source type. If not specified, metadata is used by default. This parameter only applies when requesting details about a data set. To specify multiple fetch values, use a comma-separated string, such as fetch=data,metadata,interaction,connection,datasource_type.

detail

boolean

Specify whether to return additional asset-specific details. If not specified, these details are not returned.

context

string

Specify whether assets are discovered for the purpose of reading (source) or writing (target). If not specified, source is used by default.

properties

string

A JSON object containing a set of properties to configure aspects of the asset browsing.

filters

string

A JSON object containing a set of properties to define filtering of the assets to be returned.

path

string

Path of the asset.

Response

200 - The discovered asset.

description

string

A page from a collection of discovered assets.

path

string

The path of the asset.

id

string

An ID for the asset.

properties

ConnectionsDiscoveredAssetsProperties

Properties defining the returned assets.

asset_types

array

Discovered types

assets

array

Discovered assets

fields

array

Discovered fields

datasource_type

ConnectionsDatasourceType

The definition of a data source type.

connection_properties

ConnectionsConnectionProperties

Connection properties.

interaction_properties

ConnectionsDiscoveredAssetInteractionProperties

The interaction properties needed to find the asset.

extended_metadata

array

Extended metadata properties

data

object

The data returned when the fetch parameter contains the value "data".

details

ConnectionsDiscoveredAssetDetails

Details about a discovered asset.

first

HrefModel

prev

HrefModel

next

HrefModel

last

HrefModel

offset

integer

The number of assets skipped before this page.

total_count

integer

The total number of assets available.

logs

array

Log events created during the discovery of the assets.

401 - You are not authorized to discover the asset.

403 - You are not permitted to perform this action.

404 - The asset cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. No assets were discovered in the data source.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

List actions

GET /v2/connections/{connection_id}/actions

Lists all supported actions for the connection.

Request

Path Parameters

connection_id

Required *

string

The ID of the connection.

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id, project_id, or space_id is required.

project_id

string

The ID of the project to use. catalog_id, project_id, or space_id is required.

space_id

string

The ID of the space to use. catalog_id, project_id, or space_id is required.

userfs

boolean

true for a project needs assets managed by the /userfs API, i.e. if it has git integration

Response

200 - The actions supported for the connection.

actions

array

The actions supported for the data source.

401 - You are not authorized to list the actions for the connection.

403 - You are not permitted to perform this action.

404 - The connection cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The actions for the connection cannot be listed.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Perform action

PUT /v2/connections/{connection_id}/actions/{action_name}

Performs an action on the data source accessed using the connection.

Request

Request Body

ConnectionsConnectionActionConfiguration

The perform action request configuration.

Path Parameters

connection_id

Required *

string

The ID of the connection.

action_name

Required *

string

The name of the action to be performed. This list is expanded over time. The current actions are:

action description
get_dsd_details to obtain Data Source Definition Asset details from a connector.
get_oauth2_tokens to get refresh and authorization tokens for sources that support OAuth2.
get_record_count to get the number of records available for the specified asset.
get_signed_url to get a signed URL for accessing a data source.
test to check if a connection can be established to the data source.
validate to validate the connection properties without establishing a connection.

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id, project_id, or space_id is required.

project_id

string

The ID of the project to use. catalog_id, project_id, or space_id is required.

space_id

string

The ID of the space to use. catalog_id, project_id, or space_id is required.

userfs

boolean

true for a project needs assets managed by the /userfs API, i.e. if it has git integration

Response

200 - Any output produced by the action.

400 - The perform action request is invalid.

trace

string

errors

array

401 - You are not authorized to perform an action on a data source accessed through the connection.

403 - You are not permitted to perform this action.

404 - The connection cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. No action was performed on the data source.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Download a file

GET /v2/connections/files/{file_name}

Download a file

Request

Path Parameters

file_name

Required *

string

The name of file to download

Query Parameters

hash

Required *

string

The hash of file to download

Response

200 - The file object.

401 - You are not authorized to get content of the file.

403 - You are not permitted to perform this action.

404 - The file cannot be found.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The driver jar cannot be retrieved.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Upload a file

POST /v2/connections/files/{file_name}

Upload a file and get back a signed handle in 'Location' header with a hash

Request

Request Body

Path Parameters

file_name

Required *

string

The name of file to upload

Query Parameters

Response

201 - The file object.

401 - You are not authorized to get content of the file.

403 - You are not permitted to perform this action.

404 - The file cannot be found.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The driver jar cannot be retrieved.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Delete a file

DELETE /v2/connections/files/{file_name}

Delete a file

Request

Path Parameters

file_name

Required *

string

The name of file to delete

Query Parameters

hash

Required *

string

The hash of file to delete

Response

200 - The file was deleted.

401 - You are not authorized to get content of the file.

403 - You are not permitted to perform this action.

404 - The file cannot be found.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The driver jar cannot be retrieved.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

List files

GET /v2/connections/files

List files available in mounted directory

Request

Path Parameters

Query Parameters

limit

integer

The limit of the number of items to return, for example limit=50. If not specified a default of 100 will be used.

offset

integer

The 0-based index of the first result to return, for example, offset=200. If not specified, the default offset of 0 is used.

Response

200 - List of available files

resources

array

List of uploaded files

offset

integer

The number of assets skipped before this page.

total_count

integer

The total number of assets available.

401 - You are not authorized to get the list of files.

403 - You are not permitted to perform this action.

404 - The file cannot be found.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The driver jar cannot be retrieved.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Migrate files

PUT /v2/connections/files

Migrates files from old locations to new one

Request

Path Parameters

Query Parameters

listOnly

boolean

Indicator, if only list files to be migrated.

catalogs

boolean

Indicator, if migrate connections from catalogs.

projects

boolean

Indicator, if migrate connections from projects.

spaces

boolean

Indicator, if migrate connections from spaces.

Response

200 - List of newly uploaded files

resources

array

List of migrated connections

total_count

integer

The number of assets available.

log_file

string

The name of the log with migration process logging.

exceptions

array

List of exceptions encountered durring the migration process.

401 - You are not authorized to migrate files.

403 - You are not permitted to perform this action.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The driver jar cannot be retrieved.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

field name description entity.label The name of the data source type in a readable form. entity.type The major type of the data source type. ">

List defined types of data sources

GET /v2/datasource_types

Gets all defined types of data sources.

The following fields are available for use with the sort parameter:

field name description
entity.label The name of the data source type in a readable form.
entity.type The major type of the data source type.

Request

Path Parameters

Query Parameters

sort

string

The field to sort the results on, including whether to sort ascending (+) or descending (-), for example, sort=-metadata.create_time

offset

integer

The 0-based index of the first result to return, for example, offset=200. If not specified, the default offset of 0 is used.

limit

integer

The limit of the number of items to return, for example limit=50. If not specified a default of 100 will be used.

connection_properties

boolean

Whether to return information about connection properties.

interaction_properties

boolean

Whether to return information about source and target interaction properties.

discovery

boolean

Whether to return information about discovery capabilities.

actions

boolean

Whether to return information about supported actions.

entity.environment

string

Specify the environment the data source types must support to be included in the returned list. The available environments are 'cloud', 'streams' and 'local'. If no entity.environment is specified, the default for service's deploy environment is used. To specify multiple environments, use a comma-separated string, such as entity.environment=cloud,streams.

entity.product

string

Specify the product the data source type must support to be returned. The available products are 'catalog', 'cpd', 'datastage', 'dv', 'igc', 'mdi', 'ml' and 'studio'. If no entity.product is specified, no filtering is applied. To specify multiple products, use a comma-separated string, such as entity.product=catalog,studio.

product_selector_scope

string

Scope of ui-only product selector property. Applies to output under common_properties key. Genreated ui contains additional checkbox to switch between first of the requested products and the rest. If only a single one is given it switches between that product and remaining products supported by the data source.

generate_transitive_conditions

boolean

Whether to generate extra conditions in common properties format that will make them behave in a transitive manner under default configuration options of Elyra i.e. when a condition is part of a chain it will enable/disable everything down the chain rather than just hiding the control. Support for this option has been removed. Option itself was not removed to preserve binary compatibility but it no longer has any effect.

show_data_source_definitions_only

boolean

Whether to filter the list of available datasource types and return only those that have their dataSourceDefinitionId parameter set and its value is the same as the value of the datasource type id. That means that returned are only datasource types which should have proper deep enforcement in Data Privacy Service supported and are the canonical types (not the connectors that use the same engine, but have a different flavor).

Response

200 - Collection of data source types.

resources

array

List of data source types

first

HrefModel

prev

HrefModel

next

HrefModel

last

HrefModel

offset

integer

The number of assets skipped before this page.

total_count

integer

The total number of assets available.

401 - You are not authorized to list the defined types of data sources.

403 - You are not permitted to perform this action.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. No data source types were retrieved.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Define data source type

POST /v2/datasource_types

Defines a data source type.

Request

Request Body

ConnectionsCustomDatasourceTypeEntity

The definition of the data source type.

flight_info

ConnectionsCustomFlightServiceInfo

Information needed to connect to a custom Arrow Flight service.

flight_uri

string

The URI of the Arrow Flight service.

ssl_certificate

string

The SSL certificate of the Flight service.

ssl_certificate_validation

boolean

Validate that the SSL certificate returned by the Flight service is trusted.

base_datasource_type

string

The UUID of the base datasource type for this custom datasource type

name

string

A unique name, such as "dashdb".

label

string

A localized, displayable label such as, "IBM dashDB".

description

string

A localized, displayable description of the data source.

allowed_as_source

boolean

Whether the data source can be accessed as a source of data. That is, data can be read from the data source.

allowed_as_target

boolean

Whether the data source can be accessed as a target. That is, data can be written to the data source.

discovery

ConnectionsDatasourceTypeDiscovery

The definition of the discovery features of the data source type.

top_level_filters

array

Top level filters

asset_types

array

Asset types

path_properties

array

Path properties

properties

ConnectionsCommonCustomObject

Custom data to be associated with a given object

property_definitions

array

status

string

The status of the data source.

child_source_systems

array

origin_country

string

Country which data originated from. - ISO 3166 Country Codes.

owner_id

string

Owner or creator of connection. Provided when a service ID token is used to create connection.

rov

ConnectionsConnectionRov

Rules of visibility for connections.

mode

integer

The Rules of Visibility mode. Value can be:

| mode | description| | 0 | Connection is searchable and viewable by everyone with access to the catalog or project associated with this connection | | 8 | Connection is searchable by everyone and cannot be viewed unless the user has proper view permissions | | 16 | Connection is searchable by users with proper view permissions |

member_roles

object

Contains map of key as user_iam_id and value as member_roles

source_system

ConnectionsCommonCustomObject

Custom data to be associated with a given object

source_system_history

array

tags

array

Tags associated with a data source type.

actions

array

The actions supported for the data source.

Response

201 - The data source type was created.

datasource_types

array

List of data source types

400 - The data source type definition is not valid. See the error message for details.

trace

string

errors

array

401 - You are not authorized to define a data source type.

403 - You are not permitted to perform this action.

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. A data source type was not created.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Get details for type of data source

GET /v2/datasource_types/{datasource_type}

Get details for type of data source.

Request

Path Parameters

datasource_type

Required *

string

The data source type.

Query Parameters

connection_properties

boolean

Whether to return information about connection properties.

interaction_properties

boolean

Whether to return information about source and target interaction properties.

discovery

boolean

Whether to return information about discovery capabilities.

actions

boolean

Whether to return information about supported actions.

entity.environment

string

Specify the environment the data source types must support to be included in the returned list. The available environments are 'cloud', 'streams' and 'local'. If no entity.environment is specified, the default for service's deploy environment is used. To specify multiple environments, use a comma-separated string, such as entity.environment=cloud,streams.

entity.product

string

Specify the product the data source type must support to be returned. The available products are 'catalog', 'cpd', 'datastage', 'dv', 'igc', 'mdi', 'ml' and 'studio'. If no entity.product is specified, no filtering is applied. To specify multiple products, use a comma-separated string, such as entity.product=catalog,studio.

product_selector_scope

string

Scope of ui-only product selector property. Applies to output under common_properties key. Genreated ui contains additional checkbox to switch between first of the requested products and the rest. If only a single one is given it switches between that product and remaining products supported by the data source.

generate_transitive_conditions

boolean

Whether to generate extra conditions in common properties format that will make them behave in a transitive manner under default configuration options of Elyra i.e. when a condition is part of a chain it will enable/disable everything down the chain rather than just hiding the control. Support for this option has been removed. Option itself was not removed to preserve binary compatibility but it no longer has any effect.

Response

200 - A data source type definition.

metadata

ConnectionsConnectionAssetSystemMetadata

System metadata about an asset

entity

ConnectionsDatasourceTypeEntity

The definition of a data source type.

401 - You are not authorized to retrieve the type details of the data source.

403 - You are not permitted to perform this action.

404 - The data source type details cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. No data source type details were retrieved.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Delete data source type

DELETE /v2/datasource_types/{datasource_type}

Deletes a data source type definition. This call does not check whether the data source type is used by connections or other assets. The caller must check this before deleting a data source type.

Request

Path Parameters

datasource_type

Required *

string

The data source type.

Query Parameters

Response

204 - The data source type was deleted.

401 - You are not authorized to delete a data source type.

403 - You are not permitted to perform this action.

404 - The data source type cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The connection was not deleted.

trace

string

errors

array

Update datasource type

PATCH /v2/datasource_types/{datasource_type}

Updates the definition of a datasource type.

Request

Request Body

Fields to update within the data source type.

Path Parameters

datasource_type

Required *

string

The data source type.

Query Parameters

Response

200 - The updated data source type definition object.

flight_info

ConnectionsCustomFlightServiceInfo

Information needed to connect to a custom Arrow Flight service.

base_datasource_type

string

The UUID of the base datasource type for this custom datasource type

name

string

A unique name, such as "dashdb".

label

string

A localized, displayable label such as, "IBM dashDB".

description

string

A localized, displayable description of the data source.

allowed_as_source

boolean

Whether the data source can be accessed as a source of data. That is, data can be read from the data source.

allowed_as_target

boolean

Whether the data source can be accessed as a target. That is, data can be written to the data source.

discovery

ConnectionsDatasourceTypeDiscovery

The definition of the discovery features of the data source type.

properties

ConnectionsCommonCustomObject

Custom data to be associated with a given object

property_definitions

array

status

string

The status of the data source.

child_source_systems

array

origin_country

string

Country which data originated from. - ISO 3166 Country Codes.

owner_id

string

Owner or creator of connection. Provided when a service ID token is used to create connection.

rov

ConnectionsConnectionRov

Rules of visibility for connections.

source_system

ConnectionsCommonCustomObject

Custom data to be associated with a given object

source_system_history

array

tags

array

Tags associated with a data source type.

actions

array

The actions supported for the data source.

400 - The data source type patch request is not valid. See the error message for details.

trace

string

errors

array

401 - You are not authorized to update the data source type definition.

403 - You are not permitted to perform this action.

404 - The data source type cannot be found.

trace

string

errors

array

429 - The service is currently receiving more requests than it can process in a timely fashion. Please retry submitting your request later.

trace

string

errors

array

500 - An error occurred. The data source type definition was not updated.

trace

string

errors

array

504 - A timeout occurred when processing your request. Please retry later.

trace

string

errors

array

Create a metadata enrichment area asset

POST /v2/metadata_enrichment/metadata_enrichment_area

Creates a new metadata enrichment asset and the corresponding job definition. If a data scope is provided the decoration of data scope assets will be started in background and the response will contain the execution ID of that background process. After background processing has finished a RabbitMQ event is sent to CAMS topic exchange <b>CatalogServiceMessageHub</b> with topic <b>v2.metadata_enrichment.{mdeAreaId}.create_enrichment_area</b> and message body as described in model <b>RabbitMqNotificationMessage</b>. If no data scope is provided an empty enrichment area is created without starting a background decoration task. In that case the field asyncExecutionInfo will be missing in the response. If query paramter <b>enrichImmediate</b> is true, which is the default setting, and the data scope is not empty a new enrichment job run will be triggered automatically.

Request

Request Body

DataDiscoveriesMetadataEnrichmentAreaRequest

Object containing information for creating a metadata enrichment area asset

name

Required *

string

name of the metadata enrichment asset

description

string

description of the metadata enrichment area asset

target_catalog_id

string

Id of the catalog to metadata enrichment area assets into

job

object

metadata enrichment job

name

string

Name of the metadata enrichment job

schedule

string

A cron string defining when the job should be run. If an empty string is provided it means the job is not scheduled to run.

schedule_info

object

publish_job

object

metadata enrichment area publish job

id

string

Id of the metadata publish job

name

string

Name of the MDE area publish job

schedule

string

A cron string defining when the job should be run. This is going to be always empty as publish is not scheduled to run.

data_scope

object

enrichment_assets

array

IDs of assets to enrich metadata

container_assets

object

objective

Required *

object

Enrichment Objective

enrichment_options

object

enrichment options. Required when creating and optional when updating.

governance_scope

array

Required when creating and optional when updating.

sampling

object

sampling options. Required when creating and optional when updating.

datascope_of_reruns

object

Data scope of reruns

tags

array

list of tags

Path Parameters

Query Parameters

enrichImmediate

boolean

should enrichment be run immediately after area creation

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

201 - Success

metadata

object

Metadata about a metadata enrichment area asset. Set by system, not changeable by the user.

entity

object

Properties of the metadata enrichment area asset.

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Retrieve metadata enrichment settings

GET /v2/metadata_enrichment/metadata_enrichment_area/settings

Retrieve metadata enrichment settings

Request

Path Parameters

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Create or update metadata enrichment settings

PUT /v2/metadata_enrichment/metadata_enrichment_area/settings

Create or update metadata enrichment settings

Request

Request Body

Metadata enrichment settings

Path Parameters

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Retrieve details of a Metadata Enrichment Area asset

GET /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}

Retrieve details of a metadata enrichment area asset

Request

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

include_summary

boolean

whether to include data asset count summary in the response

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

metadata

object

Metadata about a metadata enrichment area asset. Set by system, not changeable by the user.

entity

object

Properties of the metadata enrichment area asset.

401 - Unauthorized

403 - Forbidden

404 - Not found

410 - Gone

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Delete a metadata enrichment asset

DELETE /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}

Delete a metadata enrichment area asset

Request

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

204 - No Content

401 - Unauthorized

403 - Forbidden

404 - Not found

410 - Gone

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

edit a metadata enrichment area asset

PATCH /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}

Edit a metadata enrichment area asset

Request

Request Body

DataDiscoveriesMetadataEnrichmentAreaPatchRequest

Object carrying the update request.

name

string

name of the metadata enrichment area asset

description

string

description of the metadata enrichment area asset

target_catalog_id

string

Id of the catalog to metadata enrichment area assets into

job

object

metadata enrichment job

name

string

Name of the metadata enrichment job

schedule

string

A cron string defining when the job should be run. If an empty string is provided it means the job is not scheduled to run.

schedule_info

object

publish_job

object

metadata enrichment area publish job

id

string

Id of the metadata publish job

name

string

Name of the MDE area publish job

schedule

string

A cron string defining when the job should be run. This is going to be always empty as publish is not scheduled to run.

objective

object

Enrichment Objective

enrichment_options

object

enrichment options. Required when creating and optional when updating.

governance_scope

array

Required when creating and optional when updating.

sampling

object

sampling options. Required when creating and optional when updating.

datascope_of_reruns

object

Data scope of reruns

tags

array

list of tags

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

force

boolean

Force the operation even when the metadata enrichment area is being updated.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

metadata

object

Metadata about a metadata enrichment area asset. Set by system, not changeable by the user.

entity

object

Properties of the metadata enrichment area asset.

401 - Unauthorized

403 - Forbidden

404 - Not found

410 - Gone

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Add or remove assets from data scope

PATCH /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope

Add or remove assets from data scope

Request

Request Body

Object carrying the update request.

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

force

boolean

Force the operation even when the metadata enrichment area is being updated.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

202 - Accepted

401 - Unauthorized

403 - Forbidden

404 - Not found

410 - Gone

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Assign business terms to data assets

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/assign_terms

Add terms to given data assets. This api is executed synchronously. It verifies that all assets are part of the given MDE area. If validation fails method ends with an error.

Request

Request Body

DataDiscoveriesTermAssignmentOptions

List of data assets and terms to assign

dataassets

Required *

array

IDs of assets to enrich metadata

terms

array

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

async

boolean

whether to process the request asynchronously

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

202 - Accepted

execution_id

string

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Assign business terms to columns of data assets

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/columns/assign_terms

Add terms to given asset columns. This api is executed synchronously. It verifies that all assets are part of the given MDE area. If validation fails method ends with an error.

Request

Request Body

DataDiscoveriesColumnTermAssignmentOptions

List of columns of data assets and terms to assign

dataasset_columns

Required *

array

terms

Required *

array

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

async

boolean

whether to process the request asynchronously

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

202 - Accepted

execution_id

string

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Assign or remove a data class to columns of data assets

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/columns/dataclass

Assign or remove data class to columns of data assets

Request

Request Body

List of columns of data assets and id of data class and operation to be performed

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

async

boolean

whether to process the request asynchronously

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Remove business terms from columns of data assets.

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/columns/remove_terms

Removes either all terms or selected terms from given asset columns. When terms are provided with the payload only the given terms are removed from the given columns. If no terms are provided all terms are removed.

Request

Request Body

DataDiscoveriesColumnTermAssignmentOptions

List of columns of data assets and terms to assign

dataasset_columns

Required *

array

terms

Required *

array

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

async

boolean

whether to process the request asynchronously

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

202 - Accepted

execution_id

string

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Adds or updates the review timestamp for given columns.

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/columns/review

Adds/updates the 'reviewed' time stamp to/of the given asset columns.This api is executed synchronously. It fetches the assets that belong to the given columns via CAMS bulk get and verifies that all given assets are part of the given MDE area and are ready for review which means that either profiling or term assignment must be finished. It also validates that the columns exist on the asset. If validation fails the method returns an error. Otherwise for all given columns the review timestamp gets updated via CAMS bulk patch. Returns the new review timestamp.

Request

Request Body

Array containing list of asset Ids with columns.

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

review_date

integer

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Removes review timestamp for given columns.

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/columns/unreview

Removes the 'reviewed' time stamp from the given asset columns. This api is executed synchronously. It fetches alle assets that belong to the given columns via CAMS bulk get and verifies that all given assets are part of the given MDE area. Assets that have no review data are skipped. It also validates that the columns exist on the asset. If validation fails the method returns an error. Otherwise for all given columns the review timestamp will be removed via CAMS bulk patch.

Request

Request Body

Array containing list of asset Ids with columns.

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

204 - No content

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Enrich selected data assets

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/enrich

Enrich selected data assets

Request

Request Body

Array containing list of asset Ids.

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

202 - Success

job_id

string

job_run_id

string

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Remove business terms from data assets

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/remove_terms

Removes either all terms or selected terms from given list of data assets. When terms are provided with the payload only the given terms are removed from the given assets. If no terms are provided all terms are removed.

Request

Request Body

DataDiscoveriesTermAssignmentOptions

List of data assets and terms to remove

dataassets

Required *

array

IDs of assets to enrich metadata

terms

array

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

async

boolean

whether to process the request asynchronously

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

202 - Accepted

execution_id

string

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Review a given list of data assets.

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/review

Adds/updates the 'reviewed' time stamp to/of given data assets. This api is executed synchronously. It fetches the given assets via CAMS bulk get and verifies that all given assets are part of the given MDE area and are ready for review which means that either profiling or term assignment must be finished. If validation fails the method returns an error. Otherwise the review timestamp of all assets gets updated via CAMS bulk patch. Returns the new review timestamp.

Request

Request Body

Array containing list of asset Ids.

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

review_date

integer

400 - Bad Request. If parameters are missing or at least one of the given assets is not ready for review

401 - Unauthorized

403 - Forbidden

404 - Not found. If at least one of the given assets is not member of the given metadata enrichment area.

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Removes review timestamp from the given assets

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/data_scope/enrichment_assets/unreview

Removes the 'reviewed' time stamp from the given data assets. This api is executed synchronously. It fetches the given assets via CAMS bulk get and verifies that all given assets are part of the given MDE area. Assets that have no review data are skipped. If validation fails the method returns an error. Otherwise the review timestamp is removed from of all assets via CAMS bulk patch.

Request

Request Body

Array containing list of asset Ids.

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

204 - No content

400 - Bad Request. If parameters are missing.

401 - Unauthorized

403 - Forbidden

404 - Not found. If at least one of the given assets is not member of the given metadata. enrichment area.

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Publish all assets or a subset of assets of a Metadata Enrichment Area to a catalog

POST /v2/metadata_enrichment/metadata_enrichment_area/{metadata_enrichment_area_id}/publish_assets

Publish assets asynchronously. If publishScope is 'selected_assets' either /asset_ids or /filter/search_criteria has to be specified. If publisScope is 'all_assets' none of both must be specified.

Request

Request Body

DataDiscoveriesPublishRequest

Publish assets to a catalog

catalog

Required *

string

catalog Id

duplicate_action

object

action if asset already exists

asset_ids

array

IDs of assets to enrich metadata

filter

object

type

Required *

object

type of search

asset_type

Required *

string

Asset type for catalog search.

search_criteria

Required *

object

JSON object for search payload

Path Parameters

metadata_enrichment_area_id

Required *

string

Id of the metadata enrichment area asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

publishScope

Required *

tells if all assets in mde area should be published or only selected assets

Response

200 - Success

job_id

string

job_run_id

string

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Create a Metadata Import asset

POST /v2/metadata_imports

Create a Metadata Import asset.

Request

Request Body

DataDiscoveriesMetadataImportRequest

Object containing information for creating a metadata import asset

unified_lineage

boolean

label to identify new architecture

datasource_definition_info

object

Data source scope selection info for lineage

data_source_asset_id

string

technology

string

scanner

string

lineage_scanning_phases

object

metadata_ingestion_info

object

Ingestion metadata info for lineage

ingestion_agent_id

string

ingest_method

string

ingest_connection

string

ingest_parameters

array

extraction_info

object

Extraction details for lineage

connection_type

string

external_agent

string

sap_assets_added

array

List of the assets to be update with SAP Business Metdata

description

string

description of the metadata import asset

name

Required *

string

name of the metadata import asset

import_type

object

The type of the import. The possible values are 'metadata' and 'lineage'.

connection_id

string

Id of the connection which is being discovered

connection_id_list

array

List of connection_id which is being discovered

file_list

array

List of configuration/datasource files for which metadata/lineage has to be extracted.

file_configuration

object

encoding

string

enable_replacement

string

replacements

array

workspace_root_paths

array

List of workspace rootPath.

asset_ref_map

object

asset ref map when trying to export and import a project .

reimport_options

object

specify if name, description, column descriptions to be udpated during re-import.

business_extraction

object

isPublished

boolean

isSAP

boolean

context_categories

object

primary_category

object

dictionary_connection

object

data_assets_ids

array

List of the data assets to be updated with Business Metadata

import_options

object

support advanced options of metadata import.

advanced_lineage_option

object

Advanced settings for lineage

target_catalog_id

string

Id of the catalog to import assets into

target_project_id

string

Id of the project to import assets into

job_id

string

Id of the metadata import job

scope

object

Scope of assets to be imported from the connection.

paths

array

list of paths

include_list

array

include list in path

exclude_list

array

exclude list in path

scope_lineage

object

Scope of assets to be imported from the connection.

paths

array

list of paths

include_list

array

include list in path

exclude_list

array

exclude list in path

scope_term_generation

object

Scope of assets for term generation.

assets

array

list of assets.

tags

array

list of tags

migrate_tags

boolean

check to disable or enable migrating MDI tags to data asset.

importflow_name

string

Name of the metaBroker importflow

metadata_enrichment_area_info

object

added_date

string

area_id

string

goal

object

The goal the import. The possible values are 'metadata','lineage',`data_model`, `data_integration`, `data_integration_discover`, `business_intelligence`, `business_intelligence_discover` and `open_manta`

Path Parameters

Query Parameters

create_job

boolean

If this value is set to true, a Job is created together. The relation is also done between mdetadata import asset. The response message includes entity.jobId. The job name is generated from the name of metadata import with a unique suffix.

job_name

string

A candidate of Job name. The job is created with a specified name. If the name already exists, an error is returned. The create_job parameter should be set to true.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

201 - Success

metadata

object

Metadata about a metadata import asset. Set by system, not changeable by the user.

entity

object

Properties of the metadata import asset.

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Bulk delete data assets in Metadata discovery

POST /v2/metadata_imports/bulk_delete_assets

Delete assets in bulk

Request

Request Body

Array containing list of data asset Ids.

Path Parameters

Query Parameters

catalog_id

string

The catalog_id and / or project_id must be provided. If catalog_id is provided, the catalog must exist and the caller must be an admin or editor member of the catalog. Only data discovery runs associated with the catalog will be returned.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

201 - Success

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Bulk delete metadata import assets in Metadata discovery

DELETE /v2/metadata_imports/bulk_delete_metadataImport_assets

Delete metadata import assets in bulk

Request

Path Parameters

Query Parameters

asset_ids

Required *

string

Comma separated list of metadata import asset IDs.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

201 - Success

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Bulk publish data assets in Metadata discovery

POST /v2/metadata_imports/bulk_publish_assets

Publish assets in bulk

Request

Request Body

Array containing list of data asset Ids.

Path Parameters

Query Parameters

catalog_id

string

The catalog_id and / or project_id must be provided. If catalog_id is provided, the catalog must exist and the caller must be an admin or editor member of the catalog. Only data discovery runs associated with the catalog will be returned.

connection_id

Required *

string

The connection_id may be optionally provided to retrieve data discovery runs associated with the connection.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

201 - Success

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Get a list of supported datasource types

GET /v2/metadata_imports/connections

INTERNAL: Get list of supported connection types.

Request

Response

200 - Success

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Start a Metadata Import job

POST /v2/metadata_imports/job_runs

INTERNAL: Run a Metadata Import job.

Request

Request Body

DataDiscoveriesJob

Job definition object

metadata

object

AssetMetadata Model

name

Required *

string

description

string

asset_id

string

asset_category

Required *

string

asset_type

Required *

string

origin_country

Required *

string

rov

object

project_id

string

sandbox_id

string

usage

object

rating

integer

total_ratings

integer

catalog_id

string

created

integer

created_at

string

owner_id

string

size

integer

version

integer

asset_state

string

asset_attributes

array

tags

array

entity

object

The underlying job definition.

job

object

Path Parameters

Query Parameters

job_id

Required *

string

Id of the metadata import job.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

201 - Success

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

cancel a Metadata Import run

POST /v2/metadata_imports/job_runs/cancel

INTERNAL: Cancel a metadata import job run

Request

Request Body

Job definition object

Path Parameters

Query Parameters

jobrun_id

Required *

string

Id of the metadata import job run.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

401 - Unauthorized

403 - Forbidden

404 - Not found

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Reconcile the status of the job run record w.r.t the Discovery status

POST /v2/metadata_imports/job_runs/reconcile

INTERNAL: Reconcile the status of the job run record w.r.t the Discovery status

Request

Request Body

DataDiscoveriesJobRun

Job Run

metadata

object

AssetMetadata Model

name

Required *

string

description

string

asset_id

string

asset_category

Required *

string

asset_type

Required *

string

origin_country

Required *

string

rov

object

project_id

string

sandbox_id

string

usage

object

rating

integer

total_ratings

integer

catalog_id

string

created

integer

created_at

string

owner_id

string

size

integer

version

integer

asset_state

string

asset_attributes

array

tags

array

entity

object

job_run

object

Path Parameters

Query Parameters

jobrun_id

Required *

string

Id of the metadata import job run.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

body

array

patch operations

400 - Bad Request

401 - Unauthorized

404 - Not found

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Restart the pending a job run

POST /v2/metadata_imports/recover_task

Restart the pending a job run. It should be called after restore from the backup data. This API is not unavailable on IBM Cloud. The Admin role is necessary to call this API.

Request

Request Body

DataDiscoveriesRecoveryCondition

Object containing information for recovering import

recovery_date

string

The timestamp when the data was restored (in format YYYY-MM-DDTHH:mm:ssZ or YYYY-MM-DDTHH:mm:ss.sssZ, matching the date-time format as specified by RFC 3339)

pending_type

object

The status that will be restarted. The possible values are 'starting' and 'running'. The 'running' includes 'starting' status, too.

Response

200 - Success

status

string

An overall status for recovery routine

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Validate the attempt to delete job associated with Metadata import asset

POST /v2/metadata_imports/validate_metadata_import_job

Validate the attempt to delete job associated with Metadata import asset

Request

Path Parameters

Query Parameters

job_id

Required *

string

Id of the metadata import job.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

201 - Success

401 - Unauthorized

403 - Forbidden

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Validates a SAP Business Metadata connection

POST /v2/metadata_imports/validate_sap_connection

Validates a SAP Business Metadata connection.

Request

Path Parameters

Query Parameters

connection_id

Required *

string

The connection_id may be optionally provided to retrieve data discovery runs associated with the connection.

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Retrieve details of a Metadata Import

GET /v2/metadata_imports/{metadata_import_id}

Retrieve details of a metadata import

Request

Path Parameters

metadata_import_id

Required *

string

Id of the metadata import asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

metadata

object

Metadata about a metadata import asset. Set by system, not changeable by the user.

entity

object

Properties of the metadata import asset.

401 - Unauthorized

403 - Forbidden

404 - Not found

410 - Gone

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

delete a metadata import asset

DELETE /v2/metadata_imports/{metadata_import_id}

delete a metadata import asset

Request

Path Parameters

metadata_import_id

Required *

string

Id of the metadata import asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

204 - No content

401 - Unauthorized

403 - Forbidden

404 - Not found

410 - Gone

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

edit a metadata import asset

PATCH /v2/metadata_imports/{metadata_import_id}

edit a metadata import asset

Request

Request Body

DataDiscoveriesMetadataImportPatchRequest

Object carrying the update request.

name

string

name of the metadata import asset

description

string

description of the metadata import asset

connection_id

string

Id of the connection which is being discovered

target_catalog_id

string

Id of the catalog to import assets into

target_project_id

string

Id of the project to import assets into

job_id

string

Id of the metadata import job

importflow_name

string

Name of the metabroker importflow

scope

object

Scope of assets to be imported from the connection.

paths

array

list of paths

include_list

array

include list in path

exclude_list

array

exclude list in path

tags

array

list of tags

mde_enabled

boolean

the flag if the metadata enrichment can work or not.

asset_ref_map

object

asset ref map when trying to export and import a project .

reimport_options

object

specify if name, description, column descriptions to be udpated during re-import.

import_options

object

support advanced options of metadata import.

advanced_lineage_option

object

Advanced settings for lineage

metadata_ingestion_info

object

Ingestion metadata info for lineage

ingestion_agent_id

string

ingest_method

string

ingest_connection

string

ingest_parameters

array

extraction_info

object

Extraction details for lineage

connection_type

string

external_agent

string

datasource_definition_info

object

Data source scope selection info for lineage

data_source_asset_id

string

technology

string

scanner

string

lineage_scanning_phases

object

file_configuration

object

encoding

string

enable_replacement

string

replacements

array

scope_lineage

object

Scope of assets to be imported from the connection.

paths

array

list of paths

include_list

array

include list in path

exclude_list

array

exclude list in path

unified_lineage

boolean

label to identify new architecture

Path Parameters

metadata_import_id

Required *

string

Id of the metadata import asset.

Query Parameters

project_id

Required *

string

The project_id must be provided. The project must exist and the caller must be an admin or editor member of the project.

Response

200 - Success

metadata

object

Metadata about a metadata import asset. Set by system, not changeable by the user.

entity

object

Properties of the metadata import asset.

401 - Unauthorized

403 - Forbidden

404 - Not found

410 - Gone

500 - Error

trace

string

A randomly-generated lowercase base-36 string uniquely identifying the request

errors

array

An array with at least one error

Field Match type Example dataset_id Equals ?dataset_id=5210c7d-cf6b ">

List data profiles

GET /v2/data_profiles

Status: Complete

Get the list of data profiles in the specified project or catalog for a given dataAsset, provided the caller has the necessary rights to do so. The returned results can be filtered by using one or more of the listed parameters.

Field Match type Example
dataset_id Equals ?dataset_id=5210c7d-cf6b

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

include_entity

boolean

Whether to include the entity component. If set to false, only the metadata component is populated in the response.

lite_mode

boolean

Include minimum payload for profiling results. If set to true, only minimum required details for DPS are available in the response.

column

string

Return the analysis results for specified column. This option will be ignored for data profile run using data flow.

Response

200 - Success.

resources

array

Collection of data profiles

401 - You are not permitted to perform this action.

403 - You are not authorized to list the available data profiles.

404 - Not Found.

500 - An error occurred. The data profiles cannot be listed.

trace

string

Trace information

errors

array

Errors occurred

AMQP 1.0 Messages

When a new data profile is created, a message is fired with a state of the new data profile in the body.

Topic

v2.data_profiles.:guid.POST ,where the ":guid" represents the profile_id of the created Data Profile

Subscribe to it by using "v2.data_profiles.*.POST" Binding Key.

Example Message

Topic: v2.data_profiles.5210c7d-cf6b-4204-95d2-95d84ecbe382.POST

Message:

{
 &quot;event&quot;: &quot;CREATE_DATA_PROFILE&quot;,
 &quot;actor&quot;: {          
   &quot;user_name&quot;: &quot;john@acme.com&quot;          
 },
 &quot;published&quot;: &quot;2015-05-10T15:04:15Z&quot;,
 &quot;url&quot;: { /* The href of the DataProfile created */}
 &quot;status_code&quot;: { /* The Http Status code , 201 if the DataProfile is created successfully */}
 &quot;state&quot;: { /* the data profile object equivalent to the one obtained by GET /v2/data_profiles/{profile_id} API */ }
 &quot;details&quot;: {
    &quot;catalog_id&quot;: &quot;f3c59258-abdd-4e24-828b-0495ec519339&quot;,
    &quot;dataset_id&quot;: &quot;e522db21-59e8-44ab-81b2-bb40c3030a6f&quot;,
    &quot;profile_id&quot;: &quot;5165d439-96f0-40d4-90b2-93795deab61b&quot;,
    &quot;is_governed&quot;: false { /* set to true if the catalog is_governed else set it to false}
   }
}

">

Create data profile

POST /v2/data_profiles

Status: Complete

Creates a data profile for a given data set in the specified project or catalog, provided the caller has the necessary rights to do so. Subsequent calls to use the data profile must specify the relevant project or catalog ID that the data profile was created in.

The request payload must include the 'metadata' section containing the data set id and catalog/project id.

The request payload can have the 'entity' section which is optional specifying the data profile options. If these options are not specified, default options are taken. To create several data profiles at once in the specified project or catalog, specify an array of data set in the attribute dataset_ids instead of a single data set in the attribute dataset_id. In this case, the data profiles are created in a single job that can be found in the execution section of the returned data profile entity.

AMQP 1.0 Messages

When a new data profile is created, a message is fired with a state of the new data profile in the body.

Topic

v2.data_profiles.:guid.POST ,where the ":guid" represents the profile_id of the created Data Profile

Subscribe to it by using "v2.data_profiles.*.POST" Binding Key.

Example Message

Topic: v2.data_profiles.5210c7d-cf6b-4204-95d2-95d84ecbe382.POST

Message:

{
 &quot;event&quot;: &quot;CREATE_DATA_PROFILE&quot;,
 &quot;actor&quot;: {          
   &quot;user_name&quot;: &quot;john@acme.com&quot;          
 },
 &quot;published&quot;: &quot;2015-05-10T15:04:15Z&quot;,
 &quot;url&quot;: { /* The href of the DataProfile created */}
 &quot;status_code&quot;: { /* The Http Status code , 201 if the DataProfile is created successfully */}
 &quot;state&quot;: { /* the data profile object equivalent to the one obtained by GET /v2/data_profiles/{profile_id} API */ }
 &quot;details&quot;: {
    &quot;catalog_id&quot;: &quot;f3c59258-abdd-4e24-828b-0495ec519339&quot;,
    &quot;dataset_id&quot;: &quot;e522db21-59e8-44ab-81b2-bb40c3030a6f&quot;,
    &quot;profile_id&quot;: &quot;5165d439-96f0-40d4-90b2-93795deab61b&quot;,
    &quot;is_governed&quot;: false { /* set to true if the catalog is_governed else set it to false}
   }
}

Request

Request Body

DataProfilesDataProfile

The data profile to create.

metadata

Required *

DataProfilesDataProfileMetadataInfo

Profiling specific metadata

guid

string

The ID of the profile.

asset_id

string

The ID of the profile asset (response only)

dataset_id

Required *

string

The ID of the dataset

dataset_ids

array

The IDs of the datasets to use during bulk processing

correlation_id

string

The ID to be used for tracking end to end flow.

url

string

The Location URL where DataProfile is created.

project_id

string

The ID of the project to use. Either catalog_id or project_id is required.

catalog_id

Required *

string

The ID of the catalog to use. Either catalog_id or project_id is required.

created_at

string

The timestamp when the data profile was created (in format YYYY-MM-DDTHH:mm:ssZ or YYYY-MM-DDTHH:mm:ss.sssZ, matching the date-time format as specified by RFC 3339) (response only)

accessed_at

string

The timestamp when the data profile was accessed (in format YYYY-MM-DDTHH:mm:ssZ or YYYY-MM-DDTHH:mm:ss.sssZ, matching the date-time format as specified by RFC 3339) (response only)

owner

string

The user ID that created the data profile.

last_updater

string

The user ID that updated the data profile.

owner_id

string

The IAM ID of the user that created the data profile.

last_updater_id

string

The IAM id of the user that updated the data profile.

metadata_outstanding

DataProfilesDataProfileMetadataInfo

Profiling specific metadata

guid

string

The ID of the profile.

asset_id

string

The ID of the profile asset (response only)

dataset_id

Required *

string

The ID of the dataset

dataset_ids

array

The IDs of the datasets to use during bulk processing

correlation_id

string

The ID to be used for tracking end to end flow.

url

string

The Location URL where DataProfile is created.

project_id

string

The ID of the project to use. Either catalog_id or project_id is required.

catalog_id

Required *

string

The ID of the catalog to use. Either catalog_id or project_id is required.

created_at

string

The timestamp when the data profile was created (in format YYYY-MM-DDTHH:mm:ssZ or YYYY-MM-DDTHH:mm:ss.sssZ, matching the date-time format as specified by RFC 3339) (response only)

accessed_at

string

The timestamp when the data profile was accessed (in format YYYY-MM-DDTHH:mm:ssZ or YYYY-MM-DDTHH:mm:ss.sssZ, matching the date-time format as specified by RFC 3339) (response only)

owner

string

The user ID that created the data profile.

last_updater

string

The user ID that updated the data profile.

owner_id

string

The IAM ID of the user that created the data profile.

last_updater_id

string

The IAM id of the user that updated the data profile.

record_info

DataProfilesDataProfileRecordInfo

Information about the number of records

number_of_records

integer

The total number of records in the data asset

computed

boolean

Is this computed by profiling service

entity

object

The underlying asset entity.

data_profile

Required *

object

The data profile definition.

data_profile_outstanding

object

The data profile definition.

columns

array

attachment_id

string

href

string

The location url where the data profile is created.

Path Parameters

Query Parameters

start

boolean

Whether to start the profiling service immediately after the data profile is created.

use_mde

boolean

Whether to use Metadata enrichment for profiling. If set to true, Metadata enrichment features are eanbled (will use new Lite services).

Charge term assignment

boolean

Whether to charge the bulk profiling to include term assignment charges.

Response

201 - Success.

202 - Accepted.

401 - You are not authorized to create a data profile.

403 - You are not permitted to perform this action.

404 - The data profile cannot be found.

500 - An error occurred. The data profile cannot be created.

Get data profile

GET /v2/data_profiles/{profile_id}

Status: Complete

Gets a data profile from a project or catalog, provided the call has the required right to do so.

Request

Path Parameters

profile_id

Required *

string

The profile ID to use.

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

lite_mode

boolean

Include minimum payload for profiling results. If set to true, only minimum required details for DPS are available in the response.

Response

200 - Success.

metadata

DataProfilesDataProfileMetadataInfo

Profiling specific metadata

metadata_outstanding

DataProfilesDataProfileMetadataInfo

Profiling specific metadata

record_info

DataProfilesDataProfileRecordInfo

Information about the number of records

entity

object

The underlying asset entity.

href

string

The location url where the data profile is created.

401 - You are not authorized to get the data profile you specified.

403 - You are not permitted to perform this action.

404 - The data profile you specified cannot be found.

trace

string

Trace information

errors

array

Errors occurred

500 - An error occurred. The data profile you specified cannot be fetched.

trace

string

Trace information

errors

array

Errors occurred

Delete data profile

DELETE /v2/data_profiles/{profile_id}

Status: Complete

Deletes a specified data profile in a project or catalog, provided the caller has the necessary rights to do so.

The data profile is not deleted if the profiling process is still running unless the stop_in_progress_runs parameter is set to true.

Request

Path Parameters

profile_id

Required *

string

The profile ID to use.

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

stop_in_progress_profiling_runs

boolean

Whether to stop all running profiling processes. Data profiles that are running must be stopped before they can be deleted.

use_mde

boolean

Whether to use Metadata enrichment for profiling. If set to true, Metadata enrichment features are eanbled (will use new Lite services).

Response

204 - Success.

401 - You are not authorized to delete data profiles.

403 - You are not permitted to perform this action.

404 - Data profile not found.

415 - Data source not supported for profiling.

500 - An error occurred. The data profile cannot be deleted.

AMQP 1.0 Messages

When a data profile is modified, a message is fired with a state of the modified data profile in the body.

Topic

v2.data_profiles.:guid.PATCH

Subscribe to it by using "v2.data_profiles.*.PATCH" Binding Key.

Example Message

Topic: v2.data_profiles.5210c7d-cf6b-4204-95d2-95d84ecbe382.PATCH

Message:

{
 &quot;event&quot;: &quot;UPDATE_DATA_PROFILE&quot;,
 &quot;actor&quot;: {          
   &quot;user_name&quot;: &quot;john@acme.com&quot;,           
 },
 &quot;published&quot;: &quot;2015-05-10T15:04:15Z&quot;,
 &quot;url&quot;: { /* The href of the DataProfile created */}
 &quot;status_code&quot;: { /* The Http Status code , 200 if the DataProfile is updated successfully */}
 &quot;state&quot;: { /* the data profile object equivalent to the one obtained by GET /v2/data_profiles/{profile_id} API */ }
 &quot;details&quot;: {
    &quot;catalog_id&quot;: &quot;f3c59258-abdd-4e24-828b-0495ec519339&quot;,
    &quot;dataset_id&quot;: &quot;e522db21-59e8-44ab-81b2-bb40c3030a6f&quot;,
    &quot;profile_id&quot;: &quot;5165d439-96f0-40d4-90b2-93795deab61b&quot;,
    &quot;is_governed&quot;: false { /* set to true if the catalog is_governed else set it to false}
    }
}

">

Update data profile

PATCH /v2/data_profiles/{profile_id}

Status: Complete

Updates a data profile in the project or catalog specified in the data profile, provided the caller has the necessary rights to do so.

During update, the entire data profile is replaced, apart from any read-only or response-only attributes.

If the profiling processes is running and the start parameter is set to true, then a data profile is only updated if the stop_in_progress_runs parameter is set to true.

The updates must be specified by using the JSON patch format, described in RFC 6902.

AMQP 1.0 Messages

When a data profile is modified, a message is fired with a state of the modified data profile in the body.

Topic

v2.data_profiles.:guid.PATCH

Subscribe to it by using "v2.data_profiles.*.PATCH" Binding Key.

Example Message

Topic: v2.data_profiles.5210c7d-cf6b-4204-95d2-95d84ecbe382.PATCH

Message:

{
 &quot;event&quot;: &quot;UPDATE_DATA_PROFILE&quot;,
 &quot;actor&quot;: {          
   &quot;user_name&quot;: &quot;john@acme.com&quot;,           
 },
 &quot;published&quot;: &quot;2015-05-10T15:04:15Z&quot;,
 &quot;url&quot;: { /* The href of the DataProfile created */}
 &quot;status_code&quot;: { /* The Http Status code , 200 if the DataProfile is updated successfully */}
 &quot;state&quot;: { /* the data profile object equivalent to the one obtained by GET /v2/data_profiles/{profile_id} API */ }
 &quot;details&quot;: {
    &quot;catalog_id&quot;: &quot;f3c59258-abdd-4e24-828b-0495ec519339&quot;,
    &quot;dataset_id&quot;: &quot;e522db21-59e8-44ab-81b2-bb40c3030a6f&quot;,
    &quot;profile_id&quot;: &quot;5165d439-96f0-40d4-90b2-93795deab61b&quot;,
    &quot;is_governed&quot;: false { /* set to true if the catalog is_governed else set it to false}
    }
}

Request

Request Body

The updates to make in the data profile.

Path Parameters

profile_id

Required *

string

The profile ID to use.

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

stop_in_progress_profiling_runs

boolean

Whether to stop all running profiling processes. Data profiles that are running must be stopped before they can be deleted.

use_mde

boolean

Whether to use Metadata enrichment for profiling. If set to true, Metadata enrichment features are eanbled (will use new Lite services).

start

boolean

Whether to start the profiling service immediately after the data profile is updated.

Response

200 - Success.

401 - You are not authorized to update the data profile you specified.

403 - You are not permitted to perform this action.

404 - The data profile you specified cannot be found.

500 - An error occurred. The data profile you specified cannot be updated.

AMQP 1.0 Messages

When a data profile is modified, a message is fired with a state of the modified data profile in the body.

Topic

v2.data_profiles.:guid.PATCH

Subscribe to it by using "v2.data_profiles.*.PATCH" Binding Key.

Example Message

Topic: v2.data_profiles.5210c7d-cf6b-4204-95d2-95d84ecbe382.PATCH Message:

{
 &quot;event&quot;: &quot;UPDATE_DATA_PROFILE&quot;,
 &quot;actor&quot;: {          
   &quot;user_name&quot;: &quot;john@acme.com&quot;,           
 },
 &quot;published&quot;: &quot;2015-05-10T15:04:15Z&quot;,
 &quot;url&quot;: { /* The href of the DataProfile created */}
 &quot;status_code&quot;: { /* The Http Status code , 200 if the DataProfile is updated successfully */}
 &quot;state&quot;: { /* the data profile object equivalent to the one obtained by GET /v2/data_profiles/{profile_id} API */ }
 &quot;details&quot;: {
    &quot;catalog_id&quot;: &quot;f3c59258-abdd-4e24-828b-0495ec519339&quot;,
    &quot;dataset_id&quot;: &quot;e522db21-59e8-44ab-81b2-bb40c3030a6f&quot;,
    &quot;profile_id&quot;: &quot;5165d439-96f0-40d4-90b2-93795deab61b&quot;,
    &quot;is_governed&quot;: false { /* set to true if the catalog is_governed else set it to false}
    }
}

">

Update data profiles

POST /v2/data_profiles/bulk

Status: Complete

Updates data profiles in the project or catalog for one or more assets, provided the caller has the necessary rights to do so.

During update, the entire data profiles are replaced, apart from any read-only or response-only attributes.

If any profiling process is running and the start parameter is set to true, then a data profile is only updated if the stop_in_progress_runs parameter is set to true.

The updates must be specified by using the JSON patch format, described in RFC 6902.

AMQP 1.0 Messages

When a data profile is modified, a message is fired with a state of the modified data profile in the body.

Topic

v2.data_profiles.:guid.PATCH

Subscribe to it by using "v2.data_profiles.*.PATCH" Binding Key.

Example Message

Topic: v2.data_profiles.5210c7d-cf6b-4204-95d2-95d84ecbe382.PATCH Message:

{
 &quot;event&quot;: &quot;UPDATE_DATA_PROFILE&quot;,
 &quot;actor&quot;: {          
   &quot;user_name&quot;: &quot;john@acme.com&quot;,           
 },
 &quot;published&quot;: &quot;2015-05-10T15:04:15Z&quot;,
 &quot;url&quot;: { /* The href of the DataProfile created */}
 &quot;status_code&quot;: { /* The Http Status code , 200 if the DataProfile is updated successfully */}
 &quot;state&quot;: { /* the data profile object equivalent to the one obtained by GET /v2/data_profiles/{profile_id} API */ }
 &quot;details&quot;: {
    &quot;catalog_id&quot;: &quot;f3c59258-abdd-4e24-828b-0495ec519339&quot;,
    &quot;dataset_id&quot;: &quot;e522db21-59e8-44ab-81b2-bb40c3030a6f&quot;,
    &quot;profile_id&quot;: &quot;5165d439-96f0-40d4-90b2-93795deab61b&quot;,
    &quot;is_governed&quot;: false { /* set to true if the catalog is_governed else set it to false}
    }
}

Request

Request Body

The updates to make in the one or more data profiles.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

Response

200 - Success.

401 - You are not authorized to update the data profile you specified.

403 - You are not permitted to perform this action.

404 - The catalog / project you specified cannot be found.

500 - An error occurred. The catalog / project you specified cannot be updated.

Stop profiling process

PUT /v2/data_profiles/{profile_id}/execution

Status: Complete

Stops an in-progress profiling run in the specified project or catalog, provided the caller has the necessary rights to do so. This API will request the action to be performed and return, not perform the action and wait for it to complete.

Request

Request Body

DataProfilesDataProfileRunStatusRequest

The requested action to perform on the profile run.

action

string

The requested action (Response only).

Path Parameters

profile_id

Required *

string

The profile ID to use.

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

use_mde

boolean

Whether to use Metadata enrichment for profiling. If set to true, Metadata enrichment features are eanbled (will use new Lite services).

Response

202 - Requested.

401 - You are not authorized to stop the profiling process.

403 - You are not permitted to perform this action.

404 - The data profile you specified cannot be found.

500 - An error occurred. The profiling process cannot be stopped.

Get profiling logs

GET /v2/data_profiles/{profile_id}/logs

Status: Complete

Get the logs for the data profile job run on data set in a project or catalog.

Request

Path Parameters

profile_id

Required *

string

The profile ID to use.

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

Response

200 - Success.

logs

array

A collection of data profile job run log entries.

401 - You are not authorized to get the profiling logs.

403 - You are not permitted to perform this action.

404 - The data profile you specified cannot be found.

trace

string

Trace information

errors

array

Errors occurred

500 - An error occurred. Failed to get profiling logs.

trace

string

Trace information

errors

array

Errors occurred

Get the list of data quality dimensions available.

GET /v2/data_profiles/dqdimensions

Status: Complete

Get the list of data quality dimensions available.

Request

Response

200 - Success.

dimensions

array

A collection of data quality dimensions.

403 - You are not permitted to perform this action.

500 - An error occurred. Failed to get quality dimensions.

trace

string

Trace information

errors

array

Errors occurred

Modify asset level classification

PATCH /v2/data_profiles/classification

Status: Complete

Modifies asset level classification detail in the data_profile attribute in the specified project or catalog, provided the caller has the necessary rights to do so. This API is used for CRUD operations on asset level classification.

The patch request for classification should contain the classification details that are to be added to the data_profile attribute.

The updates must be specified by using the JSON patch format, described in RFC 6902.

Request

Request Body

The asset level classification details that are added to the data_profile attribute.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

use_mde

boolean

Whether to use Metadata enrichment for profiling. If set to true, Metadata enrichment features are eanbled (will use new Lite services).

Response

200 - Success.

400 - Invalid classification details provided as part of the patch call.

401 - You are not authorized to modify the data_profile attribute with asset level classification details.

403 - You are not permitted to perform this action.

404 - The asset classification cannot be found.

500 - An error occurred. The data_profile attribute cannot be modified with asset level classification detail.

Get data profile options

GET /v2/data_profiles/options

Status: Complete

Get the data profile options for the Account specified in the IAM token. If the account level data profile options is not available check if it is specified at project or catalog account level, provided the caller has the necessary rights to do so.

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

use_mde

boolean

Whether to use Metadata enrichment for profiling. If set to true, Metadata enrichment features are eanbled (will use new Lite services).

Response

200 - Success.

metadata

DataProfilesDataProfileOptionsMetadata

Metadata about data profile options

entity

object

The underlying asset entity.

401 - You are not permitted to perform this action.

403 - You are not authorized to list the available data profiles options.

404 - Not Found.

500 - An error occurred. The data profiles options cannot be listed.

trace

string

Trace information

errors

array

Errors occurred

501 - This API is not Implemented.

Create data profile options

POST /v2/data_profiles/options

Status: Complete

Creates a data profile options for a given Account Id in the specified project or catalog, provided the caller has the necessary rights to do so.

Request

Request Body

DataProfilesDataProfileOptionsObject

The data profile option to create.

metadata

Required *

DataProfilesDataProfileOptionsMetadata

Metadata about data profile options

asset_id

string

The ID of the data profile options (Response only)

account_id

Required *

string

The ID of the account which contains the data profile options.

project_id

string

The ID of the project to use.

catalog_id

string

The ID of the catalog to use.

created_at

string

The timestamp when the asset was created (in format YYYY-MM-DDTHH:mm:ssZ or YYYY-MM-DDTHH:mm:ss.sssZ, matching the date-time format as specified by RFC 3339) (Response only)

creator

string

The user ID that created the asset (Response only)

accessed_at

string

The timestamp when the asset was last accessed (in format YYYY-MM-DDTHH:mm:ssZ or YYYY-MM-DDTHH:mm:ss.sssZ, matching the date-time format as specified by RFC 3339) (Response only)

last_updater

string

The user ID that last updated the class (Response only)

entity

Required *

object

The underlying asset entity.

data_profile_options

Required *

object

The options of the profiling execution.

Path Parameters

Query Parameters

use_mde

boolean

Whether to use Metadata enrichment for profiling. If set to true, Metadata enrichment features are eanbled (will use new Lite services).

Response

201 - Success.

401 - You are not authorized to create data profile options.

403 - You are not permitted to perform this action.

404 - The data profile options cannot be found.

500 - An error occurred. The data profile options cannot be created.

501 - This API is not Implemented.

Delete data profile options

DELETE /v2/data_profiles/options

Status: Complete

Delete the list of data profile options in the specified project or catalog, provided the caller has the necessary rights to do so. If the user specifies the catalog_id or the project_id then the data profile options specified for the catalog or project is deleted. If none of the query parameters,catalog_id or project_id is specified, the default is to delete the account level data profile options.

Request

Path Parameters

Query Parameters

bss_account_ids

string

Comma separated list of the BSS Account IDs to use (restriced usage).

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

use_mde

boolean

Whether to use Metadata enrichment for profiling. If set to true, Metadata enrichment features are eanbled (will use new Lite services).

Response

204 - Success.

401 - You are not permitted to perform this action.

403 - You are not authorized to list the available data profiles options.

404 - Not Found.

500 - An error occurred. The data profiles options cannot be listed.

501 - This API is not Implemented.

Update the data profile options.

PATCH /v2/data_profiles/options

Status: Complete

Updates the data profile options for a given Account in the specified project or catalog, provided the caller has the necessary rights to do so. The data profile options that can be modified are max_row_count,row_percentage,max_distribution_size,max_numeric_stats_bin disabled flag in classification options,ibm_class_codes and custom_class_codes.

If the user specifies the catalog_id or the project_id then the data profile options specified for the catalog or project is updated. Update the account level data profile options if catalog_id or project_id is not specified.

Request

Request Body

The data profile options to add.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

use_mde

boolean

Whether to use Metadata enrichment for profiling. If set to true, Metadata enrichment features are eanbled (will use new Lite services).

Response

200 - Success.

401 - You are not authorized to update the data profile options.

403 - You are not permitted to perform this action.

404 - The data profile options you specified cannot be found.

500 - An error occurred. The data profile options cannot be updated.

501 - This API is not Implemented.

Persist profiling results

POST /v2/data_profiles/results

Status: Complete

Persist profiling results of dataset in a project or catalog. (For internal use only)

Request

Request Body

DataProfilesProfilingResults

The data profile option to create.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

tenant_id

Required *

string

The tenant ID to use.

correlation_id

string

The ID to be used for tracking end to end flow.

Response

200 - Success.

401 - You are not authorized to persist results.

403 - You are not permitted to perform this action.

404 - Asset or profile is missing

500 - An error occurred. The profiling results cannot be saved.

501 - This API is not Implemented.

Update data profile results status

POST /v2/data_profiles/results/status

Status: Complete

Update data profile result status of dataset in a project or catalog. (For internal use only)

Request

Request Body

DataProfilesDataProfileResultStatus

The data profile result status to update.

status

Required *

string

The data profile status.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

tenant_id

Required *

string

The tenant ID to use.

correlation_id

string

The ID to be used for tracking end to end flow.

Response

200 - Success.

401 - You are not authorized to update data profile result status.

403 - You are not permitted to perform this action.

404 - Asset or profile is missing

500 - An error occurred. The data profile result status cannot be saved.

501 - This API is not Implemented.

Get bivariate results of given asset.

GET /v2/data_profiles/bivariate_results

Status: Complete

Get bivariate results of dataset in a project or catalog. (For internal use only)

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

Response

200 - Success.

401 - You are not authorized to persist results.

403 - You are not permitted to perform this action.

404 - Asset is missing

500 - An error occurred. The bivariate results cannot be retrieved.

501 - This API is not Implemented.

Persist bivariate results of given asset.

POST /v2/data_profiles/bivariate_results

Status: Complete

Persist bivariate results of dataset in a project or catalog. (For internal use only)

Request

Request Body

DataProfilesBivariateResults

The bivariate results to persist.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

Response

200 - Success.

401 - You are not authorized to persist results.

403 - You are not permitted to perform this action.

404 - Asset is missing

500 - An error occurred. The bivariate results cannot be saved.

501 - This API is not Implemented.

Export data profile

GET /v2/data_profiles/export

Status: Complete

Export data profile of dataset in a project or catalog. (For internal use only)

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

taskId

Required *

string

The ID of the export task ID to use.

Response

200 - Success.

file_paths

array

List of file paths that hold the profiling results. These files should be added to the project export archive.

401 - You are not authorized to persist results.

403 - You are not permitted to perform this action.

404 - Asset or profile is missing

500 - An error occurred. The profiling results cannot be saved.

501 - This API is not Implemented.

Import data profile

POST /v2/data_profiles/import

Status: Complete

Import data profile of dataset in a project or catalog. (For internal use only)

Request

Request Body

DataProfilesDataProfileImport

The data profile to import.

source_path

string

Source path where the import archive is deflated. If this value is provided, the profiling results are read from source_path/assets/profiling directory by setting the root=true. If this value is not provided, results files are read from profiling directory by setting the root=false.

asset_ref_map

DataProfilesDataProfileImportAssetRefMap

Map of the old asset ids to new asset ids

owner_id

string

IBM cloud IAM user id of the creator of the asset.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

Required *

string

The ID of the data set to use.

Response

200 - Success.

401 - You are not authorized to persist results.

403 - You are not permitted to perform this action.

404 - Asset or profile is missing

500 - An error occurred. The profiling results cannot be saved.

501 - This API is not Implemented.

This filters rows from the frequency distribution.

POST /v2/data_profiles/{profile_id}/unique_values

This filters rows from the frequency distribution.

Request

Request Body

DataProfilesFrequencyDistributionRequestBody

project_id

string

catalog_id

string

dataset_id

Required *

string

column_name

Required *

string

get_total_count

boolean

value_after

string

count_after

integer

format_after

string

offset

integer

limit

integer

type

string

length

integer

scale

integer

precision

integer

format

string

data_class

string

sort

array

array

Path Parameters

profile_id

Required *

string

The profile ID to use.

Query Parameters

Response

200 - Success.

total_count

integer

unique_values

array

401 - You are not authorized to get the key analysis you specified.

trace

string

Trace information

errors

array

Errors occurred

403 - You are not permitted to perform this action.

trace

string

Trace information

errors

array

Errors occurred

404 - The key analysis task you specified cannot be found.

trace

string

Trace information

errors

array

Errors occurred

500 - An error occurred. The data profile you specified cannot be fetched.

trace

string

Trace information

errors

array

Errors occurred

Migrate data profile quality results to new Data Quality service

POST /v2/data_profiles/migrate

Status: Complete

Migrate data profile quality results of dataset in a project or catalog to new Data Quality service.

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. catalog_id or project_id is required.

project_id

string

The ID of the project to use. catalog_id or project_id is required.

dataset_id

string

The ID of the data set to use.(Use comma separated data set Id's for multiple data sets)

Response

200 - Successfully initiated migration process.

logs

array

400 - Bad request. Provided parameters could be invalid.

401 - You are not authorized, either token is expired or invalid.

403 - You are not permitted to perform this action. Only Editor or Admin are allowed.

404 - Catalog or Project not found.

500 - An error occurred. The profiling results cannot be migrated to data quality service.

501 - This API is not Implemented.

List Hummingbird tasks

GET /v1/hb_tasks

Status: Complete

Get the list of Hummingbird tasks for a specified accout or type, provided the caller has the necessary rights to do so.

Request

Path Parameters

Query Parameters

bss_account_id

string

The BSS Account ID to use.

job_type

string

The type of the job.

all_details

boolean

Fetch complete details of job.

Response

200 - Success.

401 - You are not permitted to perform this action.

403 - You are not authorized to list the available Hummingbird tasks.

404 - Not Found.

500 - An error occurred. The HB tasks cannot be listed.

trace

string

errors

array

Create a Hummingbird task

POST /v1/hb_tasks

Status: Complete

Creates a Hummingbird task entry job.

Request

Request Body

DataProfilesHbTaskRequest

The Hummingbird task to create.

account_id

Required *

string

The ID of the account

free_account_plan

Required *

boolean

Indicates if account plan is free plan

job_type

Required *

string

Type of the job

job_payload

Required *

string

The job payload

correlation_id

string

The id to track complete flow

status

string

Status of the HB job

priority

integer

Priority of the HB job

project_id_for_logs

string

The ID of the project where the spark job logs need to be saved. If this value is not provided or is invalid then the spark job logs will be stored in default COS bucket.

runtime_registration_parameters

DataProfilesRuntimeRegistrationParameters

A RuntimeRegistrationParameters holds details to be sent to runtimes api to report CUH for HB job.

environment_type

Required *

string

Type of of the component

tool_name

Required *

string

Tool name of the component

service_offering

Required *

string

Service offering name e.g. watson_knowledge_catalog

instance

Required *

string

The id of the instance the CUH needs to be charged to. e.g. an id of the wkc instance

capacity_units

integer

Capacity units multiplication factor

minimum_usage

integer

Minimum usage in milliseconds to be charged for this job

hardware_specification

object

If capacity_units is not provided then this can be used to alter the multiplication factor by the runtimes api.

compute_units

DataProfilesComputeUnits

A ComputeUnits holds details to determine if a particular account has surpassed its CUH.

stop_on_max_compute_units

Required *

boolean

Stop job submission if an account has surpassed its allocated CUH

notify_on_max_compute_units

Required *

boolean

Send a notification if an account has surpassed its allocated CUH

max_compute_units_per_month

Required *

number

Maximum allocated CUH per month for current account plan

Response

200 - Success.

401 - You are not authorized to create a Hummingbird task.

403 - You are not permitted to perform this action.

404 - The data profile cannot be found.

500 - An error occurred. The Hummingbird task cannot be created.

Stop Hummingbird tasks

POST /v1/hb_tasks/stop

Status: Complete

Stops given Hummingbird task ids. If the Hummingbird task is already completed or is not found then it will be ignored. If the task is locked by other process then it will be ignored as well.

Request

Request Body

DataProfilesHbTaskIds

The Hummingbird task ids to stop.

hb_task_ids

Required *

array

The array of hb_task_id to use during bulk processing

Response

200 - Success.

401 - You are not authorized to cancel Hummingbird tasks.

403 - You are not permitted to perform this action.

500 - An error occurred. The Hummingbird tasks cannot be stopped.

Delete Hummingbird tasks

POST /v1/hb_tasks/delete

Status: Complete

Delete given Hummingbird task ids. If a Hummingbird task is not found then it will be ignored. If the Hummingbird task is running and stop_in_progress_job is not true then it will be ignored. If the task is locked by other process then it will be ignored as well.

Request

Request Body

DataProfilesHbTaskIds

The Hummingbird task ids to delete.

hb_task_ids

Required *

array

The array of hb_task_id to use during bulk processing

Path Parameters

Query Parameters

stop_in_progress_job

boolean

Stop running job.

Response

200 - Success.

401 - You are not authorized to cancel a Hummingbird task.

403 - You are not permitted to perform this action.

500 - An error occurred. The Hummingbird tasks cannot be deleted.

Get HB task

GET /v1/hb_tasks/{hb_task_id}

Status: Complete

Gets a Hummingbird task.

Request

Path Parameters

hb_task_id

Required *

string

The ID of the HB task to use.

Query Parameters

Response

200 - Success.

id

string

The ID of the task

account_id

string

The ID of the account

free_account_plan

boolean

Indicates if account plan is free plan

job_type

string

Type of the job

job_payload

string

The job payload

correlation_id

string

The id to track complete flow

priority

integer

Priority of the HB job

job_id

string

The ID of the HB job

create_time

string

Timestamp of task creation

job_submission_time

string

Timestamp of job submission

job_end_time

string

Timestamp of job completion

job_execution_time

integer

The duration for which job was run

retry_count

integer

The number of times the job was retried

status

string

Status of the HB job

project_id_for_logs

string

The ID of the project where the spark job logs need to be saved. If this value is not provided or is invalid then the spark job logs will be stored in default COS bucket.

runtime_registration_parameters

DataProfilesRuntimeRegistrationParameters

A RuntimeRegistrationParameters holds details to be sent to runtimes api to report CUH for HB job.

compute_units

DataProfilesComputeUnits

A ComputeUnits holds details to determine if a particular account has surpassed its CUH.

401 - You are not authorized to get the data profile you specified.

403 - You are not permitted to perform this action.

404 - The HB task you specified cannot be found.

trace

string

errors

array

500 - An error occurred. The HB task you specified cannot be fetched.

trace

string

errors

array

Delete Hummingbird task

DELETE /v1/hb_tasks/{hb_task_id}

Status: Complete

Deletes a specified Hummingbird task.

This api will throw an exception if stop_in_progress_job parameter is not true and if job is running.

Request

Path Parameters

hb_task_id

Required *

string

The ID of the HB task to use.

Query Parameters

stop_in_progress_job

boolean

Stop running job.

Response

204 - Success.

401 - You are not authorized to delete Hummingbird task.

403 - You are not permitted to perform this action.

404 - Hummingbird task not found.

500 - An error occurred. The Hummingbird task cannot be deleted.

Start Hummingbird task

POST /v1/hb_tasks/{hb_task_id}/start

Status: Complete

Start the specified Hummingbird task, if it is in QUEUED state.

The Hummingbird task is starte in engine, if it is in queued state

Request

Path Parameters

hb_task_id

Required *

string

The ID of the HB task to use.

Query Parameters

Response

204 - Success.

400 - The Hummingbird task is not QUEUED.

401 - You are not authorized to start Hummingbird task.

403 - You are not permitted to perform this action.

404 - Hummingbird task not found.

500 - An error occurred. The failed to start Hummingbird task.

Stop Hummingbird task

POST /v1/hb_tasks/{hb_task_id}/stop

Status: Complete

Stop the specified Hummingbird task.

The Hummingbird task is force stopped in engine

Request

Path Parameters

hb_task_id

Required *

string

The ID of the HB task to use.

Query Parameters

Response

204 - Success.

401 - You are not authorized to delete Hummingbird task.

403 - You are not permitted to perform this action.

404 - Hummingbird task not found.

500 - An error occurred. The failed to stop Hummingbird task.

Get Hummingbird task logs

GET /v1/hb_tasks/{hb_task_id}/logs

Status: Complete

Get the spark job logs for Hummingbird task. In order to retrieve the job logs, the HB spark job must be successfully submitted. This will generate a job_id. When successful, this api would return the Hummingbird spark job log.

Request

Path Parameters

hb_task_id

Required *

string

The ID of the HB task to use.

Query Parameters

Response

200 - Success.

401 - You are not authorized to get Hummingbird task logs.

403 - You are not permitted to perform this action.

404 - Hummingbird task not found.

500 - An error occurred. Failed to retrieve Hummingbird task logs.

Get service information

GET /v1/hb_tasks/version

Status: Complete

Returns the service version.

Request

Response

200 - Success.

configuration

DataProfilesCommonCustomObject

Custom data to be associated with a given object

failure_message

string

A message indicating the cause if the service is not running correctly

service_name

string

The name of the service

status

string

An overall status indicating whether the service is running correctly

timestamp

string

The timestamp when the information was retrieved (in format YYYY-MM-DDTHH:mm:ssZ or YYYY-MM-DDTHH:mm:ss.sssZ, matching the date-time format as specified by RFC 3339)

version

string

The service version string

500 - An error occurred. No information about the service can be returned.

trace

string

errors

array

List all data quality rules or a subset of them

GET /data_quality/v3/projects/{project_id}/rules

Get a list of data quality rules in the project.

Request

Path Parameters

Query Parameters

start

The start token of the resource from where the page should begin.

limit

The maximum number of resources to return.

id

Comma-separated list of data quality rule identifiers.

Response

200 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

rules

array

A collection of data quality rules.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the list of data quality rules in the specified project.

trace

string

errors

array

500 - An error occurred. The list of data quality rules could not be returned.

trace

string

errors

array

Create data quality rule

POST /data_quality/v3/projects/{project_id}/rules

Create a data quality rule.

Request

Request Body

DataQualityRulePrototype

Data quality rule to create.

name

Required *

string

The name of the data quality rule. The rule name must be unique in the given project. If no unique name is provided, the quality rule will not be created.

description

string

The description of the data quality rule. If this property is omitted, no description is set.

dimension

DataQualityDimensionIdentity

Identity of a data quality dimension resource. If this property is omitted, no data quality dimension is associated with the resource.

id

Required *

string

Resource identifier.

apply_all_present_dimensions

boolean

Flag indicating whether the rule contributes to all dimensions that are defined in the data quality definitions used in this rule. If the value of this field is set to true, then `dimension` will be ignored.

input

Required *

DataQualityRuleInputPrototype

Data quality rule input details.

sql

object

Data quality rule input sql details. This property can be omitted if `definitions` values is provided.

definitions

array

Provides data quality rule input definition details. This property can be omitted if `sql` value is provided.

output

DataQualityRuleOutputPrototype

The output details of a data quality rule. If this property is omitted, no output records are saved.

database

object

The output database details when the output needs to be saved in a database table. This field can be omitted if value for `links` is provided.

maximum_record_count

integer

Maximum number of records to be written to the output. The value `-1` indicates that all records should be written to the output.

columns

Required *

array

A list of columns in the rule output.

array

The output links to be generated when the output needs to be further processed in the data stage flow. This field should be used when value of `data_stage` is provided and the output needs to be further passed to the next data stage operators. This field can be omitted if value for `database` field is provided.

joins

array

The joins between data assets referenced in bindings and output. This property is not required if the rule is to be run on a single data asset. This property is also not required if a value for `data_stage` is provided.

sampling

DataQualityRuleSamplingPrototype

The sampling options to be used during data quality rule run. If no sampling options are set, the rule is run against all the rows of the source.

sampling_type

string

The sampling method to use.

size

integer

The maximum size of the sample. This is the maximum number of source records that are tested against the rule logic.

interval

integer

The sampling interval for the sampling type `sequential`.

seed

integer

The sampling seed for the sampling type `random`. If no value for this property is provided, a value is generated from the current timestamp.

fraction

number

The sampling fraction for the sampling type `random`.

data_stage

DataQualityRuleDataStagePrototype

Representation of the data stage flow resource to create. If this property is omitted, no subflow is created for the data quality rule.

flow

Required *

object

Data stage flow to create.

propagate_all_incoming_columns

boolean

If selected, columns from the incoming link are propagated to the output in addition to the selected output.

read_only

boolean

If true, the referenced DataStage flow already exists and should not be created, updated or deleted.

Response

201 - Success.

name

string

The name of the data quality rule. The name of the quality rule will be unique in a given project.

description

string

The description of the data quality rule. If this property is omitted, no description is set.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

apply_all_present_dimensions

boolean

Flag indicating whether the rule contributes to all dimensions that are defined in the data quality definitions used in this rule. If the value of this field is set to true, then `dimension` will be ignored.

input

DataQualityRuleInput

Data quality rule input details.

output

DataQualityRuleOutput

The output details of a data quality rule.

joins

array

The joins between data assets referenced in bindings and output. This property is not required if the rule is to be run on a single data asset. This property is also not required if a `data_stage` element is provided.

sampling

DataQualityRuleSampling

The sampling options to be used during data quality rule run. If no sampling options are set, the rule is run against all the rows of the source.

data_stage

DataQualityRuleDataStage

Data stage flow details.

id

string

Resource identifier.

is_valid

boolean

Flag indicating whether the rule is valid or not.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to create data quality rules in the specified project.

trace

string

errors

array

500 - An error occurred. The data quality rule could not be created.

trace

string

errors

array

Delete data quality rules

DELETE /data_quality/v3/projects/{project_id}/rules

Delete the data quality rules for the given list of rule identifiers.

Request

Path Parameters

Query Parameters

id

Required *

Comma-separated list of data quality rule identifiers.

delete_output

boolean

The option to delete related output tables when deleting data quality rules.

cancel_unfinished_jobs

boolean

The option to cancel unfinished jobs before deleting or updating data quality rules.

Response

204 - Success.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to delete the data quality rules in the specified project.

trace

string

errors

array

500 - An error occurred. The data quality rules cannot be deleted.

trace

string

errors

array

Validate data quality rule

POST /data_quality/v3/projects/{project_id}/validate_rule

Check the validity of the data quality rule.

Request

Request Body

DataQualityRulePrototype

Data quality rule to validate.

name

Required *

string

The name of the data quality rule. The rule name must be unique in the given project. If no unique name is provided, the quality rule will not be created.

description

string

The description of the data quality rule. If this property is omitted, no description is set.

dimension

DataQualityDimensionIdentity

Identity of a data quality dimension resource. If this property is omitted, no data quality dimension is associated with the resource.

id

Required *

string

Resource identifier.

apply_all_present_dimensions

boolean

Flag indicating whether the rule contributes to all dimensions that are defined in the data quality definitions used in this rule. If the value of this field is set to true, then `dimension` will be ignored.

input

Required *

DataQualityRuleInputPrototype

Data quality rule input details.

sql

object

Data quality rule input sql details. This property can be omitted if `definitions` values is provided.

definitions

array

Provides data quality rule input definition details. This property can be omitted if `sql` value is provided.

output

DataQualityRuleOutputPrototype

The output details of a data quality rule. If this property is omitted, no output records are saved.

database

object

The output database details when the output needs to be saved in a database table. This field can be omitted if value for `links` is provided.

maximum_record_count

integer

Maximum number of records to be written to the output. The value `-1` indicates that all records should be written to the output.

columns

Required *

array

A list of columns in the rule output.

array

The output links to be generated when the output needs to be further processed in the data stage flow. This field should be used when value of `data_stage` is provided and the output needs to be further passed to the next data stage operators. This field can be omitted if value for `database` field is provided.

joins

array

The joins between data assets referenced in bindings and output. This property is not required if the rule is to be run on a single data asset. This property is also not required if a value for `data_stage` is provided.

sampling

DataQualityRuleSamplingPrototype

The sampling options to be used during data quality rule run. If no sampling options are set, the rule is run against all the rows of the source.

sampling_type

string

The sampling method to use.

size

integer

The maximum size of the sample. This is the maximum number of source records that are tested against the rule logic.

interval

integer

The sampling interval for the sampling type `sequential`.

seed

integer

The sampling seed for the sampling type `random`. If no value for this property is provided, a value is generated from the current timestamp.

fraction

number

The sampling fraction for the sampling type `random`.

data_stage

DataQualityRuleDataStagePrototype

Representation of the data stage flow resource to create. If this property is omitted, no subflow is created for the data quality rule.

flow

Required *

object

Data stage flow to create.

propagate_all_incoming_columns

boolean

If selected, columns from the incoming link are propagated to the output in addition to the selected output.

read_only

boolean

If true, the referenced DataStage flow already exists and should not be created, updated or deleted.

Path Parameters

project_id

Required *

The identifier of the project to use.

Query Parameters

Response

200 - The data quality rule is valid.

name

string

The name of the data quality rule. The name of the quality rule will be unique in a given project.

description

string

The description of the data quality rule. If this property is omitted, no description is set.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

apply_all_present_dimensions

boolean

Flag indicating whether the rule contributes to all dimensions that are defined in the data quality definitions used in this rule. If the value of this field is set to true, then `dimension` will be ignored.

input

DataQualityRuleInput

Data quality rule input details.

output

DataQualityRuleOutput

The output details of a data quality rule.

joins

array

The joins between data assets referenced in bindings and output. This property is not required if the rule is to be run on a single data asset. This property is also not required if a `data_stage` element is provided.

sampling

DataQualityRuleSampling

The sampling options to be used during data quality rule run. If no sampling options are set, the rule is run against all the rows of the source.

data_stage

DataQualityRuleDataStage

Data stage flow details.

id

string

Resource identifier.

is_valid

boolean

Flag indicating whether the rule is valid or not.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to validate data quality rules in the specified project.

trace

string

errors

array

500 - The data quality rule is invalid. See the error message for the cause.

trace

string

errors

array

Get data quality rule

GET /data_quality/v3/projects/{project_id}/rules/{id}

Gets the data quality rule with the given identifier.

Request

Response

200 - Success.

name

string

The name of the data quality rule. The name of the quality rule will be unique in a given project.

description

string

The description of the data quality rule. If this property is omitted, no description is set.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

apply_all_present_dimensions

boolean

Flag indicating whether the rule contributes to all dimensions that are defined in the data quality definitions used in this rule. If the value of this field is set to true, then `dimension` will be ignored.

input

DataQualityRuleInput

Data quality rule input details.

output

DataQualityRuleOutput

The output details of a data quality rule.

joins

array

The joins between data assets referenced in bindings and output. This property is not required if the rule is to be run on a single data asset. This property is also not required if a `data_stage` element is provided.

sampling

DataQualityRuleSampling

The sampling options to be used during data quality rule run. If no sampling options are set, the rule is run against all the rows of the source.

data_stage

DataQualityRuleDataStage

Data stage flow details.

id

string

Resource identifier.

is_valid

boolean

Flag indicating whether the rule is valid or not.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality rule with the given identifier from the specified project.

trace

string

errors

array

404 - The data quality rule cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality rule with the given identifier cannot be returned.

trace

string

errors

array

Delete data quality rule

DELETE /data_quality/v3/projects/{project_id}/rules/{id}

Delete the data quality rule with the given identifier.

Request

Path Parameters

Query Parameters

delete_output

boolean

The option to delete related output tables when deleting data quality rules.

cancel_unfinished_jobs

boolean

The option to cancel unfinished jobs before deleting or updating data quality rules.

Response

204 - Success.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to delete the data quality rule from the specified project.

trace

string

errors

array

404 - The data quality rule cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality rule cannot be deleted.

trace

string

errors

array

Update data quality rule

PATCH /data_quality/v3/projects/{project_id}/rules/{id}

Updates a data quality rule as specified in the payload details of the update rule request. The updates must be specified by using the JSON patch format, described in RFC 6902. <p> The following attributes can be patched: - name (value can only be replaced) - definition (value can only be replaced) - description (value can be added, removed, or replaced) - dimension (value can be added, removed, or replaced) - input (value can be added, removed or replaced) - output (value can be added, removed, or replaced) - joins (value can be added, removed, or replaced) - sampling (value can be added, removed, or replaced) - data_stage/propagate_all_incoming_columns (value can be added, removed, or replaced)

Request

Request Body

The updates to make in the data quality rule.

Path Parameters

Query Parameters

cancel_unfinished_jobs

boolean

The option to cancel unfinished jobs before deleting or updating data quality rules.

keep_rule_relationships

boolean

The option to keep the current data quality rule input binding relationships while updating the data quality rule.

Response

200 - Success.

name

string

The name of the data quality rule. The name of the quality rule will be unique in a given project.

description

string

The description of the data quality rule. If this property is omitted, no description is set.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

apply_all_present_dimensions

boolean

Flag indicating whether the rule contributes to all dimensions that are defined in the data quality definitions used in this rule. If the value of this field is set to true, then `dimension` will be ignored.

input

DataQualityRuleInput

Data quality rule input details.

output

DataQualityRuleOutput

The output details of a data quality rule.

joins

array

The joins between data assets referenced in bindings and output. This property is not required if the rule is to be run on a single data asset. This property is also not required if a `data_stage` element is provided.

sampling

DataQualityRuleSampling

The sampling options to be used during data quality rule run. If no sampling options are set, the rule is run against all the rows of the source.

data_stage

DataQualityRuleDataStage

Data stage flow details.

id

string

Resource identifier.

is_valid

boolean

Flag indicating whether the rule is valid or not.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to update the data quality rule in the specified project.

trace

string

errors

array

404 - The data quality rule cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality rule was not updated.

trace

string

errors

array

Run data quality rule

POST /data_quality/v3/projects/{project_id}/rules/{id}/execute

Run the data quality rule with the given identifier.

Request

Response

200 - Success.

passing_record_count

integer

Number of passing records.

failing_record_count

integer

Number of failing records.

input

DataQualityRuleInput

Data quality rule input details.

output

DataQualityRuleOutput

The output details of a data quality rule.

sampling

DataQualityRuleSampling

The sampling options to be used during data quality rule run. If no sampling options are set, the rule is run against all the rows of the source.

tested_record_count

integer

Number of records tested.

job

DataQualityJobReference

Identity of a job associated with a rule.

job_run

DataQualityJobRunReference

Identity of a run associated with a job, which in turn is associated with a a rule.

status

DataQualityRuleExecutionStatus

The status of the rule run.

started_at

string

The start time of the rule run.

ended_at

string

The end time of the rule run.

run_by

string

The name of the user that ran the rule.

name

string

Name of the result.

id

string

Resource identifier.

href

string

The location URL of a resource.

definition_counts

array

A list of execution results per definition.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to run the data quality rule in the specified project.

trace

string

errors

array

404 - The data quality rule cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality rule cannot be run.

trace

string

errors

array

List history of all data quality rule run results or a subset of them

GET /data_quality/v3/projects/{project_id}/rules/{rule_id}/executions

Gets the list of data quality rule runs. By default, the runs are sorted newest to oldest.

Request

Path Parameters

Query Parameters

start

The start token of the resource from where the page should begin.

limit

The maximum number of resources to return.

sort

string

The property name by which the results should be sorted. For descending order, use the hyphen (-) prefix with the value. If you omit this query parameter, the order value is `-started_at`, which means, results are sorted by the `started_at` value in descending order. The allowed fields are `started_at`, `passing_record_count`, `failing_record_count`, `tested_record_count`, `status.state`.

Response

200 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

executions

array

A list of rule run results, sorted based on the value of the `sort` query parameter.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality rule history in the specified project.

trace

string

errors

array

500 - An error occurred. The data quality rule history could not be returned.

trace

string

errors

array

Get the data quality rule run

GET /data_quality/v3/projects/{project_id}/rules/{rule_id}/executions/{id}

Gets the data quality rule run result with the given identifier.

Request

Path Parameters

rule_id

Required *

The data quality rule identifier.

id

Required *

The run identifier to use.

project_id

Required *

The identifier of the project to use.

Query Parameters

Response

200 - Success.

passing_record_count

integer

Number of passing records.

failing_record_count

integer

Number of failing records.

input

DataQualityRuleInput

Data quality rule input details.

output

DataQualityRuleOutput

The output details of a data quality rule.

sampling

DataQualityRuleSampling

The sampling options to be used during data quality rule run. If no sampling options are set, the rule is run against all the rows of the source.

tested_record_count

integer

Number of records tested.

job

DataQualityJobReference

Identity of a job associated with a rule.

job_run

DataQualityJobRunReference

Identity of a run associated with a job, which in turn is associated with a a rule.

status

DataQualityRuleExecutionStatus

The status of the rule run.

started_at

string

The start time of the rule run.

ended_at

string

The end time of the rule run.

run_by

string

The name of the user that ran the rule.

name

string

Name of the result.

id

string

Resource identifier.

href

string

The location URL of a resource.

definition_counts

array

A list of execution results per definition.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality rule run result in the specified project.

trace

string

errors

array

500 - An error occurred. The result of data quality rule run could not be returned.

trace

string

errors

array

List all data quality definitions or a subset of them

GET /data_quality/v3/projects/{project_id}/definitions

Gets the list of all data quality definitions.

Request

Path Parameters

Query Parameters

start

The start token of the resource from where the page should begin.

limit

The maximum number of resources to return.

id

Comma-separated list of data quality definition identifiers.

Response

200 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

definitions

array

A collection of existing definitions.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the list of data quality definitions in the specified project.

trace

string

errors

array

500 - An error occurred. The list of data quality definitions cannot be returned.

trace

string

errors

array

Create data quality definition

POST /data_quality/v3/projects/{project_id}/definitions

Creates a data quality definition in the specified project.

Request

Request Body

DataQualityDefinitionPrototype

Data quality definition to create.

name

Required *

string

The name of the data quality definition. The name of the definition must be unique in the given project. If no unique name is provided, the REST call fails.

description

string

The description of the data quality definition. If this property is omitted, no description is set.

expression

Required *

string

The expression of the data quality definition.

dimension

DataQualityDimensionIdentity

Identity of a data quality dimension resource. If this property is omitted, no data quality dimension is associated with the resource.

id

Required *

string

Resource identifier.

Response

201 - Success.

name

string

The name of the data quality definition. The name of the quality definition is unique in a given project.

description

string

The description of the data quality definition. If this property is omitted, no description is set.

expression

string

The expression of the data quality definition.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

id

string

Resource identifier.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to create a definition in the specified project.

trace

string

errors

array

500 - An error occurred. The definition was not created.

trace

string

errors

array

Delete data quality definitions

DELETE /data_quality/v3/projects/{project_id}/definitions

Delete the data quality definitions with the given identifiers.

Request

Path Parameters

Query Parameters

id

Required *

Comma separated list of data quality definition identifiers.

Response

204 - Success.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to delete the data quality definitions in the specified project or catalog.

trace

string

errors

array

500 - An error occurred. The data quality definitions cannot be deleted.

trace

string

errors

array

Validate data quality definition expression

POST /data_quality/v3/projects/{project_id}/validate_definition

Validate the specified definition expression.

Request

Request Body

DataQualityDefinitionPrototype

Data quality definition to validate.

name

Required *

string

The name of the data quality definition. The name of the definition must be unique in the given project. If no unique name is provided, the REST call fails.

description

string

The description of the data quality definition. If this property is omitted, no description is set.

expression

Required *

string

The expression of the data quality definition.

dimension

DataQualityDimensionIdentity

Identity of a data quality dimension resource. If this property is omitted, no data quality dimension is associated with the resource.

id

Required *

string

Resource identifier.

Path Parameters

project_id

Required *

The identifier of the project to use.

Query Parameters

partial_expression

boolean

True if the expression to validate is an output column expression. False if the expression to validate is a data quality definition expression. Default value is false.

Response

200 - Success.

variables

array

The list of variables in this expression. This field is set if the rule is valid (`is_valid=true`).

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to validate the data quality definition in the specified project or catalog.

trace

string

errors

array

500 - An error occurred. The data quality definitions could not be validated.

trace

string

errors

array

Get data quality definition

GET /data_quality/v3/projects/{project_id}/definitions/{id}

Gets the data quality definition with the given identifier.

Request

Response

200 - Success.

name

string

The name of the data quality definition. The name of the quality definition is unique in a given project.

description

string

The description of the data quality definition. If this property is omitted, no description is set.

expression

string

The expression of the data quality definition.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

id

string

Resource identifier.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality definition with the given ID from the specified project or catalog.

trace

string

errors

array

404 - The data quality definition cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality definition with the given identifier could not be returned.

trace

string

errors

array

Replace data quality definition

PUT /data_quality/v3/projects/{project_id}/definitions/{id}

Replace a data quality definition.

Request

Request Body

DataQualityDefinitionPrototype

Data quality definition to replace.

name

Required *

string

The name of the data quality definition. The name of the definition must be unique in the given project. If no unique name is provided, the REST call fails.

description

string

The description of the data quality definition. If this property is omitted, no description is set.

expression

Required *

string

The expression of the data quality definition.

dimension

DataQualityDimensionIdentity

Identity of a data quality dimension resource. If this property is omitted, no data quality dimension is associated with the resource.

id

Required *

string

Resource identifier.

Response

200 - Success.

name

string

The name of the data quality definition. The name of the quality definition is unique in a given project.

description

string

The description of the data quality definition. If this property is omitted, no description is set.

expression

string

The expression of the data quality definition.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

id

string

Resource identifier.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to update data quality definitions in the specified project or catalog.

trace

string

errors

array

500 - An error occurred. The data quality definition was not updated.

trace

string

errors

array

Delete data quality definition

DELETE /data_quality/v3/projects/{project_id}/definitions/{id}

Delete the data quality definition with the given identifier.

Request

Response

204 - Success.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to delete the data quality definition from the specified project.

trace

string

errors

array

404 - The data quality definition cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality definition cannot be deleted.

trace

string

errors

array

Update data quality definition

PATCH /data_quality/v3/projects/{project_id}/definitions/{id}

Updates a data quality definition as specified in the payload details of the update definition request. The updates must be specified by using the JSON patch format, described in RFC 6902. <p> The following attributes can be patched. - name (value can only be replaced) - description (value can be added, removed, or replaced) - expression (value can only be replaced) - dimension (value can be added, removed, or replaced)

Request

Request Body

The updates to make in the data quality definition.

Response

200 - Success.

name

string

The name of the data quality definition. The name of the quality definition is unique in a given project.

description

string

The description of the data quality definition. If this property is omitted, no description is set.

expression

string

The expression of the data quality definition.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

id

string

Resource identifier.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to update the data quality definition in the specified project.

trace

string

errors

array

404 - The data quality definition cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality definition was not updated.

trace

string

errors

array

List all data quality dimensions

GET /data_quality/v3/projects/{project_id}/dimensions

Gets the list of all data quality dimensions

Request

Path Parameters

project_id

Required *

The identifier of the project to use.

Query Parameters

start

The start token of the resource from where the page should begin.

limit

The maximum number of resources to return.

Response

200 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

dimensions

array

An array of data quality dimensions.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You are not permitted to get data quality dimensions of

the specified project.

trace

string

errors

array

500 - An error occurred. The list of data quality dimensions cannot be returned.

trace

string

errors

array

Get project settings for data quality rules

GET /data_quality/v3/projects/{project_id}/settings

Gets the project settings for data quality rules.

Request

Response

200 - Success.

default_else_value

boolean

In rules of the form "IF condition THEN test", this property indicates how data records that do not fulfil the condition have to be evaluated. If the property is not set, the data records are not counted. Otherwise, the records are counted as failing (false) or as passing (true) as defined.

ignore_trailing_spaces

boolean

In rules containing equality tests between strings, this property indicates whether the values to be tested should consider trailing spaces.

implicit_casting

boolean

This property indicates whether values of data quality rule variables have to be casted automatically to the type expected in the data quality rule expression.

max_string_length

integer

The maximum length of String values when executing data quality rules.

allow_partial_evaluation

boolean

In rules with multiple definitions, indicates if definitions evaluating as null (undefined) have to be considered failing (false) or passing (true).

case_sensitive_group_key

boolean

This property indicates whether group keys for aggregations in the data quality rule are case sensitive or not.

allow_quoted_variables

boolean

If set to true, a string surrounded by double quotes in an expression will be treated as a variable instead of string literal value.

heap_size

integer

The heap size in MB of the Java stages needed to implement data rules.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality rule settings in the specified project.

trace

string

errors

array

500 - An error occurred. The project settings for data quality rules could not be returned.

trace

string

errors

array

Replace project settings for data quality rules

PUT /data_quality/v3/projects/{project_id}/settings

Replace project settings for data quality rules.

Request

Request Body

DataQualitySettingsPrototype

Project settings for data quality rules.

default_else_value

boolean

In rules of the form "IF condition THEN test", this property indicates how data records that do not fulfil the condition have to be evaluated. If the property is not set, the data records are not counted. Otherwise, the records are counted as failing (false) or as passing (true) as defined.

ignore_trailing_spaces

boolean

In rules containing equality tests between strings, this property indicates whether the values to be tested should consider trailing spaces.

implicit_casting

boolean

This property indicates whether values of data quality rule variables have to be casted automatically to the type expected in the data quality rule expression.

max_string_length

integer

The maximum length of String values when executing data quality rules.

allow_partial_evaluation

boolean

In rules with multiple definitions, indicates if definitions evaluating as null (undefined) have to be considered failing (false) or passing (true).

case_sensitive_group_key

boolean

This property indicates whether group keys for aggregations in the data quality rule are case sensitive or not.

allow_quoted_variables

boolean

If set to true, a string surrounded by double quotes in an expression will be treated as a variable instead of string literal value.

heap_size

integer

The heap size in MB of the Java stages needed to implement data rules.

Response

200 - Success.

default_else_value

boolean

In rules of the form "IF condition THEN test", this property indicates how data records that do not fulfil the condition have to be evaluated. If the property is not set, the data records are not counted. Otherwise, the records are counted as failing (false) or as passing (true) as defined.

ignore_trailing_spaces

boolean

In rules containing equality tests between strings, this property indicates whether the values to be tested should consider trailing spaces.

implicit_casting

boolean

This property indicates whether values of data quality rule variables have to be casted automatically to the type expected in the data quality rule expression.

max_string_length

integer

The maximum length of String values when executing data quality rules.

allow_partial_evaluation

boolean

In rules with multiple definitions, indicates if definitions evaluating as null (undefined) have to be considered failing (false) or passing (true).

case_sensitive_group_key

boolean

This property indicates whether group keys for aggregations in the data quality rule are case sensitive or not.

allow_quoted_variables

boolean

If set to true, a string surrounded by double quotes in an expression will be treated as a variable instead of string literal value.

heap_size

integer

The heap size in MB of the Java stages needed to implement data rules.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to define project settings for data quality rules in the specified project.

trace

string

errors

array

500 - An error occurred. The project settings for data quality rules were not created or updated.

trace

string

errors

array

Get data quality rule from catalog

GET /data_quality/v3/catalogs/{catalog_id}/rules/{id}

Gets the data quality rule from catalog with the given identifier.

Request

Response

200 - Success.

name

string

The name of the data quality rule. The name of the quality rule will be unique in a given project.

description

string

The description of the data quality rule. If this property is omitted, no description is set.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

apply_all_present_dimensions

boolean

Flag indicating whether the rule contributes to all dimensions that are defined in the data quality definitions used in this rule. If the value of this field is set to true, then `dimension` will be ignored.

input

DataQualityRuleInput

Data quality rule input details.

output

DataQualityRuleOutput

The output details of a data quality rule.

joins

array

The joins between data assets referenced in bindings and output. This property is not required if the rule is to be run on a single data asset. This property is also not required if a `data_stage` element is provided.

sampling

DataQualityRuleSampling

The sampling options to be used during data quality rule run. If no sampling options are set, the rule is run against all the rows of the source.

data_stage

DataQualityRuleDataStage

Data stage flow details.

id

string

Resource identifier.

is_valid

boolean

Flag indicating whether the rule is valid or not.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality rule with the given identifier from the specified catalog.

trace

string

errors

array

404 - The data quality rule cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality rule with the given identifier cannot be returned.

trace

string

errors

array

Get data quality definition from catalog

GET /data_quality/v3/catalogs/{catalog_id}/definitions/{id}

Gets the data quality definition from catalog with the given identifier.

Request

Response

200 - Success.

name

string

The name of the data quality definition. The name of the quality definition is unique in a given project.

description

string

The description of the data quality definition. If this property is omitted, no description is set.

expression

string

The expression of the data quality definition.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

id

string

Resource identifier.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality definition with the given ID from the specified project or catalog.

trace

string

errors

array

404 - The data quality definition cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality definition with the given identifier could not be returned.

trace

string

errors

array

Update data quality definition in catlog

PATCH /data_quality/v3/catalogs/{catalog_id}/definitions/{id}

Updates a data quality definition as specified in the payload details of the update definition request. The updates must be specified by using the JSON patch format, described in RFC 6902. <p> The following attributes can be patched. - dimension (value can be added, removed, or replaced)

Request

Request Body

The updates to make in the data quality definition.

Response

200 - Success.

name

string

The name of the data quality definition. The name of the quality definition is unique in a given project.

description

string

The description of the data quality definition. If this property is omitted, no description is set.

expression

string

The expression of the data quality definition.

dimension

DataQualityDimensionReference1

Identity of a data quality dimension resource.

id

string

Resource identifier.

href

string

The location URL of a resource.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to update the data quality definition in the specified catalog.

trace

string

errors

array

404 - The data quality definition cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality definition was not updated.

trace

string

errors

array

Get data quality assets

GET /data_quality/v4/assets

Get a list of data quality assets.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.assets.read

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

start

The start token of the resource from where the page should begin. If omitted, begins with first resource.

limit

The maximum number of resources to return.

include_children

boolean

If true include the children in the returned resource. If false, only return the resource without its eventual children.

type

The type of the resource to search. If omitted, filtering on type is not applied

Response

200 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

assets

array

An array of data quality assets.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the list of data quality assets.

trace

string

errors

array

500 - An error occurred. The list of data quality assets cannot be returned.

trace

string

errors

array

Create Data quality assets

POST /data_quality/v4/assets

Create a data quality asset.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.assets.create

Request

Request Body

DataQualityAssetPrototype

Data quality asset to create.

name

Required *

object

Name of a data quality resource.(Name need not be unique)

parent

object

The Id of an eventual parent, or null if this asset has no parent

native_id

Required *

object

Unique identifier set by the creator of the resource

wkc_asset_type

string

The type of the IBM Knowledge Catalog asset

wkc_asset_id

object

The identity of the IBM Knowledge Catalog asset this Asset is referring

wkc_container_id

object

The identity of the IBM Knowledge Catalog container (either project/catalog/space) this asset belongs to.

virtualized_asset

object

If specified, indicates that this asset is the virtualization of another asset whose id is specified in this field

type

Required *

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

weight

Required *

number

The weight of this asset in the computation of the data quality scores

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

Response

201 - Success

parent

object

The Id of an eventual parent, or null if this asset has no parent

name

object

Name of a data quality resource.(Name need not be unique)

native_id

object

Unique identifier set by the creator of the resource

wkc_asset_type

string

The type of the IBM Knowledge Catalog asset

wkc_asset_id

object

The identity of the IBM Knowledge Catalog asset this Asset is referring

wkc_container_id

object

The identity of the IBM Knowledge Catalog container (either project/catalog/space) this asset belongs to.

virtualized_asset

object

If specified, indicates that this asset is the virtualization of another asset whose id is specified in this field

type

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

weight

number

The weight of this asset in the computation of the data quality scores

children

array

Eventual children of this asset. If omitted, no children for this asset.

400 - The given payload is invalid and the asset is not created.

trace

string

errors

array

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to create a data quality asset.

trace

string

errors

array

409 - The data quality asset exists already and cannot be created.

trace

string

errors

array

500 - An error occurred. The data quality asset cannot be created.

trace

string

errors

array

Get a data quality asset

GET /data_quality/v4/assets/{id}

Get the data quality asset with the given identifier.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.assets.read

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

include_children

boolean

If true include the children in the returned resource. If false, only return the resource without its eventual children.

Response

200 - Success.

parent

object

The Id of an eventual parent, or null if this asset has no parent

name

object

Name of a data quality resource.(Name need not be unique)

native_id

object

Unique identifier set by the creator of the resource

wkc_asset_type

string

The type of the IBM Knowledge Catalog asset

wkc_asset_id

object

The identity of the IBM Knowledge Catalog asset this Asset is referring

wkc_container_id

object

The identity of the IBM Knowledge Catalog container (either project/catalog/space) this asset belongs to.

virtualized_asset

object

If specified, indicates that this asset is the virtualization of another asset whose id is specified in this field

type

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

weight

number

The weight of this asset in the computation of the data quality scores

children

array

Eventual children of this asset. If omitted, no children for this asset.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality asset.

trace

string

errors

array

404 - The data quality asset with the given ID cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality asset cannot be returned.

trace

string

errors

array

Delete data quality asset

DELETE /data_quality/v4/assets/{id}

Delete the data quality asset with the given identifier and all its children recursively

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.assets.delete

Auditing

Calling this method generates the following auditing event.

  • wdp-data_quality.issue.delete

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

delete_children

boolean

If true, delete all children recursively. Otherwise, only selected one is deleted.

Response

204 - Success.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to delete the data quality asset.

trace

string

errors

array

404 - The data quality asset cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality asset cannot be deleted.

trace

string

errors

array

Update or patch a data quality asset

PATCH /data_quality/v4/assets/{id}

Update a data quality asset as specified in the payload details of the request.

The updates must be specified by using the JSON patch format, described in RFC 6902. <p> The following attributes can be updated: - /name (value can only be replaced) - /weight (value can only be replaced)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.assets.update

Request

Request Body

The updates to make in the data quality rule.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

Response

200 - Success.

parent

object

The Id of an eventual parent, or null if this asset has no parent

name

object

Name of a data quality resource.(Name need not be unique)

native_id

object

Unique identifier set by the creator of the resource

wkc_asset_type

string

The type of the IBM Knowledge Catalog asset

wkc_asset_id

object

The identity of the IBM Knowledge Catalog asset this Asset is referring

wkc_container_id

object

The identity of the IBM Knowledge Catalog container (either project/catalog/space) this asset belongs to.

virtualized_asset

object

If specified, indicates that this asset is the virtualization of another asset whose id is specified in this field

type

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

weight

number

The weight of this asset in the computation of the data quality scores

children

array

Eventual children of this asset. If omitted, no children for this asset.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to update the data quality asset.

trace

string

errors

array

404 - The data quality asset with the given ID cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality asset cannot be updated.

trace

string

errors

array

Search data quality asset with given native id and type

POST /data_quality/v4/search_dq_asset

Search for a data quality asset by its native id and type

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.assets.read

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

native_id

The native id, as known by the DQ producer, of the resource to search. If not provided, other identity parameters must be provided.

type

The type of the resource to search. If omitted, filtering on type is not applied

wkc_asset_id

The IBM Knowledge Catalog asset ID in cams. If omitted, the field is not set.

include_children

boolean

If true include the children in the returned resource. If false, only return the resource without its eventual children.

Response

200 - Success.

parent

object

The Id of an eventual parent, or null if this asset has no parent

name

object

Name of a data quality resource.(Name need not be unique)

native_id

object

Unique identifier set by the creator of the resource

wkc_asset_type

string

The type of the IBM Knowledge Catalog asset

wkc_asset_id

object

The identity of the IBM Knowledge Catalog asset this Asset is referring

wkc_container_id

object

The identity of the IBM Knowledge Catalog container (either project/catalog/space) this asset belongs to.

virtualized_asset

object

If specified, indicates that this asset is the virtualization of another asset whose id is specified in this field

type

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

weight

number

The weight of this asset in the computation of the data quality scores

children

array

Eventual children of this asset. If omitted, no children for this asset.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to search data quality assets.

trace

string

errors

array

404 - The data quality asset cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality asset cannot be searched.

trace

string

errors

array

Get data quality checks

GET /data_quality/v4/checks

Get a list of data quality checks.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.checks.read

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

start

The start token of the resource from where the page should begin. If omitted, begins with first resource.

limit

The maximum number of resources to return.

include_children

boolean

If true include the children in the returned resource. If false, only return the resource without its eventual children.

type

The type of the resource to search. If omitted, filtering on type is not applied

Response

200 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

checks

array

An array of data quality checks.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the list of data quality checks.

trace

string

errors

array

500 - An error occurred. The list of data quality checks cannot be returned.

trace

string

errors

array

Create data quality checks

POST /data_quality/v4/checks

Create a data quality check.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.checks.create

Request

Request Body

DataQualityCheckPrototype

Data quality check to create.

dimension

Required *

object

the dimension this check belongs to

id

Required *

string

Resource identifier.

name

Required *

object

Name of a data quality resource.(Name need not be unique)

native_id

Required *

object

Unique identifier set by the creator of the resource

parent

object

The Id of an eventual parent, or null if this check has no parent

type

Required *

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

Response

201 - Success

dimension

object

the dimension this check belongs to

name

object

Name of a data quality resource.(Name need not be unique)

native_id

object

Unique identifier set by the creator of the resource

wkc_container_id

object

The identity of the IBM Knowledge Catalog container (either project/catalog/space) this check belongs to.

parent

object

The Id of an eventual parent, or null if this check has no parent

type

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

children

array

The optional eventual children of this data quality check.

issues

array

An optional list of issues reported by this data quality check.

400 - The given payload is invalid and the check is not created.

trace

string

errors

array

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to create a data quality check.

trace

string

errors

array

409 - The data quality check exists already and cannot be created.

trace

string

errors

array

500 - An error occurred. The data quality check cannot be created.

trace

string

errors

array

Get a data quality check

GET /data_quality/v4/checks/{id}

Get the data quality check with the given identifier.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.checks.read

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

include_children

boolean

If true include the children in the returned resource. If false, only return the resource without its eventual children.

Response

200 - Success.

dimension

object

the dimension this check belongs to

name

object

Name of a data quality resource.(Name need not be unique)

native_id

object

Unique identifier set by the creator of the resource

wkc_container_id

object

The identity of the IBM Knowledge Catalog container (either project/catalog/space) this check belongs to.

parent

object

The Id of an eventual parent, or null if this check has no parent

type

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

children

array

The optional eventual children of this data quality check.

issues

array

An optional list of issues reported by this data quality check.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality check.

trace

string

errors

array

404 - The data quality check with the given ID cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality check cannot be returned.

trace

string

errors

array

Delete a data quality check

DELETE /data_quality/v4/checks/{id}

Delete the data quality check with the given identifier and all its children recursively

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.checks.delete

Auditing

Calling this method generates the following auditing event.

  • wdp-data_quality.issue.delete

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

delete_children

boolean

If true, delete all children recursively. Otherwise, only selected one is deleted.

Response

204 - Success.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to delete the data quality check.

trace

string

errors

array

404 - The data quality check cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality check cannot be deleted.

trace

string

errors

array

Update or patch a data quality check

PATCH /data_quality/v4/checks/{id}

Update a data quality check as specified in the payload details of the request.

The updates must be specified by using the JSON patch format, described in RFC 6902. <p> The following attributes can be updated: - /name (value can only be replace) - /dimension/id (value can be add, remove or replace) - /details (value can be add, remove or replace)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.checks.update

Request

Request Body

The updates to make in the data quality rule.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

Response

200 - Success.

dimension

object

the dimension this check belongs to

name

object

Name of a data quality resource.(Name need not be unique)

native_id

object

Unique identifier set by the creator of the resource

wkc_container_id

object

The identity of the IBM Knowledge Catalog container (either project/catalog/space) this check belongs to.

parent

object

The Id of an eventual parent, or null if this check has no parent

type

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

children

array

The optional eventual children of this data quality check.

issues

array

An optional list of issues reported by this data quality check.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to update the data quality check.

trace

string

errors

array

404 - The data quality check with the given ID cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality check cannot be updated.

trace

string

errors

array

Search for a data quality check by its native id and type

POST /data_quality/v4/search_dq_check

Search for a data quality check by its native id and type

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.checks.read

Request

Path Parameters

Query Parameters

native_id

Required *

The native id, as known by the DQ producer, of the resource to search.

type

Required *

The type of the resource to search.

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

include_children

boolean

If true include the children in the returned resource. If false, only return the resource without its eventual children.

Response

200 - Success.

dimension

object

the dimension this check belongs to

name

object

Name of a data quality resource.(Name need not be unique)

native_id

object

Unique identifier set by the creator of the resource

wkc_container_id

object

The identity of the IBM Knowledge Catalog container (either project/catalog/space) this check belongs to.

parent

object

The Id of an eventual parent, or null if this check has no parent

type

object

The type of the data quality resource

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

children

array

The optional eventual children of this data quality check.

issues

array

An optional list of issues reported by this data quality check.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to search data quality checks.

trace

string

errors

array

404 - The data quality check cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality check cannot be searched.

trace

string

errors

array

Get a list of data quality dimensions

GET /data_quality/v4/dimensions

Get a list of data quality dimensions.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.dimensions.read

Request

Path Parameters

Query Parameters

start

The start token of the resource from where the page should begin. If omitted, begins with first resource.

limit

The maximum number of resources to return.

Response

200 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

dimensions

array

An array of data quality dimensions.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the list of data quality dimensions.

trace

string

errors

array

500 - An error occurred. The list of data quality dimensions cannot be returned.

trace

string

errors

array

Create a data quality dimension

POST /data_quality/v4/dimensions

Create a data quality dimension.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.dimensions.create

Request

Request Body

DataQualityDimensionPrototype

Data quality dimension to create.

name

Required *

object

Name of a data quality resource.(Name need not be unique)

description

string

The optional description of the dimension. Provide a description to understand the reason for its existence.

Response

201 - Success

is_default

boolean

Flag indicating whether the dimension is a built-in dimension or not.

400 - The given payload is invalid and the dimension is not created.

trace

string

errors

array

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to create a data quality dimension.

trace

string

errors

array

409 - The data quality dimension exists already and cannot be created.

trace

string

errors

array

500 - An error occurred. The data quality dimension cannot be created.

trace

string

errors

array

Get the data quality dimension with the given identifier

GET /data_quality/v4/dimensions/{id}

Get the data quality dimension with the given identifier.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.dimensions.read

Request

Response

200 - Success.

is_default

boolean

Flag indicating whether the dimension is a built-in dimension or not.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality dimension.

trace

string

errors

array

404 - The data quality dimension with the given ID cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality dimension cannot be returned.

trace

string

errors

array

Delete the data quality dimension with the given identifier.

DELETE /data_quality/v4/dimensions/{id}

Delete the data quality dimension with the given identifier. <p> All data quality checks associated to this dimension will point to no dimension. All DQ scores stored for this dimension will be deleted

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.dimensions.delete

Request

Response

204 - Success.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to delete the data quality dimension.

trace

string

errors

array

404 - The data quality dimension cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality dimension cannot be deleted.

trace

string

errors

array

Update a data quality dimension as specified in the payload details of the request

PATCH /data_quality/v4/dimensions/{id}

Update a data quality dimension as specified in the payload details of the request.

The updates must be specified by using the JSON patch format, described in RFC 6902. <p> The following attributes can be updated: - /name (value can only be replaced) - /description (value can be added, removed, or replaced)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.dimensions.update

Request

Request Body

The updates to make in the data quality rule.

Response

200 - Success.

is_default

boolean

Flag indicating whether the dimension is a built-in dimension or not.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to update the data quality dimension.

trace

string

errors

array

404 - The data quality dimension with the given ID cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality dimension cannot be updated.

trace

string

errors

array

Search for data quality dimensions by name or part of their names

POST /data_quality/v4/search_dq_dimension

Search for data quality dimensions by name or part of their names

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.dimensions.read

Request

Path Parameters

Query Parameters

name

Required *

The name of the resource to search or a part of the name of the resources to search.

Response

200 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

dimensions

array

An array of data quality dimensions.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to search data quality dimensions.

trace

string

errors

array

500 - An error occurred. The data quality dimension cannot be searched.

trace

string

errors

array

Get a list of data quality issues

GET /data_quality/v4/issues

Get a list of data quality issues.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.issues.read

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

start

The start token of the resource from where the page should begin. If omitted, begins with first resource.

limit

The maximum number of resources to return.

reported_for.id

Comma-separated list of data quality asset identifier to search issues of. If not provided, filtering on asset is not applied.

check.id

Comma-separated list of data quality check id identifier to search issues of. If not provided, filtering on a check is not applied.

check.native_id

Comma-separated list of data quality check native id identifier to search issues of. If not provided, filtering on a check is not applied. Only one of checkId or checkNativeId should be provided; if both are provided, an error will be thrown.

check.name

The name or part of the name of data quality check identifier to search issues of. If not provided, filtering on name of check is not applied.

check.dimension.id

Comma-separated list of data quality dimension identifiers.

latest_only

boolean

If true, returns only the latest issue summary of each DQ check. If false, returns the latest and archived issues.

type

The type of the resource to search. If omitted, filtering on type is not applied

include_children

boolean

If true include the children in the returned resource. If false, only return the resource without its eventual children.

sort_by

string

The issue attribute to sort on. If omitted, sorting on last update time is applied

sort_direction

string

The direction to sort with. If omitted, sorting attribute descending is applied

Response

200 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

issues

array

An array of data quality issues.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the list of data quality issues.

trace

string

errors

array

500 - An error occurred. The list of data quality issues cannot be returned.

trace

string

errors

array

Create a data quality issue

POST /data_quality/v4/issues

Create a data quality issue.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.issues.create

Auditing

Calling this method generates the following auditing event.

  • wdp-data_quality.issue.create

Request

Request Body

DataQualityIssuePrototype

Data quality issue to create.

check

Required *

object

the check that produces this issue

reported_for

Required *

object

The Id of the asset on which this issue was found

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

number_of_occurrences

integer

The absolute number of occurrences of the issues which have been identified on the asset. If this is missing, percent_occurrences must be provided.

number_of_tested_records

integer

The total number of records which have been tested by the Data Quality Check. If this is missing, percent_occurrences must be provided.

percent_occurrences

number

The relative frequency of the issue (percentage of tested records having the issue), as a number between 0.0 and 1.0. If omitted, it is calculated using number_of_occurrences and number_of_tested_records.

status

string

The status of the issue.

ignored

Required *

boolean

Flag indicating whether the issue is ignored or not.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

Response

201 - Success

check

object

the check that produces this issue

reported_for

object

The Id of the asset on which this issue was found

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

number_of_occurrences

integer

The absolute number of occurrences of the issues which have been identified on the asset. If this is missing, percent_occurrences must be provided.

number_of_tested_records

integer

The total number of records which have been tested by the Data Quality Check. If this is missing, percent_occurrences must be provided.

percent_occurrences

number

The relative frequency of the issue (percentage of tested records having the issue), as a number between 0.0 and 1.0. If omitted, it is calculated using number_of_occurrences and number_of_tested_records.

status

string

The status of the issue.

ignored

boolean

Flag indicating whether the issue is ignored or not.

400 - The given payload is invalid and the issue is not created.

trace

string

errors

array

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to create a data quality issue.

trace

string

errors

array

409 - The data quality issue exists already and cannot be created.

trace

string

errors

array

500 - An error occurred. The data quality issue cannot be created.

trace

string

errors

array

Get the data quality issue with the given identifier

GET /data_quality/v4/issues/{id}

Get the data quality issue with the given identifier.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.issues.read

Request

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

Response

200 - Success.

check

object

the check that produces this issue

reported_for

object

The Id of the asset on which this issue was found

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

number_of_occurrences

integer

The absolute number of occurrences of the issues which have been identified on the asset. If this is missing, percent_occurrences must be provided.

number_of_tested_records

integer

The total number of records which have been tested by the Data Quality Check. If this is missing, percent_occurrences must be provided.

percent_occurrences

number

The relative frequency of the issue (percentage of tested records having the issue), as a number between 0.0 and 1.0. If omitted, it is calculated using number_of_occurrences and number_of_tested_records.

status

string

The status of the issue.

ignored

boolean

Flag indicating whether the issue is ignored or not.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the data quality issue.

trace

string

errors

array

404 - The data quality issue with the given ID cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality issue cannot be returned.

trace

string

errors

array

Update a data quality issue as specified in the payload details

of the request.

PATCH /data_quality/v4/issues/{id}

Update a data quality issue as specified in the payload details of the request.

The updates must be specified by using the JSON patch format, described in RFC 6902. <p> The following attributes can be updated: - /ignored (value can only be replaced)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.issues.update

Auditing

Calling this method generates the following auditing event.

  • wdp-data_quality.issue.update

Request

Request Body

The updates to make in the data quality rule.

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

Response

200 - Success.

check

object

the check that produces this issue

reported_for

object

The Id of the asset on which this issue was found

string

Link to corresponding data quality component. No default link is available, it is empty if not provided.

number_of_occurrences

integer

The absolute number of occurrences of the issues which have been identified on the asset. If this is missing, percent_occurrences must be provided.

number_of_tested_records

integer

The total number of records which have been tested by the Data Quality Check. If this is missing, percent_occurrences must be provided.

percent_occurrences

number

The relative frequency of the issue (percentage of tested records having the issue), as a number between 0.0 and 1.0. If omitted, it is calculated using number_of_occurrences and number_of_tested_records.

status

string

The status of the issue.

ignored

boolean

Flag indicating whether the issue is ignored or not.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to update the data quality issue.

trace

string

errors

array

404 - The data quality issue with the given ID cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality issue cannot be updated.

trace

string

errors

array

Search for a data quality issue by its native id

POST /data_quality/v4/search_dq_issue

Search for a data quality issue by its native id

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.issues.read

Request

Path Parameters

Query Parameters

reported_for.id

Required *

The data quality asset identifier

check.id

Required *

The data quality check identifier to search issues of.

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

Response

200 - Success.

archived_issues

array

An array of previous data quality issues detected during the same check on the given asset.

children

array

An array of data quality issues detected during the same check on children of the given asset.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to search data quality issues.

trace

string

errors

array

404 - The data quality issue cannot be found.

trace

string

errors

array

500 - An error occurred. The data quality issue cannot be searched.

trace

string

errors

array

Create several data quality issues. The related DQ assets referenced by their native ID are created if they do not already exist

POST /data_quality/v4/create_issues

Create several data quality issues. The related DQ assets referenced by their native ID are created if they do not already exist.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.issues.create

Auditing

Calling this method generates the following auditing event.

  • wdp-data_quality.issue.bulk.create

Request

Request Body

DataQualityIssuesBatchPrototype

Data quality issues to create and their related DQ assets.

issues

Required *

array

list of issues to create.

assets

array

Optional list of assets to create. For each of these assets the system will check if an asset with the same native_id exists. If yes, it will ignore it, if not it will create it

existing_checks

array

Optional list of existing checks. For each pair of (asset, check) given, system will create, update or remove an issue depending on the current issue stored for this pair and the new issue given in the payload (or not for deletion).

Path Parameters

Query Parameters

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

Response

201 - Success.

limit

integer

The maximum number of resources to return.

total_count

integer

Total number of resources available.

first

DataQualityPageLink

The link to a page in paginated collection.

next

DataQualityPageLinkToken

The link to a page in paginated collection.

previous

DataQualityPageLinkToken

The link to a page in paginated collection.

issues

array

An array of data quality issues.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to create data quality issues.

trace

string

errors

array

500 - An error occurred. The data quality issues cannot be created.

trace

string

errors

array

Get a list of data quality scores for a given asset

GET /data_quality/v4/scores

Get a list of data quality scores for a given asset.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.scores.create

Request

Path Parameters

Query Parameters

asset.id

Required *

The data quality asset identifier

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

dimension.id

The data quality dimension identifier. If not provided, filtering on dimension is not applied.

include_children

boolean

If true include the children in the returned resource. If false, only return the resource without its eventual children.

score_older_by_days

integer

Score of asset or dimension that is older by given days.

Response

200 - Success.

total_count

integer

Total number of scores available.

asset

DataQualityAssetInfo

Information of asset.

scores

array

An array of data quality scores.

children

array

An array of data quality scores.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the list of data quality scores.

trace

string

errors

array

500 - An error occurred. The list of data quality scores cannot be returned.

trace

string

errors

array

Get a list of data quality scores for a given assets

GET /data_quality/v4/bulkScores

Get a list of data quality scores for a given assets.

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action.

  • dataquality.scores.create

Request

Path Parameters

Query Parameters

asset.ids

Required *

string

Comma-separated list of data quality assets identifier

catalog_id

string

The ID of the catalog to use. A catalog_id or project_id is required.

project_id

string

The ID of the project to use. A catalog_id or project_id is required.

dimension.id

The data quality dimension identifier. If not provided, filtering on dimension is not applied.

include_children

boolean

If true include the children in the returned resource. If false, only return the resource without its eventual children.

score_older_by_days

integer

Score of asset or dimension that is older by given days.

Response

200 - Success.

401 - Your authorization to access this method is missing, invalid, or expired.

trace

string

errors

array

403 - You do not have permission to get the list of data quality scores.

trace

string

errors

array

500 - An error occurred. The list of data quality scores cannot be returned.

trace

string

errors

array

List environments.

GET /v2/environments

Returns a list of environments filtered by type, language or spark version in a project or space.

If no filter is provided, it returns all environments in the project or space, which includes all default environments that are available in every project or space and custom environments created by users.

You need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

project_id

string

The guid of the project.

space_id

string

The guid of the space.

types

string

Comma-separated list of environment types. Defaults to list of all types.

exclude_types

string

Comma-separated list of environment types. Takes precedence over types. Defaults to empty list.

exclude_languages

string

Comma-separated list of kernel languages. Defaults to empty list.

spark_versions

string

Comma-separated list of Spark versions. If provided, Spark environments will be filtered by these versions. Defaults to list of all default environments with supported Spark versions and all custom environments.

Response

200 -

400 -

401 -

403 -

Create a new environment.

POST /v2/environments

Returns a new environment with the provided parameters.

You need to specify either `project_id` or `space_id`.

Required body parameters vary dependent on environment types:

  • notebook: `type`, `name`, `display_name`, `hardware_specification`, `software_specification`, `tools_specification`
  • datastage: `type`, `name`, `display_name`, `hardware_specification`
  • other types: `type`, `name`, `display_name`, `hardware_specification`, `software_specification`

Request

Request Body

Path Parameters

Query Parameters

project_id

string

The guid of the project.

space_id

string

The guid of the space.

Response

201 -

400 -

401 -

403 -

429 -

Retrieve an environment.

GET /v2/environments/{environment_guid}

Returns an environment of a given ID. You need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

project_id

string

The guid of the project.

space_id

string

The guid of the space.

response_format

string

Format the response. Defaults to none.

embed_package_content

boolean

Whether to include conda_yml file content of custom package extensions in the response. Defaults to false.

Response

200 -

400 -

401 -

403 -

Delete an environment.

DELETE /v2/environments/{environment_guid}

Deletes an environment of a given ID. You need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

project_id

string

The guid of the project.

space_id

string

The guid of the space.

Response

204 -

400 -

401 -

403 -

Update an environment.

PATCH /v2/environments/{environment_guid}

Updates an environment of a given ID with the provided parameters. Returns the environment with updated properties. Only custom environments can be updated.

Request

Request Body

Path Parameters

Query Parameters

project_id

Required *

string

The guid of the project.

Response

200 -

400 -

401 -

403 -

List hardware specifications.

GET /v2/hardware_specifications

Returns a list of hardware specifications.

  1. If neither `project_id` nor `space_id` is given, it returns all global hardware specifications.
  2. If `project_id` or `space_id` is given, it returns all global and scoped hardware specifications. In this case, you need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

project_id

string

The guid of the project.

space_id

string

The guid of the space.

name

string

The name of the hardware specification. If specified, each of the hardware specification in the returned list will have the specified name.

Response

200 -

400 -

401 -

403 -

Create a new hardware specification.

POST /v2/hardware_specifications

Returns a hardware specification created with provided parameters.

You need to specify either `project_id` or `space_id`.

You can only provide exactly one of `nodes`, `spark` or `datastage` in the request body.

Request

Request Body

Path Parameters

Query Parameters

project_id

string

The guid of the project.

space_id

string

The guid of the space.

Response

201 -

400 -

401 -

403 -

409 -

Retrieve a hardware specification.

GET /v2/hardware_specifications/{hardware_specification_guid}

Returns a hardware specification of a given ID.

  1. To retrieve a global hardware specification, `project_id` or `space_id` is not required.
  2. To retrieve a scoped hardware specification that is scoped to a project or a space, you need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

project_id

string

The guid of the project.

space_id

string

The guid of the space.

Response

200 -

400 -

401 -

403 -

Delete a hardware specification.

DELETE /v2/hardware_specifications/{hardware_specification_guid}

Deletes a hardware specification of a given ID.

Only scoped hardware specifications can be deleted through the API.

You need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

project_id

string

The guid of the project.

space_id

string

The guid of the space.

Response

204 -

400 -

401 -

403 -

Update a hardware specification.

PATCH /v2/hardware_specifications/{hardware_specification_guid}

Updates a hardware specification of a given ID with the provided parameters.

Only scoped hardware specifications can be updated through the API.

Request

Request Body

Path Parameters

Query Parameters

project_id

Required *

string

The guid of the project.

Response

204 -

400 -

401 -

403 -

List software specifications.

GET /v2/software_specifications

Returns a list of software specifications.

  1. If neither `project_id` nor `space_id` is given, it returns all base software specifications.
  2. If `project_id` or `space_id` is given, it returns all base and derived software specifications. In this case, you need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project.

include_packages

string

String of comma-separated package names that refers to the packages that a software specification should contain. If specified, each of the software specification in the returned list will contain all of the packages specified in the query.

name

string

The name of the software specification. If specified, each of the software specification in the returned list will have the specified name.

Response

200 -

400 -

401 -

403 -

Create a new software specification.

POST /v2/software_specifications

Returns a software specification created with provided parameters.

You need to specify either `project_id` or `space_id`.

The parameters `name` and `base_software_specification` are required in the request body.

You can customize the software specification by adding any number of package extensions.

Request

Request Body

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project in which to create the software specification.

Response

201 -

400 -

401 -

403 -

409 -

Update a software specification.

PATCH /v2/software_specifications/{software_specification_guid}

Updates a software specification of a given ID with the provided parameters.

Only derived software specifications can be updated through the API.

Updatable fields are `name`, `description`, `display_name` and `package_extensions`.

You need to specify either `project_id` or `space_id`.

Request

Request Body

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project.

Response

204 -

400 -

401 -

403 -

Retrieve a software specification.

GET /v2/software_specifications/{software_specification_guid}

Returns a software specification of a given ID.

  1. To retrieve a base software specification, `project_id` or `space_id` is not required.
  2. To retrieve a derived software specification that is scoped to a project or a space, you need to specify either `project_id` or `space_id`. When a derived software specification is retrieved, the return value shows the software configuration inherited from the base software specification instead of the ID of the base software specification.

Request

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project.

Response

200 -

400 -

401 -

403 -

Delete a software specification.

DELETE /v2/software_specifications/{software_specification_guid}

Deletes a software specification of a given ID.

Only derived software specifications can be deleted through the API.

You need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project. The deleted software specification must be scoped to the specified project.

Response

204 -

400 -

401 -

403 -

Add a package extension to a software specification.

PUT /v2/software_specifications/{software_specification_guid}/package_extensions/{package_extension_guid}

When successful, the specified package extension is appended to the array `entity.software_specification.package_extensions`. It is then the last package extension in that array.

You need to specify either `project_id` or `space_id`.

The request is valid if and only if:
1. The software specification identified by `software_specification_guid` and the package extension identified by `package_extension_guid` exist in the same scope (either project or space).
2. A successful POST `/v2/package_extensions/{package_extension_guid}/upload_complete` has been called before this request is initiated. I.e., the upload of the referenced `pip_zip` or `conda_yml` file has been indicated to have been successful.
3. The user is authorized to update the software specification asset.

Request

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project.

Response

204 -

400 -

401 -

403 -

409 - Conflict. The software specification already references this package extension.

Remove a package extension from a software specification.

DELETE /v2/software_specifications/{software_specification_guid}/package_extensions/{package_extension_guid}

When successful, the specified package extension is removed from the array `entity.software_specification.package_extensions`.

You need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project.

Response

204 -

400 -

401 -

403 -

List package extensions.

GET /v2/package_extensions

Returns all package extensions within the given project or space. You need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project.

name

string

Returning only those package extensions that have a particular name.

type

string

Returning only those package extensions that have a particular type.

Response

200 -

400 -

401 -

403 -

Create a new package extension.

POST /v2/package_extensions

Returns the new package extension created in the given project or space. You need to specify either `project_id` or `space_id`.

For uploading the pip_zip or conda_yml, once you have created a package extension, the response also contains a pre-signed URL which allows you to upload its contents. When the upload is complete, you must call `POST /v2/package_extensions/{package_extension_guid}/upload_complete` to indicate to the API that the package extension is usable. If the `/upload_complete` returns successfully, the package extension is usable, i.e., can be assigned to a software specification.

Request

Request Body

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project in which to create the package extension.

Response

201 -

400 -

401 -

403 -

Mark file upload complete.

POST /v2/package_extensions/{package_extension_guid}/upload_complete

Indicates that the upload of the library file attached to the package extension is complete and this package extension is usable. You need to specify either `project_id` or `space_id`.

Request

Path Parameters

package_extension_guid

Required *

string

A UUID v4 identifying the package extension.

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project.

Response

204 -

400 -

401 -

403 -

Update a package extension.

PATCH /v2/package_extensions/{package_extension_guid}

Updates a package extension of a given ID with the provided parameters.

Request

Request Body

Path Parameters

Query Parameters

project_id

Required *

string

The guid of the project.

Response

204 -

400 -

401 -

403 -

Retrieve a package extension.

GET /v2/package_extensions/{package_extension_guid}

Retrieves a package extension of a given ID. You need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project.

Response

200 -

400 -

401 -

403 -

Delete a package extension.

DELETE /v2/package_extensions/{package_extension_guid}

Deletes a package extension of a given ID. You need to specify either `project_id` or `space_id`.

Request

Path Parameters

Query Parameters

space_id

string

The guid of the space.

project_id

string

The guid of the project.

Response

204 -

400 -

401 -

403 -

A update operation allowing you to update artifacts based on a simple query.

POST /v3/search/update_by_query

Execute an operation to update artifacts using a simple query for one or more specified microservices (provider_ids).

Request

Request Body

GlobalSearchRelationshipUpdateBody

last_updated_at

integer

query

string

script

string

provider_type_id_list

array

Path Parameters

Query Parameters

Response

200 - OK

202 - Accepted

204 - No Content

206 - Partial Content

400 - Bad request

401 - Unauthorized

403 - Forbidden

500 - Internal error. Try again later.

503 - Service Unavailable

default - Success response content

Test if sss is up.

GET /v3/search/sss_heartbeat

Request

Response

200 - OK

400 - Bad Request

500 - Internal error. Try again later.

Execute a query based on the Lucene Syntax

GET /v3/search

Execute a query and pass in a selection of words to search for or pass in a Lucene query. Your Lucene query can be as simple or as sophisticated as you like. Beware, however. If you plan on passing in a query directly from user input, make sure to set the 'isSimple' parameter to 'true' (the default is 'false'). Otherwise, Global Search will use the underlying query_string function that enforces a strict Lucene query syntax, and your query may return an exception if the user input includes reserved Lucene tokens or symbols that are used incorrectly. When the 'isSimple' parameter is set to true, Global Search will the ElasticSearch simple_query_string function that uses a modified Lucene syntax as follows:<br> <br> &nbsp;+ = AND operation<br> &nbsp;| = OR operation<br> &nbsp;- = NOT <br> &nbsp;&quot; wraps a phrase<br> &nbsp;* is a wildcard (you can't use it at the beginning of a word but you can use it alone to signify match all)<br> &nbsp;( and ) evaluates tokens inside brackets with higher precedence<br> <br> To use one of these characters literally, escape it with a preceding backslash. <br><br> Global Search allows users to search for assets and artifacts on the platform. The number of documents for all search results is limited to 10000. <br> <br> Please notice that the response shows all possible fields, which are not applicable for all types. For example "custom_attributes" are only applicable to assets currently, and even then only to certain custom attributes depending how they have been defined. Likewise, "categories" are only applicable to artifacts, etc. <br>

Request

Path Parameters

Query Parameters

query

Required *

string

The Search Query. Add a list of words being sought or use a Lucene query. Your Lucene query can be as simple or as sophisticated as you like.

limit

integer

The maximum number of items to return

isSimple

boolean

Use simple query string syntax

role

string

For governance artifacts limited by zone, limit with this role access.

auth_cache

boolean

Use cached authorization info for building ACL filters.

auth_scope

string

The ACL filters applied to the query.

Response

200 - OK

size

integer

rows

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal error. Try again later.

This API will return all available pre search filters

GET /v3/search/search_facet

This API will return all available pre search filters

Request

Path Parameters

Query Parameters

Response

200 - OK

size

integer

rows

array

400 - Bad Request

401 - Unauthorized

403 - Forbidden

500 - Internal error. Try again later.

Creates a category in the glossary

POST /v3/categories

This method can be used to create a new category in the glossary.

Request

Request Body

GlossaryV3NewCategoryEntity

classifications

array

Relationships to classifications.

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

long_description

string

The long description of an artifact.

name

Required *

string

The name of the artifact.

parent_category_id

string

Artifact ID of a parent category

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

reporting_authorized

boolean

Used by reporting service for authorization. Can be set only for root level categories.

response_custom_relationships

array

Custom relationships to asset

short_description

string

The short description of an artifact.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

Response

201 - The category has been created successfully.

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

409 - UniqueConstraintViolation - category with given name and parent already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Start category boostrap process

POST /v3/categories/collaborators/bootstrap

Assigns default owners and view permissions for root categories without any role assignments set

Request

Response

202 - The boostrap process started successfully

completed_records

integer

Number of records already bootstrapped successfully

completion_message

string

Overall outcome of the bootstrap process. Set once bootstrapping is finished.

current_step

string

Current bootstrap activity

errors

array

Bootstrap process errors

status

string

Current bootstrap status

total_records

integer

Total number of records to be processed by the bootstrap process

400 - The boostrap is already in progress

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get status of category bootstrap process

GET /v3/categories/collaborators/bootstrap/status

Get status of category bootstrap process

Request

Response

200 - Bootstrap status fetched successfully

completed_records

integer

Number of records already bootstrapped successfully

completion_message

string

Overall outcome of the bootstrap process. Set once bootstrapping is finished.

current_step

string

Current bootstrap activity

errors

array

Bootstrap process errors

status

string

Current bootstrap status

total_records

integer

Total number of records to be processed by the bootstrap process

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get history status of category bootstrap process

GET /v3/categories/collaborators/bootstrap/status/history

Get history status of category bootstrap process

Request

Response

200 - Bootstrap status history fetched successfully

bootstrap_status_history

array

Bootstrap status history list

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves category hierarchy paths for given artifact ids of categories

GET /v3/categories/hierarchy

This method can be used for retrieving hierarchy paths of categories

Request

Path Parameters

Query Parameters

category_id

array

The id of the category whose path is fetched

Response

200 - The hierarchy paths of categories have been retrieved successfully

category_hierarchy_paths

array

IDs and names of categories in category hierarchy path for each category id

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The category with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves category hierarchy paths for given artifact ids of categories

POST /v3/categories/hierarchy

This method can be used for retrieving hierarchy paths of categories

Request

Request Body

GlossaryV3GlossaryResourceList

resources

array

List of resources.

Path Parameters

Query Parameters

limit

integer

The maximum number of categories to return - must be at least 1 and cannot exceed 1000. The default value is 10.

offset

integer

The index of the first matching category to include in the result.

Response

200 - The hierarchy paths of categories have been retrieved successfully

category_hierarchy_paths

array

IDs and names of categories in category hierarchy path for each category id

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves the special [uncategorized] category

GET /v3/categories/uncategorized

This method can be used for retrieving details of the special [uncategorized] category, which is a default one for all artifacts.

Request

Response

200 - The category has been retrieved successfully.

entity

GlossaryV3CategoryEntity

Represents a category.

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes the category with a given guid

DELETE /v3/categories/{category_id}

This method can be used to delete a category.<br>Note! The category must be empty. It can contain neither child categories nor artifacts.

Request

Path Parameters

category_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

Response

200 - The category has been deleted successfully.

archived_guids

array

Guids of the archived objects.

delete_guids

array

Guids of the deleted objects.

updated_guids

array

Guids of the updated objects.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - The category with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves category with given guid

GET /v3/categories/{category_id}

This method can be used for retrieving details of a category.

Request

Path Parameters

category_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

include_relationships

boolean

When set to true fetch category relationships user has access to. It returns at most 1000 relationships. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.<br/>Deprecated, functionality will be replaced by new one introduced in the feature releases.

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

Response

200 - The category has been retrieved successfully.

entity

GlossaryV3CategoryEntity

Represents a category.

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - The category with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Updates category with given id

PATCH /v3/categories/{category_id}

This method can be used to update a category with given id.<br>It may be an update of its name, description, etc..

Request

Request Body

GlossaryV3UpdatableCategoryEntity

Category to be updated.<br>Fields omitted will be unchanged, and fields set to null explicitly will be nulled out.<br>For multi-valued attributes & relationships, the complete list will be replaced by the given list of values.<br>Additional Example:<br><pre>{&quot;description&quot; : &quot;short desc updated&quot;}</pre>

classifications

array

Relationships to classifications.

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

long_description

string

The long description of an artifact.

name

string

The name of the artifact.

parent_category_id

string

Artifact ID of a parent category. This is read only property and should not be changed.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

reporting_authorized

boolean

Used by reporting service for authorization. Can be set only for root level categories.

response_custom_relationships

array

Custom relationships to asset

short_description

string

The short description of an artifact.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

Path Parameters

category_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

Response

200 - The category has been updated successfully.

entity

GlossaryV3CategoryEntity

Represents a category.

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - The category with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

409 - The category was modified by another user.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Removes an artifact from its secondary category

DELETE /v3/categories/{category_id}/artifacts/{artifact_id}

It can be used to remove a secondary category assignment for an artifact. It does not allow to remove an artifact from a primary category as a primary category assignment is obligatory.

Request

Path Parameters

category_id

Required *

string

The artifact ID or the global ID of a category

artifact_id

Required *

string

The artifact ID or the global ID of an artifact to be removed from a (secondary) category

Query Parameters

Response

204 - A secondary category assignment removed.

400 - Attempt to remove an artifact from its primary category failed, because a primary category assignment is mandatory.

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The category with the given {category_id} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Adds an artifact to a category

PUT /v3/categories/{category_id}/artifacts/{artifact_id}

It can be used to set a primary category for an artifact (replacing an old primary category assignment if existed) as well as to add an artifact to a secondary category.

Request

Request Body

GlossaryV3NewCategoryAssignment

artifact_type

Required *

string

Type of the artifact to be added to a category

is_primary_category

Required *

boolean

true when a primary category should be set for an artifact, false when the artifact should be added to a secondary category

Path Parameters

category_id

Required *

string

The artifact ID or the global ID of a category

artifact_id

Required *

string

The artifact ID or the global ID of an artifact to be added to the category

Query Parameters

Response

200 - An existing category assignment updated (e.g. changed from secondary to primary).

artifact_type

string

Type of the artifact to be added to a category

is_primary_category

boolean

true when a primary category should be set for an artifact, false when the artifact should be added to a secondary category

201 - A new category assignment created.

artifact_type

string

Type of the artifact to be added to a category

is_primary_category

boolean

true when a primary category should be set for an artifact, false when the artifact should be added to a secondary category

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The category with the given {category_id} or the artifact with the given {artifact_id} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves collaborators for given artifact id of a category

GET /v3/categories/{category_id}/collaborators

Single collaborator is an users with assigned roles in context of given category. A role comes with rights to access the category, its sub-categories and artifacts and potential responsibilities.

Request

Path Parameters

category_id

Required *

string

The artifact ID or the global ID of a category

Query Parameters

include_inherited

boolean

If this parameter is true, the returned list contains collaborators not only for given category, but also for all parent categories, up to root category.

role

array

If set then the returned list will be reduced to collaborators with given roles only. Maximum allowed number of roles is 100

Response

200 - Success

collaborators

array

Category permission list for given category id

total_results

integer

Number of category permissions

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The category with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Creates single collaborator for given category

POST /v3/categories/{category_id}/collaborators

To create collaborator one needs to provide id of the collaborating user and the name of the role he will be permitted. Collaborator is effective for given category and whole tree of its subcategories.

Request

Request Body

GlossaryV3NewRoleAssignment

principal_id

Required *

string

Id of the user to be assigned to given role

role

Required *

string

Role to be assigned

user_type

string

Type of the user. When not provided defaults to USER

Path Parameters

category_id

Required *

string

The artifact ID or the global ID of a category

Query Parameters

Response

201 - The collaborator has been created successfully.

category_artifact_id

string

Category Artifact Id

category_name

string

Category Name

create_time

string

Create Time

dps_rule_id

string

DPS Rule Id

id

string

Id

principal_id

string

Principal Id

role

string

Role

user_type

string

User type

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - UniqueConstraintViolation - collaborator with the same role and user id already exists for given category.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes single collaborator

DELETE /v3/categories/{category_id}/collaborators/{collaborator_id}

Collaborator represents single user together with single role that gives him certain privileges in context of given category.

Request

Path Parameters

category_id

Required *

string

The artifact ID or the global ID of a category

collaborator_id

Required *

string

The id of the collaborator.

Query Parameters

Response

204 - The collaborator has been deleted successfully.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The collaborator with given id does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

List the relationships of the given type for the specified category

GET /v3/categories/{category_id}/relationships

If the result set is larger than the <code>limit</code> parameter, it returns the first <code>limit</code> number of relationships. <br/>To retrieve the next set of relationships, call the method again by using the URI in the property <code>next</code> returned by this method.

Request

Path Parameters

category_id

Required *

string

The artifact ID of the category.

Query Parameters

type

Required *

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_category</code></td><td></td></tr><tr><td><code>has_types_category</code></td><td></td></tr><tr><td><code>is_a_parent_category_for</code></td><td></td></tr><tr><td><code>grouped_assets</code></td><td></td></tr><tr><td><code>owned_by</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table><br/>Note: <code>all</code> does not return category hierarchy.

ca_definition_id

string

Custom relationship definition Id.

is_reversed

boolean

Is custom relationship reversed?

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

include_target_parent_category_name

boolean

Retrieves target parent category name of the relationship entity.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Success

custom_relationships

array

List of custom relationships

empty

boolean

relationships

object

Mapping of the relationship type to the paginated list of relationships

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Remove a relationship from category

DELETE /v3/categories/{category_id}/relationships/{relationship_id}

Currently we support a custom relationship removal from category by relationship ID.

Request

Path Parameters

category_id

Required *

string

The artifact ID of the category to fetch.

relationship_id

Required *

string

The artifact ID of the relationship to be deleted.

Query Parameters

Response

204 - A relationship has been removed.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get role usage statistics

GET /v3/category_role_statistics

Get list of roles assigned in glossary, along with number of categories where specific role is used.

Request

Response

200 - Success

role_assignment_statistics

array

List of roles assigned in glossary, along with number of categories which have role assigned

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Returns list of categories which has specific role assigned, along with number of assignments for users and groups

GET /v3/category_statistics

Category statistics

Request

Path Parameters

Query Parameters

role

Required *

string

Role for which statistics are to be retrieved

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Success

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Creates a classification in the glossary

POST /v3/classifications

This method is used to create a classification in the glossary.

Request

Request Body

GlossaryV3NewClassificationEntity

categories

array

Secondary categories the artifact belongs to.

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

data_classes

array

Relationships to data classes.

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

has_types_classifications

array

The child classification relationships in the classification type hierarchy.

is_a_type_of_classification

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

long_description

string

The long description of an artifact.

name

Required *

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

array

Relationships to categories.

short_description

string

The short description of an artifact.

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

tags

array

The tags assigned to an artifact.

terms

array

Relationships to business terms.

workflow_state

string

The workflow state of an artifact

Path Parameters

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the artifact will be created in the published state by skipping the workflow. For details refer to documentation.

Response

201 - Success

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves classification with given guid and status

GET /v3/classifications/{artifact_id}/versions

This method can be used for retrieving details of an ACTIVE classification. Only ACTIVE is supported

Request

Path Parameters

artifact_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

status

string

Filter by classification status.<br/><table><tbody><tr><td colspan="2">Available statuses:</td></tr><td><code>DRAFT</code></td><td>artifacts which are being created or modified and not in use</td></tr><tr><td><code>PUBLISHED</code></td><td>artifacts which are in published state (does not takes effective dates into account)</td></tr><tr><td><code>ACTIVE</code></td><td>artifacts which are published, and which effective date period includes current datetime</td></tr></tbody></table>

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_classification</code></td><td></td></tr><tr><td><code>has_types_classifications</code></td><td></td></tr><tr><td><code>has_types_classifications_hierarchy</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>related_categories</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Success

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes a draft or published version of an artifact

DELETE /v3/classifications/{artifact_id}/versions/{version_id}

If the artifact state is <code>DRAFT</code>, then the draft version is deleted.<br/><br/> If the artifact state is <code> PUBLISHED</code>, a draft version with <code>marked_for_deletion</code> is created .<br/><br/> If the artifact state is <code> PUBLISHED</code> and workflow is skipped, then the published version is deleted.<br/><br/> If a draft artifact already exists for deletion for a published artifact, then the draft artifact is simply skipped.<br/><br/> Administrator role is required.

Request

Path Parameters

artifact_id

Required *

string

The guid of the classification to fetch.

version_id

Required *

string

The version id of the classification to delete.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

201 - A draft version has been successfully created for deleting the published artifact.

resources

array

IDs of the created items.

204 - The artifact has been deleted successfully.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves classification with given guid

GET /v3/classifications/{artifact_id}/versions/{version_id}

This method can be used for retrieving details of an ACTIVE or DRAFT classification.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the classification to fetch.

version_id

Required *

string

The version id of the classification to fetch.

Query Parameters

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_classification</code></td><td></td></tr><tr><td><code>has_types_classifications</code></td><td></td></tr><tr><td><code>has_types_classifications_hierarchy</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>related_categories</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

Response

200 - Success

entity

GlossaryV3ResponseClassificationEntity

Response classification entity object

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Updates a draft or published artifact

PATCH /v3/classifications/{artifact_id}/versions/{version_id}

If a published version is updated, a draft version is created from the published version and the draft version is updated with the requested changes and returned.If any relationships of the artifact are updated, then the updated relationships are returned as a paginated list limited by the give limit parameter. The relationships that are not updated are not returned.

Request

Request Body

GlossaryV3UpdatableClassificationEntity

The classification to be updated.<br>Fields omitted will be unchanged, and fields set to null explicitly will be nulled out.<br>For multi-valued attributes & relationships, the complete list will be replaced by the given list of values.<br>Additional Example:<br><pre>{&quot;description&quot; : &quot;description updated&quot;}</pre>

categories

array

Secondary categories the artifact belongs to.

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

data_classes

array

Relationships to data classes.

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

has_types_classifications

array

The child classification relationships in the classification type hierarchy.

is_a_type_of_classification

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

long_description

string

The long description of an artifact.

name

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

array

Relationships to categories.

revision

Required *

string

The revision of the artifact. It is used for optimistic locking.

short_description

string

The short description of an artifact.

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

tags

array

The tags assigned to an artifact.

terms

array

Relationships to business terms.

Path Parameters

artifact_id

Required *

string

The artifact id of the classification to be updated.

version_id

Required *

string

The version id of the classification to be updated.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

200 - Success

entity

GlossaryV3ResponseClassificationEntity

Response classification entity object

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

List the associations of the given type for the specified classification

GET /v3/classifications/{artifact_id}/versions/{version_id}/relationships

If the result set is larger than the <code>limit</code> parameter, it returns the first <code>limit</code> number of relationships. <br/>To retrieve the next set of relationships, call the method again by using the URI in the property <code>next</code> returned by this method.

Request

Path Parameters

artifact_id

Required *

string

The artifactId of the classification

version_id

Required *

string

The versionId of the classification

Query Parameters

type

Required *

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_classification</code></td><td></td></tr><tr><td><code>has_types_classifications</code></td><td></td></tr><tr><td><code>has_types_classifications_hierarchy</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>related_categories</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

ca_definition_id

string

Custom relationship definition Id.

is_reversed

boolean

Is custom relationship reversed?

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

include_target_parent_category_name

boolean

Retrieves target parent category name of the relationship entity.

limit

integer

The maximum number of associations to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Success

custom_relationships

array

List of custom relationships

empty

boolean

relationships

object

Mapping of the relationship type to the paginated list of relationships

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Create relationships for an artifact in the glossary

POST /v3/classifications/{artifact_id}/versions/{version_id}/relationships

If it is a published version, it creates a draft from the published version and adds the relationship to the draft version. And, it returns the details of the draft version.

Request

Request Body

GlossaryV3ClassificationRelationshipsRequest

Relationships to be created.

categories

array

Category relationships.

data_classes

array

The relationships to data classes.

has_types_classifications

array

The child classification relationships in the classification type hierarchy.

is_a_type_of_classification

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

array

The relationships to categories.

terms

array

The relationships to business terms.

Path Parameters

artifact_id

Required *

string

The artifact id of the classification to fetch.

version_id

Required *

string

The version id of the classification to fetch.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

201 - Success

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes relationships for an artifact in the glossary

DELETE /v3/classifications/{artifact_id}/versions/{version_id}/relationships/{relationship_id}

If it is a published version, it creates a draft from the published version and deletes the relationship from the draft version. And, it returns the details of the draft version.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the classification to fetch.

version_id

Required *

string

The version id of the classification to fetch.

relationship_id

Required *

string

The artifact ID of the relationship to be deleted.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

200 - Success

archived_guids

array

Guids of the archived objects.

delete_guids

array

Guids of the deleted objects.

updated_guids

array

Guids of the updated objects.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves the data classes matching specified parameters.

GET /v3/data_classes

This method is used to retrieve the data classes that the user have permissions and they match specified parameters.

Request

Path Parameters

Query Parameters

status

string

Comma-separated list of dataclass statuses.<br/><table><tbody><tr><td colspan="2">Available statuses:</td></tr><tr><td><code>PUBLISHED</code></td><td>artifacts which are in published state (does not takes effective dates into account)</td></tr><tr><td><code>ACTIVE</code></td><td>artifacts which are published, and which effective date period includes current datetime</td></tr><tr><td><code>DELETED</code></td><td>artifacts which have been deleted</td></tr></tbody></table>

enabled

string

To filter data classes based on enabled property. The enabled query parameter accepts (Yes, No, Both) where Yes is the default value. This option is not applicable for format=xml.

include_xml_definitions

boolean

If this parameter is set to true, then Dataclass' xml definitions are returned. If parameter is not set its default value is 'true'

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'false'.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

since

string

A filter to artifacts that have been created / updated / deleted since the given timestamp in this format: [yyyy-MM-ddTHH:mm:ss.SSSZ]

limit

integer

The maximum number of data_classes to return - must be at least 1 and cannot exceed 1000. The default value is 10.

offset

integer

The index of the first matching data_class to include in the result.

Response

200 - Success

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Creates a draft data class in the glossary

POST /v3/data_classes

This method is used to create a draft data class in the glossary. If the effective start date of selected reference data set is a future date, then effective start date of data class will be same as that of selected reference data set effective start date.

Request

Request Body

GlossaryV3NewDataClassEntity

Data class to be created.

additional_applicable_for

string

To specify additional applicable for: structured_data_only, unstructured_data_only, all_data; ( This property is applicable for data class type: Regex )

additional_regular_expression

string

To specify additional regular expression; ( This property is applicable for data class type: Regex )

allow_substring_match

boolean

To specify allow substring match boolean flag; ( This property is applicable for data class type: ValidValues )

applicable_for

string

To specify applicable for: structured_data_only, unstructured_data_only, all_data; ( This property is applicable for data class type: Regex )

case_sensitive

boolean

To specify case sensitive boolean flag; ( This property is applicable for data class type: ValidValues )

categories

array

Secondary categories the artifact belongs to.

class_code

string

Unique class code given to the data class.

classifications

array

Relationships to classifications.

column_name_match

string

To specify column name match

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

data_class_type

string

To specify the type of data class: ColumnSimilarity, Java, ReferenceDataSet, Regex, Script, Undefined, UnstructuredFilter, ValidValues

data_type

array

DataType: numeric, string, date, time, timestamp

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

enabled

boolean

This flag indicates whether the data class can be used for data profiling or not.

example

string

Data class example

expression

string

To specify expression; ( This property is applicable for data class type: UnstructuredFilter )

has_types_data_classes

array

List of immediate child data classes in the data class type hierarchy.

is_a_type_of_data_class

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

java_class_name

string

To specify Java class name; ( This property is applicable for data class type: Java )

language

string

To specify language: JavaScript, DataRule; ( This property is applicable for data class type: Script )

long_description

string

The long description of an artifact.

maximum_data_length

integer

To specify maximum data length

minimum_data_length

integer

To specify minimum data length

name

Required *

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

priority

number

Data class priority used while profiling.

properties

string

To specify properties; ( This property is applicable for data class type: Java )

provider

string

The provider of data class

reference_columns_metadata

string

To specify reference columns metadata; ( This property is applicable for data class type: ColumnSimilarity )

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

regular_expression

string

To specify regular expression; ( This property is applicable for data class type: Regex )

scope

string

To specify scope: value, column, dataset_columns, dataset; ( This property is applicable for data class types: Script & Java )

script

string

To specify script name; ( This property is applicable for data class type: Script )

short_description

string

The short description of an artifact.

squeeze_consecutive_white_spaces

boolean

To specify squeeze consecutive white spaces boolean flag; ( This property is applicable for data class type: ValidValues )

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

tags

array

The tags assigned to an artifact.

terms

array

Relationships to business terms.

threshold

integer

The percentage of threshold.

valid_value_reference_file

string

To specify valid value reference file path; ( This property is applicable for data class type: ValidValues )

valid_values

array

To specify valid values; ( This property is applicable for data class type: ValidValues )

workflow_state

string

The workflow state of an artifact

Path Parameters

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the artifact will be created in the published state by skipping the workflow. For details refer to documentation.

Response

201 - Success

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves data class with given guid and status

GET /v3/data_classes/{artifact_id}/versions

This method can be used for retrieving details of an ACTIVE or DRAFT data class. Only ACTIVE is allowed as status right now

Request

Path Parameters

artifact_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

status

string

Filter by dataclass status.<br/><table><tbody><tr><td colspan="2">Available statuses:</td></tr><td><code>DRAFT</code></td><td>artifacts which are being created or modified and not in use</td></tr><tr><td><code>PUBLISHED</code></td><td>artifacts which are in published state (does not takes effective dates into account)</td></tr><tr><td><code>ACTIVE</code></td><td>artifacts which are published, and which effective date period includes current datetime</td></tr></tbody></table>

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_data_class</code></td><td></td></tr><tr><td><code>has_types_data_classes</code></td><td></td></tr><tr><td><code>has_types_data_class_hierarchy</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table><br/>Note: <code>all</code> does not return data class hierarchy.

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - The data class has been retrieved successfully.

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The data class with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes a draft or published version of an artifact

DELETE /v3/data_classes/{artifact_id}/versions/{version_id}

If the artifact state is <code>DRAFT</code>, then the draft version is deleted.<br/><br/> If the artifact state is <code> PUBLISHED</code>, a draft version with <code>marked_for_deletion</code> is created .<br/><br/> If the artifact state is <code> PUBLISHED</code> and workflow is skipped, then the published version is deleted.<br/><br/> If a draft artifact already exists for deletion for a published artifact, then the draft artifact is simply skipped.<br/><br/> Administrator role is required.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the dataclass to delete.

version_id

Required *

string

The version id of the dataclass to delete.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

201 - A draft version has been successfully created for deleting the published artifact.

resources

array

IDs of the created items.

204 - The artifact has been deleted successfully.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves data class with given guid

GET /v3/data_classes/{artifact_id}/versions/{version_id}

This method can be used for retrieving details of an ACTIVE or DRAFT data class.

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the data class to fetch.

version_id

Required *

string

The version ID of the data class to fetch.

Query Parameters

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_data_class</code></td><td></td></tr><tr><td><code>has_types_data_classes</code></td><td></td></tr><tr><td><code>has_types_data_class_hierarchy</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table><br/>Note: <code>all</code> does not return data class hierarchy.

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

Response

200 - Success

entity

GlossaryV3DataClassEntity

Entity object for dataclass

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Updates a draft or published artifact

PATCH /v3/data_classes/{artifact_id}/versions/{version_id}

If a published version is updated, a draft version is created from the published version and the draft version is updated with the requested changes and returned.If any relationships of the artifact are updated, then the updated relationships are returned as a paginated list limited by the give limit parameter. The relationships that are not updated are not returned.

Request

Request Body

GlossaryV3UpdatableDataClassEntity

The data class to be updated.<br>Fields omitted will be unchanged, and fields set to null explicitly will be nulled out.<br>For multi-valued attributes & relationships, the complete list will be replaced by the given list of values.<br>Additional Example:<br><pre>{&quot;description&quot; : &quot;description updated&quot;}</pre>If the effective start date of selected reference data set is a future date, then effective start date of data class will be same as that of selected reference data set effective start date.

additional_applicable_for

string

To specify additional applicable for: structured_data_only, unstructured_data_only, all_data; ( This property is applicable for data class type: Regex )

additional_regular_expression

string

To specify additional regular expression; ( This property is applicable for data class type: Regex )

allow_substring_match

boolean

To specify allow substring match boolean flag; ( This property is applicable for data class type: ValidValues )

applicable_for

string

To specify applicable for: structured_data_only, unstructured_data_only, all_data; ( This property is applicable for data class type: Regex )

case_sensitive

boolean

To specify case sensitive boolean flag; ( This property is applicable for data class type: ValidValues )

categories

array

Secondary categories the artifact belongs to.

class_code

string

Unique class code given to the data class.

classifications

array

Relationships to classifications.

column_name_match

string

To specify column name match

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

data_class_type

string

To specify the type of data class: ColumnSimilarity, Java, ReferenceDataSet, Regex, Script, Undefined, UnstructuredFilter, ValidValues

data_type

array

DataType: numeric, string, date, time, timestamp

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

enabled

boolean

This flag indicates whether the data class can be used for data profiling or not.

example

string

Data class example

expression

string

To specify expression; ( This property is applicable for data class type: UnstructuredFilter )

has_types_data_classes

array

List of immediate child data classes in the data class type hierarchy.

is_a_type_of_data_class

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

java_class_name

string

To specify Java class name; ( This property is applicable for data class type: Java )

language

string

To specify language: JavaScript, DataRule; ( This property is applicable for data class type: Script )

long_description

string

The long description of an artifact.

maximum_data_length

integer

To specify maximum data length

minimum_data_length

integer

To specify minimum data length

name

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

priority

number

Data class priority used while profiling.

properties

string

To specify properties; ( This property is applicable for data class type: Java )

provider

string

The provider of data class

reference_columns_metadata

string

To specify reference columns metadata; ( This property is applicable for data class type: ColumnSimilarity )

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

regular_expression

string

To specify regular expression; ( This property is applicable for data class type: Regex )

revision

Required *

string

The revision of the artifact. It is used for optimistic locking.

scope

string

To specify scope: value, column, dataset_columns, dataset; ( This property is applicable for data class types: Script & Java )

script

string

To specify script name; ( This property is applicable for data class type: Script )

short_description

string

The short description of an artifact.

squeeze_consecutive_white_spaces

boolean

To specify squeeze consecutive white spaces boolean flag; ( This property is applicable for data class type: ValidValues )

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

tags

array

The tags assigned to an artifact.

terms

array

Relationships to business terms.

threshold

integer

The percentage of threshold.

valid_value_reference_file

string

To specify valid value reference file path; ( This property is applicable for data class type: ValidValues )

valid_values

array

To specify valid values; ( This property is applicable for data class type: ValidValues )

Path Parameters

artifact_id

Required *

string

The artifact id of the data class to be updated.

version_id

Required *

string

The version id of the data class to be updated.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

200 - Success

entity

GlossaryV3DataClassEntity

Entity object for dataclass

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

List the relationships of the given type for the specified data class

GET /v3/data_classes/{artifact_id}/versions/{version_id}/relationships

If the result set is larger than the <code>limit</code> parameter, it returns the first <code>limit</code> number of relationships. <br/>To retrieve the next set of relationships, call the method again by using the URI in the property <code>next</code> returned by this method.

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the data class to fetch.

version_id

Required *

string

The version ID of the data class to fetch.

Query Parameters

type

Required *

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_data_class</code></td><td></td></tr><tr><td><code>has_types_data_classes</code></td><td></td></tr><tr><td><code>has_types_data_class_hierarchy</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table><br/>Note: <code>all</code> does not return data class hierarchy.

ca_definition_id

string

Custom relationship definition Id.

is_reversed

boolean

Is custom relationship reversed?

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

include_target_parent_category_name

boolean

Retrieves target parent category name of the relationship entity.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Success

custom_relationships

array

List of custom relationships

empty

boolean

relationships

object

Mapping of the relationship type to the paginated list of relationships

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Create relationships for an artifact in the glossary

POST /v3/data_classes/{artifact_id}/versions/{version_id}/relationships

If it is a published version, it creates a draft from the published version and adds the relationship to the draft version. And, it returns the details of the draft version.

Request

Request Body

GlossaryV3DataClassRelationshipsRequest

Relationships to be created.

categories

array

Category relationships.

classifications

array

The relationships to classifications.

has_types_data_classes

array

New list of child data classes in the data class type hierarchy.

is_a_type_of_data_class

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

terms

array

The relationships to business terms.

Path Parameters

artifact_id

Required *

string

The artifact ID of the data class to fetch.

version_id

Required *

string

The version ID of the data class to fetch.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

201 - Success

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes relationships for an artifact in the glossary

DELETE /v3/data_classes/{artifact_id}/versions/{version_id}/relationships/{relationship_id}

If it is a published version, it creates a draft from the published version and deletes the relationship from the draft version. And, it returns the details of the draft version.

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the data class to fetch.

version_id

Required *

string

The version ID of the data class to fetch.

relationship_id

Required *

string

The artifact ID of the relationship to be deleted.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

200 - Success

archived_guids

array

Guids of the archived objects.

delete_guids

array

Guids of the deleted objects.

updated_guids

array

Guids of the updated objects.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Business Glossary Heartbeat

GET /v3/glossary_status/heartbeat

Returns the build details and health of the dependent services

Request

Response

200 - Success

build_info

GlossaryV3BuildInfoV3

Build information.

db2_status

string

Status of DB2.

external_rabbit_mq_listener_status

string

The status of the external Rabbit MQ listener.

internal_rabbit_mq_listener_status

string

The status of the internal Rabbit MQ listener.

status

string

OK indicates that the service is up and running.

version

string

The version of the build.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Tenant init and status

POST /v3/glossary_status/tenant_init

Checks tenant init status (and initialize if necessary), blocks until init is done

Request

Response

204 - Success

503 - Requested data are not available, try again later.

errors

array

List of errors.

trace

string

The trace id.

Tenant init and status

GET /v3/glossary_status/tenant_init_status

Checks tenant init status, returns immediately (initialization if required is performed in background)

Request

Response

200 - Success

status

string

tenant status, one of READY, NOT READY

Creates draft terms in the glossary

POST /v3/glossary_terms

If the unique constraint on the name or display name of the term is violated, the method fails with <code>409 Conflict</code> response.

Request

Request Body

Terms to be created. The terms array must contain at least 1 term, and cannot exceed 100 terms.

Path Parameters

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the artifact will be created in the published state by skipping the workflow. For details refer to documentation.

Response

201 - Success

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves versions of a term for the given artifact_id and status

GET /v3/glossary_terms/{artifact_id}/versions

Retrieval of the versions of ACTIVE state is supported.

Request

Path Parameters

artifact_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

status

string

Filter by term status.<br/><table><tbody><tr><td colspan="2">Available statuses:</td></tr><td><code>DRAFT</code></td><td>artifacts which are being created or modified and not in use</td></tr><tr><td><code>PUBLISHED</code></td><td>artifacts which are in published state (does not takes effective dates into account)</td></tr><tr><td><code>ACTIVE</code></td><td>artifacts which are published, and which effective date period includes current datetime</td></tr></tbody></table>

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_terms</code></td><td></td></tr><tr><td><code>has_type_terms</code></td><td></td></tr><tr><td><code>has_types_term_hierarchy</code></td><td></td></tr><tr><td><code>synonym_terms</code></td><td></td></tr><tr><td><code>related_terms</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td></tr><tr><td><code>is_of_terms</code></td><td></td></tr><tr><td><code>has_terms</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>reference_data_values</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Success

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes a draft or published version of an artifact

DELETE /v3/glossary_terms/{artifact_id}/versions/{version_id}

If the artifact state is <code>DRAFT</code>, then the draft version is deleted.<br/><br/> If the artifact state is <code> PUBLISHED</code>, a draft version with <code>marked_for_deletion</code> is created .<br/><br/> If the artifact state is <code> PUBLISHED</code> and workflow is skipped, then the published version is deleted.<br/><br/> If a draft artifact already exists for deletion for a published artifact, then the draft artifact is simply skipped.<br/><br/> Administrator role is required.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the term to fetch.

version_id

Required *

string

The version id of the term to delete.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

201 - A draft version has been successfully created for deleting the published artifact.

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Gets the term in the glossary with a given version id

GET /v3/glossary_terms/{artifact_id}/versions/{version_id}

This method can be used for retrieving details of an ACTIVE or DRAFT term.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the term to fetch.

version_id

Required *

string

The version id of the term to fetch.

Query Parameters

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_terms</code></td><td></td></tr><tr><td><code>has_type_terms</code></td><td></td></tr><tr><td><code>has_types_term_hierarchy</code></td><td></td></tr><tr><td><code>synonym_terms</code></td><td></td></tr><tr><td><code>related_terms</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td></tr><tr><td><code>is_of_terms</code></td><td></td></tr><tr><td><code>has_terms</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>reference_data_values</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

Response

200 - Success

entity

GlossaryV3ResponseTermEntity

Response glossary term entity object

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Updates a draft or published artifact

PATCH /v3/glossary_terms/{artifact_id}/versions/{version_id}

If a published version is updated, a draft version is created from the published version and the draft version is updated with the requested changes and returned.If any relationships of the artifact are updated, then the updated relationships are returned as a paginated list limited by the give limit parameter. The relationships that are not updated are not returned.

Request

Request Body

GlossaryV3UpdatableTermEntity

The business term to be updated.<br>Fields omitted will be unchanged, and fields set to null explicitly will be nulled out. If a relationship of the term is updated, then the updated relationship as returned as a paginated list limited by the give limit parameter. Relationships that are not updated are not returned.

abbreviations

array

The list of abbreviations of a business term.

categories

array

Secondary categories the artifact belongs to.

classifications

array

Relationships to classifications.

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

data_classes

array

Relationships to data classes.

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

example

string

Example

has_terms

array

The list of child business terms in the business term containment hierarchy.

has_type_terms

array

The list of child business terms in the business term type hierarchy.

import_source_created_by

string

Name of the user who has created the term in the original source for imported term.

import_source_created_on

string

The timestamp when the term was created in the original source for imported term.

import_source_usage

string

The usage of the term in the original source for imported term.

is_a_type_of_terms

array

The list of parent business terms in the business term type hierarchy.

is_of_terms

array

The list of parent business terms in the business term containment hierarchy.

long_description

string

The long description of an artifact.

name

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

array

The list of related business terms.

array

The list of related business terms.

replaced_by_terms

array

The list of business terms that are replaced by this business term.

replaces_terms

array

The list of business terms that replace this business term.

revision

Required *

string

The revision of the artifact. It is used for optimistic locking.

short_description

string

The short description of an artifact.

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

synonym_terms

array

The list of synonym business terms.

system_business_reference

string

System business reference of a business term.

tags

array

The tags assigned to an artifact.

Path Parameters

artifact_id

Required *

string

The artifact id of the term to be updated.

version_id

Required *

string

The version id of the term to be updated.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

200 - Success

entity

GlossaryV3ResponseTermEntity

Response glossary term entity object

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

List the relationships for the specified term

GET /v3/glossary_terms/{artifact_id}/versions/{version_id}/relationships

If the result set is larger than the <code>limit</code> parameter, it returns the first <code>limit</code> number of relationships. <br/>To retrieve the next set of relationships, call the method again by using the URI in the property <code>next</code> returned by this method.

Request

Path Parameters

artifact_id

Required *

string

The guid of the Term

version_id

Required *

string

The versionID of the Term

Query Parameters

type

Required *

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>is_a_type_of_terms</code></td><td></td></tr><tr><td><code>has_type_terms</code></td><td></td></tr><tr><td><code>has_types_term_hierarchy</code></td><td></td></tr><tr><td><code>synonym_terms</code></td><td></td></tr><tr><td><code>related_terms</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td></tr><tr><td><code>is_of_terms</code></td><td></td></tr><tr><td><code>has_terms</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>reference_data_values</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

ca_definition_id

string

Custom relationship definition Id.

is_reversed

boolean

Is custom relationship reversed?

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

include_target_parent_category_name

boolean

Retrieves target parent category name of the relationship entity.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Success

custom_relationships

array

List of custom relationships

empty

boolean

relationships

object

Mapping of the relationship type to the paginated list of relationships

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Create relationships for an artifact in the glossary

POST /v3/glossary_terms/{artifact_id}/versions/{version_id}/relationships

If it is a published version, it creates a draft from the published version and adds the relationship to the draft version. And, it returns the details of the draft version.

Request

Request Body

GlossaryV3TermRelationshipsRequest

Relationships to be created.

categories

array

Category relationships.

classifications

array

The relationships to the classifications.

data_classes

array

The relationships to the data classes.

has_terms

array

The list of child business terms in the business term containment hierarchy.

has_type_terms

array

The list of child business terms in the business term type hierarchy.

is_a_type_of_terms

array

The list of parent business terms in the business term type hierarchy.

is_of_terms

array

The list of parent business terms in the business term containment hierarchy.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

array

The list of related business terms.

replaced_by_terms

array

The list of business terms that are replaced by this business term.

replaces_terms

array

The list of business terms that replace this business term.

synonym_terms

array

The list of synonym business terms.

Path Parameters

artifact_id

Required *

string

The artifact ID of the term to fetch.

version_id

Required *

string

The version ID of the term to fetch.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

201 - Success

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes relationships for an artifact in the glossary

DELETE /v3/glossary_terms/{artifact_id}/versions/{version_id}/relationships/{relationship_id}

If it is a published version, it creates a draft from the published version and deletes the relationship from the draft version. And, it returns the details of the draft version.

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the term to fetch.

version_id

Required *

string

The version ID of the term to fetch.

relationship_id

Required *

string

The artifact ID of the relationship to be deleted.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

200 - Success

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Exports custom attribute definitions to a json file

POST /v3/governance_artifact_types/custom_attribute_definitions/export

This method can be used to export custom attribute definitions to a json file.

Request

Request Body

GlossaryV3GlossaryResourceList

The list of custom attribute definitions artifact ids to be exported.

resources

array

List of resources.

Path Parameters

Query Parameters

types

string

The comma-separated list of supported custom attribute types. Allowed values are text, date, number, enum, relationship, all, all_without_relationship.

artifact_types

string

The artifact type which a custom attribute definition applies to. Allowed values are category, glossary_term, data_class, policy, rule, classification, reference_data

string

The related artifact type which a custom attribute definition for relationship applies to. Allowed values are category, glossary_term, data_class, policy, rule, classification, reference_data

Response

200 - Success

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Import values for custom attribute definitions from specified json file

POST /v3/governance_artifact_types/custom_attribute_definitions/import

This method can be used to import values custom attribute definitions from specified json file.

Request

Request Body

Path Parameters

Query Parameters

subtype

string

Determines if only custom properties or custom relationships or both types will be imported. Allowed values: ALL, PROPERTY, RELATIONSHIP.

async_mode

boolean

If async_mode is true, then the method starts an asynchronous process to execute the given action and returns with ACCEPTED 202 status code.

Response

200 - Import of assets has been completed

children_statuses

array

Children statuses

completion_time

string

Completion time

creation_time

string

Creation time

error_message

string

Error message

heartbeat_time

string

Heartbeat time

heartbeater_id

string

Heartbeater id

messages

GlossaryV3PaginatedImportMessagesList

List of import messages

operations_count

object

Operations count

process_id

string

Process Id

status

string

Status

step_message

string

Step message

step_number

integer

Step number

tenant_id

string

Tenant Id

total_steps

integer

Total steps

workflow_id

string

Workflow Id

202 - Import of assets has been started

children_statuses

array

Children statuses

completion_time

string

Completion time

creation_time

string

Creation time

error_message

string

Error message

heartbeat_time

string

Heartbeat time

heartbeater_id

string

Heartbeater id

messages

GlossaryV3PaginatedImportMessagesList

List of import messages

operations_count

object

Operations count

process_id

string

Process Id

status

string

Status

step_message

string

Step message

step_number

integer

Step number

tenant_id

string

Tenant Id

total_steps

integer

Total steps

workflow_id

string

Workflow Id

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Export values of all supported types to a ZIP file

GET /v3/governance_artifact_types/export

This method can be used to export values of all supported types to a ZIP file.

Request

Path Parameters

Query Parameters

artifact_id_mode

string

This specifies if artifact ID numbers should be included in exported files, or not. Possible values: "always", artifact ID numbers are included for artifacts, and "never", not included at all.

artifact_types

string

The comma-separated list of supported artifact types. Allowed values are all, category, classification, data_class, glossary_term, policy, rule, reference_data and role_assignment.

category_ids

string

The comma-separated list of categories ID numbers, or "all_top_level", which means all top-level categories.

include_custom_attribute_definitions

boolean

If parameter "include_custom_attribute_definitions" is set to true, information about suitable custom attribute definitions will be included in zip

include_development_log

boolean

If parameter "include_development_log" is set to true, development log content will be included in zip

Response

200 - Success

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The category with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Import values from specified ZIP file

POST /v3/governance_artifact_types/import

This method can be used to import values from specified ZIP file.

Request

Request Body

Path Parameters

Query Parameters

merge_option

string

Import merge option, valid values: <br/>all - imported values will replace existing values in catalog<br/>specified - imported values that are not empty replace existing values in catalog<br/>empty - imported values replace only empty values in catalog.

Response

200 - Import of assets has been completed

children_statuses

array

Children statuses

completion_time

string

Completion time

creation_time

string

Creation time

error_message

string

Error message

heartbeat_time

string

Heartbeat time

heartbeater_id

string

Heartbeater id

messages

GlossaryV3PaginatedImportMessagesList

List of import messages

operations_count

object

Operations count

process_id

string

Process Id

status

string

Status

step_message

string

Step message

step_number

integer

Step number

tenant_id

string

Tenant Id

total_steps

integer

Total steps

workflow_id

string

Workflow Id

202 - Import of assets has been started

children_statuses

array

Children statuses

completion_time

string

Completion time

creation_time

string

Creation time

error_message

string

Error message

heartbeat_time

string

Heartbeat time

heartbeater_id

string

Heartbeater id

messages

GlossaryV3PaginatedImportMessagesList

List of import messages

operations_count

object

Operations count

process_id

string

Process Id

status

string

Status

step_message

string

Step message

step_number

integer

Step number

tenant_id

string

Tenant Id

total_steps

integer

Total steps

workflow_id

string

Workflow Id

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Cleanup ZIP import process

POST /v3/governance_artifact_types/import/cleanup/{process_id}

This method can be used to cleanup specified stalled ZIP import process that crashed or hanged. Note: This feature is experimental - the API and scope are subject to change. Should not be used on imports that are alive or pending as it can lead to unpredictable results.

Request

Path Parameters

process_id

Required *

string

Import process id

Query Parameters

Response

200 - OK

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Import of assets status

GET /v3/governance_artifact_types/import/status/{process_id}

Import of assets status

Request

Path Parameters

process_id

Required *

string

Import process id

Query Parameters

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Import status available

children_statuses

array

Children statuses

completion_time

string

Completion time

creation_time

string

Creation time

error_message

string

Error message

heartbeat_time

string

Heartbeat time

heartbeater_id

string

Heartbeater id

messages

GlossaryV3PaginatedImportMessagesList

List of import messages

operations_count

object

Operations count

process_id

string

Process Id

status

string

Status

step_message

string

Step message

step_number

integer

Step number

tenant_id

string

Tenant Id

total_steps

integer

Total steps

workflow_id

string

Workflow Id

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get artifacts of given type that are either published or drafts matching specified criteria

GET /v3/governance_artifact_types/{artifact_type}

This method can be used for retrieving artifacts of given type that are: <ul><li> published,</li><li> drafts matching specified criteria (starts_with, substring, workflow_status, created_by, modified_by, enabled).</li></ul>

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are all, glossary_term, classification, data_class, reference_data, policy, rule

Query Parameters

starts_with

string

First character of artifact, applicable only for draft artifact search.

sub_string

string

Filter on substring, applicable only for draft artifact search.

workflow_status

string

Filter by workflow status.<br/><table><tbody><tr><td colspan="2">Available statuses (if no status is specified, all drafts are retrieved):</td></tr><tr><td><code>published</code></td><td></td></tr><tr><td><code>Publishing (applicable only for draft artifact search)</code></td><td></td></tr><tr><td><code>Publish failed (applicable only for draft artifact search)</code></td><td></td></tr><tr><td><code>Not started (applicable only for draft artifact search)</code></td><td></td></tr></tbody></table>

created_by

string

Filter by creator of artifact, applicable only for draft artifact search.

modified_by

string

Filter by editor of artifact, applicable only for draft artifact search.

enabled

string

Filter Results based on enabled flag for dataclass, `yes` will give enabled dataclass, `no` will give disabled and `both` shall return all, applicable only for draft artifact search.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

sort

string

Value on which results need to be sorted, valid sort parameters are NAME, MODIFIED, CREATED, TYPE.Prefix hyphen (-) for descending order, applicable only for draft artifact search.

Response

200 - Artifacts have been retrieved successfully.

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves custom attribute definitions with given artifact type

GET /v3/governance_artifact_types/{artifact_type}/custom_attribute_definitions

This method can be used for retrieving details of custom attribute definitions.

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are all, category, glossary_term, classification, data_class, reference_data, policy, rule

Query Parameters

boolean

Is the artifact type defined as related artifact type or not, in case of "RELATIONSHIP" type only!

Response

200 - The custom attribute definitions have been retrieved successfully.

entity

GlossaryV3CustomAttributeDefinitionEntity

Custom Attribute Definition Entity

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The custom attribute definition with given {artifact_id} does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Creates custom attribute definition in the glossary

POST /v3/governance_artifact_types/{artifact_type}/custom_attribute_definitions

This method can be used to create custom attribute definition in the glossary.

Request

Request Body

GlossaryV3NewCustomAttributeDefinitionEntity

Custom attribute definition to be created.

artifact_types

array

Set of artifact types

category_artifact_ids

array

Set of restricted category artifact ids

default_value

string

The default value of the custom attribute

description

string

Description

display_in_child_assets

boolean

Specifies whether custom attribute values should be displayed in child assets

elements

array

List of predefined values. Supported only for the type ENUM.

max_length

integer

Maximum length of custom attribute values of the type string

maximum

number

Maximum

min_length

integer

Minimum length of custom attribute values of the type string

minimum

number

Minimum

multiple_values

boolean

Specifies whether the custom attribute can have more than one value

name

Required *

string

Name of custom attribute

read_only

boolean

Specifies whether custom attribute values should be read only

array

Set of related artifact types

array

Set of restricted related category artifact ids

reverse_name

string

Reversed Custom Attribute relationship name which may be display on the related artifact

searchable

boolean

Specifies whether custom attribute definition should be global search

type

Required *

string

Type of custom attribute values

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are all, category, glossary_term, classification, data_class, reference_data, policy, rule

Query Parameters

Response

201 - The custom attribute definition has been created successfully.

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - UniqueConstraintViolation - custom attribute definition with given name already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes the custom attribute definition with a given artifact_id

DELETE /v3/governance_artifact_types/{artifact_type}/custom_attribute_definitions/{custom_attribute_definition_artifact_id}

This method is used to delete the custom attribute definition with a given artifact_id (guid).

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are all, category, glossary_term, classification, data_class, reference_data, policy, rule

custom_attribute_definition_artifact_id

Required *

string

The artifact_id of the custom attribute definition to be purged.

Query Parameters

Response

200 - The custom attribute definition has been deleted successfully.

archived_guids

array

Guids of the archived objects.

delete_guids

array

Guids of the deleted objects.

updated_guids

array

Guids of the updated objects.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The custom attribute definition with given {artifact_id} does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves custom attribute definition with given artifact_id

GET /v3/governance_artifact_types/{artifact_type}/custom_attribute_definitions/{custom_attribute_definition_artifact_id}

This method can be used for retrieving details of a custom attribute definition.

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are all, category, glossary_term, classification, data_class, reference_data, policy, rule

custom_attribute_definition_artifact_id

Required *

string

The artifact_id of the custom attribute definition to fetch.

Query Parameters

Response

200 - The custom attribute definition has been retrieved successfully.

entity

GlossaryV3CustomAttributeDefinitionEntity

Custom Attribute Definition Entity

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The custom attribute definition with given {artifact_id} does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Updates custom attribute definition with given artifact_id

PATCH /v3/governance_artifact_types/{artifact_type}/custom_attribute_definitions/{custom_attribute_definition_artifact_id}

This method is used to update custom attribute definition with given artifact_id.

Request

Request Body

GlossaryV3UpdatableCustomAttributeDefinitionEntity

Custom attribute definition to be updated.<br>Fields omitted will be unchanged, and fields set to null explicitly will be nulled out.<br>For multi-valued attributes & relationships, the complete list will be replaced by the given list of values.<br>Additional Example:<br><pre>{&quot;business_description&quot; : &quot;business desc updated&quot;}</pre>

artifact_types

array

Set of artifact types

category_artifact_ids

array

Set of restricted category artifact ids

default_value

string

The default value of the custom attribute

description

string

Description

display_in_child_assets

boolean

Specifies whether custom attribute values should be displayed in child assets

elements

array

List of predefined values. Supported only for the type ENUM.

max_length

integer

Maximum length of custom attribute values of the type string

maximum

number

Maximum

min_length

integer

Minimum length of custom attribute values of the type string

minimum

number

Minimum

multiple_values

boolean

Specifies whether the custom attribute can have more than one value

name

string

Name of custom attribute

read_only

boolean

Specifies whether custom attribute values should be read only

array

Set of related artifact types

array

Set of restricted related category artifact ids

reverse_name

string

Reversed Custom Attribute relationship name which may be display on the related artifact

searchable

boolean

Specifies whether custom attribute definition should be global search

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are all, category, glossary_term, classification, data_class, reference_data, policy, rule

custom_attribute_definition_artifact_id

Required *

string

The artifact_id of the custom attribute definition to be updated.

Query Parameters

Response

200 - The custom attribute definition has been updated successfully.

entity

GlossaryV3CustomAttributeDefinitionEntity

Custom Attribute Definition Entity

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - The custom attribute definition with given {artifact_id} does not exist.

errors

array

List of errors.

trace

string

The trace id.

409 - The custom attribute definition was modified by another user.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Delete a list of draft or published versions of given artifact_type

POST /v3/governance_artifact_types/{artifact_type}/delete

If the artifact state is <code>DRAFT</code>, then the draft version is deleted.<br/><br/> If the artifact state is <code> PUBLISHED</code>, a draft version with <code>marked_for_deletion</code> is created .<br/><br/> If the artifact state is <code> PUBLISHED</code> and workflow is skipped, then the published version is deleted.<br/><br/> If a draft artifact already exists for deletion for a published artifact, then the draft artifact is simply skipped.<br/><br/> Administrator role is required.

Request

Request Body

GlossaryV3GlossaryResourceIdentifierList

The list of artifacts to be deleted. All the artifacts must be either in published state or draft state, but mix of draft and published state is not allowed.

resources

array

List of resource identifiers.

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are category, glossary_term, classification, data_class, reference_data, policy, rule

Query Parameters

async_mode

boolean

If async_mode is true, then the method starts an asynchronous process to execute the given action and returns with ACCEPTED 202 status code.

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

skip_if_draft_exists

boolean

If someone has already created a draft for deleting or updating an artifact, then the artifact will be ignored.

skip_if_not_exists

boolean

If specified asset does does not exist, it is skipped.

Response

201 - A draft version has been successfully created for deleting the published artifact.

202 - If async_mode is true, then the method starts an asynchronous process to execute the given action and returns with ACCEPTED 202 status code.

task_id

string

Task id

204 - The artifacts have been deleted successfully.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Exports values of a specified type to a csv file

GET /v3/governance_artifact_types/{artifact_type}/export

This method can be used to export values of a specified type to a csv file.

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are category, glossary_term, data_class, policy, rule, classification

Query Parameters

category_id

string

The artifactId of the parent category

include_category

boolean

Whether to include the parent category. This applies to category (as asset type) export only, and is ignored for other asset types. The special [uncategorized] category is not included.

include_subcategories

boolean

Whether to include assets from subcategories

Response

200 - Success

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The category with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Import values from specified csv file

POST /v3/governance_artifact_types/{artifact_type}/import

This method can be used to import values from specified csv file.

Request

Request Body

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are category, glossary_term, classification, data_class, reference_data, policy, rule

Query Parameters

merge_option

string

Import merge option, valid values: <br/>all - imported values will replace existing values in catalog<br/>specified - imported values that are not empty replace existing values in catalog<br/>empty - imported values replace only empty values in catalog.

async_mode

boolean

If async_mode is true, then the method starts an asynchronous process to execute the given action and returns with ACCEPTED 202 status code.

Response

200 - Import of assets has been completed

children_statuses

array

Children statuses

completion_time

string

Completion time

creation_time

string

Creation time

error_message

string

Error message

heartbeat_time

string

Heartbeat time

heartbeater_id

string

Heartbeater id

messages

GlossaryV3PaginatedImportMessagesList

List of import messages

operations_count

object

Operations count

process_id

string

Process Id

status

string

Status

step_message

string

Step message

step_number

integer

Step number

tenant_id

string

Tenant Id

total_steps

integer

Total steps

workflow_id

string

Workflow Id

202 - Import of assets has been started

children_statuses

array

Children statuses

completion_time

string

Completion time

creation_time

string

Creation time

error_message

string

Error message

heartbeat_time

string

Heartbeat time

heartbeater_id

string

Heartbeater id

messages

GlossaryV3PaginatedImportMessagesList

List of import messages

operations_count

object

Operations count

process_id

string

Process Id

status

string

Status

step_message

string

Step message

step_number

integer

Step number

tenant_id

string

Tenant Id

total_steps

integer

Total steps

workflow_id

string

Workflow Id

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get the latest published version of the specified artifact

GET /v3/governance_artifact_types/{artifact_type}/{artifact_id}

This method can be used for getting the latest published version of the specified artifact.

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are category, glossary_term, classification, data_class, reference_data, policy, rule

artifact_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

include_relationship

string

Comma-separated list of relationship types.<br/><table><thead><tr><th><code>Relationship Types</code></th><th colspan=7><code>Artifact Types</code></th></tr><tr><th></th><th><code>category</code></th><th><code>classification</code></th><th><code>data_class</code></th><th><code>glossary_term</code></th><th><code>policy</code></th><th><code>reference_data</code></th><th><code>rule</code></th></tr></thead><tbody><tr><td><code>all</code></td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>categories</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>child</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>classifications</code></td><td>+</td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>custom</code></td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>data_classes</code></td><td>-</td><td>+</td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>data_location_rules</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td></tr><tr><td><code>data_protection_rules</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td></tr><tr><td><code>grouped_assets</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_type_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_category</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_classifications</code></td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_classifications_hierarchy</code></td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_data_class_hierarchy</code></td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_data_classes</code></td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_term_hierarchy</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_parent_category_for</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_type_of_category</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_type_of_classification</code></td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_type_of_data_class</code></td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_type_of_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_of_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>multi_value_mappings</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>owned_by</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>parent</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>parent_category</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>parent_hierarchy</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>parent_policy</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td></tr><tr><td><code>policies</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>-</td><td>-</td><td>+</td></tr><tr><td><code>reference_data</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>-</td><td>-</td><td>+</td></tr><tr><td><code>reference_data_values</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>related_categories</code></td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>related_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>replaced_by_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>replaces_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>rules</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>single_value_mappings</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>sub_policies</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td></tr><tr><td><code>synonym_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>terms</code></td><td>-</td><td>+</td><td>+</td><td>-</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>value_mappings</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr></tbody></table>

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'false'.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.<br>This parameter is ignored when artifact type is category.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.<br>This parameter is ignored when artifact type is category.

Response

200 - The latest published version of the specified artifact has been retrieved successfully.

entity

GlossaryV3EntityV3

Base object for entity

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Changes the parent category of a published artifact with given id

POST /v3/governance_artifact_types/{artifact_type}/{artifact_id}/move

This method can be used to change given artifact parent. Or make it root-level, in case of category.<br>Note: change of collaborators access may take longer to complete

Request

Request Body

GlossaryV3MoveTargetCategory

Target category (to become a parent of this artifact)

target_category_id

Required *

string

specifies id of category to become parent after move. One can specify either artifact ID or global ID. In case of category, one can specify string `ROOT` to move it to the top level

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are category, glossary_term, classification, data_class, reference_data, policy, rule

artifact_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

200 - The artifact has been moved successfully.

entity

GlossaryV3EntityV3

Base object for entity

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - Published artifact not found for given guid

errors

array

List of errors.

trace

string

The trace id.

409 - Either the artifact was modified by another user, or the same artifact already exists with the same new parent category

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get development logs & Comments for a draft artifact version

GET /v3/governance_artifact_types/{artifact_type}/{artifact_id}/versions/{version_id}/aggregated_logs

Get development logs & Comments for a draft artifact version

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are glossary_term, classification, data_class, reference_data, policy, rule

artifact_id

Required *

string

The artifact id.

version_id

Required *

string

The version id.

Query Parameters

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

time_zone_offset

string

Time zone offset based on which the day wise grouping is to be performed. The offset will be of format [+-]hh:mm where hh stands for hour digit and mm for minute digit. <br/>e.g. +05:30 indicates IST. If [+-] is not provided by default + will be appended. e.g 05:30 indicates +05:30. <br/>If hour digit is single like +h:mm provided, then it will be considered as +0h:mm. e.g. +5:30 indicates +05:30. <br/>The range of offsets is restricted to -17:59 to +17:59 inclusive.

Response

200 - Development logs & Comments retrieved successfully

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - Draft artifact version not found for given version_id

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get development logs & Comments for a draft artifact version with development log id

GET /v3/governance_artifact_types/{artifact_type}/{artifact_id}/versions/{version_id}/aggregated_logs/{mod_id}

Get development logs & Comments for a draft artifact version with development log id

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are glossary_term, classification, data_class, reference_data, policy, rule

artifact_id

Required *

string

The artifact id.

version_id

Required *

string

The version id.

mod_id

Required *

string

The development log id.

Query Parameters

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Development logs & Comments retrieved successfully

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - Draft artifact version not found for given version_id

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Add a comment for a draft artifact version

POST /v3/governance_artifact_types/{artifact_type}/{artifact_id}/versions/{version_id}/comments

Add a comment for a draft artifact version

Request

Request Body

GlossaryV3AssetCommentUserEntity

The user comment.

comment

Required *

string

User comment

imported

boolean

Indicates whether the development log entry originates from import

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are glossary_term, classification, data_class, reference_data, policy, rule

artifact_id

Required *

string

The artifact id.

version_id

Required *

string

The version id.

Query Parameters

Response

201 - Comment added successfully

comment

string

User comment

imported

boolean

Indicates whether the development log entry originates from import

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - Draft artifact version not found for given version_id

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Delete a comment on a draft artifact version

DELETE /v3/governance_artifact_types/{artifact_type}/{artifact_id}/versions/{version_id}/comments/{comment_id}

Delete a comment on a draft artifact version

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are glossary_term, classification, data_class, reference_data, policy, rule

artifact_id

Required *

string

The artifact id.

version_id

Required *

string

The version id.

comment_id

Required *

string

The comment id.

Query Parameters

Response

204 - Comment deleted successfully

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Draft artifact version not found for given version_id

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Update a comment on a draft artifact version

PATCH /v3/governance_artifact_types/{artifact_type}/{artifact_id}/versions/{version_id}/comments/{comment_id}

Update a comment on a draft artifact version

Request

Request Body

GlossaryV3AssetCommentUserEntity

The user comment.

comment

Required *

string

User comment

imported

boolean

Indicates whether the development log entry originates from import

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are glossary_term, classification, data_class, reference_data, policy, rule

artifact_id

Required *

string

The artifact id.

version_id

Required *

string

The version id.

comment_id

Required *

string

The comment id.

Query Parameters

Response

200 - Comment updated successfully

comment

string

User comment

imported

boolean

Indicates whether the development log entry originates from import

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Draft artifact version not found for given version_id

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get development logs & Comments for a draft artifact version

GET /v3/governance_artifact_types/{artifact_type}/{artifact_id}/versions/{version_id}/logs

Get development logs & Comments for a draft artifact version

Request

Path Parameters

artifact_type

Required *

string

The artifact type. Allowed values are glossary_term, classification, data_class, reference_data, policy, rule

artifact_id

Required *

string

The artifact id.

version_id

Required *

string

The version id.

Query Parameters

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Development logs & Comments retrieved successfully

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - Draft artifact version not found for given version_id

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Creates a policy in the glossary

POST /v3/policies

Creates a policy in the glossary

Request

Request Body

GlossaryV3NewPolicyEntity

categories

array

Secondary categories the artifact belongs to.

classifications

array

Relationships to classifications.

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

data_classes

array

Relationships to data classes.

data_location_rules

array

Relationships to data location rules only. Does not include other rule relationships.

data_protection_rules

array

Relationships to data protection rules only. Does not include other rule relationships.

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

long_description

string

The long description of an artifact.

name

Required *

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

parent_policy

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

rules

array

Relationships to governance rules only. Does not include other rule relationships.

short_description

string

The short description of an artifact.

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

sub_policies

array

The list of sub-policies in the policy type hierarchy.

tags

array

The tags assigned to an artifact.

terms

array

Relationships to business terms.

workflow_state

string

The workflow state of an artifact

Path Parameters

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the artifact will be created in the published state by skipping the workflow. For details refer to documentation.

Response

201 - The policy has been created successfully.

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - UniqueConstraintViolation - policy with given name already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves versions of a policy for the given artifact_id and status

GET /v3/policies/{artifact_id}/versions

Retrieval of the versions of ACTIVE state is supported.

Request

Path Parameters

artifact_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

status

string

Filter by policy status.<br/><table><tbody><tr><td colspan="2">Available statuses:</td></tr><td><code>DRAFT</code></td><td>artifacts which are being created or modified and not in use</td></tr><tr><td><code>PUBLISHED</code></td><td>artifacts which are in published state (does not takes effective dates into account)</td></tr><tr><td><code>ACTIVE</code></td><td>artifacts which are published, and which effective date period includes current datetime</td></tr></tbody></table>

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>parent_policy</code></td><td></td></tr><tr><td><code>sub_policies</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>data_location_rules</code></td><td></td></tr><tr><td><code>data_protection_rules</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

Response

200 - Success

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes a draft or published version of an artifact

DELETE /v3/policies/{artifact_id}/versions/{version_id}

If the artifact state is <code>DRAFT</code>, then the draft version is deleted.<br/><br/> If the artifact state is <code> PUBLISHED</code>, a draft version with <code>marked_for_deletion</code> is created .<br/><br/> If the artifact state is <code> PUBLISHED</code> and workflow is skipped, then the published version is deleted.<br/><br/> If a draft artifact already exists for deletion for a published artifact, then the draft artifact is simply skipped.<br/><br/> Administrator role is required.

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the policy.

version_id

Required *

string

The version id of the policy to delete or to create mark-for-delete draft copy.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

200 - The artifact has been deleted successfully.

resources

array

IDs of the created items.

201 - A draft version has been successfully created for deleting the published artifact.

entity

GlossaryV3ResponsePolicyEntity

Policy entity for GET response.

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Policy with sub-policies cannot be deleted. Try again after re-parenting sub-policies.

errors

array

List of errors.

trace

string

The trace id.

404 - Policy with given artifact and version ids does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves versions of a policy for the given artifact_id and status

GET /v3/policies/{artifact_id}/versions/{version_id}

Retrieval of the versions of ACTIVE state is supported.

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the policy to fetch.

version_id

Required *

string

The version ID of the policy to fetch.

Query Parameters

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>parent_policy</code></td><td></td></tr><tr><td><code>sub_policies</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>data_location_rules</code></td><td></td></tr><tr><td><code>data_protection_rules</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

Response

200 - The policy has been retrieved successfully.

entity

GlossaryV3ResponsePolicyEntity

Policy entity for GET response.

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The policy with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Updates policy with given artifact id and version id

PATCH /v3/policies/{artifact_id}/versions/{version_id}

Updates policy with given artifact id and version id. If the policy is in published state then first creates a draft and applies the changes to the newly created draft.

Request

Request Body

GlossaryV3UpdatablePolicyEntity

The policy to be updated.<br>Fields omitted will be unchanged, and fields set to null explicitly will be nulled out.<br>For multi-valued attributes & relationships, the complete list will be replaced by the given list of values.<br>Additional Example:<br><pre>{&quot;description&quot; : &quot;description updated&quot;}</pre>

categories

array

Secondary categories the artifact belongs to.

classifications

array

Relationships to classifications.

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

data_classes

array

Relationships to data classes.

data_location_rules

array

Relationships to data location rules only. Does not include other rule relationships.

data_protection_rules

array

Relationships to data protection rules only. Does not include other rule relationships.

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

long_description

string

The long description of an artifact.

name

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

parent_policy

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

revision

Required *

string

The revision of the artifact. It is used for optimistic locking.

rules

array

Relationships to governance rules only. Does not include other rule relationships.

short_description

string

The short description of an artifact.

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

sub_policies

array

The list of sub-policies in the policy type hierarchy.

tags

array

The tags assigned to an artifact.

terms

array

Relationships to business terms.

Path Parameters

artifact_id

Required *

string

The artifact id of the policy to be updated.

version_id

Required *

string

The version id of the policy to be updated.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

200 - The policy has been updated successfully.

entity

GlossaryV3ResponsePolicyEntity

Policy entity for GET response.

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - The policy with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

409 - The policy was modified by another user.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Updates DPR rule relationships of a published policy using its artifact id and version id

PATCH /v3/policies/{artifact_id}/versions/{version_id}/data_protection_rules

Updates DPR rule relationships of a published policy using its artifact id and version id<br/>Deprecated, functionality will be replaced by new one introduced in the feature releases.

Request

Request Body

Path Parameters

artifact_id

Required *

string

The artifact id of the policy to be updated.

version_id

Required *

string

The version id of the policy to be updated.

Query Parameters

Response

200 - The policy has been updated successfully.

entity

GlossaryV3ResponsePolicyEntity

Policy entity for GET response.

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - The policy with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

409 - The policy was modified by another user.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

List the relationships for the specified policy

GET /v3/policies/{artifact_id}/versions/{version_id}/relationships

If the result set is larger than the <code>limit</code> parameter, it returns the first <code>limit</code> number of relationships. <br/>To retrieve the next set of relationships, call the method again by using the URI in the property <code>next</code> returned by this method.

Request

Path Parameters

artifact_id

Required *

string

The guid of the Policy

version_id

Required *

string

The versionID of the Policy

Query Parameters

type

Required *

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>parent_policy</code></td><td></td></tr><tr><td><code>sub_policies</code></td><td></td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>data_location_rules</code></td><td></td></tr><tr><td><code>data_protection_rules</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

ca_definition_id

string

Custom relationship definition Id.

is_reversed

boolean

Is custom relationship reversed?

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

include_target_parent_category_name

boolean

Retrieves target parent category name of the relationship entity.

Response

200 - Success

custom_relationships

array

List of custom relationships

empty

boolean

relationships

object

Mapping of the relationship type to the paginated list of relationships

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Create relationships for an artifact in the glossary

POST /v3/policies/{artifact_id}/versions/{version_id}/relationships

If it is a published version, it creates a draft from the published version and adds the relationship to the draft version. And, it returns the details of the draft version.

Request

Request Body

GlossaryV3PolicyRelationshipsRequest

Relationships to be created.

categories

array

Category relationships.

classifications

array

Relationships to classifications.

data_classes

array

Relationships to data classes.

data_location_rules

array

Relationships to data location rules only. Does not include other rule relationships.

data_protection_rules

array

Relationships to data protection rules only. Does not include other rule relationships.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

parent_policy

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

rules

array

Relationships to governance rules only. Does not include other rule relationships.

sub_policies

array

The list of sub-policies in the policy type hierarchy.

terms

array

Relationships to business terms.

Path Parameters

artifact_id

Required *

string

The artifact ID of the term to fetch.

version_id

Required *

string

The version ID of the term to fetch.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

201 - Success

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

409 - Unique constraint violated because of optimistic locking or some other constraint.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes a relationship from a draft policy

DELETE /v3/policies/{artifact_id}/versions/{version_id}/relationships/{relationship_id}

Deletes a relationship from a draft policy

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the policy to fetch.

version_id

Required *

string

The version ID of the policy to fetch.

relationship_id

Required *

string

The artifact ID of the relationship to be deleted.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

200 - Success

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves relationships for a given artifact type, artifact_id and artifact version_id

GET /v3/relationships

For a given artifact type, a set of predefined relationship attributes with associated artifacts are included for every relationship.

Request

Path Parameters

Query Parameters

artifact_type

Required *

string

The artifact type. Allowed values are category, glossary_term, classification, data_class, reference_data, policy, rule

artifact_id

Required *

string

The id of artifact that is a part of the requested relationship.

artifact_version_id

Required *

string

The version id of artifact that is a part of the requested relationship.

relationship_type

Required *

string

Comma-separated list of relationship types.<br/><table><thead><tr><th><code>Relationship Types</code></th><th colspan=7><code>Artifact Types</code></th></tr><tr><th></th><th><code>category</code></th><th><code>classification</code></th><th><code>data_class</code></th><th><code>glossary_term</code></th><th><code>policy</code></th><th><code>reference_data</code></th><th><code>rule</code></th></tr></thead><tbody><tr><td><code>all</code></td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>categories</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>child</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>classifications</code></td><td>+</td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>custom</code></td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>data_classes</code></td><td>-</td><td>+</td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>data_location_rules</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td></tr><tr><td><code>data_protection_rules</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td></tr><tr><td><code>grouped_assets</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_type_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_category</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_classifications</code></td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_classifications_hierarchy</code></td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_data_class_hierarchy</code></td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_data_classes</code></td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>has_types_term_hierarchy</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_parent_category_for</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_type_of_category</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_type_of_classification</code></td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_type_of_data_class</code></td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_a_type_of_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>is_of_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>multi_value_mappings</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>owned_by</code></td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>parent</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>parent_category</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>parent_hierarchy</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>parent_policy</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td></tr><tr><td><code>policies</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>-</td><td>-</td><td>+</td></tr><tr><td><code>reference_data</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>-</td><td>-</td><td>+</td></tr><tr><td><code>reference_data_values</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>related_categories</code></td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>related_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>replaced_by_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>replaces_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>rules</code></td><td>-</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>single_value_mappings</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr><tr><td><code>sub_policies</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td></tr><tr><td><code>synonym_terms</code></td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td><td>-</td><td>-</td></tr><tr><td><code>terms</code></td><td>-</td><td>+</td><td>+</td><td>-</td><td>+</td><td>+</td><td>+</td></tr><tr><td><code>value_mappings</code></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>+</td><td>-</td></tr></tbody></table>

since

string

A filter to artifacts that have been created / updated / deleted since the given timestamp in this format: [yyyy-MM-ddTHH:mm:ss.SSSZ]

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Success

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Creates a rule in the glossary

POST /v3/rules

This method is used to create a new rule.

Request

Request Body

GlossaryV3NewRuleEntity

Rule to be created.

categories

array

Secondary categories the artifact belongs to.

classifications

array

Relationships to classifications.

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

data_classes

array

Relationships to data classes.

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

long_description

string

The long description of an artifact.

name

Required *

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

policies

array

The relationships to governance policies.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

reference_data

array

The relationships to reference data sets.

rule_type

Required *

string

Currently supported: Governance.

rules

array

Relationships to governance rules only. Does not include other rule relationships.

short_description

string

The short description of an artifact.

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

tags

array

The tags assigned to an artifact.

terms

array

Relationships to business terms.

Path Parameters

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the artifact will be created in the published state by skipping the workflow. For details refer to documentation.

Response

201 - The rule has been created successfully.

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - UniqueConstraintViolation - rule with given name already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves rule with given artifact_id and status

GET /v3/rules/{artifact_id}/versions

This method can be used for retrieving details of an ACTIVE, PUBLISHED or DRAFT rule.

Request

Path Parameters

artifact_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

status

string

Filter by rule status.<br/><table><tbody><tr><td colspan="2">Available statuses:</td></tr><td><code>DRAFT</code></td><td>artifacts which are being created or modified and not in use</td></tr><tr><td><code>PUBLISHED</code></td><td>artifacts which are in published state (does not takes effective dates into account)</td></tr><tr><td><code>ACTIVE</code></td><td>artifacts which are published, and which effective date period includes current datetime</td></tr></tbody></table>

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - The rule has been retrieved successfully.

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

resources

array

Results of the list / search.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The rule with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes a draft or published version of an artifact

DELETE /v3/rules/{artifact_id}/versions/{version_id}

If the artifact state is <code>DRAFT</code>, then the draft version is deleted.<br/><br/> If the artifact state is <code> PUBLISHED</code>, a draft version with <code>marked_for_deletion</code> is created .<br/><br/> If the artifact state is <code> PUBLISHED</code> and workflow is skipped, then the published version is deleted.<br/><br/> If a draft artifact already exists for deletion for a published artifact, then the draft artifact is simply skipped.<br/><br/> Administrator role is required.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the rule to delete.

version_id

Required *

string

The version id of the rule to delete.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

201 - A draft version has been successfully created for deleting the published artifact.

resources

array

IDs of the created items.

204 - The artifact has been deleted successfully.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - Draft version for the given version ID does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieves rule with given guid

GET /v3/rules/{artifact_id}/versions/{version_id}

This method can be used for retrieving details of an PUBLISHED or DRAFT rule.

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the rule to fetch.

version_id

Required *

string

The version ID of the rule to fetch.

Query Parameters

include_relationship

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'true'. This is deprecated and default will be change to 'false' in first major 2022 release.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

Response

200 - The rule has been retrieved successfully.

entity

GlossaryV3ResponseRuleEntity

Represents a rule entity returned by REST GET methods that include the relationships as paginated lists

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The rule with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Updates rule with given id

PATCH /v3/rules/{artifact_id}/versions/{version_id}

This method is used to update rule with given id.

Request

Request Body

GlossaryV3UpdatableRuleEntity

The rule to be updated.<br>Fields omitted will be unchanged, and fields set to null explicitly will be nulled out.<br>For multi-valued attributes & relationships, the complete list will be replaced by the given list of values.<br>Additional Example:<br><pre>{&quot;description&quot; : &quot;description updated&quot;}</pre>

categories

array

Secondary categories the artifact belongs to.

classifications

array

Relationships to classifications.

custom_attributes

array

List of custom attributes with their values.

custom_relationships

array

Custom relationships to asset

data_classes

array

Relationships to data classes.

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

long_description

string

The long description of an artifact.

name

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

policies

array

The relationships to governance policies.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

reference_data

array

The relationships to reference data sets.

revision

Required *

string

The revision of the artifact. It is used for optimistic locking.

rules

array

Relationships to governance rules only. Does not include other rule relationships.

short_description

string

The short description of an artifact.

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

The stewards assigned to an artifact.

tags

array

The tags assigned to an artifact.

terms

array

Relationships to business terms.

Path Parameters

artifact_id

Required *

string

The artifact id of the rule to be updated.

version_id

Required *

string

The version id of the rule to be updated.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

200 - The rule has been updated successfully.

entity

GlossaryV3ResponseRuleEntity

Represents a rule entity returned by REST GET methods that include the relationships as paginated lists

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - The rule with given {guid} does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

409 - The rule was modified by another user.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

List the relationships of the given type for the specified rule

GET /v3/rules/{artifact_id}/versions/{version_id}/relationships

If the result set is larger than the <code>limit</code> parameter, it returns the first <code>limit</code> number of relationships. <br/>To retrieve the next set of relationships, call the method again by using the URI in the property <code>next</code> returned by this method.

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the rule to fetch.

version_id

Required *

string

The version ID of the rule to fetch.

Query Parameters

type

Required *

string

Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>parent_category</code></td><td></td></tr><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>rules</code></td><td></td></tr><tr><td><code>reference_data</code></td><td></td></tr><tr><td><code>policies</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

ca_definition_id

string

Custom relationship definition Id.

is_reversed

boolean

Is custom relationship reversed?

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

include_target_parent_category_name

boolean

Retrieves target parent category name of the relationship entity.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

Response

200 - Success

custom_relationships

array

List of custom relationships

empty

boolean

relationships

object

Mapping of the relationship type to the paginated list of relationships

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Create relationships for an artifact in the glossary

POST /v3/rules/{artifact_id}/versions/{version_id}/relationships

If it is a published version, it creates a draft from the published version and adds the relationship to the draft version. And, it returns the details of the draft version.

Request

Request Body

GlossaryV3RuleRelationshipsRequest

Relationships to be created.

categories

array

Category relationships.

classifications

array

The list of related classifications

data_classes

array

The list of related data classes

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

policies

array

The list of parent policies

reference_data

array

The list of related reference data sets

rules

array

The list of related rules

terms

array

The list of related business terms

Path Parameters

artifact_id

Required *

string

The artifact ID of the rule to fetch.

version_id

Required *

string

The version ID of the rule to fetch.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

201 - The relationship(s) have been created successfully.

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - UniqueConstraintViolation - This Relationships is already exist

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Deletes a relationship of a rule artifact

DELETE /v3/rules/{artifact_id}/versions/{version_id}/relationships/{relationship_id}

This method can be used for deleting a relationship of a rule artifact.

Request

Path Parameters

artifact_id

Required *

string

The artifact ID of the rule to fetch.

version_id

Required *

string

The version ID of the rule to fetch.

relationship_id

Required *

string

The artifact ID of the relationship to be deleted.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

200 - The relationship of the rule artifact was successfully deleted.

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The relationship for the given GUID does not exist in the glossary.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Create a reference data set

POST /v4/reference_data_sets

Create a reference data set

Request

Request Body

GlossaryV3NewReferenceDataSetEntityV4

categories

array

Secondary categories the artifact belongs to.

child

array

The relationships to reference data sets.

classifications

array

Relationships to classifications.

custom_relationships

array

Custom relationships to asset

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

long_description

string

The long description of an artifact.

name

Required *

string

The name of the artifact.

parent

array

The relationships to reference data sets.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

Stewards Ids

tags

array

The tags assigned to an artifact.

terms

array

Relationships to business terms.

type

string

Type

Path Parameters

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the artifact will be created in the published state by skipping the workflow. For details refer to documentation.

Response

201 - The reference data set has been created successfully.

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Reference data set with given name already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieve a reference data set with given artifact_id and status

GET /v4/reference_data_sets/{artifact_id}/versions

This method can be used for retrieving details of an ACTIVE, PUBLISHED or DRAFT reference data set.

Request

Path Parameters

artifact_id

Required *

string

Artifact ID or global ID of the artifact

Query Parameters

status

string

Filter by reference data set status.<br/><table><tbody><tr><td colspan="2">Available statuses:</td></tr><td><code>DRAFT</code></td><td>artifacts which are being created or modified and not in use</td></tr><tr><td><code>PUBLISHED</code></td><td>artifacts which are in published state (does not takes effective dates into account)</td></tr><tr><td><code>ACTIVE</code></td><td>artifacts which are published, and which effective date period includes current datetime</td></tr></tbody></table>

include_relationship

string

Fetch only the first page of every requested relationship. Size of the page is defined by <code>limit</code>. To fetch other relationship pages call: <i>/v4/reference_data_sets/{artifact_id}/versions/{version_id}/relationships</i>. Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>parent_category</code></td><td></td><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td><tr><td><code>rules</code></td><td></td></tr><tr><td><code>child</code></td><td></td></tr><tr><td><code>parent</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

include_custom_relationships_definitions

boolean

Fetch custom relationships definitions for reference data set with relationships count.

include_custom_column_def

boolean

Fetch Custom Column definition for reference dataset.

include_composite_key

boolean

Fetch composite key for reference dataset.

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'false'.

limit

integer

The maximum number of artifacts to return - must be at least 1 and cannot exceed 200. The default value is 10.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

Response

200 - The reference data set has been retrieved successfully.

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

versions

array

List of reference data set versions

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set with given {guid} does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Delete a reference data set with given artifact_id and version_id

DELETE /v4/reference_data_sets/{artifact_id}/versions/{version_id}

Delete the reference data set with a given artifact_id and version_id. If the artifact is published then a workflow will be started with a draft created with label marked for deletion which on approval will result in a actual delete. If the artifact is a draft copy then the draft copy will be deleted from the system.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

move_child_to

string

Specify new reference data parent artifact_id for children of reference data that is to be removed. If move_child_to is not set all reference data children become root objects.

Response

200 - The reference data set has been deleted successfully if workflow is disabled.<br>A draft version has been successfully created for deleting the published artifact.

resources

array

IDs of the created items.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set with given {guid} does not exist.

errors

array

List of errors.

trace

string

The trace id.

409 - The reference data set is currently used in catalog assets, catalog asset columns, data governance rules or data governance policies.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieve a reference data set with given artifact_id and version_id

GET /v4/reference_data_sets/{artifact_id}/versions/{version_id}

This method will retrieve details of the specified reference data set.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

include_relationship

string

Fetch only the first page of every requested relationship. Size of the page is defined by <code>limit</code>. To fetch other relationship pages call: <i>/v4/reference_data_sets/{artifact_id}/versions/{version_id}/relationships</i>. Comma-separated list of relationship types.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>parent_category</code></td><td></td><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td><tr><td><code>rules</code></td><td></td></tr><tr><td><code>child</code></td><td></td></tr><tr><td><code>parent</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

include_custom_relationships_definitions

boolean

Fetch custom relationships definitions for reference data set with relationships count.

include_custom_column_def

boolean

Fetch Custom Column definition for reference dataset.

include_composite_key

boolean

Fetch composite key for reference dataset.

include_custom_attributes

boolean

If this parameter is set to true, then all artifact custom attributes are returned. If parameter is not set its default value is 'false'.

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

Response

200 - The reference data set has been retrieved successfully.

entity

GlossaryV3ResponseReferenceDataSetEntityV4

Reference Data Set entity returned by V4 REST GET method that includes the relationships as paginated list.

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set with given {guid} does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Update a reference data set with given artifact id and version id

PATCH /v4/reference_data_sets/{artifact_id}/versions/{version_id}

Update a reference data set with given artifact id and version id<br>To remove description please specify: <code>"long_description": null</code>.

Request

Request Body

GlossaryV3UpdatableReferenceDataSetEntityV4

The reference data set to be updated.<br>Fields omitted will be unchanged. For multi-valued attributes, like values and relationships, use the respective endpoints.

composite_key_order

array

New composite key order

effective_end_date

string

The effective end date at which the artifact ends and no longer effective. If the effective end date is not specified, then the artifact remains effect forever.

effective_start_date

string

The effective start date at which the artifact goes into effect. If the effective start date is not specified, then the artifact goes into effect immediately.

long_description

string

The long description of an artifact.

name

string

The name of the artifact.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

reference_copy

boolean

Indicates that it is a reference copy of an artifact managed in an external metadata server.

revision

Required *

string

The revision of the artifact. It is used for optimistic locking.

state

string

The state of an artifact, such as DRAFT, ACTIVE or ARCHIVED.

steward_group_ids

array

The steward groups assigned to an artifact.

steward_ids

array

Stewards Ids

tags

array

The tags assigned to an artifact.

type

string

Type

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

200 - The reference data set has been updated successfully.

entity

GlossaryV3ResponseReferenceDataSetEntityV4

Reference Data Set entity returned by V4 REST GET method that includes the relationships as paginated list.

metadata

GlossaryV3GlossaryObjectMetadataV3

Metadata of the entity.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set with given {guid} does not exist.

errors

array

List of errors.

trace

string

The trace id.

409 - The reference data set was modified by another user.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Create Custom Column definitions

POST /v4/reference_data_sets/{artifact_id}/versions/{version_id}/custom_columns

Create Custom Column definitions<br> <ul> <li>Allowed Custom Column definitions types: <code>NUMBER, TEXT, DATE</code>.</li> <li>If a column is a composite key, it must be mandatory.</li> <li> For <code>NUMBER</code> and <code>TEXT</code> types the default values for <code>max_characters_count</code>: <ul> <li>for a composite key column: 200,</li> <li>for a normal column: 2000.</li> </ul> <li><code>validator_rds_id</code> must be an artifact id of a published RDS.</li> </ul>

Request

Request Body

GlossaryV3RDSCustomColumnsCreateRequest

columns

array

List of custom column Definitions.

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

Response

201 - The Custom Column(s) have been created successfully.

resources

array

resources of custom columns.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - UniqueConstraintViolation - Custom Column definition with given name already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Delete a Custom Column definition by column_id

DELETE /v4/reference_data_sets/{artifact_id}/versions/{version_id}/custom_columns/{column_id}

Delete a Custom Column definition by column_id

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

column_id

Required *

string

The column id associated with Custom Column definition.

Query Parameters

Response

204 - The Custom Column definition has been deleted successfully with specified column_id.

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieve a Custom Column definition with given column_id

GET /v4/reference_data_sets/{artifact_id}/versions/{version_id}/custom_columns/{column_id}

Retrieve a Custom Column definition with given column_id

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

column_id

Required *

string

The column id associated with Custom Column definition.

Query Parameters

Response

200 - Custom Column definition with given column_id has been retrieved successfully.

entity

GlossaryV3RDSCustomColumnResponse

List of composite key members

metadata

GlossaryV3RDSCustomColumnsGetMetaData

metadata of cust columns.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The Custom Column definition with given {column_id} does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Update Custom Column properties with given column_id

PATCH /v4/reference_data_sets/{artifact_id}/versions/{version_id}/custom_columns/{column_id}

Update Custom Column properties with given column_id<br>To remove RDS validator please specify: <code>"validator_rds_id": null</code>. <br>To remove description please specify: <code>"description": null</code>.

Request

Request Body

GlossaryV3RDSCustomColumnUpdatableEntity

Custom Column properties to be updated.<br/>Properties <code>mandatory</code>, <code>max_character_count</code> and <code>validator_rds_id</code> can be changed only when owner (reference data) has no values assigned yet.

description

string

description

mandatory

boolean

Determinate if it is mandatory

max_character_count

integer

Allowed maximum character count

name

Required *

string

name

revision

Required *

string

The revision of the artifact. It is used for optimistic locking.

type

string

Type

validator_rds_id

string

Artifact id of reference data set validating this custom column

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

column_id

Required *

string

The column id associated with Custom Column definition.

Query Parameters

Response

200 - The Custom Column definition has been updated successfully.

composite_key

boolean

Determinate if it is a part of composite key. If a column is a composite key, it must be mandatory.

description

string

description

hidden

boolean

Determines if column is hidden

id

string

Custom Column Definition Id

mandatory

boolean

Determinate if it is mandatory

max_character_count

integer

Allowed maximum character count

name

string

name

owner_rds_id

string

Artifact id of reference data set owning this custom column

revision

string

The revision of the artifact. It is used for optimistic locking.

type

string

Custom Column definitions type.

validator_rds_id

string

Artifact id of reference data set validating this custom column

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

403 - Forbidden

errors

array

List of errors.

trace

string

The trace id.

404 - The Custom Column definition with given {column_id} does not exist.

errors

array

List of errors.

trace

string

The trace id.

409 - The Custom Column was modified by another user.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

List the relationships of the given type for the specified reference data set

GET /v4/reference_data_sets/{artifact_id}/versions/{version_id}/relationships

If the result set is larger than the <code>limit</code> parameter, it returns the first <code>limit</code> number of relationships. <br/>To retrieve the next set of relationships, call the method again by using the URI in the property <code>next</code> returned by this method.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

type

string

The relationship type for reference data set.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>parent_category</code></td><td></td><tr><td><code>categories</code></td><td></td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>classifications</code></td><td></td></tr><tr><td><code>data_classes</code></td><td></td><tr><td><code>rules</code></td><td></td></tr><tr><td><code>child</code></td><td></td></tr><tr><td><code>parent</code></td><td></td></tr><tr><td><code>custom</code></td><td></td></tr><tr><td><code>all</code></td><td></td></tr></tbody></table>

ca_definition_id

string

Custom relationship definition Id.

is_reversed

boolean

Is custom relationship reversed?

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

Index of the beginning of the page. The offset value can be 0 (zero) or a multiple of limit value.

all_parents

boolean

If this parameter is set, then all ancestors in the hierarchy are returned. You can use this parameter to build complete ancestor path.

include_target_parent_category_name

boolean

Retrieves target parent category name of the relationship entity.

Response

200 - Success

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

relationships

array

List of relationships

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Associate Reference data set identified by artifact_id and version_id with other governance artifacts

POST /v4/reference_data_sets/{artifact_id}/versions/{version_id}/relationships

Associate Reference data set identified by artifact_id and version_id with other governance artifacts

Request

Request Body

GlossaryV3ReferenceDataSetRelationshipsV4

list of relationships that need to created for reference data set

categories

array

Category relationships.

child

array

New relationship with reference data set.

classifications

array

The relationships to classifications.

custom_relationships

array

Custom relationships to asset

parent

array

New relationship with reference data set.

parent_category

GlossaryV3NewRelationship

The parent category of the artifact.

id

string

Artifact id of the related artifact.

terms

array

The relationships to business terms.

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

201 - Relationships created for reference data set

artifact_id

string

The ID of the artifact

categories

array

secondary category relationships added

child

array

child reference data set relationships added

classifications

array

classification relationships added

custom_relationships

object

Custom relationships to asset

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

parent

array

parent reference data set relationships added

parent_category

GlossaryV3RelationshipCreateResponseIds

Response ID's of create relationships

parent_category_global_id

string

The global ID of the parent category of the artifact

parent_category_id

string

The artifact ID of the parent category

terms

array

term relationships added

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Relationships conflicting for reference data set

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Delete the relationship associated to reference data set with specified artifact_id and version_id

DELETE /v4/reference_data_sets/{artifact_id}/versions/{version_id}/relationships/{relationship_id}

Delete the relationship associated to reference data set with specified artifact_id and version_id

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

relationship_id

Required *

string

The artifact ID of the relationship to be deleted.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

200 - The reference data set relationship has been deleted successfully if workflow is disabled.<br>A draft version has been successfully created for deleting the published artifact.

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

parent_category_global_id

string

The global ID of the parent category of the artifact

parent_category_id

string

The artifact ID of the parent category

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - relationship not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Import reference data values from csv file to the reference data set with specified artifact_id and version_id

POST /v4/reference_data_sets/{artifact_id}/versions/{version_id}/value_imports

Import reference data values from csv file to the reference data set with specified artifact_id and version_id<br>To check the current status of the import please use the endpoint <code>GET /v4/reference_data_sets/{artifact_id}/versions/{version_id}/value_imports/{import_id}</code>.

Request

Request Body

Input data for reference data value import: import file and parameters.

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

Response

202 - The reference data values import has been initiated successfully.

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

import_info

GlossaryV3RDVImportInfo

RDV import info

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Request cancellation of a ongoing reference data values import process with specified import_id

DELETE /v4/reference_data_sets/{artifact_id}/versions/{version_id}/value_imports/{import_id}

Request cancellation of a ongoing reference data values import process with specified import_id

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

import_id

Required *

string

The import id for the reference data values import process.

Query Parameters

Response

204 - Cancel Request Accepted

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get current state of reference data values import process with specified import_id

GET /v4/reference_data_sets/{artifact_id}/versions/{version_id}/value_imports/{import_id}

Get current state of reference data values import process with specified import_id

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

import_id

Required *

string

The import id for the reference data values import process.

Query Parameters

Response

200 - Success

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

import_info

GlossaryV3RDVImportInfo

RDV import info

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Creates relationships for reference data values

POST /v4/reference_data_sets/{artifact_id}/versions/{version_id}/value_relationships

Creates relationships for reference data values

Request

Request Body

GlossaryV3ReferenceDataValuesRelationshipsRequestV4

value_relationships

array

Reference Data Values Relationships

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the artifact will be created in the published state by skipping the workflow. For details refer to documentation.

Response

201 - Relationships created for reference data values

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

parent_category_global_id

string

The global ID of the parent category of the artifact

parent_category_id

string

The artifact ID of the parent category

value_relationships

array

List of Reference Data Values with relationships.

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Relationships conflicting for reference data value

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieve a reference data value relationships with given reference data set artifact_id and version_id and reference data value artifact_id

GET /v4/reference_data_sets/{artifact_id}/versions/{version_id}/value_relationships/{rdv_artifact_id}

Retrieve a reference data value relationships with given reference data set artifact_id and version_id and reference data value artifact_id

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

rdv_artifact_id

Required *

string

The artifact id of reference data value.

Query Parameters

type

Required *

string

Only one relationship type can be selected.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>parent_hierarchy</code></td><td></td></tr><tr><td><code>child</code></td><td></td></tr><tr><td><code>single_value_mappings</code></td><td></td></tr><tr><td><code>multi_value_mappings</code></td><td></td></tr><tr><td><code>value_mappings</code></td><td></td></tr></tbody></table>

limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

The index of the first matching relationship to include in the result.

Response

200 - The reference data value relationships has been retrieved successfully.

artifact_id

string

Artifact ID

child

GlossaryV3ReferenceDataValueChildrenResponseListV4

Presents a paginated list of Reference Data Value children

code

string

Code

composite_key_values

array

Values of custom columns being part of composite key

custom_column_values

array

Values of custom columns not being part of composite key

description

string

Description

has_children

boolean

Indicates if reference data value has at least one child

multi_value_mappings

GlossaryV3ReferenceDataValueRelationshipResponseListV4

Presents a paginated list of Reference Data Value relationships

parent

GlossaryV3ReferenceDataValueDetailsV4

V4 API Reference data value details

parent_hierarchy

array

List of parent reference data values in hierarchical order

parent_value_artifact_id

string

Parent Artifact ID

revision

string

Revision, must be provided for reference data value modification

single_value_mappings

GlossaryV3ReferenceDataValueRelationshipResponseListV4

Presents a paginated list of Reference Data Value relationships

terms

GlossaryV3ReferenceDataValueRelationshipResponseListV4

Presents a paginated list of Reference Data Value relationships

value

string

Value

value_mappings

GlossaryV3ReferenceDataValueRelationshipResponseListV4

Presents a paginated list of Reference Data Value relationships

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set with given {guid} does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Search for reference data value(s) details with given RDS artifact_id and version_id using specific code or text value filter

POST /v4/reference_data_sets/{artifact_id}/versions/{version_id}/value_search

Search for reference data value(s) details with given RDS artifact_id and version_id using specific code or text value filter<br>Possible values for <code>code_filter</code>: <code>CODE_EQUALS</code>, <code>CODE_OR_VALUE_CONTAINS</code>, <code>CODE_STARTS_WITH</code>.<br> The <code>include_relationships</code> is a comma-separated list of relationship types for reference data value<br> <table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>parent_hierarchy</code></td><td></td></tr><tr><td><code>child</code></td><td></td></tr><tr><td><code>single_value_mappings</code></td><td></td></tr><tr><td><code>multi_value_mappings</code></td><td></td></tr><tr><td><code>value_mappings</code></td><td></td></tr></tbody></table>

Request

Request Body

GlossaryV3RDVSearchParameters

filter_type

Required *

string

filter_value

Required *

string

Reference data value search filter value

include_custom_column_values

boolean

Fetch custom column values for reference data set values.

include_parent_value_details

boolean

Fetch parent reference data details for reference data set values.

include_relationship

string

Comma-separated list of relationship types for reference data value.<br/>

limit

integer

The maximum number of values to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

The index of the first matching value to include in the result.

relationship_limit

integer

The maximum number of relationships to return - must be at least 1 and cannot exceed 200. The default value is 10.

sort

string

Value on which results need to be sorted, currently only CODE is supported.Prefix hyphen (-) for descending order, applicable only for reference data values search.

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

Response

200 - The reference data value(s) details have been retrieved successfully.

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

array

List of reference data values

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set with given {guid} does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieve reference data value(s) details with given RDS artifact_id and version_id and for specific reference data value artifact_ids

GET /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values

Retrieve reference data value(s) details with given RDS artifact_id and version_id and for specific reference data value artifact_ids

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

rdv_artifact_ids

string

Comma-separated list of artifact ids of reference data values. If not provided, all values of given reference data set will be returned.

include_relationship

string

Comma-separated list of relationship types for reference data value.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>parent_hierarchy</code></td><td></td></tr><tr><td><code>child</code></td><td></td></tr><tr><td><code>single_value_mappings</code></td><td></td></tr><tr><td><code>multi_value_mappings</code></td><td></td></tr><tr><td><code>value_mappings</code></td><td></td></tr></tbody></table>

include_parent_value_details

boolean

Fetch parent reference data details for reference data set values.

include_custom_column_values

boolean

Fetch custom column values for reference data set values.

roots_only

boolean

Fetch root values (values with no parent assigned) for reference data set.

limit

integer

The maximum number of hierarchy children to return - must be at least 1 and cannot exceed 200. The default value is 10.

offset

integer

The index of the first matching hierarchy children to include in the result.

relationship_limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

sort

string

Value on which results need to be sorted, currently only CODE is supported.Prefix hyphen (-) for descending order, applicable only for reference data values search.

Response

200 - The reference data value(s) details have been retrieved successfully.

count

integer

The total number of items that matches the given criteria.

first

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

last

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

limit

integer

The limit parameter passed to the list / search method.

missing_rdv_artifact_ids

array

Reports requested rdv_artifact_ids that do not exist under given version of reference data set

next

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

offset

integer

Offset used in the list / search method.

prev

GlossaryV3GlossaryResourceLinkV3

Represents an html link.

values

array

List of reference data values

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set or value with given id does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Remove or update reference data values for the specified reference data set

PATCH /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values

Remove or update reference data values for the specified reference data set

Request

Request Body

Valid Json-patch body with either delete or replace operations.<br>Note: Precision will be lost if long value has more than 15-16 digits as JSON parser will map to double type regardless of whether it is used for integer, long or floating-point numbers. To Preserve all digits pass the value as a string.

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

Response

200 - The reference data value(s) have been added and/or updated and/or deleted successfully.

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

values

array

Reference data values

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Reference data value with given code already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Add reference data value to the specified reference data set

POST /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values

Add reference data value to the specified reference data set

Request

Request Body

GlossaryV3NewReferenceDataValueEntityV4

code

string

Code of reference data value.

custom_column_values

array

List of custom column values

description

string

Description

parent_value_artifact_id

string

Artifact id of parent reference data value

value

string

Value of reference data value

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

201 - The reference data value(s) have been added successfully.

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

values

array

Reference data values

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Reference data value with given composite key already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Add or update reference data values for the specified reference data set

PUT /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values

Add or update reference data values for the specified reference data set

Request

Request Body

GlossaryV3CreateUpdateReferenceDataValuesListV4

values

array

Reference data values

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

200 - The reference data values have been added and/or updated successfully.

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

values

array

Reference data values

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

201 - The reference data value(s) have been added successfully.

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

values

array

Reference data values

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Reference data value with given composite key already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Exports values of a specified reference data set with specified artifact_id and version_id to a csv file

GET /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values/export

Exports values of a specified reference data set with specified artifact_id and version_id to a csv file<br>Only Code, Value and Composite Key columns will be exported by default, use parameters to export additional properties.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

Query Parameters

composite_key_only

boolean

Export reference data values code and composite key only. Note: If composite key is not defined, only code will be exported.

include_description

boolean

Export reference data value description.

include_custom_column_def_artifact_ids

string

Comma-separated list of custom column definition artifact ids. Use <code>all</code> to export all custom column definition values.

include_parent_value

boolean

Export reference data value parent.

include_relationship

string

Comma-separated list of relationship types for reference data value.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>value_mappings</code></td><td></td></tr></tbody></table>

include_physical_key

boolean

Export additional column representing reference data physical key (code + composite key values), columns are delimited with '|'.

Response

200 - The reference data set has been retrieved successfully.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set with given {guid} does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Delete the reference data value identified by its artifact id in the Reference Data Set with specified artifact_id and version_id

DELETE /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values/{rdv_artifact_id}

Delete the reference data value identified by its artifact id in the Reference Data Set with specified artifact_id and version_id. If the reference data set is published then a workflow will be started with a draft created from which the value will be deleted. If the artifact is a draft copy then the value from the draft copy will be removed.

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

rdv_artifact_id

Required *

string

The artifact id of reference data value.

Query Parameters

move_child_to

string

Specifies behavior when deleted reference data value has children. Options are:<ul><li> root - make them root values</li><li> immediate_parent - move them to the parent of deleted value </li><li> other_value - move them to specified value (you have to specify it in <i>target_value_artifact_id</i> parameter) </li></ul>

target_value_artifact_id

string

Target reference data value (to become parent for children of deleted one) artifact id (note: it has to "belong" to same reference data set as deleted value

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

200 - The reference data value has been deleted successfully.

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

parent_category_global_id

string

The global ID of the parent category of the artifact

parent_category_id

string

The artifact ID of the parent category

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set or value with given id does not exist.

errors

array

List of errors.

trace

string

The trace id.

409 - The reference data value is currently used in catalog assets, catalog asset columns, data governance rules or data governance policies.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Retrieve reference data value(s) details with given RDS artifact_id and version_id and for specific reference data value artifact_ids

GET /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values/{rdv_artifact_id}

Retrieve reference data value(s) details with given RDS artifact_id and version_id and for specific reference data value artifact_ids

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

rdv_artifact_id

Required *

string

The artifact id of reference data value.

Query Parameters

include_custom_column_values

boolean

Fetch custom column values for reference data set values.

include_relationship

string

Comma-separated list of relationship types for reference data value.<br/><table><tbody><tr><td colspan="2">Available types:</td></tr><tr><td><code>terms</code></td><td></td></tr><tr><td><code>parent_hierarchy</code></td><td></td></tr><tr><td><code>child</code></td><td></td></tr><tr><td><code>single_value_mappings</code></td><td></td></tr><tr><td><code>multi_value_mappings</code></td><td></td></tr><tr><td><code>value_mappings</code></td><td></td></tr></tbody></table>

include_parent_value_details

boolean

Fetch parent reference data details for reference data set values.

relationship_limit

integer

The maximum number of relationship to return - must be at least 1 and cannot exceed 200. The default value is 10.

Response

200 - The reference data value(s) details have been retrieved successfully.

artifact_id

string

Artifact ID

child

GlossaryV3ReferenceDataValueChildrenResponseListV4

Presents a paginated list of Reference Data Value children

code

string

Code

composite_key_values

array

Values of custom columns being part of composite key

custom_column_values

array

Values of custom columns not being part of composite key

description

string

Description

has_children

boolean

Indicates if reference data value has at least one child

multi_value_mappings

GlossaryV3ReferenceDataValueRelationshipResponseListV4

Presents a paginated list of Reference Data Value relationships

parent

GlossaryV3ReferenceDataValueDetailsV4

V4 API Reference data value details

parent_hierarchy

array

List of parent reference data values in hierarchical order

parent_value_artifact_id

string

Parent Artifact ID

revision

string

Revision, must be provided for reference data value modification

single_value_mappings

GlossaryV3ReferenceDataValueRelationshipResponseListV4

Presents a paginated list of Reference Data Value relationships

terms

GlossaryV3ReferenceDataValueRelationshipResponseListV4

Presents a paginated list of Reference Data Value relationships

value

string

Value

value_mappings

GlossaryV3ReferenceDataValueRelationshipResponseListV4

Presents a paginated list of Reference Data Value relationships

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - The reference data set or value with given id does not exist.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Update reference data value in the specified reference data set

PATCH /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values/{rdv_artifact_id}

Update reference data value in the specified reference data set<br> To remove parent RDV please specify: <code>"parent_value_artifact_id": null</code>.

Request

Request Body

GlossaryV3UpdateReferenceDataValueEntityV4

custom_column_values

array

List of custom column values

description

string

Description

parent_value_artifact_id

string

Artifact id of parent reference data value

revision

string

The revision of the artifact. It is used for optimistic locking.

value

string

Value of reference data value

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

rdv_artifact_id

Required *

string

The artifact id of reference data value.

Query Parameters

skip_workflow_if_possible

boolean

If configuration permits, the published artifact will be updated by skipping the workflow. For details refer to documentation.

Response

200 - The reference data value has been updated successfully.

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

values

array

Reference data values

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Reference data value with given composite key already exists.

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Creates relationships for reference data value

POST /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values/{rdv_artifact_id}/value_relationships

Creates relationships for reference data value

Request

Request Body

GlossaryV3ReferenceDataValueRelationshipsRequestV4

child

array

The artifact id to other reference data values as child.

multi_value_mappings

array

The relationships to other reference data values as multi value mapping.

rdv_artifact_id

string

Artifact id of target reference data value

single_value_mappings

array

The relationship to other reference data value as single value mapping.

terms

array

The relationships to business terms.

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

rdv_artifact_id

Required *

string

The artifact id of reference data value.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the artifact will be created in the published state by skipping the workflow. For details refer to documentation.

Response

201 - Relationships created for reference data value

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

parent_category_global_id

string

The global ID of the parent category of the artifact

parent_category_id

string

The artifact ID of the parent category

value_relationships

array

List of Reference Data Values with relationships.

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

409 - Relationships conflicting for reference data set

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Delete the relationship associated to reference data value identified by its artifact id in the Reference Data Set with specified artifact_id and version_id

DELETE /v4/reference_data_sets/{artifact_id}/versions/{version_id}/values/{rdv_artifact_id}/value_relationships/{relationship_id}

Delete the relationship associated to reference data value identified by its artifact id in the Reference Data Set with specified artifact_id and version_id

Request

Path Parameters

artifact_id

Required *

string

The artifact id of the reference data set.

version_id

Required *

string

The version id of the reference data set or specify ACTIVE (it represents a current active published version) or PUBLISHED (it represents a published version that is active now or will be active in the future).

rdv_artifact_id

Required *

string

The artifact id of reference data value.

relationship_id

Required *

string

The artifact ID of the relationship to be deleted.

Query Parameters

skip_workflow_if_possible

boolean

If workflow template configuration permits, the published artifact will be deleted by skipping the workflow. For details refer to documentation.

Response

200 - Deleted the relationship

artifact_id

string

The ID of the artifact

entity_type

string

The type of the artifact

global_id

string

The global ID of the artifact

href

string

Resource url

parent_category_global_id

string

The global ID of the parent category of the artifact

parent_category_id

string

The artifact ID of the parent category

version_id

string

The version ID of the artifact

workflow_id

string

The workflow ID of the artifact

400 - Bad Request

errors

array

List of errors.

trace

string

The trace id.

401 - Unauthorized

errors

array

List of errors.

trace

string

The trace id.

404 - relationship not found

errors

array

List of errors.

trace

string

The trace id.

500 - Internal Server Error

errors

array

List of errors.

trace

string

The trace id.

Get list of jobs under a project or a space.

GET /v2/jobs

Lists the jobs in the specified project or space (either project_id or space_id must be set).

Request

Path Parameters

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

asset_ref

string

Optionally get all jobs associated with a particular asset.

asset_ref_type

string

Optionally get all jobs associated with the particular asset ref type.

run_id

string

The ID of the job run. Can be used to search parent job of a job run

limit

integer

The limit of the number of items to return, for example limit=50. If not specified a default of 100 will be used.

next

string

The optional 'next' field from the response in string format, can be used to get the next batch. The response can contain up to 200 results in a batch, if there are more results, a 'next' field is returned in the response which can be used to get the next batch.

Response

200 - Success.

next

JobsAssetSearchNext

total_rows

integer

results

array

Array of all jobs.

400 - Bad request. See the error message for details.

code

string

target

ErrorTargetModel

message

string

more_info

string

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

404 - The resources you specified cannot be found.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Create a new job.

POST /v2/jobs

Creates a new job in the specified project or space (either project_id or space_id must be set).

Request

Request Body

JobsJobPostBody

The job to be created. Note: either asset_ref or asset_ref_type must be provided, not both.

job

object

asset_ref

string

ID of associated asset to run (provide either asset_ref or asset_ref_type).

asset_ref_type

string

The type of asset to run (provide either asset_ref or asset_ref_type).

name

Required *

string

The name of the job

description

string

The description of the job.

schedule

string

A cron string defining when the job should be run. If an empty string is provided it means the job is not scheduled to run.

schedule_info

object

serving_name

string

A globally unique attribute to be used in place of the job id when sending calls. Must be a combination of lowercase alphanumeric and underscore characters, and must be between 1 and 36 characters.

retention_policy

object

configuration

Required *

object

job_parameters

array

Array of job parameters.

parameter_sets

array

Array of parameter sets.

Path Parameters

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

201 - Created.

metadata

JobsAssetMetadata

AssetMetadata Model

entity

JobsJobEntity

The underlying job definition.

400 - Bad request. See the error message for details.

code

string

target

ErrorTargetModel

message

string

more_info

string

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Get the information of job identified by the ID.

GET /v2/jobs/{job_id}

Gets the info for a single job associated from the specified project or space (either project_id or space_id must be set).

Request

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

200 - Success.

metadata

JobsAssetMetadata

AssetMetadata Model

entity

JobsJobEntity

The underlying job definition.

400 - Bad request. See the error message for details.

code

string

target

ErrorTargetModel

message

string

more_info

string

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

404 - The resources you specified cannot be found.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Delete a specific job.

DELETE /v2/jobs/{job_id}

Deletes a specific job in a project or space (either project_id or space_id must be set). If the deletion of the job and its runs will take some time to finish, then a 202 response will be returned and the deletion will continue asynchronously. All the jobs runs associated with the job will also be deleted. If the job is still running, it will not be deleted.

Request

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

204 - The requested operation completed successfully.

400 - Bad request. See the error message for details.

code

string

target

ErrorTargetModel

message

string

more_info

string

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

404 - The resources you specified cannot be found.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Update information of a job.

PATCH /v2/jobs/{job_id}

Updates specific attributes of a job in the specified project or space (either project_id or space_id must be set). You must specify the updates by using the JSON patch format, described in RFC 6902.

Request

Request Body

JobsJSONJobPatchModel

Updates to make to the job run.

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

200 - Success.

metadata

JobsAssetMetadata

AssetMetadata Model

entity

JobsJobEntity

The underlying job definition.

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

404 - The resources you specified cannot be found.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Get the availability of a given serving_name

GET /v2/jobs/serving_name/{serving_name}

Gets the availability of a given serving_name, as serving_name must be globally unique. serving_name must be a combination of alphanumeric and underscore characters, and must be between 1 and 36 characters.

Request

Path Parameters

serving_name

Required *

string

The serving_name value of the job to be used in place of the job ID.

Query Parameters

Response

200 - Success.

results

array

400 - Bad request. See the error message for details.

code

string

target

ErrorTargetModel

message

string

more_info

string

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Get list of runs of a job.

GET /v2/jobs/{job_id}/runs

Lists the job runs for a specific job in the specified project or space (either project_id or space_id must be set). Only the metadata and certain elements of the entity component of each run are returned.

Request

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

next

string

The optional 'next' field from the response in string format, can be used to get the next batch. The response can contain up to 200 results in a batch, if there are more results, a 'next' field is returned in the response which can be used to get the next batch.

limit

integer

The limit of the number of items to return, for example limit=50. If not specified a default of 100 will be used.

states

array

A list of comma-separated job run states. Availble values: Completed, Failed, Canceled, Starting, Running, Queued, Canceling, Paused, Resuming, CompletedWithWarnings, CompletedWithErrors

Response

200 - Success.

next

JobsAssetSearchNext

total_rows

integer

results

array

Array of all jobs.

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Start a run for a job.

POST /v2/jobs/{job_id}/runs

Starts the specified job contained in a project or space (either project_id or space_id must be set).

Request

Request Body

JobsJobRunPostBody

The configuration of the job run to use. If not provided, use the configuration of the associated job.

job_run

Required *

object

name

string

The name of the job run

description

string

The description of the job run

configuration

object

job_parameters

array

Array of job parameters.

parameter_sets

array

Array of parameter sets.

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

201 - The requested operation completed successfully.

metadata

JobsAssetJobRunMetadata

AssetJobRunMetadata Model

entity

JobsJobRunEntity

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Get a specific run of a job.

GET /v2/jobs/{job_id}/runs/{run_id}

Gets the info for a single job run from the specified project or space (either project_id or space_id must be set).

Request

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

run_id

Required *

string

The ID of the job run.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

200 - Success.

metadata

JobsAssetJobRunMetadata

AssetJobRunMetadata Model

entity

JobsJobRunEntity

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Delete a run.

DELETE /v2/jobs/{job_id}/runs/{run_id}

Delete the specified job run in a project or space (either project_id or space_id must be set).

Request

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

run_id

Required *

string

The ID of the job run.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

202 - The requested operation is in progress.

204 - The requested operation completed successfully.

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

404 - The resources you specified cannot be found.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Retrieve runtime log of a run.

GET /v2/jobs/{job_id}/runs/{run_id}/logs

Gets the logs for a job run in the specified project or space (either project_id or space_id must be set)

Request

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

run_id

Required *

string

The ID of the job run.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

limit

integer

The limit of the number of lines to return, for example limit=50. If not specified, all log will be returned.

Response

200 - Success.

results

array

Array of log string split by line

total_count

integer

Total number of lines available

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Cancel a run.

POST /v2/jobs/{job_id}/runs/{run_id}/cancel

Cancels a job run that is in the running state.

Request

Request Body

An empty body.

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

run_id

Required *

string

The ID of the job run.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

204 - The requested operation completed successfully.

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Pause a run.

POST /v2/jobs/{job_id}/runs/{run_id}/pause

Pauses a job run that is in the running state.

Request

Request Body

An empty body.

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

run_id

Required *

string

The ID of the job run.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

204 - The requested operation completed successfully.

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Resume a run.

POST /v2/jobs/{job_id}/runs/{run_id}/resume

Resumes a job run that is in the paused state.

Request

Request Body

An empty body.

Path Parameters

job_id

Required *

string

The ID of the job to use. Each job has a unique ID. Alternatively, the serving_name value can be used.

run_id

Required *

string

The ID of the job run.

Query Parameters

project_id

string

The ID of the project to use. project_id or space_id is required.

space_id

string

The ID of the space to use. project_id or space_id is required.

Response

204 - The requested operation completed successfully.

401 - You are not authorized to access the service. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

403 - You are not permitted to perform this action. See response for more information.

code

string

target

ErrorTargetModel

message

string

more_info

string

default - An error occurred. See response for more information.

Copy Knowledge Accelerator items into project

POST /v1/knowledge_accelerators/{ka_id}/copy_items

Copy the specified Knowledge Accelerator items into specified IKC project.

Request

Path Parameters

ka_id

Required *

string

The Knowledge Accelerator id

Query Parameters

ids

Required *

string

A comma separated list of the item ids of the Knowledge Accelerator to copy.

project_id

Required *

string

The id of the project where the items are copied to

Response

200 - Success

message

string

A summary message of the copy status

knowledge_accelerator

string

The Knowledge Accelerator URI of the items to be copied

items

array

A copy status for a specific Knowledge Accelerator.

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

404 - Not found

trace

string

errors

array

Get a specific Knowledge Accelerator

GET /v1/knowledge_accelerators/{id}

Supply a Knowledge Accelerator id, in order to get detailed information, including contained items that can be imported, statistics and dependencies

Request

Path Parameters

id

Required *

string

The Knowledge Accelerator id

Query Parameters

Response

200 - Success

id

string

The identifier of the knowledge accelerator, or the knowledge accelerator item

name

string

The name of this knowledge accelerator item

definition

string

The definition that helps describe the content within the knowledge accelerator item

type

string

The type of the knowledge accelerator item. If the item is of type glossary, then the type of the glossary will further be indicated, for example "glossary_iav" (Glossary that is of type, Industry Alignment Vocabulary)

format

string

The format of the content that is stored in this knowledge accelerator item

format_version

string

The version of the tool or service that the format is compatible with

version

string

The version of this knowledge accelerator item. Typically this will only change if the underlying content has changed. If the knowledge accelerator is at a certain version, it would be expected that there would be at least one knowledge accelerator item at that same version

version_definition

string

The definition that might optionally accompany this new version of the content, which would summarise the main changes from prior version.

stats

Knowledge-AcceleratorsKAStats

Holds statistics for the knowledge accelerator or item. If in existence for an item, then it will contain at least 1 statistic, for example count of categories.

mandatory

boolean

If a knowledge accelerator item is depended on by another item, then this property indicates if it should be considered mandatory. Default value is false.

contains

array

A knowledge accelerator can contain 1 or more items. Also in theory a knowledge accelerator item itself, can contain other items and so on

depends_on

array

If an item depends on one or more items within the same knowledge accelerator, this holds those item ids

derived_from

array

If an item is derived from one or more items within the same knowledge accelerator, this holds those item ids

401 - Unauthorized

trace

string

errors

array

404 - Not found

trace

string

errors

array

Import specified Knowledge Accelerator items into the glossary

POST /v1/knowledge_accelerators/{ka_id}/import_items

Import the specified Knowledge Accelerator items into glossary. By default this will import all dependent items

Request

Path Parameters

ka_id

Required *

string

The Knowledge Accelerator id

Query Parameters

ids

Required *

string

The ids of the Knowledge Accelerator items to import, for example 'base'. Use the comma delimiter when listing multiple item ids, for example 'ccpa,gdpr'. Only one item allowed if item is of type glossary_scope

merge_option

Required *

string

The merge option to be used when importing into the glossary, valid values: <br/><br/>all - imported values will replace existing values in catalog<br/>specified - imported values that are not empty replace existing values in catalog<br/>empty - imported values replace only empty values in catalog<br/>

dependencies

string

Indicates which dependencies of the item ids specified should also be imported, valid values: <br/><br/>all - imports the specified items that the user selects, imports all the items that the selected item depends on, irrespective of whether they already exist in glossary (Note, this may overwrite user made changes in the glossary).<br/>necessary - imports specified items that the user selects, imports items that are considered mandatory for the specified item, and imports other related items the specified items depend on that are not already imported.<br/>mandatory - imports the specified items that the user selects, and items that are considered mandatory for the specified item.<br/>

do_import

boolean

Indicates whether the import should be done, valid values: <br/><br/>false - will do all the logic checking and indicate what is going to be imported, useful for checking in advance of actually doing the import<br/>true - at the end of logic checking will trigger the import and return a process id to the user<br/>

Response

202 - Accepted

message

string

A summary message of the import status

process_id

string

A URI for checking the status of the import process

import_evaluation

Knowledge-AcceleratorsKAImportEvaluation

An import evaluation for a specific Knowledge Accelerator.

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

404 - Not found

trace

string

errors

array

Get what Knowledge Accelerator items are currently imported into glossary

GET /v1/knowledge_accelerators/import_items

Information on what Knowledge Accelerator items are imported into glossary if any; this will include information as to whether imported version is current

Request

Response

200 - Success

message

string

A summary message of the import status

import_evaluation

array

An import evaluation for a specific Knowledge Accelerator.

401 - Unauthorized

trace

string

errors

array

Get all Knowledge Accelerators

GET /v1/knowledge_accelerators

Detailed information on each Knowledge Accelerator, including contained items that can be imported, statistics and dependencies

Request

Response

200 - Success

count

integer

A count of the Knowledge Accelerators that are available

knowledge_accelerators

array

A listing of the Knowledge Accelerators and their contained items that are available for importing into the IKC glossary

401 - Unauthorized

trace

string

errors

array

Get asset lineage

GET /asset_lineages/{asset_id}

Returns lineage of the asset identified by asset_id. The lineage includes a list of events associated with the asset. A different list of events are returned based on the value of lineage_type query parameter.

  • lineage_type = default | partial - The event generating the asset, the events happening on the asset and the events using the asset to generate other assets.
  • lineage_type = forward - The event generating the asset and the events using the asset directly or indirectly to generate other assets.
  • lineage_type = forward_hop - The event generating the asset and the events using the asset directly or indirectly to generate other assets. The number of events returned is controlled by hop_count and event_count parameters.
  • lineage_type = backward - All the direct and indirect events responsible for generating the asset.

Request

Path Parameters

asset_id

Required *

string

Asset ID

Query Parameters

limit

integer

The maximum number of events returned. The default value is 50.

offset

integer

The index of the first matching event to be included in the result. The default value is 0.

lineage_type

string

The type of lineage to be returned. The default value is partial

event_classification_type

string

The type of event classification. By default, the events are not classfied.

catalog_id

string

If the asset is a catalog-asset, specify the ID of the catalog. If the seed asset ID is supplied, then the value supplied should be the catalog ID of the seed asset.

project_id

string

If the asset is a project-asset, specify the ID of the project. If the seed asset ID is supplied, then the value supplied should be the project ID of the seed asset.

space_id

string

If the asset is a space-asset, specify the ID of the space. If the seed asset ID is supplied, then the value supplied should be the project ID of the seed asset.

wml_instance_id

string

If the asset is a model, specify the ID of the associated WML service instance. If the seed asset ID is supplied, then the value supplied should be the WML service instance ID of the seed asset.

asset_type

Required *

string

The type of the asset. The value can be one of dataset, model. If the seed asset ID is supplied, then the value supplied should be the type of the seed asset.

event_time

string

The time after which the events have to be fetched. The format should be yyyy-MM-dd'T'HH:mm:ss.SSSX. The default value is 1970-01-01T00:00:00.000Z.

hop_count

integer

Used to control the number of events returned when lineage_type is forward_hop. The events returned will belong to a maximum of N other assets directly or indirectly generated using the asset where N is equal to hop_count. The default value is 4.

event_count

integer

Used to control the number of events returned when lineage_type is forward_hop. The maxiumum number of events of each other asset generated directly or indirectly using the asset. The default value is 10.

seed_asset_id

string

The seed asset ID. The request will not be authorized if the lineage of the asset is not part of the lineage of the seed asset.

Response

200 - OK

limit

integer

offset

integer

first

LineagePaginatedResponseLink

next

LineagePaginatedResponseLink

previous

LineagePaginatedResponseLink

resources

array

count

integer

paginationValues

object

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

Get asset lineage summary

GET /asset_lineages/{asset_id}/summary

Returns lineage summary of the asset identified by asset_id.

Request

Path Parameters

asset_id

Required *

string

Asset ID

Query Parameters

catalog_id

string

If the asset is a catalog-asset, specify the ID of the catalog.

project_id

string

If the asset is a project-asset, specify the ID of the project.

space_id

string

If the asset is a space-asset, specify the ID of the space.

wml_instance_id

string

If the asset is a model, specify the ID of the associated WML service instance.

asset_type

Required *

string

The type of the asset. The value can be one of dataset, model.

Response

200 - OK

metadata

LineageLineageSummaryMetadata

The metadata of the lineage summary.

entity

LineageLineageSummaryEntity

The lineage summary entity.

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

Returns the event identified by event_id.

GET /lineage_events/{event_id}

Get lineage event

Request

Path Parameters

event_id

Required *

string

Event ID

Query Parameters

Response

200 - OK

metadata

LineageEventMetadata

entity

LineageEventEntity

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

Publishes lineage event.

POST /lineage_events

Publish lineage event

Request

Request Body

LineageMessageV1

messageVersion

string

serviceInstanceId

string

serviceInstanceName

string

userId

string

accountId

string

eventDetails

LineageEventDetails

eventId

string

eventType

string

eventCategory

array

eventTime

string

eventSourceService

string

properties

object

generatesAssets

array

usesAssets

array

Response

202 - Accepted

metadata

LineageEventMetadata

entity

LineageEventEntity

204 - No Content

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

Get summary statistics of activities on a project/catalog/space asset

GET /asset_statistics/{asset_id}/statistics

Returns summary statistics of the asset identified by asset_id and request type.

Request

Path Parameters

asset_id

Required *

string

Asset ID

Query Parameters

catalog_id

string

If the asset is a catalog-asset, specify the ID of the catalog.

project_id

string

If the asset is a project-asset, specify the ID of the project.

space_id

string

If the asset is a space-asset, specify the ID of the space

request_type

Required *

string

The type of the request. The value can be one of edits, downloads, publish_to_catalog or clone_to_project.

Response

200 - OK

count

integer

Gives the statistics i.e number of requests (edits, downloads, etc

request

string

Identifies type of Request - edits, downloads, publish_to_catalog, clone_to_project, promote_to_space

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

Create a new notebook.

POST /v2/notebooks

Create a new notebook

  • either from scratch
  • or by copying another notebook.

To create a notebook from scratch, you need to first upload the notebook content(`ipynb` format) to the project Cloud Object Storage (COS) and then reference it with the attribute `file_reference`. The other required attributes are `name`, `project` and `runtime`. The attribute `runtime` is used to specify the environment on which the notebook runs.

To copy a notebook, you only need to provide `name` and `source_guid` in the request body.

Request

Request Body

Specification of the notebook to be created.

Response

201 -

400 -

401 -

403 -

429 -

Retrieve the details of a large number of notebooks inside a project.

POST /v2/notebooks/list

Retrieve the details of a large number of notebooks inside a project.

Request

Request Body

NotebooksNotebookListBody

notebooks

array

The list of notebooks whose details will be retrieved.

Path Parameters

Query Parameters

project_id

Required *

string

The guid of the project.

include

Required *

string

Additional info that will be included into the notebook details. Possible values are:

  • runtime

Response

200 -

400 -

401 -

403 -

Delete a particular notebook, including the notebook asset.

DELETE /v2/notebooks/{notebook_guid}

Delete a particular notebook, including the notebook asset.

Request

Path Parameters

notebook_guid

Required *

string

The guid of the notebook.

Query Parameters

Response

204 - Successful request. Notebook is deleted.

400 -

401 -

403 -

Revert the main notebook to a version.

PUT /v2/notebooks/{notebook_guid}

Revert the main notebook to a version.

Request

Request Body

NotebooksNotebookRevertBody

source

Required *

string

The guid of the notebook version.

Path Parameters

notebook_guid

Required *

string

The guid of the main notebook.

Query Parameters

Response

200 -

400 -

401 -

403 -

Update a particular notebook.

PATCH /v2/notebooks/{notebook_guid}

Update a particular notebook.

Request

Request Body

NotebooksNotebookUpdateBody

environment

string

The guid of the environment on which the notebook runs.

spark_monitoring_enabled

boolean

Spark monitoring enabled or not.

kernel

NotebooksNotebookKernel

A notebook kernel.

display_name

string

The display name of the environment kernel.

name

string

The name of the environment kernel.

language

string

The language of the environment kernel.

Path Parameters

notebook_guid

Required *

string

The guid of the notebook.

Query Parameters

Response

200 -

400 -

401 -

403 -

Create a new version.

POST /v2/notebooks/{notebook_guid}/versions

Create a version of a given notebook.

Request

Response

200 -

400 -

401 -

403 -

List the versions of a notebook.

GET /v2/notebooks/{notebook_guid}/versions

List all versions of a particular notebook.

Request

Response

200 -

400 -

401 -

403 -

Retrieve a notebook version.

GET /v2/notebooks/{notebook_guid}/versions/{version_guid}

Retrieve a particular version of a notebook.

Request

Response

200 -

400 -

401 -

403 -

Delete a notebook version.

DELETE /v2/notebooks/{notebook_guid}/versions/{version_guid}

Delete a particular version of a given notebook.

Request

Response

204 - Success. The version is deleted.

400 -

401 -

403 -

list all governance types

GET /v3/enforcement/governance_types

Lists all governance types. A governance type groups like operations together. For example, the Access governance type groups operations related to access of assets.

Request

Response

200 - OK

resources

array

list of governance types

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

retrieve a governanceType

GET /v3/enforcement/governance_types/{governance_type_name}

Retrieves detailed information on a governance type. This includes all of the operations defined for the governance type and the allowed and default outcomes of each operation.

Request

Path Parameters

governance_type_name

Required *

string

the name of the governance type

Query Parameters

Response

200 - OK

metadata

PoliciesV3PolicyResourceNonpersistentMetadata

metadata object for policy API responses that have no metadata

entity

PoliciesV3PolicyGovernanceTypeResponseEntity

entity object within the response for the /v3/enforcement/governance_types/{governanceTypeId} API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

list user defined rule predicate terms

GET /v3/enforcement/lhs/udp

List all user defined left hand side terms defined in the policy engine.

Request

Response

200 - OK

resources

array

list of terms

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

create user defined left hand side term

POST /v3/enforcement/lhs/udp

Create a left hand side term to be used in rules defined in the policy engine.

Request

Request Body

PoliciesV3LHSTermRequest

LHS RuleTerm JSON

name

Required *

string

Name of the custom LHS.

display_name

Required *

string

Display name of the custom LHS.

description

string

Description of the custom LHS.

property_name

Required *

string

Property name of the LHS references. For Asset properties, use the path of the property in asset json. For user property, use the name of the mapped User SCIM attribute. (Custom user predicates are not supported in CPDaaS).

source

Required *

string

Source for the LHS reference. For custom asset predicate, use 'ASSET'. For custom user predicate use 'CONTEXTUAL' (Custom user predicates are not supported in CPDaaS).

Response

200 - OK

metadata

PoliciesV3PolicyResourceMetadata

metadata object used in responses returned from policy management related APIs

entity

PoliciesV3UDPTermResponseEntity

entity object within the response for the /v3/enforcement/udp/{termName} API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

get a user defined left hand side term

GET /v3/enforcement/lhs/udp/{lhsTermId}

Get the user defined left hand side term in the term cache of the policy engine.

Request

Path Parameters

lhsTermId

Required *

string

ID of the LHS term to get

Query Parameters

Response

200 - OK

metadata

PoliciesV3PolicyResourceMetadata

metadata object used in responses returned from policy management related APIs

entity

PoliciesV3UDPTermResponseEntity

entity object within the response for the /v3/enforcement/udp/{termName} API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

delete a user defined left hand side term

DELETE /v3/enforcement/lhs/udp/{lhsTermId}

Delete a left hand side term in the term cache of the policy engine. This cache is maintained for performance and is used for evaluating policies. It is refreshed periodically from technical terms maintained in the glossary.

Request

Path Parameters

lhsTermId

Required *

string

ID of the custom LHS to delete

Query Parameters

Response

204 - No Content (OK)

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

retrieve and aggregate policy related metrics

GET /v3/enforcement/policy_metrics/analysis/3d

This API retrieves policy enforcement metrics based on query parameters, which include metric type, date range, policy, user, rule, governanceType, outcome, host type, cached, context operation, context location, asset type and asset location. It then sums these metrics according to a specified aggregation type.

Request

Path Parameters

Query Parameters

metrics_type

Required *

string

The type of metrics to return

aggregation_type_1

Required *

string

The type of aggregation to perform on the selected metrics (days, months, years, policies, rules, users, governanceTypes, outcomes)

aggregation_type_2

Required *

string

The type of aggregation to perform on the selected metrics (days, months, years, policies, rules, users, governanceTypes, outcomes)

start_time

Required *

string

ISO 8601 date/time specifying the starting time to return metrics data

end_time

Required *

string

ISO 8601 date/time specifying the ending time to return metrics data

policy_id

string

The policy to return metrics of, or all policies if not specified

rule_id

string

The rule to return metrics of, or all rules if not specified

user

string

The user to return metrics about, or all users if not specified

governance_type

string

The governanceType to return metrics about, or all governanceTypes if not specified

outcome

string

The enforcement outcome to return metrics about, or all outcomes if not specified

pep_host_type

string

The PEP host type to return metrics about, or all PEP host types if not specified

is_pep_cache

boolean

Metrics on decisions retrieved from cache versus from server, or both if not specified

context_operation

string

The context operation to return metrics about, or all context operations if not specified

context_location

string

The context location to return metrics about, or all context locations if not specified

asset_type

string

The asset type to return metrics about, or all asset types if not specified

asset_location

string

The asset location to return metrics about, or all asset locations if not specified

sort

string

The order to sort the metrics. The following values are allowed:

  • aggregate, -aggregate -- ascending or descending order by the aggregate
  • count, -count -- ascending or descending order by enforcement count

Response

200 - OK

metadata

PoliciesV3PolicyResourceNonpersistentMetadata

metadata object for policy API responses that have no metadata

entity

PoliciesV3PolicyMetricsResponseEntity

entity objet within the response for the /v3/enforcement/policy_metrics API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

retrieve and aggregate policy related metrics

GET /v3/enforcement/policy_metrics

This API retrieves policy enforcement metrics based on query parameters, which include metric type, date range, policy, user, rule, governanceType, outcome, host type, cached, context operation, context location, asset type and asset location. It then sums these metrics according to a specified aggregation type.

Request

Path Parameters

Query Parameters

metrics_type

Required *

string

The type of metrics to return

aggregation_type

Required *

string

The type of aggregation to perform on the selected metrics (days, months, years, policies, rules, users, governanceTypes, outcomes)

start_time

Required *

string

ISO 8601 date/time specifying the starting time to return metrics data

end_time

Required *

string

ISO 8601 date/time specifying the ending time to return metrics data

policy_id

string

The policy to return metrics of, or all policies if not specified

rule_id

string

The rule to return metrics of, or all rules if not specified

user

string

The user to return metrics about, or all users if not specified

governance_type

string

The governanceType to return metrics about, or all governanceTypes if not specified

outcome

string

The enforcement outcome to return metrics about, or all outcomes if not specified

pep_host_type

string

The PEP host type to return metrics about, or all PEP host types if not specified

is_pep_cache

boolean

Metrics on decisions retrieved from cache versus from server, or both if not specified

context_operation

string

The context operation to return metrics about, or all context operations if not specified

context_location

string

The context location to return metrics about, or all context locations if not specified

asset_type

string

The asset type to return metrics about, or all asset types if not specified

asset_location

string

The asset location to return metrics about, or all asset locations if not specified

sort

string

The order to sort the metrics. The following values are allowed:

  • aggregate, -aggregate -- ascending or descending order by the aggregate
  • count, -count -- ascending or descending order by enforcement count

Response

200 - OK

metadata

PoliciesV3PolicyResourceNonpersistentMetadata

metadata object for policy API responses that have no metadata

entity

PoliciesV3PolicyMetricsResponseEntity

entity objet within the response for the /v3/enforcement/policy_metrics API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

list all roles in policy engine.

GET /v3/enforcement/roles

Lists all roles of the policy engine.

Request

Response

200 - OK

resources

array

list of roles

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

create a custom role

POST /v3/enforcement/roles

Creates a cusotm role. This will include a list of existing permissions to be associated with the role. Maximum length allowed for 'name' parameter: 80 characters, maximum length allowed for 'description' parameter: 1000 characters. Allowed characters for the 'name' parameter: letters from any language, numbers in any script, space, dot, underscore, hyphen. Strings with characters other than these are rejected (only for the name parameter).

Request

Request Body

PoliciesV3PolicyRolePermissionRequest

Role Permission Request json

name

Required *

string

the displayed name for the role

description

string

a more detailed description of the role

permissions

array

An array of permissions that this role includes

Response

201 - Created

entity

PoliciesV3PolicyRoleResponseEntity

entity within the response for the POST and PUT /v3/enforcement/roles APIs

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

retrieve a role

GET /v3/enforcement/roles/{role_id}

Retrieves detailed information on a role given the role's identifier. This includes a list of permissions associated with this role.

Request

Path Parameters

role_id

Required *

string

role ID

Query Parameters

Response

200 - OK

entity

PoliciesV3PolicyRoleResponseEntity

entity within the response for the POST and PUT /v3/enforcement/roles APIs

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

update a custom category role

PUT /v3/enforcement/roles/{role_id}

Updates a custom category role. This API is also used to add and remove permissions from the custom category role. The permissions should be passed as an array of string that has permissions ids.Maximum length allowed for 'name' parameter: 80 characters, maximum length allowed for 'description' parameter: 1000 characters. If the parameter 'name' is modified, allowed characters for the 'name' parameter: letters from any language, numbers in any script, space, dot, underscore, hyphen. Strings with characters other than these are rejected (only for the name parameter).

Request

Request Body

PoliciesV3PolicyRolePermissionRequest

role json

name

Required *

string

the displayed name for the role

description

string

a more detailed description of the role

permissions

array

An array of permissions that this role includes

Path Parameters

role_id

Required *

string

role ID

Query Parameters

Response

200 - OK

entity

PoliciesV3PolicyRoleResponseEntity

entity within the response for the POST and PUT /v3/enforcement/roles APIs

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

delete a custom category role

DELETE /v3/enforcement/roles/{role_id}

Deletes a cusotm category role.

Request

Path Parameters

role_id

Required *

string

role ID

Query Parameters

Response

204 - No Content (OK)

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

list all permissions in policy engine.

GET /v3/enforcement/roles/permissions

Lists all permissions of the policy engine.

Request

Response

200 - OK

resources

array

list of permissions

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

Sync a rule

PUT /v3/enforcement/rules/sync/{rule_id}

Syncs a rule in DPS with its global search index. If rule is found in DPS, its global search index is updated. If rule is not found in DPS, its global search index is removed.

Request

Path Parameters

rule_id

Required *

string

Rule ID

Query Parameters

Response

200 - OK

metadata

PoliciesV3PolicyResourceMetadata

metadata object used in responses returned from policy management related APIs

entity

PoliciesV3PolicyRuleResponseEntity

entity within the response for the /v3/enforcement/rules/{ruleId} API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

retrieve a rule

GET /v3/enforcement/rules/{rule_id}

Retrieves detailed information on a rule given the rule's identifier.

Request

Path Parameters

rule_id

Required *

string

Rule ID

Query Parameters

Response

200 - OK

metadata

PoliciesV3PolicyResourceMetadata

metadata object used in responses returned from policy management related APIs

entity

PoliciesV3PolicyRuleResponseEntity

entity within the response for the /v3/enforcement/rules/{ruleId} API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

update a rule

PUT /v3/enforcement/rules/{rule_id}

Updates a rule. Maximum length allowed for 'name' parameter: 80 characters, maximum length allowed for 'description' parameter: 1000 characters. If the parameter 'name' is modified, allowed characters for the 'name' parameter: letters from any language, numbers in any script, space, dot, underscore, hyphen. Strings with characters other than these are rejected (only for the name parameter). The governance_type_id cannot be modified.

Request

Request Body

PoliciesV3PolicyRuleRequest

Rule json

name

Required *

string

the displayed name for the rule

description

string

a more detailed description of the rule

governance_type_id

Required *

string

the name of a governance type of this rule

trigger

Required *

PoliciesV3Expression

nested arrays representing an expression that is evaluated to determine if the action on the rule should be performed or enforced. See the description on the POST /v3/enforcement/rules for more details.

conditions

array

action

Required *

PoliciesV3Action

the action to perform or enforce when the rule triggers

name

string

parameters

array

subaction

object

the action to perform or enforce when the rule triggers

roLTransform

boolean

state

string

the state of the rule. Only the rules of policies in active are enforced.

Path Parameters

rule_id

Required *

string

Rule ID

Query Parameters

Response

200 - OK

metadata

PoliciesV3PolicyResourceMetadata

metadata object used in responses returned from policy management related APIs

entity

PoliciesV3PolicyRuleResponseEntity

entity within the response for the /v3/enforcement/rules/{ruleId} API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

delete a rule

DELETE /v3/enforcement/rules/{rule_id}

Deletes a rule. A rule can only be deleted if it is not currently associated with any policy (in any state).

Request

Path Parameters

rule_id

Required *

string

Rule ID

Query Parameters

Response

204 - No Content (OK)

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

list all rules

GET /v3/enforcement/rules

Lists all defined rules. This includes all rules associated with policies and rules not associated with any policy. When more than one filter criteria is specified, the resulting collection satisfies all the criteria.

Request

Path Parameters

Query Parameters

name

string

Specify name of the rule to search for or use filter of the form 'contains:xx' to search for rules containing provided phrase as part of name or use filter of the form 'exact:xx' to search for rules with exact name.

description

string

Specify description of the rule to search for or use filter of the form 'contains:xx' to search for rules containing provided phrase as part of description.

trigger

string

If specified, only rules with a matching trigger expression will be returned.

action

string

If specified, only rules with a matching action will be returned.

state

string

If specified, only rules in the matching state will be returned.

governance_type

string

If speficied, only rules with the matching governance type/types will be returned.

sort

string

The order to sort the rules. The following values are allowed:

  • name, -name -- ascending or descending order by the name
  • modified_date, -modified_date -- ascending or descending order by modified date

limit

string

The maximum number of Rules to return. The default value is 50.

offset

string

The index of the first matching Rule to include in the result. The default value is 0.

Response

200 - OK

limit

integer

the limit as specified on the query or defaulted

offset

integer

the offset as specified on the query or the default value 0

count

integer

total number of resources in the collection

first

PoliciesV3Link

link to the previous page of resources, if available

last

PoliciesV3Link

link to the previous page of resources, if available

next

PoliciesV3Link

link to the previous page of resources, if available

previous

PoliciesV3Link

link to the previous page of resources, if available

resources

array

list of rules

paginationValues

object

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

create a rule

POST /v3/enforcement/rules

Creates a rule. A rule has two key properties:

  1. a trigger defining when the rule should be enforced, and
  2. an action describing what operations to perform or outcome to enforce.

<b>Trigger</b>

A trigger is a boolean expression represented using nested arrays. The following describes the syntax:

 Expression: 
 [ -conditions- ] 
 
 Conditions: 
 -predicate- 
 &quot;NOT&quot;, -predicate- 
 -predicate-, &quot;AND&quot;|&quot;OR&quot;, -conditions- 
 &quot;NOT&quot;, -predicate-, &quot;AND&quot;|&quot;OR&quot;, -conditions- 
 
 Predicate: 
 [ &quot;$-term-&quot;, &quot;EXISTS&quot; ] 
 [ &quot;$-term-&quot;, &quot;EQUALS&quot;|&quot;LESS_THAN&quot;|&quot;GREATER_THAN&quot;|&quot;CONTAINS&quot;, &quot;#-literal-&quot;|&quot;$-term-&quot; ] 
 -expression- 

where:

  • -term- is a technical term defined in the term glossary.
  • -literal- is a literal. For numerics a string representation of the number should be specified. For times, milliseconds are used (from Unix epoch). For boolean, #true and #false are used.

The definition of the operators in a predicate:

  • EXISTS -- means that the term has a value of some kind.
  • EQUALS -- evaluates to true if the left and right sides are equal.
  • LESS_THAN -- evaluates to true if the left is less in numeric value than the right.
  • GREATER_THAN -- evaluates to true if the left is greater in numeric value than the right.
  • CONTAINS -- is meant to test an array term (such as Asset.Tags) with a single value. It evaluates to true if the value on the right side equals one of the values on the array on the left side.
    However it will also supports a single value on the left, in which case it behaves just like EQUALS -- regular expressions or wildcards are not supported.

For all of the operators (except EXISTS), if the right hand side evaluates to an array, each value of the array is compared to the left side, according to the operator definition, and if any comparison is true then the result of the evaluation is true.

Examples:

 [[&quot;$Asset.Type&quot;, &quot;EQUALS&quot;, &quot;#Project&quot;]] 
 [&quot;NOT&quot;, [&quot;$Asset.Tags&quot;, &quot;CONTAINS&quot;, &quot;#sensitive&quot;], &quot;AND&quot;, [&quot;NOT&quot;, &quot;$Asset.Tags&quot;, &quot;CONTAINS&quot;, &quot;#confidential&quot;]] 
 [[&quot;$User.Name&quot;, &quot;EQUALS&quot;, &quot;$Asset.Owner&quot;]] 

<b>Action</b>

The action is an name with optional parameters or subaction describing an operation to perform. For simple actions like Deny, only the action name will be provided. For actions such as Transform, a subaction with parameters describing the type of transform is also provided. The allowed actions depends on the governance type.

Examples:

 {&quot;name&quot;: &quot;Deny&quot;} 
 {&quot;name&quot;: &quot;Transform&quot;, &quot;subaction&quot;: {&quot;name&quot;: &quot;anonymizeColumns&quot;, &quot;parameters&quot;: [{&quot;name&quot;: &quot;column_name&quot;, &quot;value&quot;: &quot;CCN&quot;}]}} 

The maximum length allowed for 'name' parameter is 80 characters, maximum length allowed for 'description' parameter: 1000 characters. Allowed characters for the 'name' parameter: letters from any language, numbers in any script, space, dot, underscore, hyphen. Strings with characters other than these are rejected (only for the name parameter).

Request

Request Body

PoliciesV3PolicyRuleRequest

Rule json

name

Required *

string

the displayed name for the rule

description

string

a more detailed description of the rule

governance_type_id

Required *

string

the name of a governance type of this rule

trigger

Required *

PoliciesV3Expression

nested arrays representing an expression that is evaluated to determine if the action on the rule should be performed or enforced. See the description on the POST /v3/enforcement/rules for more details.

conditions

array

action

Required *

PoliciesV3Action

the action to perform or enforce when the rule triggers

name

string

parameters

array

subaction

object

the action to perform or enforce when the rule triggers

roLTransform

boolean

state

string

the state of the rule. Only the rules of policies in active are enforced.

Response

200 - Merged with an existing 'ResourceControl' rule.

metadata

PoliciesV3PolicyResourceMetadata

metadata object used in responses returned from policy management related APIs

entity

PoliciesV3PolicyRuleResponseEntity

entity within the response for the /v3/enforcement/rules/{ruleId} API

201 - Created

metadata

PoliciesV3PolicyResourceMetadata

metadata object used in responses returned from policy management related APIs

entity

PoliciesV3PolicyRuleResponseEntity

entity within the response for the /v3/enforcement/rules/{ruleId} API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

export all rules

GET /v3/enforcement/rules/export

Export all defined rules as JSON.This includes all rules associated with policies and rules not associated with any policy.

Request

Path Parameters

Query Parameters

limit

string

The maximum number of Rules to return. The default value is 50.

offset

string

The index of the first matching Rule to include in the result. The default value is 0.

external_export

boolean

For export between two different systems. If specified as true, the ids in rules will be converted to names and added as export_components in the exported file

Response

200 - OK

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

retrieve terms used in a rule

GET /v3/enforcement/rules/{rule_id}/terms

Retrieves the names of all terms used in a rule.

Request

Path Parameters

rule_id

Required *

string

Rule ID

Query Parameters

Response

200 - OK

resources

PoliciesV3RuleTermCompleteListEntity

list of terms used in the rule

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

import rules

POST /v3/enforcement/rules/import

Imports rules using content recieved as application/octet-stream media type. Assumes content to be in UTF-8 charset. Expects "rules" JSON array contained in a JSON objects. Ignores other fields. Rule GUID is prerserved. Retruns JSON array containing GUIDs of newly imported rules.

Request

Request Body

The input stream for reading imported terms

Path Parameters

Query Parameters

external_import

boolean

For import between two different systems. If specified as true, the names in export_components of the import file will be matched and converted to the target system's ids.

commit

boolean

For external imports, if specified as true, the whole import will fail if there are any rules that fail to match ids in the target system. If specified as false, an analysis report will be returned.

Response

200 - OK

imported

array

List containing details of rules that are successfully imported.

failed

array

List containing details of rules that are failed to import.

matched

array

List containing details of rules that are successfully matched.

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

413 - Content cannot be more than 1MB

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

retrieve tenant settings

GET /v3/enforcement/settings

Retrieves governance information and settings about a particular tenant given the tenant identifier.

Request

Response

200 - OK

metadata

PoliciesV3PolicyResourceMetadata

metadata object used in responses returned from policy management related APIs

entity

PoliciesV3SettingsResponseEntity

entity object within the response for the /v3/enforcement/settings/{tenantId} API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

update tenant settings

PUT /v3/enforcement/settings

Updates governance information and settings for the given tenant.

Request

Request Body

PoliciesV3PolicySettingsRequest

governedTenant json

governance_access_type

string

Data protection rules convention. Choose DEAA for 'Locked' convention and AEAD for 'Unlocked' convention.

governance_dlr_type

string

Data location rules convention. Choose DEAA for 'Locked' convention and AEAD for 'Unlocked' convention.

default_sovereignty

string

Default sovereignty to assign to assets if sovereignty is missing in data assets.

enable_data_location_rules

boolean

Enable data location rules enforcement.

asset_dealiasing_item_selection

string

Oldest - by creation date, Latest - by modified date, columns, Merge - merge annotations (terms and tags) of all aliases

access_decision_precedence

string

The rule action precedence for data protection rules. The actions, in order of leniency, are: Allow access, Mask and Filter, Deny access.

dlr_decision_precedence

string

The rule action precedence for data location rules. The actions, in order of leniency, are: Allow access, Mask and Filter, Deny access.

access_transform_precedence

string

The masking method precedence for data protection rules. The masking methods, in privacy order, are: Redact, Substitute, Obfuscate. The masking methods, in utility order, are: Obfuscate, Substitute, Redact.

dlr_transform_precedence

string

The masking method precedence for data location rules. The masking methods, in privacy order, are: Redact, Substitute, Obfuscate. The masking methods, in utility order, are: Obfuscate, Substitute, Redact.

enable_has_type_terms

boolean

enable/disable business glossary terms inheritance for DPR/DLR enforcement

enable_has_type_dataclasses

boolean

enable/disable dataclass terms inheritance for DPR/DLR enforcement

enable_has_type_classifications

boolean

enable/disable classification terms inheritance for DPR/DLR enforcement

enable_synonym_terms

boolean

enable/disable business glossary term 1 level synonym relationship for DPR/DLR enforcement

enable_lineage_evaluation

boolean

Enable evaluation based on asset's lineage

transform_option

string

This flag indicates if transform deep enforcement process using 'advanced' or 'classic'. The default value is advanced.

max_number_of_rules

integer

Maximum combined number of DPR and DLR rules supported.

enable_evaluation_audit

boolean

Enable/disable audit log for evaluation

Response

200 - OK

metadata

PoliciesV3PolicyResourceMetadata

metadata object used in responses returned from policy management related APIs

entity

PoliciesV3SettingsResponseEntity

entity object within the response for the /v3/enforcement/settings/{tenantId} API

400 - Bad Request

trace

string

errors

array

401 - Unauthorized

trace

string

errors

array

403 - Forbidden

trace

string

errors

array

404 - Not Found

trace

string

errors

array

500 - Internal Server Error

trace

string

errors

array

List projects

GET /v2/projects

Returns a list of projects filtered by the specified query parameters. By default, only projects that the authenticated user is a member of are returned. In IBM Cloud Pak for Data (CPD), all projects in the cluster are returned (regardless of project membership) if the authenticated user is assigned either the "Manage projects" or "Monitor project workloads" CPD permission. In IBM Cloud Pak for Data (CPDaaS), all projects associated with an IBM Cloud Account are returned (regardless of project membership) if the authenticated user is added to the IBM Cloud Account and assigned the IAM "Manager" role.

Request

Path Parameters

Query Parameters

bss_account_id

The BSS Account ID.

type

The project type.

member

A project member to use to filter the query results.

roles

array

A list of comma-separated project roles to use to filter the query results. Must be used in conjunction with the "member" query parameter.

tag_names

string

A list of comma-separated tags to use to filter the query results. If multiple tags are specified, the query results will be filtered to show projects matching any of the tags. (e.g. tag1 OR tag2 OR... tagN).

name

A full or partial project name to use to filter the query results. This query parameter must be used in conjunction with the 'bss_account_id' query parameter. Use the 'match' query parameter to control they type of text matching performed. Project names are not unique and should not be used in place of project IDs.

match

string

The type of text matching to perform. This query parameter must be used in conjunction with the 'name' query parameter. The 'exact' value will match projects if the specified text matches the exact project name. The 'keyword' value will match projects if the specified text matches any keyword parsed from the project name.

project_ids

string

A list of comma-separated project IDs to use to filter the query results. This query parameter only works in conjunction with the 'member' query parameter.

include

array

A list of comma-separated project metadata sections to include in the query results.

limit

integer

The limit used to specify the maximum number of projects returned in the query results. Used for pagination in conjunction with the "bookmark" query parameter.

bookmark

The bookmark is an opaque key returned in the query results set that serves as a reference to the next page of query results. Specify the bookmark on subsquent query requests to retrieve the next page of query results. Used for pagination in conjunction with the "limit" query parameter.

skip

integer

Deprecated. Use of this query parameter exhibits poor performance characteristics. Use the more efficient "bookmark" query parameter instead. The offset to use to define the starting index of projects to return in the query results. Used for pagination in conjunction with the "limit" query parameter.

Response

200 -

401 -

403 -

429 -

Get project total

GET /v2/projects/total

Returns the total number of projects associated with the authenticated user in a BSS account. In IBM Cloud Pak for Data (CPDaaS), specifying the BSS account ID is required. In IBM Cloud Pak for Data (CPD), specifying the BSS account ID is optional. Default is "999". The maximum total number of projects returned will be capped at 2,000 projects (for database performance reasons).

Request

Path Parameters

Query Parameters

bss_account_id

The BSS Account ID.

type

The project type.

member

A project member to use to filter the query results.

tag_names

string

A list of comma-separated tags to use to filter the query results. If multiple tags are specified, the query results will be filtered to show projects matching any of the tags. (e.g. tag1 OR tag2 OR... tagN).

Response

200 -

400 -

401 -

403 -

429 -

Get project

GET /v2/projects/{project_id}

Returns the metadata for a target project specified by ID.

Request

Path Parameters

project_id

Required *

The project ID.

Query Parameters

include

array

A list of comma-separated project metadata sections to include in the query results.

Response

200 -

204 -

400 -

401 -

403 -

404 -

429 -

Update project

PATCH /v2/projects/{project_id}

Partially updates the project with only a subset of properties.

Request

Request Body

Path Parameters

project_id

Required *

The project ID.

Query Parameters

Response

200 -

400 -

401 -

403 -

404 -

429 -

List members

GET /v2/projects/{project_id}/members

Returns the list of project members.

Request

Path Parameters

project_id

Required *

The project ID.

Query Parameters

roles

array

A list of comma-separated project roles to use to filter the query results.

user_names

array

A list of comma-separated usernames corresponding to project members that are used to filter the query results.

Response

200 -

400 -

401 -

403 -

404 -

429 -

Create members

POST /v2/projects/{project_id}/members

Adds new project members with the provided roles. A project must always have at least one admin.

Request

Request Body

Path Parameters

project_id

Required *

The project ID.

Query Parameters

Response

200 -

400 -

401 -

403 -

404 -

429 -

Delete members

DELETE /v2/projects/{project_id}/members

Deletes members from the project that match the provided usernames.

Request

Path Parameters

project_id

Required *

The project ID.

Query Parameters

user_names

Required *

array

A list of comma-separated usernames corresponding to project members to remove from the project.

Response

204 -

400 -

401 -

403 -

404 -

429 -

Update members

PATCH /v2/projects/{project_id}/members

Change project member roles in a batch.

Request

Request Body

Path Parameters

project_id

Required *

The project ID.

Query Parameters

Response

200 -

400 -

401 -

403 -

404 -

429 -

Get member

GET /v2/projects/{project_id}/members/{user_name}

Returns the project member with the specified 'user_name' if any.

Request

Path Parameters

project_id

Required *

The project ID.

user_name

Required *

The username of the project member.

Query Parameters

resolve_groups

boolean

A flag indicating whether to return a derived project member based on resolving user groups.

Response

200 -

400 -

401 -

403 -

404 -

429 -

Delete member

DELETE /v2/projects/{project_id}/members/{user_name}

Deletes a member with a given user name from a project with the given username.

Request

Path Parameters

project_id

Required *

The project ID.

user_name

Required *

The username of the project member.

Query Parameters

Response

204 -

400 -

401 -

403 -

404 -

429 -

List tags

GET /v2/projects/{project_id}/tags

Returns the list of project tags.

Request

Path Parameters

project_id

Required *

The project ID.

Query Parameters

Response

200 -

400 -

401 -

403 -

404 -

429 -

Create tags

POST /v2/projects/{project_id}/tags

Adds new tags to a project.

Request

Request Body

Path Parameters

project_id

Required *

The project ID.

Query Parameters

Response

201 -

400 -

401 -

403 -

404 -

422 -

429 -

Delete tags

DELETE /v2/projects/{project_id}/tags

Delete existing tags in a project. If no 'tag_names' are specified, then delete all existing tags in a project.

Request

Path Parameters

project_id

Required *

The project ID.

Query Parameters

tag_names

string

A list of comma-separated tags to use to filter the query results. If multiple tags are specified, the query results will be filtered to show projects matching any of the tags. (e.g. tag1 OR tag2 OR... tagN).

Response

204 -

400 -

401 -

403 -

404 -

429 -

Update tags

PATCH /v2/projects/{project_id}/tags

Adds new tags and removes existing tags from a project via a single bulk update operation.

Request

Request Body

Path Parameters

project_id

Required *

The project ID.

Query Parameters

Response

200 -

400 -

401 -

403 -

404 -

422 -

429 -

Create tag

POST /v2/projects/{project_id}/tags/{tag_name}

Add a new tag to a project.

Request

Request Body

Path Parameters

project_id

Required *

The project ID.

tag_name

Required *

The tag name.

Query Parameters

Response

201 -

400 -

401 -

403 -

404 -

422 -

429 -

Delete tag

DELETE /v2/projects/{project_id}/tags/{tag_name}

Delete an existing tag in a project.

Request

Path Parameters

project_id

Required *

The project ID.

tag_name

Required *

The tag name.

Query Parameters

Response

204 -

400 -

401 -

403 -

404 -

429 -

Get folders settings

GET /v2/projects/{project_id}/settings/folders

Get folders settings.

Request

Path Parameters

project_id

Required *

The project ID.

Query Parameters

Response

200 -

400 -

401 -

403 -

404 -

429 -

Update folders settings

PUT /v2/projects/{project_id}/settings/folders

Update folders settings.

Request

Request Body

Path Parameters

project_id

Required *

The project ID.

Query Parameters

Response

200 -

400 -

401 -

403 -

404 -

429 -

Create a new space

POST /v2/spaces

Creates a new space to scope other assets. Authorized user must have the following roles (see https://cloud.ibm.com/docs/cloud-object-storage?topic=cloud-object-storage-iams)

  • Platform management role: Administrator
  • Service access role: Manager

On Public Cloud user is required to provide Cloud Object Storage instance details in the 'storage' property. On private CPD installations the default storage is used instead.

Request

Request Body

Spacesspace_request

Input payload for the space.

name

Required *

string

Name of space.

description

string

Description of space.

storage

Spacesstorage_request

Cloud Object Storage instance is required for spaces created on Public Cloud. On private CPD installations default storage is used instead. This flag is not supported on CPD.

resource_crn

Required *

string

A cloud resource name of the Cloud Object Storage instance.

delegated

boolean

Set to true of the COS instance is delegated by the account admin

compute

array

This flag is not supported on CPD.

tags

array

User-defined tags associated with a space.

generator

string

A consistent label used to identify a client that created a space. A generator must be comprised of the following characters - alphanumeric, dash, underscore, space.

stage

Spacesstage_request

Space production and stage name.

production

boolean

A boolean flag which specifies if a space is production or not. It cannot be modified.

name

string

Stage name. E.g. development, test, pre-production, production.

type

string

Space type.

Response

202 - Accepted

metadata

Spacesresource_meta

Common metadata for a resource.

entity

Spacesspace_entity

400 -

401 -

403 -

404 -

500 -

Retrieve the spaces

GET /v2/spaces

Retrieves the space list.

Request

Path Parameters

Query Parameters

start

string

Token representing first resource.

limit

number

The number of resources returned. Default value is 100. Max value is 200.

total_count

boolean

Include details about total number of resources. This flag is not supported on CPD 3.0.1.

id

string

Comma-separated list of ids to be returned. This flag is not supported on CPD 3.0.1.

tags

string

A list of comma-separated, user-defined tags to use to filter the query results.

include

string

A list of comma-separated space sections to include in the query results. Example: '?include=members'.

Available fields:

  • members (returns up to 100 members)
  • nothing (does not return space entity and metadata)

member

string

Filters the result list to only include spaces where the user with a matching user id is a member.

roles

string

Must be used in conjunction with the member query parameter. Filters the result set to include only spaces where the specified member has one of the roles specified.

Values:

* admin
* editor
* viewer

bss_account_id

string

Filtering by bss_account_id is allowed only for accredited services.

name

string

Filters the result list to only include space with specified name.

sub_name

string

Filters the result list to only include spaces which name contains specified case-insensitive substring

compute.crn

string

Filters the result list to only include spaces with specified compute.crn.

type

string

Filters the result list to only include space with specified type

Response

200 - OK.

total_count

integer

Computed explicitly only when 'total_count=true' query parameter is present. This is in order to avoid performance penalties.

limit

integer

The number of items to return in each page.

first

object

The reference to the first item in the current page.

next

object

A reference to the first item of the next page, if any.

resources

array

400 -

401 -

403 -

404 -

500 -

Retrieve the space

GET /v2/spaces/{space_id}

Retrieves the space with the specified identifier.

Request

Path Parameters

Query Parameters

include

string

A list of comma-separated space sections to include in the query results. Example: '?include=members'.

Available fields:

  • members (returns up to 100 members)
  • nothing (does not return space entity and metadata)

Response

200 - OK.

metadata

Spacesresource_meta

Common metadata for a resource.

entity

Spacesspace_entity

400 -

401 -

403 -

404 -

500 -

Delete the space

DELETE /v2/spaces/{space_id}

Deletes the space with the specified identifier.

Request

Response

202 - Accepted.

400 -

401 -

403 -

404 -

500 -

Update the space

PATCH /v2/spaces/{space_id}

Partially update this space. Allowed paths are: - /name - /description - /compute - /stage/name - /type

Request

Request Body

Input payload for the space.

Response

200 - OK.

metadata

Spacesresource_meta

Common metadata for a resource.

entity

Spacesspace_entity

400 -

401 -

403 -

404 -

500 -

Retrieve the space members

GET /v2/spaces/{space_id}/members

Retrieves the member list for the specified space.

Request

Path Parameters

Query Parameters

start

string

Token representing first resource.

limit

number

The number of resources returned. Default value is 100. Max value is 200.

total_count

boolean

Include details about total number of resources. This flag is not supported on CPD 3.0.1.

type

string

Find the member by 'type'.

role

string

Find the member by 'role'.

state

string

Find the member by 'state'.

Response

200 - OK.

total_count

integer

Computed explicitly only when 'total_count=true' query parameter is present. This is in order to avoid performance penalties.

limit

integer

The number of items to return in each page.

first

object

The reference to the first item in the current page.

next

object

A reference to the first item of the next page, if any.

resources

array

400 -

401 -

403 -

404 -

500 -

Add a member to space

POST /v2/spaces/{space_id}/members

Adds a member to the specified space.

Request

Request Body

Spacesmembers_request

Member information.

members

Required *

array

Response

200 - OK.

resources

array

400 -

401 -

403 -

404 -

500 -

Retrieve the space member information

GET /v2/spaces/{space_id}/members/{member_id}

Retrieves the member information for the member and space with the specified identifiers.

Request

Response

200 - OK.

id

string

The IAM ID of the space member. This field is required for space members with the 'active' state.

role

string

The role of the space member.

state

string

The state of the space member. This field is only supported for members of type 'user'.

type

string

The space member type.

400 -

401 -

403 -

404 -

500 -

Remove the space member

DELETE /v2/spaces/{space_id}/members/{member_id}

Removes the specified member from the space.

Request

Response

204 - Deleted.

400 -

401 -

403 -

404 -

500 -

Update the space member

PATCH /v2/spaces/{space_id}/members/{member_id}

Partially update the member selected with the specified identifier. Allowed paths are: - /role - /state

Request

Request Body

The json patch.

Response

200 - Partially updated a member.

id

string

The IAM ID of the space member. This field is required for space members with the 'active' state.

role

string

The role of the space member.

state

string

The state of the space member. This field is only supported for members of type 'user'.

type

string

The space member type.

400 -

401 -

403 -

404 -

500 -

Retrieve the asset exports

GET /v2/asset_exports

Retrieves the asset export list for the specified space, project, or catalog.

Request

Path Parameters

Query Parameters

start

string

Token representing first resource.

limit

number

The number of resources returned. Default value is 100. Max value is 200.

Response

200 - OK.

total_count

integer

Computed explicitly only when 'total_count=true' query parameter is present. This is in order to avoid performance penalties.

limit

integer

The number of items to return in each page.

first

object

The reference to the first item in the current page.

next

object

A reference to the first item of the next page, if any.

resources

array

400 -

401 -

403 -

404 -

500 -

Start the asset export process

POST /v2/asset_exports

Starts the asset export process for the specified space, project, or catalog. On CPD 3.0.1 assets export is supported only in the context of a space.

Request

Request Body

Spacesexport_entity_request

Export information.

name

Required *

string

description

string

assets

Required *

Spacesexport_assets

all_assets

boolean

asset_types

array

asset_ids

array

encryption_key

string

Encryption key used to encrypt the sensitive data during export.

format

string

Export format type.

module_keys

array

Response

202 - OK.

metadata

Spacesimport_export_meta

Common metadata for a import/export.

entity

Spacesexport_entity

400 -

401 -

403 -

404 -

500 -

Cancel the asset export process

DELETE /v2/asset_exports/{export_id}

Cancels the asset export process with the specified identifier.

Request

Path Parameters

Query Parameters

hard_delete

boolean

Default is false.

Response

204 - OK.

400 -

401 -

403 -

404 -

500 -

Retrieve the asset export

GET /v2/asset_exports/{export_id}

Retrieves the asset export with the specified identifier.

Request

Response

200 - OK.

metadata

Spacesimport_export_meta

Common metadata for a import/export.

entity

Spacesexport_entity

400 -

401 -

403 -

404 -

500 -

Download the asset export content

GET /v2/asset_exports/{export_id}/content

Downloads the content for the asset export process with the specified identifier.

Request

Response

200 - OK.

400 -

401 -

403 -

404 -

500 -

Retrieve the asset imports

GET /v2/asset_imports

Retrieves the asset import list for the specified space, project, or catalog.

Request

Path Parameters

Query Parameters

start

string

Token representing first resource.

limit

number

The number of resources returned. Default value is 100. Max value is 200.

Response

200 - OK.

total_count

integer

Computed explicitly only when 'total_count=true' query parameter is present. This is in order to avoid performance penalties.

limit

integer

The number of items to return in each page.

first

object

The reference to the first item in the current page.

next

object

A reference to the first item of the next page, if any.

resources

array

400 -

401 -

403 -

404 -

500 -

Start the asset import process

POST /v2/asset_imports

Starts the asset import process for the specified space, project, or catalog. On CPD 3.0.1 assets import is supported only in the context of a space.

Request

Request Body

Response

202 - OK.

metadata

Spacesimport_export_meta

Common metadata for a import/export.

entity

Spacesimport_entity

400 -

401 -

403 -

404 -

500 -

Cancel the asset import process

DELETE /v2/asset_imports/{import_id}

Cancels the asset import process with the specified identifier.

Request

Path Parameters

Query Parameters

hard_delete

boolean

Default is false.

Response

204 - OK.

400 -

401 -

403 -

404 -

500 -

Retrieve the asset import

GET /v2/asset_imports/{import_id}

Retrieves the asset import with the specified identifier.

Request

Response

200 - OK.

metadata

Spacesimport_export_meta

Common metadata for a import/export.

entity

Spacesimport_entity

400 -

401 -

403 -

404 -

500 -

Create project as a transaction

POST /transactional/v2/projects

Creates a new project with the provided parameters, including all the storage and credentials in a single transaction. This endpoint will create a new COS bucket using generated unique name, all credentials, asset container and call all the required atomic APIs to fully configure a new project. Attempts to use the duplicate project names will result in an error. <b>NOTE</b>: when creating projects programmatically, always use this endpoint, not /v2/projects. <br/><br/><br/> This endpoint can also be used to create a project from an exported Watson Studio .zip file. In this case, a new transaction is initiated to create assets under the project. A Transaction ID along with a URL is returned as a response of this API. As this transaction can take time, you can view the current status of the transaction using the returned URL.<br><b>NOTE</b>: This feature is only available in the private cloud.

Request

Request Body

TransactionalProjectsTransactionalProjectCreate

name

Required *

string

The name of the new project. The name must be a non-empty String. This does not need to be unique.

description

string

A description for the new project.

type

string

The project type. The "cpd" project type is used to classify IBM Cloud Pak for Data (CPD) projects. The "wx" project type is used to classify IBM watsonx projects. The "wca" project type is used to classify IBM watsonx Code Assistant projects. The "dpx" project type is used to classify IBM Data Product Exchange projects. The "wxbi" project type is used to classify IBM watsonx BI Assistant projects.

generator

Required *

string

A tag to indicate where this project was generated. This is only intended for use in metrics. It does not need to be unique and all consumers of this API should use a consistent string for their 'generator' field. The value is stored in the project metadata for future consumption in metrics.

public

boolean

A value of `true` makes the project public.

tags

array

List of user defined tags that are attached to the project.

enforce_members

boolean

Set to true of project members should be scoped to the account and/or SAML of the creator

storage

Required *

TransactionalProjectsTransactionalProjectStorageObject

Object storage properties to be associated with the project.

type

Required *

string

The type of the associated project storage.

guid

string

Unique guid of the associated project storage object.

plan_id

string

The unique ID of the plan associated with the COS instance. The value is 1e4e33e4-cfa6-4f12-9016-be594a6d5f87 for the One Rate plan.

resource_crn

string

A cloud resource name of the Cloud Object Storage instance in WSC (not required in CP4D or in AWS).

delegated

boolean

Set to true of the COS instance is delegated by the account admin

properties

object

compute

array

List of computes to be associated with the project.

tools

array

List of tools to be associated with the project.

Path Parameters

Query Parameters

verify_unique_name

boolean

If enabled, the transaction fails if the project name is not unique.

Response

201 -

202 -

400 -

401 -

403 -

404 -

500 -

Delete project as a transaction

DELETE /transactional/v2/projects/{project_id}

Deletes a project with a given ID, deletes COS bucket and all the files in it, all credentials and asset container in the order reverse from the project creation transaction. When deleting projects programmatically, always use this endpoint, not /v2/projects/{project_id}.

Request

Path Parameters

project_id

Required *

The ID of the project to be deleted.

Query Parameters

Response

204 - No Content

400 -

401 -

403 -

404 -

500 -

Get status of import transaction

GET /transactional/v2/projects/{project_id}/transactions/{transaction_id}

Status of import transaction created using create project as a transaction API

Request

Path Parameters

project_id

Required *

The ID of the project on which transaction was created.

transaction_id

Required *

The transaction ID provided by create project as a transaction endpoint.

Query Parameters

Response

200 - OK

id

string

Project GUID.

name

string

Name of the project.

created_at

string

The date and time the status was created in UTC (ISO 8601)

updated_at

string

The date and time the status was last updated in UTC (ISO 8601)

status

string

Last known status of the transaction

description

string

Description of the last know transaction status

history

array

Description of all last know import status.

400 -

401 -

403 -

404 -

500 -