ZenodeZenode
Reference

PartFilters

Shared search filters

The shared filter object used by catalog search and its facets. Every field is optional.

JSON
1{
2 "manufacturers": [
3 "texas-instruments-inc"
4 ],
5 "categories": [
6 "amplifiers/operational-amplifiers"
7 ],
8 "exclude_categories": [],
9 "status": [
10 "active"
11 ],
12 "price": {
13 "max": 1,
14 "currency": "USD",
15 "in_stock": true,
16 "min_quantity": 100
17 },
18 "specs": {
19 "Supply Voltage": {
20 "gte": 3,
21 "lte": 5,
22 "unit": "V"
23 },
24 "Mounting Type": [
25 "Surface Mount"
26 ]
27 }
28}
FieldTypeNotes
manufacturersstring[]Manufacturer slugs (OR within the list)
categoriesstring[]Category path slugs to include — subtree-inclusive (OR)
exclude_categoriesstring[]Category path slugs to exclude (subtree-inclusive)
statusPartStatus[]Lifecycle statuses to include; defaults to ["active"]
priceobject | null{ min, max, currency, distributors, in_stock, min_quantity }
specsobjectSpec filters keyed by display name — see below

Each entry in specs is one of:

  • a list of allowed values — ["Surface Mount"] (enum match, OR)
  • a numeric range{ "gte": 3, "lte": 5, "unit": "V" } (also gt, lt)
  • a compound{ "$and": [...] }, { "$or": [...] }, or { "$not": [...] }

Spec keys are the spec display names and are intentionally not stable identifiers — Zenode refines them as the database improves. Read them live (the search facets endpoint lists what's available); don't cache them as IDs.

Used by: Part Catalog search and AI discovery.