AI part discovery
AI-driven part discovery
Describe what you need and let Zenode's AI return the best parts to choose from. Combine hard
constraints (filters) with a soft, natural-language need (requirements) — the AI honors the
constraints and weighs the tradeoffs in your description.
ai:run
This endpoint runs an AI agent, so it's asynchronous: it returns a job you poll or stream for the result.
POST
https://api.zenode.ai/v1/parts/discover202Accepted Job (type: discover)
Request
JSON
1{2 "requirements": "Low-power 6-axis IMU for a wrist wearable. I2C, smallest package possible, needs a built-in step counter. Cost-sensitive at 10k volume.",3 "filters": {4 "categories": [5 "sensors/motion-sensors/imus"6 ],7 "status": [8 "active"9 ],10 "specs": {11 "Supply Voltage": {12 "lte": 3.6,13 "unit": "V"14 }15 }16 },17 "limit": 518}| Parameter | Type | Required | Description |
|---|---|---|---|
requirements | string | Required | Natural-language description of the need; the AI reasons over soft tradeoffs |
filters | PartFilters | Optional | Hard must-have constraints |
limit | int | Optional | Number of picks to return, default 5, max 10 |
Result
The job's result is a DiscoverResult (when type is discover):
JSON
1{2"summary": "All three are active, sub-3.6 V 6-axis IMUs with on-chip step counting in 2.5×3 mm packages. The LSM6DSO wins on price at 10k; the BMI270 has the lowest sleep current.",3"results": [4 {5 "rank": 1,6 "part": { /* PartDetail — see Objects */ },7 "fit_rationale": "Lowest sleep current (3 µA) with a hardware step counter; I2C/SPI; 2.5×3 mm LGA. Best fit for always-on wrist wear."8 }9]10}summary is an overall narrative comparing the picks; results is a list of
DiscoverPick, ranked best-first up to limit. Each pick pairs
a full PartDetail with a fit_rationale.
Following the job
cURL Example
1# 1. Start discovery2curl https://api.zenode.ai/v1/parts/discover \3-H "Authorization: Bearer zk_live_..." -H "Content-Type: application/json" \4-d '{ "requirements": "...", "limit": 5 }'5# → 202 { "job_id": "job_8f3a...", "status": "queued", ... }67# 2. Poll until completed (or stream — see the Jobs page)8curl https://api.zenode.ai/v1/jobs/job_8f3a... \9-H "Authorization: Bearer zk_live_..."See Async AI jobs for polling, streaming, and usage reporting.
Next
- AI deep dive — ask questions about a specific part
- Part Catalog search — deterministic filtering without the AI