Taskflows > Taskflows > Monitoring taskflow status with the status resource
  

Monitoring taskflow status with the status resource

If you have the privilege to view job results in Monitor, you can use the status resource to query the status of a taskflow. You can query the status of a taskflow using the taskflow run ID as a path parameter or using query parameters such as run ID, run status, start time, end time, offset, and row limit.

GET request

To query the status of a taskflow using the run ID as a path parameter, use the following URL:
<Informatica Intelligent Cloud Services URL>/active-bpel/services/tf/status/<run ID>
You can also query the status of a taskflow using query parameters. The query parameters are case sensitive.
You can use the following optional query parameters in the GET request URL:
Field
Description
runId
Run ID for the taskflow.
runStatus
Execution status of the taskflow. You can specify the status as Success, Failed, Suspended, or Running.
startTime
Start time for the taskflow run. Uses Coordinated Universal Time (UTC). For example, 2021-06-10T05:48:28Z
endTime
End time for the taskflow run. Uses Coordinated Universal Time (UTC). For example, 2021-06-11T05:48:28Z
offset
Number of rows to skip. For example, you might want to skip the first three rows.
rowLimit
Maximum number of rows to return. The maximum number you can specify is 50. If you omit this parameter, the query returns all available rows, up to a maximum of 10 rows.
You can use any combination of these query parameters. For example, you can use the following URL:
<Informatica Intelligent Cloud Services URL>/active-bpel/services/tf/status?runId=<runId>&startTime=<startTime>&runStatus=<runStatus>&endTime=<endTime>&rowLimit=<rowLimit>
The GET request must be authenticated in one of the following ways:
You must also specify the following HTTP header: Accept: application/json
Use one of the following GET requests:

GET response

Returns the taskflow status information if successful or an error object if errors occur.
If successful, returns the following status information for a taskflow:
Field
Type
Description
assetName
String
Name of the taskflow.
assetType
String
Type of the object. Returns the value TASKFLOW.
duration
String
Time in seconds that the taskflow ran before it completed, was suspended, was failed, or was stopped.
endTime
Date/time
End time for the taskflow run. Uses Coordinated Universal Time (UTC).
location
String
Project and folder path where the taskflow is located.
runId
Long
Run ID for the taskflow.
runtimeEnv
String
ID of the runtime environment where the taskflow runs.
runtimeEnvName
String
Name of the runtime environment where the taskflow runs.
startTime
Date/time
Start time for the taskflow run. Uses Coordinated Universal Time (UTC).
startedBy
String
User who started the taskflow.
status
String
Execution status of the taskflow.
Returns one of the following values to indicate the taskflow status:
  • - RUNNING. The taskflow is running.
  • - SUCCESS. The taskflow completed successfully.
  • - FAILED. The taskflow did not complete because it encountered errors.
  • - SUSPENDED. The taskflow run was suspended.
subtasks
String
Number of subtasks that the taskflow contains.
updateTime
Date/time
Last time the taskflow run status was updated. Uses Coordinated Universal Time (UTC).
errorMessage
String
Error message string.
subtaskDetails
String
Object that contains status details for all subtasks in the taskflow.
details
String
Status details. Includes status information for each subtask in the tasks object.
tasks
Collection
Status information for all subtasks that the taskflow contains.
The tasks object includes the following status information for each subtask that the taskflow contains:
Field
Type
Description
assetName
String
Name of the subtask in the taskflow.
assetType
String
Type of the subtask. Returns one of the following values:
  • - MTT. Mapping task.
  • - DSS. Synchronization task.
duration
String
Time in seconds that the subtask ran before it completed, was failed, or was stopped.
endTime
Date/time
End time for the subtask run. Uses Coordinated Universal Time (UTC).
errorMessage
String
Error message string.
errorRows
String
Total number of rows that resulted in errors in a subtask.
location
String
Project and folder path where the subtask is located.
rowsProcessed
String
Total number of rows that were processed in a subtask.
runId
Long
Run ID for the subtask.
runtimeEnv
String
ID of the runtime environment where the subtask runs.
runtimeEnvName
String
Name of the runtime environment where the subtask runs.
startTime
Date/time
Start time for the subtask run. Uses Coordinated Universal Time (UTC).
startedBy
String
User who started the task. This field is the same as the user who started the taskflow.
status
String
Execution status of the subtask.
Returns one of the following values to indicate the subtask status:
  • - QUEUED. The subtask is queued on a Secure Agent, but it has not started yet.
  • - STARTING. The subtask is starting.
  • - RUNNING. The subtask is running.
  • - COMPLETED. The subtask completed successfully.
  • - STOPPED. The taskflow has stopped running, so the subtask cannot start.
  • - WARNING. The subtask completed with errors.
  • - FAILED. The subtask did not complete because it encountered errors.
subtasks
String
Reserved for future use. When this field is returned for a subtask, the value is always 0.
successRows
String
Total number of rows that were processed successfully in a subtask.
updateTime
Date/time
Last time the subtask run status was updated. Uses Coordinated Universal Time (UTC).

GET example using the run ID as a path parameter

The following example shows a taskflow status request that uses the run ID as a path parameter:
GET https://pod.ics.dev:444/active-bpel/services/tf/status/20262247166322413568
Accept: application/json
INFA-SESSION-ID: 9KA11tLGqxVcGeul8SQBK3
Based on the taskflow configuration and request inputs, the response can be of the following types:
Taskflow without subtasks
If the request is successful and the taskflow does not contain subtasks, the response includes taskflow status information as shown in the following example:
{
"assetName": "Empty",
"assetType": "TASKFLOW",
"duration": "2",
"endTime": "2018-12-25T15:56:39Z",
"location": "Default",
"runId": "262247166322413568",
"runtimeEnv": "tf_runtime",
"runtimeEnvName": "",
"startTime": "2018-12-25T15:56:37Z",
"startedBy": "sb",
"status": "SUCCESS",
"subtasks": "0",
"updateTime": "2018-12-25T15:56:39Z",
"errorMessage": {},
"subtaskDetails": {
"details": {}
}
}
The HTTP status code is 200 OK.
Taskflow with subtasks
If the request is successful and the taskflow contains multiple subtasks, the response includes status information for each subtask that the taskflow contains as shown in the following example:
{
"assetName": "Taskflow1",
"assetType": "TASKFLOW",
"duration": "89",
"endTime": "2018-12-23T17:25:16Z",
"location": "Default",
"runId": 20262247166322413568,
"runtimeEnv": "tf_runtime",
"runtimeEnvName": "",
"startTime": "2018-12-23T17:23:47Z",
"startedBy": "sb",
"status": "SUCCESS",
"subtasks": "2",
"updateTime": "2018-12-23T17:25:17Z",
"errorMessage": {},
"subtaskDetails": {
"details": {
"tasks": [
{
"assetName": "MTR",
"assetType": "MTT",
"duration": "3",
"endTime": "2018-12-23T17:24:45Z",
"errorMessage": "",
"errorRows": "0",
"location": "Default",
"rowsProcessed": "7",
"runId": "4",
"runtimeEnv": "01001Q25000000000002",
"runtimeEnvName": "tf_runtime_devagent",
"startTime": "2018-12-23T17:24:42Z",
"startedBy": "sb",
"status": "COMPLETED",
"subtasks": "0",
"successRows": "7",
"updateTime": "2018-12-23T17:24:46Z"
},
{
"assetName": "MTR",
"assetType": "MTT",
"duration": "10",
"endTime": "2018-12-23T17:23:59Z",
"errorMessage": "",
"errorRows": "0",
"location": "Default",
"rowsProcessed": "7",
"runId": "3",
"runtimeEnv": "01001Q25000000000002",
"runtimeEnvName": "tf_runtime_devagent",
"startTime": "2018-12-23T17:23:49Z",
"startedBy": "sb",
"status": "COMPLETED",
"subtasks": "0",
"successRows": "7",
"updateTime": "2018-12-23T17:24:00Z"
}
]
}
}
}
The HTTP status code is 200 OK.
Purged logs
If logs are purged for the instance, the response is as follows:
{ "status": "No status available." }
The HTTP status code is 200 OK.
Invalid run ID
If the run ID is not valid, the response is as follows:
{
"error": "CMN_003-Bad request. Error message - The property '<runID>', used in a query expression, is not defined in type 'OData.job-log-service.JobLogEntry'."
}
The HTTP status code is 400 Bad Request(From JLS).
Invalid filter clause
If the parameter value is not valid, the response is as follows:
{
"error": "JLS_007-Invalid Filter clause in OData request. RawURI = http://internal-na1-elb.infacloudops.net:443/jls-di/internal/api/v1"
}
The HTTP status code is 400 Bad Request(From JLS).
Unavailable JLS service
If the JLS service is unavailable, the response is as follows:
{ "error": "503-Service Unavailable." }
The HTTP status code is 503 Service Unavailable.

GET example using query parameters

The following example shows a taskflow status request that uses run ID, run status, and row limit as query parameters:
GET https://pod.ics.dev:444/active-bpel/services/tf/status?runId=20262247166322413568&runStatus=Success&rowLimit=3
Accept: application/json
INFA-SESSION-ID: 9KA11tLGqxVcGeul8SQBK3
If the request is successful, the response format is the same as when we use the path parameter, but within square brackets [ ].
If the request is successful and the taskflow does not contain subtasks, the response includes taskflow status information as shown in the following example:
[
{
"assetName": "Empty",
"assetType": "TASKFLOW",
"duration": "2",
"endTime": "2018-12-25T15:56:39Z",
"location": "Default",
"runId": 262247166322413568,
"runtimeEnv": "tf_runtime",
"runtimeEnvName": "",
"startTime": "2018-12-25T15:56:37Z",
"startedBy": "sb",
"status": "SUCCESS",
"subtasks": "0",
"updateTime": "2018-12-25T15:56:39Z",
"errorMessage": {},
"subtaskDetails": {
"details": {
"tasks": []
}
}
}
]
The HTTP status code is 200 OK.

GET example without any parameter

The following example shows a taskflow status request without a path parameter or query parameter:
<Informatica Intelligent Cloud Services URL>/active-bpel/services/tf/status
The response contains status information of the last 10 taskflows that were run in the last 24 hours.