Create/Update an ACA Matrix

POST

Creates or updates a relationship.

Consumes

This API v2 call consumes the application/json media types via the Content-Type request header.

Request Syntax

POST /v2/simpleIngest

Request Body

JSON

Request Example

{
  "Description": "Create or update ACA Matrices”,
  "DataLoaderId": "ACAMatrixDataLoader",
  "Origin": "SimpleIngestion",
  "DaysToLive": 15,
  "Tables": [
    {
      "Name": "Analysis",
      "Table": [
        {
          "MI_ASCRTSYS_SYSTEM_ID_C": "Analysis Test Record",
          "MI_SITE_NAME": "*Global*",
          "MI_ASCRTSYS_SYSTEM_DESCR_T": "ACA Analysis Desc"
        },
        {
          "MI_ASCRTSYS_SYSTEM_ID_C": "Analysis Test Record",
          "MI_SITE_NAME": "*Global*",
          "MI_ASCRTSYS_SYSTEM_DESCR_T": "ACA Analysis Desc"
        }
      ]
    },
    {
      "Name": "Asset",
      "Table": [
        {
          "MI_ASCRTSYS_SYSTEM_ID_C": "Analysis Test Record",
          "ASSET_ID": "000000000001060839",
          "ASSET_FIELD_ID": "MI_EQUIP000_EQUIP_ID_C",
          "ASSET_FAMILY": "MI_EQUIP000",
          "ENVIRONMENT|MI_CONSE_N": "1",
          "ENVIRONMENT|MI_PROB_N": "0.1",
          "ENVIRONMENT|MI_PROT_N": "",
          "ENVIRONMENT-RISK_RANK": "",
          "FINANCIAL|MI_CONSE_N": "",
          "FINANCIAL|MI_RISK_MAIN_COST_N": "",
          "FINANCIAL|MI_PROB_N": "1",
          "FINANCIAL|MI_RISK_PROD_LOSS_N": "",
          "FINANCIAL|MI_PROT_N": "",
          "FINANCIAL-RISK_RANK": "",
          "OPERATIONS|MI_CONSE_N": "100",
          "OPERATIONS|MI_PROB_N": "0.1",
          "OPERATIONS|MI_PROT_N": "",
          "OPERATIONS-RISK_RANK": "",
          "SAFETY|MI_CONSE_N": "100",
          "SAFETY|MI_PROB_N": "0.3",
          "SAFETY|MI_PROT_N": "",
          "SAFETY-RISK_RANK": "",
          "MI_RISKASSE_BASIS_T": ""
        },
        {
          "MI_ASCRTSYS_SYSTEM_ID_C": "Analysis Test Record",
          "ASSET_ID": "MRD-DUB-MANU",
          "ASSET_FIELD_ID": "MI_FNCLOC00_FNC_LOC_C",
          "ASSET_FAMILY": "MI_FNCLOC00",
          "ENVIRONMENT|MI_CONSE_N": "1",
          "ENVIRONMENT|MI_PROB_N": "0.1",
          "ENVIRONMENT|MI_PROT_N": "",
          "ENVIRONMENT-RISK_RANK": "",
          "FINANCIAL|MI_CONSE_N": "",
          "FINANCIAL|MI_RISK_MAIN_COST_N": "",
          "FINANCIAL|MI_PROB_N": "1",
          "FINANCIAL|MI_RISK_PROD_LOSS_N": "",
          "FINANCIAL|MI_PROT_N": "",
          "FINANCIAL-RISK_RANK": "",
          "OPERATIONS|MI_CONSE_N": "100",
          "OPERATIONS|MI_PROB_N": "0.1",
          "OPERATIONS|MI_PROT_N": "",
          "OPERATIONS-RISK_RANK": "",
          "SAFETY|MI_CONSE_N": "100",
          "SAFETY|MI_PROB_N": "0.3",
          "SAFETY|MI_PROT_N": "",
          "SAFETY-RISK_RANK": "",
          "MI_RISKASSE_BASIS_T": ""
        },
        {
          "MI_ASCRTSYS_SYSTEM_ID_C": "Analysis Test Record",
          "ASSET_ID": "MRD-HOU-CHEM",
          "ASSET_FIELD_ID": "MI_FNCLOC00_FNC_LOC_C",
          "ASSET_FAMILY": "MI_FNCLOC00",
          "ENVIRONMENT|MI_CONSE_N": "1",
          "ENVIRONMENT|MI_PROB_N": "0.1",
          "ENVIRONMENT|MI_PROT_N": "",
          "ENVIRONMENT-RISK_RANK": "",
          "FINANCIAL|MI_CONSE_N": "",
          "FINANCIAL|MI_RISK_MAIN_COST_N": "",
          "FINANCIAL|MI_PROB_N": "1",
          "FINANCIAL|MI_RISK_PROD_LOSS_N": "",
          "FINANCIAL|MI_PROT_N": "",
          "FINANCIAL-RISK_RANK": "",
          "OPERATIONS|MI_CONSE_N": "100",
          "OPERATIONS|MI_PROB_N": "0.1",
          "OPERATIONS|MI_PROT_N": "",
          "OPERATIONS-RISK_RANK": "",
          "SAFETY|MI_CONSE_N": "100",
          "SAFETY|MI_PROB_N": "0.3",
          "SAFETY|MI_PROT_N": "",
          "SAFETY-RISK_RANK": "",
          "MI_RISKASSE_BASIS_T": ""
        },
        {
          "MI_ASCRTSYS_SYSTEM_ID_C": "Analysis Test Record",
          "ASSET_ID": "000000000001062170",
          "ASSET_FIELD_ID": "MI_EQUIP000_EQUIP_ID_C",
          "ASSET_FAMILY": "MI_EQUIP000",
          "ENVIRONMENT|MI_CONSE_N": "1",
          "ENVIRONMENT|MI_PROB_N": "0.1",
          "ENVIRONMENT|MI_PROT_N": "",
          "ENVIRONMENT-RISK_RANK": "",
          "FINANCIAL|MI_CONSE_N": "",
          "FINANCIAL|MI_RISK_MAIN_COST_N": "",
          "FINANCIAL|MI_PROB_N": "1",
          "FINANCIAL|MI_RISK_PROD_LOSS_N": "",
          "FINANCIAL|MI_PROT_N": "",
          "FINANCIAL-RISK_RANK": "",
          "OPERATIONS|MI_CONSE_N": "100",
          "OPERATIONS|MI_PROB_N": "0.1",
          "OPERATIONS|MI_PROT_N": "",
          "OPERATIONS-RISK_RANK": "",
          "SAFETY|MI_CONSE_N": "100",
          "SAFETY|MI_PROB_N": "0.3",
          "SAFETY|MI_PROT_N": "",
          "SAFETY-RISK_RANK": "",
          "MI_RISKASSE_BASIS_T": ""
        }
      ]
    }
  ]
}

Return Type

200 OK

Produces

This API call produces the application/json media type according to the Accept request header. The media type will be conveyed by the Content-Type response header.

Success Response

{
    "bundle": {
        "id": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
        "userId": "MIADMIN",
        "datasourceId": "20988021-dd02-4aae-9b5d-8b5ce111cf52",
        "dataLoaderId": "ACAMatrixDataLoader",
        "origin": "SimpleIngestion",
        "created": "2024-08-22T20:30:10.130",
        "expires": "2024-09-06T20:30:10.130",
        "status": "Initial",
        "description": "Sample SimpleIngest request body for ACAMatrixDataLoader",
        "skipSynchronization": false,
        "manualRun": false
    },
    "submittedTables": 2,
    "submittedRows": 6
}
Table 1. Explanation of the response properties
PropertyDescription
idBundle Id which is represented by a GUID
userIdUser that ingested the data
datasourceIdDatasource or Tenant where the data is ingested
dataLoaderIdData Loader used to ingest the data
originSimpleIngestion
createdDateTime of when the Bundle was created
expiresDateTime of when the Bundle will be removed from the database
status(Started, Failed, Completed, CompletedWithRejects, CompletedWithWarnings)
descriptionDescription provided by the user
skipSynchronization

This flag indicates if the Synchronization activity should be skipped. This step

should not be skipped as it could cause data integrity issues.

manualRunIs this data being loaded manually? True or False
submittedTablesNumber of tables submitted in the SimpleIngest request
submittedRowsNumber of rows submitted in the SimpleIngest request for all tables

Given that a v2 API request is made asynchronously, if the user wants to check the status of the bundle ingestion, they will need to make an additional request to the following API, passing in the desired Bundle Id: /v1/bundles/064a1e8e-7be0-49ca-a5f0-e271de38a6f9

Success Response

{ 
    "id": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
    "userId": "MIADMIN",
    "datasourceId": "20988021-dd02-4aae-9b5d-8b5ce111cf52",
    "dataLoaderId": "ACAMatrixDataLoader",
    "origin": "SimpleIngestion",
    "created": "2024-08-23T00:30:10.130",
    "expires": "2024-09-07T00:30:10.130",
    "status": "Failed",
    "description": "Sample SimpleIngest request body for ACAMatrixDataLoader",
    "fileName": "Sample SimpleIngest request body for ACAMatrixDataLoader_064a1e8e-7be0-49ca-a5f0-e271de38a6f9.zip",
    "recipe": {
        "deriveDependencies": false,
        "maxParallelSlices": 5,
        "batchMode": true,
        "keyEntitySheet": "Analysis",
        "synchronizeData": false,
        "sheetRecipes": [
            {
                "worksheet": "Analysis.csv",
                "loadWorksheet": true,
                "gedaFacing": false,
                "familyType": "ENTITY",
                "loadOrder": 0,
                "deleteOrphans": false,
                "loadRecordsInParallel": false,
                "allowChangeOfFamily": false,
                "batchSize": 100,
                "insertOnNull": true,
                "replaceExistingLink": true,
                "updateOnNull": false,
                "numberOfRowsToChunk": -1,
                "rowsAreChunked": false
            },
            {
                "worksheet": "System.csv",
                "loadWorksheet": true,
                "gedaFacing": false,
                "familyType": "ENTITY",
                "loadOrder": 1,
                "deleteOrphans": false,
                "loadRecordsInParallel": false,
                "allowChangeOfFamily": false,
                "batchSize": 100,
                "insertOnNull": true,
                "replaceExistingLink": true,
                "updateOnNull": false,
                "numberOfRowsToChunk": -1,
                "rowsAreChunked": false
            },
            {
                "worksheet": "Asset.csv",
                "loadWorksheet": true,
                "gedaFacing": false,
                "familyType": "ENTITY",
                "loadOrder": 2,
                "deleteOrphans": false,
                "loadRecordsInParallel": false,
                "allowChangeOfFamily": false,
                "batchSize": 100,
                "insertOnNull": true,
                "replaceExistingLink": true,
                "updateOnNull": false,
                "numberOfRowsToChunk": -1,
                "rowsAreChunked": false
            }
        ],
        "rejectedRows": [],
        "warningRows": [],
        "ingestionConfiguration": {
            "familyFieldsToExclude": [],
            "gedaFieldsToExclude": []
        }
    },
    "sliceCount": 1,
    "insertedRowCount": 0,
    "updatedRowCount": 0,
    "deletedRowCount": 0,
    "rejectedRowCount": 0,
    "events": [
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Transmit",
            "status": "Started",
            "timeStamp": "2024-08-23T00:30:11.516",
            "progressPercentage": 100.0
        },
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Normalize",
            "status": "Started",
            "timeStamp": "2024-08-23T00:30:12.482",
            "progressPercentage": 100.0
        },
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Transmit",
            "status": "Completed",
            "timeStamp": "2024-08-23T00:30:12.845",
            "progressPercentage": 100.0
        },
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Normalize",
            "status": "Completed",
            "timeStamp": "2024-08-23T00:30:13.106",
            "progressPercentage": 100.0
        },
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Compile",
            "status": "Started",
            "timeStamp": "2024-08-23T00:30:13.129",
            "progressPercentage": 100.0
        },
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Compile",
            "status": "Completed",
            "timeStamp": "2024-08-23T00:30:14.807",
            "progressPercentage": 100.0
        },
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Slice",
            "status": "Started",
            "timeStamp": "2024-08-23T00:30:14.829",
            "progressPercentage": 100.0
        },
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Slice",
            "status": "Completed",
            "timeStamp": "2024-08-23T00:30:15.793",
            "progressPercentage": 100.0
        },
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Ingest",
            "status": "Started",
            "timeStamp": "2024-08-23T00:30:15.813",
            "progressPercentage": 1.0
        },
        {
            "bundleId": "064a1e8e-7be0-49ca-a5f0-e271de38a6f9",
            "activity": "Ingest",
            "status": "Failed",
            "timeStamp": "2024-08-23T00:30:17.320",
            "message": "Unable to import Analysis Test Record as changing site of analysis isn't allowed.",
            "progressPercentage": 100.0
        }
    ],
    "skipSynchronization": false,
    "manualRun": false,
    "progressPercentage": 1
}