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. Billed by AI tokens on the job — see
Usage billing.
ai:run
This endpoint runs an AI agent, so it's asynchronous: it returns a job you poll or stream for the result.
https://api.zenode.ai/v1/parts/discoverAI tokens202Accepted Job (type: discover)
Request
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):
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.
AI tokens are metered when you create the job. Polling, streaming, listing, and cancelling jobs
is free. Token counts appear on the job's usage when it completes — see
Usage billing.
Try it
The AI weighs the soft tradeoffs here against the hard filters below, then selects a diverse ranked set.
Defaults to active when none are selected.
Keyed by spec display name. Give values for an enum match, or a min/max for a numeric range.
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 "limit": 54}curl -X POST "https://api.zenode.ai/v1/parts/discover" \ -H "Authorization: Bearer <YOUR_API_KEY>" \ -H "Content-Type: application/json" \ -d '{ "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.", "limit": 5}'Following the job
1# 1. Start discovery2curl https://api.zenode.ai/v1/parts/discover \\3 -H "Authorization: Bearer <YOUR API KEY HERE>" -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 <YOUR API KEY HERE>"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