DigiKey API Portal

Product Information v4

Active 2-legged

Search 16M+ components by keyword, part number, or parametric filters. Retrieve product details, pricing tiers, media, and related items.

https://api.digikey.com/products/v4 OpenAPI spec →

Endpoints

Method Path Description
POST /search/keyword Search products by keyword or part number with optional filters
GET /search/{productNumber}/productdetails Full product detail for a specific DigiKey part number
GET /search/{productNumber}/pricing Pricing and quantity breaks
GET /search/{productNumber}/pricingbyquantity/{qty} Price at a specific quantity
GET /search/packagetypebyquantity/{productNumber} Available package types with quantities
GET /search/manufacturers List all manufacturers
GET /search/{productNumber}/media Product images and datasheet URLs
GET /search/categories Full category tree
GET /search/categories/{categoryId} Single category detail
GET /search/{productNumber}/alternatepackaging Alternate packaging options
GET /search/{productNumber}/digireelpricing DigiReel pricing
GET /search/{productNumber}/recommendedproducts Similar or complementary products
GET /search/{productNumber}/substitutions Recommended substitutes
GET /search/{productNumber}/associations Products often purchased together

POST /search/keyword

Search products using free-text keywords, part numbers, and optional filter objects.

Minimal request

{
  "Keywords": "STM32F103C8T6",
  "Limit": 10
}

Full request (all filter fields)

{
  "Keywords": "resistor",
  "Limit": 50,
  "Offset": 0,
  "FilterOptionsRequest": {
    "ManufacturerFilter": [{ "Id": "13" }],
    "CategoryFilter": [{ "Id": "52" }],
    "StatusFilter": [{ "Id": "0" }],
    "PackagingFilter": [{ "Id": "2" }],
    "MarketPlaceFilter": "ExcludeMarketPlace",
    "TariffFilter": "ExcludeTariff",
    "SeriesFilter": [{ "Id": "81248" }],
    "MinimumQuantityAvailable": 1000,
    "SearchOptions": ["InStock", "RohsCompliant"],
    "ParameterFilterRequest": {
      "CategoryFilter": { "Id": "52" },
      "ParameterFilters": [
        {
          "ParameterId": 2085,
          "FilterValues": [{ "Id": "10 kOhms" }]
        }
      ]
    }
  }
}

Filter field reference

Field Type Description
ManufacturerFilter array of {Id} Restrict to specific manufacturers
CategoryFilter array of {Id} Restrict to specific categories
StatusFilter array of {Id} Lifecycle status (0 = Active)
PackagingFilter array of {Id} Packaging type (1 = TR, 2 = CT, 6 = DigiReel)
MarketPlaceFilter string enum NoFilter, ExcludeMarketPlace, MarketPlaceOnly
TariffFilter string enum None, ExcludeTariff, TariffOnly
SeriesFilter array of {Id} Restrict to specific product series
MinimumQuantityAvailable integer Exclude parts with fewer units in stock
SearchOptions array of string Boolean filter flags (see below)
ParameterFilterRequest object Parametric (spec-based) filters

SearchOptions values

ChipOutpost, Has3DModel, HasCadModel, HasDatasheet, HasProductPhoto, InStock, NewProduct, NonRohsCompliant, NormallyStocking, RohsCompliant

Response (truncated)

From a live captured response for a 10k resistor search:

{
  "ProductsCount": 433,
  "Products": [
    {
      "DigiKeyPartNumber": "311-10.0KHRCT-ND",
      "ManufacturerProductNumber": "RC0603FR-0710KL",
      "Manufacturer": { "Id": 13, "Name": "YAGEO" },
      "Description": {
        "ProductDescription": "RES 10K OHM 1% 1/10W 0603",
        "DetailedDescription": "10 kOhms ±1% 0.1W, 1/10W Chip Resistor 0603"
      },
      "UnitPrice": 0.1,
      "QuantityAvailable": 7557063,
      "ProductUrl": "https://www.digikey.com/en/products/detail/yageo/RC0603FR-0710KL/726880",
      "ProductStatus": { "Id": 0, "Status": "Active" }
    }
  ]
}

ID discovery workflow

Filter IDs are catalog-driven. The recommended approach:

  1. Call keyword search with only Keywords.
  2. Read FilterOptions in the response (Manufacturers, TopCategories, ParametricFilters).
  3. Build FilterOptionsRequest using the returned IDs.
  4. Re-run with filters applied.

Do not hardcode manufacturer or category IDs. They can change when the catalog is updated.


GET /search/{productNumber}/productdetails

Returns the full data record for a single DigiKey part number.

Path parameter: productNumber — the DigiKey part number (e.g. 497-6063-ND)

Response (truncated)

{
  "Product": {
    "DigiKeyPartNumber": "497-6063-ND",
    "ManufacturerProductNumber": "STM32F103C8T6",
    "Manufacturer": { "Id": 497, "Name": "STMicroelectronics" },
    "Description": {
      "ProductDescription": "IC MCU 32BIT 64KB FLASH 48LQFP",
      "DetailedDescription": "ARM Cortex-M3 STM32F1 Microcontroller IC 32-Bit 72MHz 64KB FLASH"
    },
    "UnitPrice": 5.91,
    "ProductUrl": "https://www.digikey.com/en/products/detail/stmicroelectronics/STM32F103C8T6/1646338",
    "DatasheetUrl": "https://www.st.com/resource/en/datasheet/stm32f103cb.pdf",
    "PhotoUrl": "https://mm.digikey.com/Volume0/opasdata/d220001/medias/images/389/48-LQFP.jpg",
    "ProductVariations": [
      {
        "DigiKeyProductNumber": "497-6063-ND",
        "PackageType": { "Id": 17, "Name": "Tray" },
        "StandardPricing": [
          { "BreakQuantity": 1,   "UnitPrice": 5.91,    "TotalPrice": 5.91 },
          { "BreakQuantity": 10,  "UnitPrice": 4.532,   "TotalPrice": 45.32 },
          { "BreakQuantity": 25,  "UnitPrice": 4.186,   "TotalPrice": 104.65 },
          { "BreakQuantity": 100, "UnitPrice": 3.8065,  "TotalPrice": 380.65 },
          { "BreakQuantity": 250, "UnitPrice": 3.62548, "TotalPrice": 906.37 }
        ],
        "QuantityAvailableforPackageType": 4215,
        "MinimumOrderQuantity": 1
      }
    ]
  }
}

GET /search/{productNumber}/pricing

Returns all pricing tiers for a specific product number.

Path parameter: productNumber — DigiKey part number

Response

[
  { "BreakQuantity": 1,    "UnitPrice": 5.91,   "TotalPrice": 5.91 },
  { "BreakQuantity": 10,   "UnitPrice": 4.532,  "TotalPrice": 45.32 },
  { "BreakQuantity": 25,   "UnitPrice": 4.186,  "TotalPrice": 104.65 },
  { "BreakQuantity": 100,  "UnitPrice": 3.8065, "TotalPrice": 380.65 }
]

GET /search/{productNumber}/media

Returns product image and datasheet URLs.

{
  "PhotoUrl": "https://mm.digikey.com/...",
  "DatasheetUrl": "https://...",
  "ProductUrl": "https://www.digikey.com/..."
}

GET /search/manufacturers

Returns a list of all manufacturers with product counts. Use the returned Id values in ManufacturerFilter.


GET /search/categories and /search/categories/{categoryId}

Returns the full product category tree, or a single category by ID. Use returned Id values in CategoryFilter.


GET /search/{productNumber}/alternatepackaging

Returns other packaging formats (cut tape, reel, tray) for the same underlying component.


GET /search/{productNumber}/substitutions and /search/{productNumber}/recommendedproducts

Returns DigiKey-suggested replacement or similar products. Useful when a preferred part is out of stock.


GET /search/{productNumber}/associations

Returns products frequently purchased alongside this one.


GET /search/{productNumber}/digireelpricing

Returns DigiReel pricing for tape-and-reel custom orders.


Authentication

Requires a valid Authorization: Bearer <token> header. Use the 2-legged (Client Credentials) flow — no user login required.

curl "https://api.digikey.com/products/v4/search/keyword" \
  -X POST \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "X-DIGIKEY-Client-Id: YOUR_CLIENT_ID" \
  -H "Content-Type: application/json" \
  -d '{"Keywords": "capacitor 100uf", "Limit": 10}'

Models

Request and response object schemas for this API. Error models (ApiErrorResponse, DKProblemDetails) are documented on the Authentication & Concepts page.

AlternatePackagingResponse

Response model for AlternatePackaging

FieldTypeRequiredDescription
AlternatePackagingsAlternatePackaging
SearchLocaleUsedIsoSearchLocale

CategoriesResponse

Response model for Categories call.

FieldTypeRequiredDescription
ProductCountinteger (int32)Count of Products
Categoriesarray of CategoryList of Categories
SearchLocaleUsedIsoSearchLocale

CategoryResponse

Response model for a single Category call.

FieldTypeRequiredDescription
CategoryCategory
SearchLocaleUsedIsoSearchLocale

DigiReelPricing

Response for Digi-Reel Pricing Request

FieldTypeRequiredDescription
ReelingFeenumber (double)Fee per reel ordered.
UnitPricenumber (double)Price of a single unit of the product.
ExtendedPricenumber (double)The total price of the requested reels and the reeling fee.
RequestedQuantityinteger (int32)The passed in quantity of the product you are looking to create a Digi-Reel with.
SearchLocaleUsedIsoSearchLocale
AccountIdUsedinteger (int32)The AccountID we used for the transaction. It may have been entered in the X-DIGIKEY-Account-ID field or determined from the API user’s authentication request.
CustomerIdUsedinteger (int32)The CustomerID we used for the transaction.

KeywordRequest

Criteria for Keyword Requests

FieldTypeRequiredDescription
KeywordsstringA String of Keywords, up to 250 characters
Limitinteger (int32)Number of products to return between 1 and 50.
Offsetinteger (int32)The starting index of the records returned. This is used to paginate beyond RecordCount number of results.
FilterOptionsRequestFilterOptionsRequest
SortOptionsSortOptions

KeywordResponse

FieldTypeRequiredDescription
Productsarray of Product
ProductsCountinteger (int32)Total number of matching products found.
ExactMatchesarray of Product
FilterOptionsFilterOptions
SearchLocaleUsedIsoSearchLocale
AppliedParametricFiltersDtoarray of Parameter

ManufacturersResponse

List of Manufacturers and information about each manufacturer

FieldTypeRequiredDescription
Manufacturersarray of ManufacturerInfoList of Manufacturer Information

MediaResponse

Response model for Media

FieldTypeRequiredDescription
MediaLinksarray of MediaLinksList of Media Links

PackageTypeByQuantityResponse

Response from a PackageTypeByQuantity Search Service request

FieldTypeRequiredDescription
Productsarray of PackageTypeByQuantityProductList of products that matched the PackageTypeByQuantitySearchService request.
AccountIdUsedinteger (int32)The AccountID we used for the transaction. It may have been entered in the X-DIGIKEY-Account-ID field or determined from the API user’s authentication request.
CustomerIdUsedinteger (int32)The CustomerID we used for the transaction.

PricingOptionsForQuantityResponse

Pricing options for quantity response

FieldTypeRequiredDescription
RequestedProductstringThe requested product used for the API call.
RequestedQuantityinteger (int32)The RequestedQuantity we used for the API call. Note we may have lowered or increased your requested amount if it is outside allowed quantities or to provide you a better deal.
ProductUrlstringFull URL of the DigiKey page to purchase the product. This is based on your provided Locale values.
ManufacturerPartNumberstringThe manufacturer part number. Note that some manufacturer part numbers may be used by multiple manufacturers for different parts.
ManufacturerManufacturer
DescriptionDescription
SettingsUsedPriceSettingsUsed
MyPricingOptionsarray of PricingOptionsForQuantityMyPricingOptions
StandardPricingOptionsarray of PricingOptionsForQuantityStandardPricingOptions
AccountIdUsedinteger (int32)The AccountID we used for the transaction. It may have been entered in the X-DIGIKEY-Account-ID field or determined from the API user’s authentication request.
CustomerIdUsedinteger (int32)The CustomerID we used for the transaction.

ProductAssociationsResponse

Response model for ProductAssociations

FieldTypeRequiredDescription
ProductAssociationsProductAssociations
SearchLocaleUsedIsoSearchLocale

ProductDetails

Product Details Data Transfer Object

FieldTypeRequiredDescription
SearchLocaleUsedIsoSearchLocale
ProductProduct
AccountIdUsedinteger (int32)The AccountID we used for the transaction. It may have been entered in the X-DIGIKEY-Account-ID field or determined from the API user’s authentication request.
CustomerIdUsedinteger (int32)The CustomerID we used for the transaction.

ProductPricingResponse

A sub set of the product infromation

FieldTypeRequiredDescription
ProductPricingsarray of ProductPricingList of Products
ProductsCountinteger (int32)Total number of matching products found.
SettingsUsedSettingsUsed
AccountIdUsedinteger (int32)The AccountID we used for the transaction. It may have been entered in the X-DIGIKEY-Account-ID field or determined from the API user’s authentication request.
CustomerIdUsedinteger (int32)The CustomerID we used for the transaction.

ProductSubstitutesResponse

Response model for ProductSubstitutes

FieldTypeRequiredDescription
ProductSubstitutesCountinteger (int32)Count of ProductSubstitutes
ProductSubstitutesarray of ProductSubstituteList of ProductSubstitutes
SearchLocaleUsedIsoSearchLocale

RecommendedProductsResponse

The recommended products returned grouped in collections.

FieldTypeRequiredDescription
Recommendationsarray of RecommendationThe list of RecommendedProductsCollections - each containing a Product and its recommendations.