Skip to main content

OrderingQuery.products()

type OrderingQuery {
  products(address: OrderingAddressInput, manufacturer: String!, skus: [String!]!): [OrderingProduct]!
}

Input

address

OrderingAddressInput - The address associated with the order. Optional. If provided, the address must be a valid address — if it is not valid, the query will fail with an error. If the address is valid but we don’t already have a property for it, then a property will be created and assigned to the organization the calling credentials belong to. If omitted, availability will return a status of UNKNOWN and a quantity of 0.

manufacturer

string - The manufacturer of the products to search for. (example: ‘ge’, ‘msi’)

skus

string[] - List of SKUs to search for. If a product cannot be found for a given sku, the response will contain a null in the corresponding index.

Response

OrderingProduct

OrderingProduct[] - List of products matching the input skus criteria. If a product cannot be found for a given sku, the response will contain a null in the corresponding index.

OrderingProduct

type OrderingProduct {
  id: ID!
  sku: String!
  manufacturer: String!
  title: String!
  subtitle: String
  description: String
  category: String!
  subcategories: [String!]!
  color: String
  viewUrl: String!
  availability: OrderingAvailability!
  imageUrl: String!
  priceCents: Int!
  msrpPriceCents: Int
  addons: [OrderingProductAddon!]!
  dimensions: OrderingProductDimensions!
  recommendedParts: [OrderingProductPart!]!
}

id

string - SIBI identifier for the product. Unique across all products returned by the API.

sku

string - The SKU of the product. Is defined by the manufacturer or distributor.

manufacturer

string - The manufacturer of the product. This value is valid for use in the manufacturer field of all input types that accept a manufacturer.

title

string - The human readable name of the product.

subtitle

string | null - A short description of the product.

description

string | null - A brief description of the product. Will be null when not available.

category

string - The broad category this product falls into.

subcategories

string[] - Array of strings of all the specific subcategories this product falls into. May be empty and may also be 1:1 with category

color

string | null - The color of the product. Is not available for all products.

viewUrl

string - A URL to view the product in the Sibi Web UI.

availability

OrderingAvailability - The availability of the product. Returns a status of ‘UNKNOWN’ and a quantity of 0 if the address is missing.

imageUrl

string - The URL of the product’s image.

priceCents

number - The price of the product in cents.

msrpPriceCents

number | null - The Manufacturer’s Suggested Retail Price of the product in cents. Is not available for all products. Will be null when not available.

addons

OrderingProductAddon[] - An array of addons (services and/or accessories) that can be ordered with the product.

dimensions

OrderingProductDimensions - The physical dimensions of the product.

recommendedParts

OrderingProductPart[] - An array of products that can be purchased with the parent. Will include things like power cables for electric ranges or ice makers for refrigerators. Some of these parts are included with addons. For example, an electric range’s “Install” addon will generally include the power cable part.

OrderingAvailability

type OrderingAvailability {
  status: OrderingAvailabilityStatus!
  quantity: Int!
  distributionCenters: [OrderingDistributionCenterAvailability!]!
}

status

OrderingAvailabilityStatus - The availability status of the product. One of IN_STOCK, OUT_OF_STOCK, UNAVAILABLE, or UNKNOWN. The value of status reflects local availability for the address provided, or UNKNOWN if no address was given.

quantity

number - The quantity of the product that is available at the closest distribution center to the property that has the product available.

distributionCenters

OrderingDistributionCenterAvailability[] - Per-distribution-center availability breakdown. Each entry represents a distribution center that carries this product. Only populated when an address is provided. Returns an empty array when distribution center information is unavailable.

OrderingDistributionCenterAvailability

type OrderingDistributionCenterAvailability {
  status: OrderingAvailabilityStatus!
  quantity: Int!
  distributionCenter: OrderingDistributionCenter!
  distributionCenterId: ID! @deprecated(reason: "Use distributionCenter { id } instead.")
  distributionCenterLatitude: Float @deprecated(reason: "Use distributionCenter { latitude } instead.")
  distributionCenterLongitude: Float @deprecated(reason: "Use distributionCenter { longitude } instead.")
  distributionCenterAddress: OrderingAddress! @deprecated(reason: "Use distributionCenter { address } instead.")
}

status

OrderingAvailabilityStatus - The availability status of the product at this distribution center. One of IN_STOCK, OUT_OF_STOCK, UNAVAILABLE, or UNKNOWN.

quantity

number - The quantity of the product available at this distribution center.

distributionCenter

OrderingDistributionCenter - The distribution center where this product is available. Use distributionCenter { id } when calling reviewOrder or createOrder to specify a distribution center.

distributionCenterId (deprecated)

string - Deprecated. Use distributionCenter { id } instead.

distributionCenterLatitude (deprecated)

number | null - Deprecated. Use distributionCenter { latitude } instead.

distributionCenterLongitude (deprecated)

number | null - Deprecated. Use distributionCenter { longitude } instead.

distributionCenterAddress (deprecated)

OrderingAddress - Deprecated. Use distributionCenter { address } instead.

OrderingDistributionCenter

type OrderingDistributionCenter {
  id: ID!
  name: String!
  latitude: Float
  longitude: Float
  address: OrderingAddress!
  imageUrl: String
  storeNumber: String!
}

id

string - The distribution center’s unique identifier. Use this when placing orders at a specific DC.

name

string - The name of the distribution center.

latitude

number | null - The latitude of the distribution center’s location.

longitude

number | null - The longitude of the distribution center’s location.

address

OrderingAddress - The address of the distribution center.

imageUrl

string | null - The URL of the distribution center’s logo.

storeNumber

string - The store number of the distribution center. May not actually be numeric.

OrderingProductDimensions

type OrderingProductDimensions {
  length: Float
  lengthUnit: String
  width: Float
  widthUnit: String
  height: Float
  heightUnit: String
  depth: Float
  depthUnit: String
}

length

number | null - The numerical length value. Will be null if not available.

lengthUnit

string | null - The unit of measurement for length (e.g., “inch”). Will be null if not available.

width

number | null - The numerical width value. Will be null if not available.

widthUnit

string | null - The unit of measurement for width (e.g., “inch”). Will be null if not available.

height

number | null - The numerical height value. Will be null if not available.

heightUnit

string | null - The unit of measurement for height (e.g., “inch”). Will be null if not available.

depth

number | null - The numerical depth value. Will be null if not available.

depthUnit

string | null - The unit of measurement for depth (e.g., “inch”). Will be null if not available.

OrderingProductPart

type OrderingProductPart {
  sku: String!
  title: String!
  category: String!
  priceCents: Int!
}

sku

string - The SKU of the part. It is defined by the manufacturer or distributor.

title

string - The human readable name of the part.

category

string - The broad category this part falls into.

priceCents

number - The price of the part in cents.