Configures source assets selection, target assets selection, and field mappings (transformation) for a mainframe pipeline.
HTML
POST https://hostname/v1/integration/mainframe/projects/{projectId}/pipelines/{pipelineId}/configurationProcess Overview
- Resource Validation—Validates project and pipeline existence
- Parallel Component Processing—Processes each component configuration independently
- Component Types Supported:
- Sources: Source asset selection (for example, topics)
- Targets: Target schema and table definitions
- Transformation: Field mapping and transformation criteria
- Isolation & Fault Tolerance—Component failures don't affect others
- Consolidated Response—Returns unified status after all processing
Key features
- All component configurations are optional.
- Parallel processing for optimal performance.
- Independent component execution (failure isolation).
- Metrics per component for better observability.
- Component specific thread pool resource allocation.
- Comprehensive error reporting per component.
Required permissions
replication-pipeline::manage
Request
Path parameters
| Key | Required | Type | Description |
|---|---|---|---|
| projectId | Yes | string |
Unique identifier of the project. |
| pipelineId | Yes | string |
Unique identifier of the pipeline. |
Request body properties
| Ancestors | Property | Required | Type | Description |
|---|---|---|---|---|
| sources | No | array[string] | List of source topic identifiers. Example: ["sourceTopic1", "sourceTopic2"]
|
|
| targets | Yes | array[object] | List of target schema and table definitions. Example:
[{"schema":"targetSchema1", "tables":["targetTable1"]},{"schema":"targetSchema2", "tables":["targetTable2"]}] |
|
| targets | schema | Yes | string | Selected schema. Example:
targetSchema |
| targets | tables | Yes | array[string] | List of selected tables in the schema. Example: ["targetTable1", "targetTable2"]
|
| transformation | Yes | object | Field mapping criteria for transformation between source and target assets. |
|
| transformation | sourceMessageProducerFormat | Yes | string | Source message producer format. |
| transformation | fieldMappings | Yes | array[object] | Field mappings for CDC. |
| transformation/fieldMappings | sourceField | Yes | string | Source field name, Example:
"sv_sending_table" |
| transformation/fieldMappings | targetField | Yes | string |
Target field name. Example:
"Dataset name" |
| transformation/fieldMappings | valueMappings | No | object[string] |
Value mappings for the field. Example:
"Dataset name" |
Request body example
{
"sources": [
"sourceTopic1",
"sourceTopic2"
],
"targets": [
{
"schema": "targetSchema1",
"tables": [
"targetTable1"
]
},
{
"schema": "targetSchema2",
"tables": [
"targetTable2"
]
}
],
"transformation": {
"sourceMessageProducerFormat": "custom",
"fieldMappings": [
{
"sourceField": "sv_sending_table",
"targetField": "Dataset name"
}
]
}
}
Response
Response body properties
| Ancestors | Property | Required | Type | Description |
|---|---|---|---|---|
| requestId | No | string | Unique identifier for the configuration request. | |
| overallStatus | No | string | Overall status of the configuration operation. | |
| executionTimeInMs | No | integer | Total execution time for all component configurations in milliseconds. | |
| sources | No | object | Result of source asset selection/configuration. | |
| sources | selectedResources | No | array[string] | List of selected source asset identifiers. |
| sources | status | No | string | Status for this endpoint configuration. |
| sources | response | No | string | Response / status message from the configuration process |
| targets | No | object | Result of target asset selection/configuration. | |
| targets | selectedResources | No | array[object] | List of selected target schema and table definitions. |
| targets | status | No | string | Status for this endpoint configuration. |
| targets | response | No | string | Response / status message from the configuration process. |
| transformation | No | object | Result of transformation (field mapping) configuration. | |
| transformation | status | No | string | Configuration status for transformation component. |
| transformation | response | No | string | Response message from the configuration process |
Response body examples
Example status code responses for this method are shown here. To view the response schemas, you can download the Data Integration API specification (Precisely Integration Adapter Service) from the Precisely Developer Portal.
{
"requestId": "config-req-12345-abcde",
"overallStatus": "SUCCESS",
"executionTimeInMs": 45123,
"sources": {
"selectedSources": [
"sourceTopic1",
"sourceTopic2"
],
"status": "SUCCESS"
},
"targets": {
"selectedTargets": [
{
"schema": "targetSchema1",
"tables": [
"targetTable1"
]
},
{
"schema": "targetSchema2",
"tables": [
"targetTable2"
]
}
],
"status": "SUCCESS"
},
"transformation": {
"fieldMappings": [
{
"sourceField": "sv_sending_table",
"targetField": "Dataset name"
}
],
"status": "SUCCESS"
}
}
{
"type": "https://datatracker.ietf.org/doc/html/rfc9110#section-15.5.1",
"title": "Bad Request",
"status": 400,
"detail": "Invalid configuration request",
"instance": "/v1/integration/mainframe/projects/{projectId}/pipelines/{pipelineId}/configuration",
"properties": {
"errorCode": "DI-ADAPTER-DFL-0010"
}
}
{
"type": "https://datatracker.ietf.org/doc/html/rfc9110#section-15.5.2",
"title": "Unauthorized",
"status": 401,
"detail": "Authorization failed - missing or invalid credentials",
"instance": "/v1/integration/continuous/projects/{projectId}/pipelines/{pipelineId}/configuration",
"properties": {
"errorCode": "DI-ADAPTER-AUT-0001"
}
}
{
"type": "https://datatracker.ietf.org/doc/html/rfc9110#section-15.5.4",
"title": "Forbidden",
"status": 403,
"detail": "Authorization failed - insufficient permissions",
"instance": "/v1/integration/continuous/projects/{projectId}/pipelines/{pipelineId}/configuration",
"properties": {
"errorCode": "DI-ADAPTER-AUT-0002"
}
}
{
"type": "https://datatracker.ietf.org/doc/html/rfc9110#section-15.5.5",
"title": "Not Found",
"status": 404,
"detail": "Project or pipeline not found",
"instance": "/v1/integration/mainframe/projects/{projectId}/pipelines/{pipelineId}/configuration",
"properties": {
"errorCode": "DI-ADAPTER-DFL-0007"
}
}
{
"type": "https://datatracker.ietf.org/doc/html/rfc9110#section-15.5.21",
"title": "Unprocessable Entity",
"status": 422,
"detail": "Unprocessable Entity - Request is syntactically correct but semantically invalid",
"instance": "/v1/integration/continuous/projects/{projectId}/pipelines/{pipelineId}/configuration",
"properties": {
"errorCode": "DI-ADAPTER-VAL-0001"
}
}
{
"type": "https://datatracker.ietf.org/doc/html/rfc9110#section-15.6",
"title": "Internal Server Error",
"status": 500,
"detail": "An unexpected error occurred",
"instance": "/v1/integration/continuous/projects/{projectId}/pipelines/{pipelineId}/configuration",
"properties": {
"errorCode": "DI-ADAPTER-DFL-0010"
}
}