Creates a new mainframe data integration pipeline in a mainframe project. If the pipeline is successfully created, the response includes the pipeline and project identifiers in the response body.
Process overview
- This endpoint validates the request and determines whether to create a sync or reverse sync pipeline based on the provided configuration.
- For
syncConfig: Validates connection types, runtime engine, and replication mode, then creates a sync pipeline. - For
reverseSyncConfig: Validates connection types, then creates a reverse sync pipeline and associates connections. - Finds or creates the mainframe project (only one per workspace).
- For reverse sync operations, associates the connections with the created pipeline.
- Returns project and pipeline IDs, and replication type in the response body.
Key features
- Enables users to create and configure mainframe data integration pipelines.
- Supports both sync and reverse sync pipeline creation.
- Returns identifiers and replication type for further operations.
Required permissions
replication-pipeline::manage
Request
Request body properties
| Ancestors | Property | Required | Type | Description |
|---|---|---|---|---|
| projectName | No | string | Specifies the project name. Example:
Mainframe-Project |
|
| pipelineName | No | string | Specifies the pipeline name. Example:
Mainframe-Pipeline-1 |
|
| description | Yes | string | Description of the replication pipeline. Example:
Pipeline for synchronizing customer data between systems |
|
| syncConfig | Yes | object | Sync pipeline configuration | |
| syncConfig | runTimeEngineName | Yes | string | Runtime engine name. Example:
Engine1 |
| reverseSyncConfig | Yes | object | Reverse sync pipeline configuration |
|
reverseSyncConfig |
sourceConnectionId | Yes | string | Source connection ID. Example:
67fccf1e836cb73b44f6c038 |
reverseSyncConfig |
targetConnectionId | Yes | string | Target connection ID. Example:
67fccf97836cb73b44f6c058 |
| replicationSettings | Yes | object |
Mainframe pipeline replication settings. |
|
| replicationSettings | sourceConnectionType | Yes | string |
Specifies the source connection type. Example:
VSAM |
| replicationSettings | targetConnectionType | Yes | string |
Specifies the target connection type. Example:
KAFKA |
| replicationSettings | autoStart | No | boolean |
Specifies whether to auto start the pipeline after the configuration is active. Example:
true |
| replicationSettings | replicationMode | No | string |
Specifies the replication mode. Example:
ADVANCED |
Response
Response body properties
| Property | Required | Type | Description |
|---|---|---|---|
| projectId | No | string | ID of the project containing the pipeline. This is the project that was either found or created during the pipeline creation process. |
| pipelineId | No | string | ID of the created pipeline. This identifier can be used to query the pipeline status, modify its configuration, or manage its lifecycle. |
| replicationType | No | string | Type of mainframe replication configured for the pipeline. |
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.
{
"projectId": "data-integration-project-id-123",
"pipelineId": "customer-data-synchronization-pipeline-456",
"replicationType": "MAINFRAME_REPLICATION_TYPE_ENGINE"
}
{
"type": "https://datatracker.ietf.org/doc/html/rfc9110#section-15.4.4",
"title": "Pipeline Already Exists",
"status": 303,
"detail": "A pipeline with the name 'customer-data-synchronization-pipeline' already exists in project 'data-integration-project-id-123'.",
"instance": "/v1/integration/mainframe/pipelines",
"properties": {
"errorCode": "DI-ADAPTER-DFL-0005"
}
}
{
"type": "https://datatracker.ietf.org/doc/html/rfc9110#section-15.5.1",
"title": "Bad Request",
"status": 400,
"detail": "Validation error occurred",
"instance": "/v1/integration/mainframe/pipelines",
"properties": {
"errorCode": "DI-ADAPTER-VAL-0000"
}
}
{
"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/mainframe/pipelines",
"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/mainframe/pipelines",
"properties": {
"errorCode": "DI-ADAPTER-AUT-0002"
}
}
{
"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/mainframe/pipelines",
"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/mainframe/pipelines",
"properties": {
"errorCode": "DI-ADAPTER-DFL-0004"
}
}