TSS - Material Manager

Creates a new material mapping for a division.

If material defined in the args does not exist, it is also created.

This endpoint can optionally also add an alias to another material mapping, as sometimes we need to do these two operations together.

If plant compositions are being defined, the cement component materialId for the material being added must be null.

This endpoint can throw one of four custom exceptions depending on user input. All exceptions have an "exceptionType" field (unique identifier for each exception) and an "error" field (short helpful message for developers). Exceptions can have additional fields, documented below.

InvalidFieldValue: Thrown when any specific field fails validation (e.g. specific gravity is negative, mapping cannot be found by a specified ID, etc.). Includes additional field "fieldName" indicating which input failed validation. Sample response:

    {
        "exceptionType": "InvalidFieldValue",
        "error": "Primary material type cannot be updated.",
        "fieldName": "PrimaryMaterialType"
    }

DuplicateMapping: Thrown when a material exactly matches an existing material. Includes additional field "existingMapping" of type MaterialArgs for comparison on the frontend. Sample response:

    {
        "exceptionType": "DuplicateMapping",
        "error": "Mapping already exists.",
        "existingMapping": {
            "materialMappingId": 0,
            "divisionId": 0,
            "divisionName": "string",
            "isIngested": true,
            "primaryMaterialType": "Admixture",
            "materialType": "Cement",
            "specificGravity": 0,
            "supplierCompany": "string",
            "supplierPlant": "string",
            "cementSupplier": {
                "cementPlantId": 0,
                "plantName": "string",
                "companyName": "string"
            },
            ...
        }
    }

SimilarMapping: Thrown when a material's MaterialType and supplier information (plant and company names or cement plant for cements) match an existing material. Similar materials are permitted, so this check can be skipped by setting OverrideSimilarCheck=true in the input args. Includes additional field "existingMapping" of type MaterialArgs for comparison on the frontend. Sample response:

    {
        "exceptionType": "SimilarMapping",
        "error": "Similar material found.",
        "existingMapping": {
            "materialMappingId": 0,
            "divisionId": 0,
            "divisionName": "string",
            "isIngested": true,
            "primaryMaterialType": "Admixture",
            ...
        }
    }

DuplicateAlias: Thrown when an alias is trying to be added to a material but it already exists and is associated with another material mapping. Includes additional field "existingMapping" of type MaterialArgs for comparison on the frontend. Sample response:

    {
        "exceptionType": "DuplicateAlias",
        "error": "Alias already exists.",
        "existingMapping": {
            "materialMappingId": 0,
            "divisionId": 0,
            "divisionName": "string",
            "isIngested": true,
            "primaryMaterialType": "Admixture",
            ...
        }
    }
post/TSS/MaterialManager/Material

Request

  • Base URL: https://api.carboncure.com (the document declares no server; this is the origin it was published from)
  • URL: https://api.carboncure.com/TSS/MaterialManager/Material
  • Auth: one of:
    • OAuth 2 (authorization code, authorization URL https://auth.carboncure.com/oauth2/authorize, token URL https://auth.carboncure.com/oauth2/token, scopes: applicationId, roles)
    • none
    • none

Query parameters

materialMappingIdinteger

Optional - mapping to add an alias to.

aliasNamestring

Optional - the alias to add to the mapping.

Request body

materialMappingIdinteger nullable
divisionIdinteger
divisionNamestring nullable
isIngestedboolean
primaryMaterialType'Admixture' | 'Aggregate' | 'Cement' | 'CO2' | 'Fiber' | 'FlyAsh' | 'ReclaimedWater' | 'Slag' | 'SilicaFume' | 'SCM' | 'Water' | 'Filler'
admixtureMaterialSubType'AirEntrainer' | 'Retarder' | 'SuperPlasticizer' | 'WaterReducer' | 'HighRangeWaterReducer' | 'MidRangeWaterReducer' | 'LowRangeWaterReducer' | 'ViscosityModifier' | 'HydrationStabilizer' | 'CorrosionInhibitor' | 'ShrinkageReducer' | 'Accelerator' | 'NonChlorideAccelerator' | 'ChlorideAccelerator' | 'AntiWashout' | 'Waterproofer'
specificGravitynumber double nullable
supplierCompanystring nullable
supplierPlantstring nullable
admixtureSolidsContentPercentnumber double nullable
aggregateManufacturing'Manufactured' | 'Natural'
aggregatePitIdstring nullable
aggregateRockType'Granite' | 'Limestone' | 'Silica'
aggregateSize'_1' | '_2' | '_3' | '_357' | '_4' | '_467' | '_5' | '_56' | '_57' | '_6' | '_67' | '_7' | '_8' | '_89'
fiberManufacturing'Natural' | 'Synthetic' | 'Steel' | 'Glass'
fiberSize'Micro' | 'Macro'
fiberDiameterMmnumber double nullable
fiberLengthMmnumber double nullable
flyAshLossOfIgnitionPercentnumber double nullable
silicaFumeGrade'_85' | '_90' | '_92' | '_95'
slagGrade'_80' | '_100' | '_120'
slagProcessing'Blast' | 'AirCooled' | 'BasicOxygen' | 'ElectricArc'
waterTemperature'Hot' | 'Cold' | 'Ambient' | 'Ice'
modeOfTransportation'Truck' | 'Rail' | 'Barge' | 'Plane'
aliasesstring[] nullable
overrideSimilarCheckboolean

Used to skip the similar material check, since we do support similar materials its purpose is to warn the user that a similar material already exists.

materialIdinteger nullable
materialType'Cement' | 'CementTypeI' | 'CementTypeIS' | 'CementTypeIP' | 'CementTypeIL' | 'CementTypeII' | 'CementTypeI_II' | 'CementTypeI_IIMH' | 'CementTypeI_II_LA' | 'CementTypeIII' | 'CementTypeIV' | 'CementTypeII_V' | 'CementTypeN' | 'CementTypeS' | 'CementCemI' | 'CementCemII' | 'CementCemIII' | 'CementCemIV' | 'CementCemV' | 'CementCemVI' | 'CementBlendedHydraulic' | 'CoarseAggregate' | 'IntermediateAggregate' | 'FineAggregate' | 'Fiber' | 'FiberTypeI' | 'FiberTypeII' | 'FiberTypeIII' | 'FiberTypeIV' | 'Water' | 'CO2' | 'SCM' | 'Slag' | 'SlagFerrous' | 'SlagNonFerrous' | 'SlagFerroalloy' | 'FlyAsh' | 'FlyAshC' | 'FlyAshF' | 'FlyAshN' | 'SilicaFume' | 'ReclaimedWater' | 'Admixture' | 'AirEntrainer' | 'Retarder' | 'SuperPlasticizer' | 'WaterReducer' | 'HighRangeWaterReducer' | 'MidRangeWaterReducer' | 'LowRangeWaterReducer' | 'ViscosityModifier' | 'HydrationStabilizer' | 'CorrosionInhibitor' | 'ShrinkageReducer' | 'Accelerator' | 'NonChlorideAccelerator' | 'ChlorideAccelerator' | 'StrengthEnhancer' | 'AntiWashout' | 'Waterproofer' | 'Filler'

Response

OK

Changes

No recorded changes to this operation across all 1 revision of this API.