REST API Reference > PowerCenter Modernization REST API > Assessment
  

Assessment

REST APIs to retrieve assessment details from a repository.
Use the assessment REST APIs to perform the following tasks:

Get assessment status of a repository

Retrieves the current assessment status for a PowerCenter or Model repository.

API request

To retrieve assessment status of a repository, send a GET request to the following API:
GET <pod_base_url>/infamod/public/api/v2/assessment/status

Request parameters

Path parameters
No parameter.
Query parameters
The following table describes the query parameters that you specify in the API request:
Name
Type
Required or Optional
Description
domain
String
Required
Unique identifier of the domain to which the assessed repository belongs.
repo
String
Required
Name of the PowerCenter or Model repository to retrieve assessment status.
Body Parameters
No parameter.

Request headers

The following table describes the headers that you specify in the API request:
Name
Required or Optional
Description
Accept
Optional
Response media types. For example, application/json.
IDS-SESSION-ID
Required
Session token to authenticate the request.

Response parameters

The following table describes the parameters that are returned by the API:
Name
Type
Description
domains
Array
List of domains containing assessed repositories and their current assessment status.
domainId
String
Unique identifier for the domain to which the assessed repositories belong.
name
String
Display name of the domain.
repos
Array
List of repositories within the domain and their individual assessment details.
repos.name
String
Name of the repository.
repos.status
String
Assessment status of the repository.
repos.runId
Integer
Run ID of the assessment task.
repos.taskId
String
Task ID of the assessment task.
repos.isActive
Integer
Indicates if the reposository is available or offline.

Sample request

The following is a sample request based on the values provided:

curl -X GET \
"<pod_base_url>/infamod/public/api/v2/assessment/status?domain=dhDZE2pf88GkyaE5HQP8El&repo=ModelRepo"

Sample response

200 OK
{
"domains": [
{
"domainId": "dhDZE2pf88GkyaE5HQP8El",
"name": "xxxx_MRS_1",
"repos": [
{
"name": "MRS_REPO",
"status": "Completed",
"runId": 76,
"taskId": "0FWllVv9mMfhV0qB4G4vkE",
"patternAnalysis": 0,
"assetView": true,
"isActive": 1
}
]
}
]
}
400 Bad Request
{
"message": "Bad request \u2013 invalid parameters"
}
401 Unauthorized
{
"message": "Unauthorized \u2013 missing or invalid session credentials"
}
404 Not Found
{
"message": "Resource not found"
}
500 Internal Server Error
{
"message": "Internal server error"
}

Get assessment summary for a repository

Retrieves the assessment summary of the assets in a repository.

API request

To retrieve assessment summary details of the assets in a repository, send a GET request to the following API:
GET <pod_base_url>/infamod/public/api/v2/assessment/summary/repo

Request parameters

Path parameters
No parameter.
Query parameters
The following table describes the query parameters that you specify in the API request:
Name
Type
Required or Optional
Description
domain
String
Required
Unique identifier for the domain to which the assessed repository belongs.
repo
String
Required
Name of the repository for which assessment summary results are retrieved.
Body Parameters
No parameter.

Request headers

The following table describes the headers that you specify in the API request:
Name
Required or Optional
Description
Accept
Optional
Response media types. For example, application/json.
IDS-SESSION-ID
Required
Session token to authenticate the request.

Response parameters

The following table describes the parameters that are returned by the API:
Name
Type
Description
orgId
String
Unique identifier for the organization that owns the assessed repository.
domainId
String
Unique identifier for the domain to which the assessed repository belongs.
domainName
String
Name of the domain to which the assessed repository belongs.
repoName
String
Name of the assessed repository.
taskId
String
Unique identifier for the assessment task associated with this repository.
runId
Integer
Unique identifier for the specific assessment run.
assessmentResult
Object
Object containing the aggregated assessment results for the repository.
assessmentResult.totalAssets
Integer
Total number of assets evaluated during the assessment run.
assessmentResult.assessmentStatus
Object
Object containing the count of assets broken down by assessment completion status.

Sample request

The following is a sample request based on the values provided:

curl -X GET \
"<pod_base_url>/infamod/public/api/v2/assessment/summary/repo?domain=dhDZE2pf88GkyaE5HQP8El&repo=MRS_REPO_02"

Sample response

200 OK
{
"orgId": "a1b2c3d4",
"domainId": "dhDZE2pf88GkyaE5HQP8El",
"domainName": "InfaDomain",
"repoName": "MRS_REPO_02",
"taskId": "0100000B00000000001A",
"runId": 1001,
"assessmentResult": {
"totalAssets": 0,
"assessmentStatus": {
"auto": 0,
"partial": 0,
"manual": 0
}
}
}
400 Bad Request
{
"message": "Bad request \u2013 invalid parameters"
}
401 Unauthorized
{
"message": "Unauthorized \u2013 missing or invalid session credentials"
}
404 Not Found
{
"message": "Resource not found"
}
500 Internal Server Error
{
"message": "Internal server error"
}

Get repository folders

Retrieves the list of folders within a specified repository.

API request

To retrieve a list of folders within a repository, send a POST request to the following API:
POST <pod_base_url>/infamod/public/api/v2/assessment/summary/folder

Request parameters

Path parameters
No parameter.
Query parameters
No parameter.
Body Parameters
The following table describes the parameters that you specify in the API request body:
Name
Type
Required or Optional
Description
domain
String
Required
Unique identifier for the domain that contains the assessed repository.
repo
String
Required
Identifier for the repository within the specified domain to retrieve folder assessment summaries for.
page
Integer
Required
Page number to retrieve in the paginated folder list response.
pageSize
Integer
Required
Number of folder resources to return per page. Use this value together with page to paginate through large result sets.
sortFields
Array
Optional
List of sort criteria applied to the folder summary results. Each entry specifies a field to sort by and a direction of either ASC or DESC.
sortFields.field
String
Optional
Field name used to sort the folder list results. Accepted value: folder.
sortFields.direction
String
Optional
Sort direction for the field specified in field. Allowed values: ASC (ascending) and DESC (descending).
filters
Array
Optional
List of filters to narrow the folder results returned in the response.
filters.type
String
Optional
Category of filter to apply to the folder list results. Accepted value: folders.
filters.values
Array
Optional
List of folder name patterns used to narrow results to matching folders within the assessed repository. Each value is matched against folder names, allowing you to scope the response to specific folder groups such as "Sales_ or "Finance_".

Request headers

The following table describes the headers that you specify in the API request:
Name
Required or Optional
Description
Accept
Optional
Response media types. For example, application/json.
IDS-SESSION-ID
Required
Session token to authenticate the request.

Response parameters

The following table describes the parameters that are returned by the API:
Name
Type
Description
total
Integer
Total number of folders matching the query across all pages.
folders
Array
List of folders in the assessed repository matching the request criteria.
folders.folderName
String
Name of the assessed folder within the repository.
folders.auto
Integer
Number of assets in the folder that can be converted automatically.
folders.manual
Integer
Number of assets in the folder requiring manual conversion effort.
folders.partial
Integer
Number of assets in the folder with a partial conversion effort.
folders.totalAssets
Integer
Total number of assessed assets contained in the folder.
folders.taskId
String
Unique identifier for the assessment task associated with the folder.
folders.runId
Integer
Unique identifier for the assessment run that produced the folder summary.

Sample request

The following is a sample request based on the values provided:

curl -X POST \
"<pod_base_url>/infamod/public/api/v2/assessment/summary/folder" \
-H "Content-Type: application/json" \
-d '{
"domain": "DOM_12345",
"repo": "PC_REPO_DEV",
"page": 0,
"pageSize": 20,
"sortFields": [
{
"field": "folder",
"direction": "ASC"
}
],
"filters": [
{
"type": "folders",
"values": [
"Sales_",
"Finance_"
]
}
]
}'

Sample response

200 OK
{
"total": 42,
"folders": [
{
"folderName": "Sales_Workflows",
"auto": 15,
"manual": 3,
"partial": 7,
"totalAssets": 25,
"taskId": "0100000B00000000001A",
"runId": 1001
}
]
}
400 Bad Request
{
"message": "Bad request \u2013 invalid parameters"
}
401 Unauthorized
{
"message": "Unauthorized \u2013 missing or invalid session credentials"
}
500 Internal Server Error
{
"message": "Internal server error"
}

Get workflows in a repository folder

Retrieves the summary details of workflow assets within the specified folder of an assessed repository.

API request

To retrieve a list of workflows within an assessed repository folder, send a POST request to the following API:
POST <pod_base_url>/infamod/public/api/v2/assessment/summary/workflow

Request parameters

Path parameters
No parameter.
Query parameters
No parameter.
Body Parameters
The following table describes the parameters that you specify in the API request body:
Name
Type
Required or Optional
Description
domain
string
Required
Unique identifier for the domain that contains the assessed repository. Used to scope the workflow summary query to the correct domain context, such as DOM_12345.
repo
string
Required
Identifier for the assessed repository within the specified domain. Determines which repository's workflow assessment data is queried.
folder
string
Required
Name of the folder within the assessed repository whose workflows are included in the summary results.
page
integer
Required
Zero-based page number for paginating through the workflow list results. Use 0 to retrieve the first page.
pageSize
integer
Required
Number of workflow resources to return per page. Minimum allowed value is 1 and maximum allowed value is 200.
sortFields
array
Optional
List of sort criteria applied to the workflow results. Each entry specifies a field to sort by and a direction of either ASC or DESC. When multiple entries are provided, results are sorted by each field in the order listed.
sortFields.field
string
Optional
Field name used to sort the workflow list results. Accepted values: workflow, folder, complexity, conversionStatus, assessmentType, and lastUpdateTime.
sortFields.direction
string
Optional
Sort direction applied to the field specified in sortFields[].field. Allowed values: ASC (ascending) and DESC (descending).
filters
array
Optional
List of filter criteria used to narrow the workflow results returned for the specified folder.
filters.type
string
Optional
Field category that determines which workflow attribute the values array is matched against when filtering results. Allowed values: workflows, folders.
filters.values
array
Optional
List of filters.

Request headers

The following table describes the headers that you specify in the API request:
Name
Required or Optional
Description
IDS-SESSION-ID
Required
Session token to authenticate the request.

Response parameters

The following table describes the parameters that are returned by the API:
Name
Type
Description
total
Integer
Total number of workflows matching the query across all pages.
workflows
Array
List of workflow summary entries returned for the specified folder and filters.
workflows.workflowName
String
Name of the assessed workflow within the repository folder.
workflows.folderName
String
Name of the repository folder that contains the workflow.
workflows.assessmentType
String
Assessment result about the conversion potential of the workflow to the cloud..
workflows.complexity
String
Assessed complexity level of the workflow.
workflows.conversionStatus
String
Indicates if the workflow has been converted to the cloud equivalent asset.
workflows.lastUpdateTime
String
Timestamp of the most recent update to the workflow assessment, in ISO 8601 format.
workflows.convertedAssetUrl
String
URL of the converted asset in Cloud Data Integration, or null if conversion has not been completed.
workflows.taskId
String
Unique identifier for the assessment task associated with the workflow.
workflows.runId
Integer
Unique identifier for the assessment run in which the workflow was evaluated.

Sample request

The following is a sample request based on the values provided:

curl -X POST \
"<pod_base_url>/infamod/public/api/v2/assessment/summary/workflow" \
-H "Content-Type: application/json" \
-d '{
"domain": "DOM_12345",
"repo": "PC_REPO_DEV",
"folder": "Sales_Workflows",
"page": 0,
"pageSize": 20,
"sortFields": [
{
"field": "folder",
"direction": "ASC"
}
],
"filters": [
{
"type": "folders",
"values": [
"Sales_",
"Finance_"
]
}
]
}'

Sample response

200 OK
{
"total": 128,
"workflows": [
{
"workflowName": "wf_daily_sales_load",
"folderName": "Sales_Workflows",
"assessmentType": "Automated",
"complexity": "MEDIUM",
"conversionStatus": "Completed",
"lastUpdateTime": "2025-03-15T10:30:00.000+0000",
"convertedAssetUrl": "https://na1.dm-us.informaticacloud.com/diUI/products/mapping/main/e1b2c3d4",
"taskId": "0100000B00000000001A",
"runId": 1001
}
]
}
400 Bad Request
{
"message": "Bad request \u2013 invalid parameters"
}
401 Unauthorized
{
"message": "Unauthorized \u2013 missing or invalid session credentials"
}
500 Internal Server Error
{
"message": "Internal server error"
}

Validate shared directory location

Validates the shared directory location required for assessment and bulk update tasks.

API request

To validate shared directory location, send a POST request to the following API:
POST <pod_base_url>/infamod/public/api/v2/validate

Request parameters

Path parameters
No parameter.
Query parameters
No parameter.
Body Parameters
The following table describes the parameters that you specify in the API request body:
Name
Type
Required or Optional
Description
sharedLocation
string
Required
Absolute path to the shared directory.
agentGrpId
string
Required
Unique identifier for the secure agent group associated with the shared directory location being validated.
domainName
string
Required
Name of the domain associated with the shared location being validated.
repoName
string
Required
Name of the repository associated with the shared location being validated.

Request headers

The following table describes the headers that you specify in the API request:
Name
Required or Optional
Description
IDS-SESSION-ID
Required
Session token to authenticate the request.

Response parameters

The following table describes the parameters that are returned by the API:
Name
Type
Description
message
String
Result of the shared directory validation.
statusCode
Integer
HTTP status code indicating the outcome of the validation request.

Sample request

The following is a sample request based on the values provided:

curl -X POST \
"<pod_base_url>/infamod/public/api/v2/validate" \
-H "content-type: application/json" \
-H "IDS-SESSION-ID: eyJraW********" \
-d '{
"sharedLocation": "/",
"agentGrpId": "016JN32500000000019A",
"domainName": "invwbprod05_WB_DOMAIN_1",
"repoName": "PCRS_DB2_JPMC"
}'

Sample response

200 OK
{
"message": "Validation successful.",
"statusCode": 200
}
400 Bad Request
{
"message": "Bad request - invalid request body or shared location"
}
401 Unauthorized
{
"message": "Unauthorized - missing or invalid session credentials"
}
404 Not Found
{
"message": "Resource not found"
}
500 Internal Server Error
{
"message": "Internal server error while validating shared location"
}