Queries

A GraphQL schema provides a root type for each kind of operation.

tools

Retrieve data for a specific part number.

Argument Type Description
partNumber String The part number or SKU that you want to get data for.
edpNumber Int The EDP number that you want to get data for.

You should use either partNumber or edpNumber, but not both.

Fields

Field Type Description
partNumber String! The part number or SKU. Required.
edpNumber Int The Electronic Data Processing number.
alternatives Object Object of field names. Currently returns the coated or uncoated alternatives. At mimimum, partNumber needs to be requested.
description String The tool description.
retailPrice Float The current retail price.
salesUnitOfMeasurement String How this tool is sold.
shipWeight Float The weight of the tool.
shipWeightUnit String How the ship weight is measured.
coating String The type of coating.
category String The category that the tool belongs to.
subCategory String The sub category that the tool belongs to.
productType String The product type.
barcodeText String The text encoded in the barcode of this tool.
prop65Warning String California mandated Prop 65 warning.
overallLengthDesc String The overall length.
shankDiameterDesc String The shank diameter.
htsNumber String The Harmonized Tariff Schedule number.
htsPreference String The Harmonized Tariff Schedule preference.
countryOfOrigin String The country of origin.
returnPolicy String The return policy for the tool.
quantityAvailable Int The quantity that we currently have on hand.
helpDocumentationLink String The URL to the PDF for the technical info related to the tool.
catalogLink String The URL to the PDF for the catalog section related to the tool.
fullCatalogLink String The URL to the PDF for the full catalog.
image String The URL to the product image.
termsAndConditions String The URL to the Terms and Conditions.
packageWidth Float The approximate packaging width in inches.
packageHeight Float The approximate packaging height in inches.
packageLength Float The approximate packaging length in inches.
notes String Relevant notes related to the part number.
stepFileLink String The URL to the STEP file related to the tool.
dxfFileLink String The URL to the DXF file related to the tool.

Example Query

For example, we can ask for the partNumber, description, retailPrice, quantityAvailble, and alternatives for a BB62 with the following query.

{
  tools(partNumber: "BB62") {
    partNumber
    description
    retailPrice
    quantityAvailable
    alternatives {
      partNumber
    }
  }
}

Which will return the data below.

{
  "data": {
    "tools": [
      {
        "partNumber": "BB62",
        "description": "RADIAL RELIEF BORING BAR CARBIDE .060 X 1/4 (1/8 SHANK) 1-1/2 OAL",
        "retailPrice": 20.81,
        "quantityAvailable": 433,
        "alternatives": [
          {
            "partNumber": "BB62A"
          }
        ]
      }
    ]
  }
}

Multiple Queries

It is also possible to run multiple queries at the same time. To do so, you must name each query. In the example below, we are reqesting data on two different tools. Notice that each query does not have to request the same fields.

{
  first: tools(partNumber: "BB62A") {
    partNumber
    quantityAvailable
    coating
  }
  second: tools(partNumber: "SPTM040L") {
    partNumber
    quantityAvailable
  }
}

The query above will return named objects containing our data.

{
  "data": {
    "first": [
      {
        "partNumber": "BB62A",
        "quantityAvailable": 92,
        "coating": "ALTIN"
      }
    ],
    "second": [
      {
        "partNumber": "SPTM040L",
        "quantityAvailable": 223
      }
    ]
  }
}

Autocomplete a part number or EDP number.

Argument Type Description
searchText String! The text to search partNumber and edpNumber for.
limit Int The number of records to limit the result set to. Defaults to 10

Fields

Field Type Description
partNumber String! The part number or SKU. Required.
edpNumber Int The Electronic Data Processing number.
alternatives Object Object of field names. Currently returns the coated or uncoated alternatives. At mimimum, partNumber needs to be requested.
description String The tool description.
retailPrice Float The current retail price.
salesUnitOfMeasurement String How this tool is sold.
shipWeight Float The weight of the tool.
shipWeightUnit String How the ship weight is measured.
coating String The type of coating.
category String The category that the tool belongs to.
subCategory String The sub category that the tool belongs to.
productType String The product type.
barcodeText String The text encoded in the barcode of this tool.
prop65Warning String California mandated Prop 65 warning.
overallLengthDesc String The overall length.
shankDiameterDesc String The shank diameter.
htsNumber String The Harmonized Tariff Schedule number.
htsPreference String The Harmonized Tariff Schedule preference.
countryOfOrigin String The country of origin.
returnPolicy String The return policy for the tool.
quantityAvailable Int The quantity that we currently have on hand.
helpDocumentationLink String The URL to the PDF for the technical info related to the tool.
catalogLink String The URL to the PDF for the catalog section related to the tool.
fullCatalogLink String The URL to the PDF for the full catalog.
image String The URL to the product image.
termsAndConditions String The URL to the Terms and Conditions.
packageWidth Float The approximate packaging width in inches.
packageHeight Float The approximate packaging height in inches.
packageLength Float The approximate packaging length in inches.
notes String Relevant notes related to the part number.
stepFileLink String The URL to the STEP file related to the tool.
dxfFileLink String The URL to the DXF file related to the tool.

Example Query

For example, we can ask for the partNumber and coating for the top five part numbers that contain BB6 with the following query.

{
  search(searchText: "BB6", limit: 5) {
    partNumber
    coating
  }
}

Which will return the data below.

{
  "data": {
    "search": [
      {
        "partNumber": "BB61",
        "coating": "UNCOATED"
      },
      {
        "partNumber": "BB61A",
        "coating": "ALTIN"
      },
      {
        "partNumber": "BB61C",
        "coating": "TIN"
      },
      {
        "partNumber": "BB62",
        "coating": "UNCOATED"
      },
      {
        "partNumber": "BB62A",
        "coating": "ALTIN"
      }
    ]
  }
}

allTools

Retreive all of the tools that Scientific Cutting Tools sells. This query is resource intensive and should be used sparingly. Results are sorted alphabetically by partNumber. To retrieve all of the records, you will need to make multiple requests and increment the offset argument by the limit argument until no records are returned.

Argument Type Description
offset Int! The number of records to offset the results by.
limit Int! The number of records to limit the result set to. Maximum is 500

Fields

Field Type Description
partNumber String! The part number or SKU. Required.
edpNumber Int The Electronic Data Processing number.
alternatives Object Object of field names. Currently returns the coated or uncoated alternatives. At mimimum, partNumber needs to be requested.
description String The tool description.
retailPrice Float The current retail price.
salesUnitOfMeasurement String How this tool is sold.
shipWeight Float The weight of the tool.
shipWeightUnit String How the ship weight is measured.
coating String The type of coating.
category String The category that the tool belongs to.
subCategory String The sub category that the tool belongs to.
productType String The product type.
barcodeText String The text encoded in the barcode of this tool.
prop65Warning String California mandated Prop 65 warning.
overallLengthDesc String The overall length.
shankDiameterDesc String The shank diameter.
htsNumber String The Harmonized Tariff Schedule number.
htsPreference String The Harmonized Tariff Schedule preference.
countryOfOrigin String The country of origin.
returnPolicy String The return policy for the tool.
quantityAvailable Int The quantity that we currently have on hand.
helpDocumentationLink String The URL to the PDF for the technical info related to the tool.
catalogLink String The URL to the PDF for the catalog section related to the tool.
fullCatalogLink String The URL to the PDF for the full catalog.
image String The URL to the product image.
termsAndConditions String The URL to the Terms and Conditions.
packageWidth Float The approximate packaging width in inches.
packageHeight Float The approximate packaging height in inches.
packageLength Float The approximate packaging length in inches.
notes String Relevant notes related to the part number.
stepFileLink String The URL to the STEP file related to the tool.
dxfFileLink String The URL to the DXF file related to the tool.

Example Query

For example, we can ask for partNumber, description, retailPrice, and quantityAvailble of the first two tools with the following query.

{
  allTools(offset: 0, limit: 2) {
    partNumber
    description
    retailPrice
    quantityAvailable
  }
}

Which will return the data below.

{
  "data": {
    "allTools": [
      {
        "partNumber": "1179-G1000",
        "description": "BSPP THREAD (ISO1179) PORT TOOL CARBIDE TIPPED (1.0 BSPP) 4.62 OAL",
        "retailPrice": 233.66,
        "quantityAvailable": 10
      },
      {
        "partNumber": "1179-G1000A",
        "description": "BSPP THREAD (ISO1179) PORT TOOL CARBIDE TIPPED (1.0 BSPP) 4.62 OAL ALTiN COATED",
        "retailPrice": 278.01,
        "quantityAvailable": 4
      }
    ]
  }
}