Carboncuretechnologies TSS - QC Data API

The TSS - QC Data API from Carboncuretechnologies — 5 operation(s) for tss - qc data.

Operations 5

POST /TSS/BatchTestSamples/AddBatchData Upload a set of batch test samples and strength readings #
PUT /TSS/BatchTestSamples/Outliers Endpoint for marking batch test samples as outliers #
PUT /TSS/BatchTestSamples/EditBatchData Update a set of batch test samples and strength readings #
POST /TSS/BatchTestSamples/BatchTestSamplesByIds Returns list of batches as specified by their IDs #
GET /TSS/BatchTestSamples/BatchTestsOverviewRowCount An overview of batch tests, sorted by default by timestamp #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/carboncuretechnologies:carboncuretechnologies-tss-qc-data-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

carboncuretechnologies-tss-qc-data-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Kelowna Production TSS - QC Data API
  version: v1
tags:
- name: TSS - QC Data
paths:
  /TSS/BatchTestSamples/AddBatchData:
    post:
      tags:
      - TSS - QC Data
      summary: Upload a set of batch test samples and strength readings
      description: 'Sample request:


        POST /TSS/BatchTestSamples/AddBatchData

        {

        "plantId": 1,

        "divisionId": 1,

        "isMetric": true,

        "batchTestSamples":

        [

        {

        "ticketId": "120",

        "mixCode": "GK42",

        "productionDate": "2021-03-01",

        "isCO2Design": true,

        "testCategory": "DosageRamp",

        "testingCondition": false,

        "curingCondition": true,

        "weatherCondition": "Windy",

        "loadSize": 4.5,

        "batchIngredients":

        [

        {

        "amount": 321.56,

        "materialId": 1,

        "unit": "Kg"

        },

        {

        "amount": 24,

        "materialId": 2,

        "unit": "OzPerYd3"

        }

        ],

        "batchStrengthReadings":

        [

        {

        "compressiveStrength": 3.94,

        "intervalDuration": 3,

        "intervalType": "Day Intervals",

        "testNumber": 1

        },

        {

        "compressiveStrength": 4.05,

        "intervalDuration": 3,

        "intervalType": "Day Intervals",

        "testNumber": 2

        },

        {

        "compressiveStrength": 20,

        "intervalDuration": 7,

        "intervalType": "Day Intervals",

        "testNumber": 1

        },

        {

        "compressiveStrength": 35,

        "intervalDuration": 28,

        "intervalType": "Day Intervals",

        "testNumber": 1

        }

        ]

        }

        ]

        }'
      requestBody:
        description: The batch test samples
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchDataInput'
          text/json:
            schema:
              $ref: '#/components/schemas/BatchDataInput'
          application/*+json:
            schema:
              $ref: '#/components/schemas/BatchDataInput'
      responses:
        '200':
          description: OK
      security:
      - OrcaAuth:
        - applicationId
        - roles
      - {}
      - {}
      operationId: postTSSBatchTestSamplesAddBatchData
      x-operation-id-source: derived
  /TSS/BatchTestSamples/Outliers:
    put:
      tags:
      - TSS - QC Data
      summary: Endpoint for marking batch test samples as outliers
      requestBody:
        description: "List of batch sample IDs and outlier reasons.\n            A null reason marks samples as non outliers."
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/OutlierArgs'
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/OutlierArgs'
          application/*+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/OutlierArgs'
      responses:
        '200':
          description: OK
      security:
      - OrcaAuth:
        - applicationId
        - roles
      - {}
      - {}
      operationId: putTSSBatchTestSamplesOutliers
      x-operation-id-source: derived
  /TSS/BatchTestSamples/EditBatchData:
    put:
      tags:
      - TSS - QC Data
      summary: Update a set of batch test samples and strength readings
      description: 'Sample request:


        PUT /TSS/BatchTestSamples/EditBatchData

        {

        "plantId": 1,

        "divisionId": 1,

        "isMetric": true,

        "batchTestSampleIds": [100, 124],

        "batchTestSamples":

        [

        {

        "ticketId": "5",

        "mixCode": "GK42",

        "productionDate": "2021-03-01",

        "isCO2Design": true,

        "testCategory": "DosageRamp",

        "testingCondition": false,

        "curingCondition": true,

        "weatherCondition": "Windy",

        "loadSize": 4.5,

        "batchIngredients":

        [

        {

        "amount": 321.56,

        "materialId": 1,

        "unit": "Kg"

        },

        {

        "amount": 24,

        "materialId": 2,

        "unit": "OzPerYd3"

        }

        ],

        "batchStrengthReadings":

        [

        {

        "compressiveStrength": 3.94,

        "intervalDuration": 3,

        "intervalType": "Days",

        "testNumber": 1

        },

        {

        "compressiveStrength": 4.05,

        "intervalDuration": 3,

        "intervalType": "Days",

        "testNumber": 2

        },

        {

        "compressiveStrength": 20,

        "intervalDuration": 7,

        "intervalType": "Days",

        "testNumber": 1

        },

        {

        "compressiveStrength": 35,

        "intervalDuration": 28,

        "intervalType": "Days",

        "testNumber": 1

        }

        ]

        },

        {

        "ticketId": "6",

        "mixCode": "GK42",

        "productionDate": "2021-03-08",

        "isCO2Design": true,

        "testCategory": "DosageRamp",

        "testingCondition": false,

        "curingCondition": true,

        "weatherCondition": "Windy",

        "loadSize": 4.5,

        "batchIngredients": [],

        "batchStrengthReadings":

        [

        {

        "compressiveStrength": 20,

        "intervalDuration": 7,

        "intervalType": "Days",

        "testNumber": 1

        },

        {

        "compressiveStrength": 35,

        "intervalDuration": 28,

        "intervalType": "Days",

        "testNumber": 1

        }

        ]

        }

        ]

        }'
      requestBody:
        description: The batch test samples
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchDataInput'
          text/json:
            schema:
              $ref: '#/components/schemas/BatchDataInput'
          application/*+json:
            schema:
              $ref: '#/components/schemas/BatchDataInput'
      responses:
        '200':
          description: OK
      security:
      - OrcaAuth:
        - applicationId
        - roles
      - {}
      - {}
      operationId: putTSSBatchTestSamplesEditBatchData
      x-operation-id-source: derived
  /TSS/BatchTestSamples/BatchTestSamplesByIds:
    post:
      tags:
      - TSS - QC Data
      summary: Returns list of batches as specified by their IDs
      requestBody:
        description: List of BatchTestSampleIds to fetch batches for
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ByBatchTestSampleIdsArgs'
          text/json:
            schema:
              $ref: '#/components/schemas/ByBatchTestSampleIdsArgs'
          application/*+json:
            schema:
              $ref: '#/components/schemas/ByBatchTestSampleIdsArgs'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BatchTestSamplesArgs'
            application/json:
              schema:
                $ref: '#/components/schemas/BatchTestSamplesArgs'
            text/json:
              schema:
                $ref: '#/components/schemas/BatchTestSamplesArgs'
      security:
      - OrcaAuth:
        - applicationId
        - roles
      - {}
      - {}
      operationId: postTSSBatchTestSamplesBatchTestSamplesByIds
      x-operation-id-source: derived
  /TSS/BatchTestSamples/BatchTestsOverviewRowCount:
    get:
      tags:
      - TSS - QC Data
      summary: An overview of batch tests, sorted by default by timestamp
      parameters:
      - name: Limit
        in: query
        description: Limit number of responses. Used for pagination.
        schema:
          type: integer
          format: int32
      - name: Offset
        in: query
        description: Skip this many rows in the query. Used for pagination.
        schema:
          type: integer
          format: int32
      - name: SortColumn
        in: query
        description: The name of the column to sort by.
        schema:
          type: string
      - name: SortOrder
        in: query
        description: The order with which to sort the table by the sort column.
        schema:
          $ref: '#/components/schemas/SortOrder'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/BatchTestOverviewArgsTableResults'
            application/json:
              schema:
                $ref: '#/components/schemas/BatchTestOverviewArgsTableResults'
            text/json:
              schema:
                $ref: '#/components/schemas/BatchTestOverviewArgsTableResults'
      security:
      - OrcaAuth:
        - applicationId
        - roles
      - {}
      - {}
      operationId: getTSSBatchTestSamplesBatchTestsOverviewRowCount
      x-operation-id-source: derived
components:
  schemas:
    BatchTestOverviewArgs:
      type: object
      properties:
        divisionId:
          type: integer
          format: int32
        divisionName:
          type:
          - string
          - 'null'
        mixCode:
          type:
          - string
          - 'null'
        mixDesignId:
          type: integer
          format: int32
        timestamp:
          type: string
          format: date-time
      additionalProperties: false
    BatchTestSampleArgs:
      type: object
      properties:
        batchTestSampleId:
          type: integer
          format: int32
        batchProperties:
          $ref: '#/components/schemas/BatchPropertiesArgs'
        strengthReadings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/StrengthReadingArgs'
        batchIngredients:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/BatchIngredientArgs'
      additionalProperties: false
    OutlierArgs:
      type: object
      properties:
        batchTestSampleId:
          type: integer
          format: int32
        outlierReason:
          type:
          - string
          - 'null'
      additionalProperties: false
    BatchTestSamplesArgs:
      type: object
      properties:
        divisionId:
          type: integer
          format: int32
        isImperial:
          type: boolean
        batchTestSamples:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/BatchTestSampleArgs'
      additionalProperties: false
    CO2DosageUnit:
      enum:
      - Litre
      - PercentOfCement
      type: string
    BatchIngredientArgs:
      type: object
      properties:
        batchIngredientId:
          type: integer
          format: int32
        quantity:
          type: number
          format: double
        materialName:
          type:
          - string
          - 'null'
        unit:
          $ref: '#/components/schemas/BatchUnit'
        type:
          $ref: '#/components/schemas/MaterialType'
        materialId:
          type:
          - integer
          - 'null'
          format: int32
        supplier:
          type:
          - string
          - 'null'
      additionalProperties: false
    BatchPropertiesArgs:
      type: object
      properties:
        ticketId:
          type:
          - string
          - 'null'
        mixCode:
          type:
          - string
          - 'null'
        isCO2Design:
          type:
          - string
          - 'null'
        plant:
          type:
          - string
          - 'null'
        productionDate:
          type: string
          format: date
        testCategory:
          $ref: '#/components/schemas/ConcreteTestCategory'
        testingCompany:
          type:
          - string
          - 'null'
        testingCondition:
          type:
          - boolean
          - 'null'
        weatherCondition:
          type:
          - string
          - 'null'
        curingConditions:
          type:
          - boolean
          - 'null'
        cementReduction:
          type:
          - number
          - 'null'
          format: double
        loadSize:
          type:
          - number
          - 'null'
          format: double
        concreteTemp:
          type:
          - number
          - 'null'
          format: double
        ambientTemp:
          type:
          - number
          - 'null'
          format: double
        airContent:
          type:
          - number
          - 'null'
          format: double
        slump:
          type:
          - number
          - 'null'
          format: double
        unitWeight:
          type:
          - number
          - 'null'
          format: double
        wcRatio:
          type:
          - number
          - 'null'
          format: double
        cO2Dosage:
          type:
          - number
          - 'null'
          format: double
        cO2DosageUnit:
          $ref: '#/components/schemas/CO2DosageUnit'
        truckNumber:
          type:
          - string
          - 'null'
        notes:
          type:
          - string
          - 'null'
        orcaOutlierReason:
          type:
          - string
          - 'null'
      additionalProperties: false
    BatchTestOverviewArgsTableResults:
      type: object
      properties:
        count:
          type: integer
          format: int32
        results:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/BatchTestOverviewArgs'
      additionalProperties: false
    SortOrder:
      enum:
      - Ascending
      - Descending
      type: string
    BatchTestSampleInput:
      type: object
      properties:
        batchTestSampleId:
          type:
          - integer
          - 'null'
          format: int32
        ticketId:
          type:
          - string
          - 'null'
        isCO2Design:
          type: boolean
        plantId:
          type:
          - integer
          - 'null'
          format: int32
        mixCode:
          type:
          - string
          - 'null'
        productionDate:
          type: string
          format: date
        testCategory:
          $ref: '#/components/schemas/ConcreteTestCategory'
        batchIngredients:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/BatchIngredientInput'
        batchStrengthReadings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/BatchStrengthReadingInput'
        wasTestedInField:
          type:
          - boolean
          - 'null'
        wasCuredInField:
          type:
          - boolean
          - 'null'
        cO2Dose:
          type:
          - number
          - 'null'
          format: double
        cO2DoseAbsolute:
          type:
          - number
          - 'null'
          format: double
        airContent:
          type:
          - number
          - 'null'
          format: double
        wcRatio:
          type:
          - number
          - 'null'
          format: double
        ambientTemp:
          type:
          - number
          - 'null'
          format: double
        cementReduction:
          type:
          - number
          - 'null'
          format: double
        concreteTemp:
          type:
          - number
          - 'null'
          format: double
        loadSize:
          type:
          - number
          - 'null'
          format: double
        slump:
          type:
          - number
          - 'null'
          format: double
        unitWeight:
          type:
          - number
          - 'null'
          format: double
        parentMixCode:
          type:
          - string
          - 'null'
        testingCompany:
          type:
          - string
          - 'null'
        truckNumber:
          type:
          - string
          - 'null'
        weatherCondition:
          type:
          - string
          - 'null'
        notes:
          type:
          - string
          - 'null'
      additionalProperties: false
    BatchIngredientInput:
      type: object
      properties:
        amount:
          type: number
          format: double
        materialId:
          type:
          - integer
          - 'null'
          format: int32
        unit:
          $ref: '#/components/schemas/BatchIngredientUnitInput'
        materialSource:
          type:
          - string
          - 'null'
        materialName:
          type:
          - string
          - 'null'
      additionalProperties: false
    BatchDataInput:
      type: object
      properties:
        divisionId:
          type: integer
          format: int32
        isMetric:
          type: boolean
        previousBatchTestSampleIds:
          type:
          - array
          - 'null'
          items:
            type: integer
            format: int32
        batchTestSamples:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/BatchTestSampleInput'
      additionalProperties: false
    BatchIngredientUnitInput:
      enum:
      - Kg
      - Lb
      - KgPerM3
      - LbPerYd3
      - L
      - Ml
      - Oz
      - Gal
      - LPerM3
      - MlPerM3
      - MlPerHundredWeight
      - OzPerYd3
      - OzPerHundredWeight
      - GalPerYd3
      type: string
    StrengthReadingIntervalType:
      enum:
      - Days
      - Hours
      type: string
    MaterialType:
      enum:
      - 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
      type: string
    BatchStrengthReadingInput:
      type: object
      properties:
        compressiveStrength:
          type: number
          format: double
        intervalDuration:
          type: integer
          format: int32
        intervalType:
          $ref: '#/components/schemas/StrengthReadingIntervalType'
        testNumber:
          type: integer
          format: int32
      additionalProperties: false
    BatchUnit:
      enum:
      - Kg
      - Litre
      - Package
      type: string
    ByBatchTestSampleIdsArgs:
      type: object
      properties:
        batchTestSampleIds:
          type:
          - array
          - 'null'
          items:
            type: integer
            format: int32
      additionalProperties: false
    StrengthReadingArgs:
      type: object
      properties:
        batchStrength:
          type: number
          format: double
        batchIntervalDay:
          type: number
          format: double
        batchIntervalHour:
          type: number
          format: double
        testNumber:
          type: integer
          format: int32
      additionalProperties: false
    ConcreteTestCategory:
      enum:
      - HistoricalData
      - FieldData
      - CommissioningTrial
      - ThreePointCurves
      - CarbonCureResearch
      - ExternalLab
      - Regulatory
      type: string
  securitySchemes:
    OrcaAuth:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://auth.carboncure.com/oauth2/authorize
          tokenUrl: https://auth.carboncure.com/oauth2/token
          scopes: {}
    MyCCAuth:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://auth.carboncure.com/oauth2/authorize
          tokenUrl: https://auth.carboncure.com/oauth2/token
          scopes: {}
    M2MAuth:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://auth.carboncure.com/oauth2/authorize
          tokenUrl: https://auth.carboncure.com/oauth2/token
          scopes: {}