Scientific Cutting Tools API DocsScientific Cutting Tools API Docs

Query

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

Root Query

tools

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.
edpNumber Int The Electronic Data Processing number.
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.
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.
naftaClass String The NAFTA Class.
naftaCountryOfOrigin String The NAFTA Country of Origin.
naftaPreference String The NAFTA Preference.
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.
primaryGroup String The primary group this tool belongs to.
subGroup1 String The sub group this tool belongs to.

Example Query

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

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

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
      }
    ]
  }
}

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 objecs containing our data.

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