Search documentation

Search across all documentation pages

Get API Key
Endpoints

AI deep dive

Cited AI answers about a part

Ask Zenode's AI specific questions about a part and get back formatted, cited answers. Each question is a deliverable; asking several related deliverables in one call often improves quality, because the AI researches them together. 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.

POSThttps://api.zenode.ai/v1/parts/{manufacturer}/{mpn}/deep-diveAI tokens

202Accepted Job (type: deep_dive)

The part is the (manufacturer slug, mpn_slug) path pair, as in part detail. 404Not Found not_found if the pair matches no part.

Request

JSON
1{
2 "deliverables": [
3 {
4 "key": "input_bias_current",
5 "question": "Input bias current at room temperature — is it a guaranteed max or a typical value?",
6 "response_format": {
7 "type": "number",
8 "unit": "pA",
9 "hint": "room temperature; note typ vs max"
10 }
11 },
12 {
13 "key": "rohs",
14 "question": "Is this part RoHS compliant?",
15 "response_format": {
16 "type": "enum",
17 "enum_values": [
18 "compliant",
19 "non_compliant",
20 "unknown"
21 ]
22 }
23 }
24 ],
25 "context": {
26 "operating_condition": "Vs = ±15 V"
27 }
28}
ParameterTypeRequiredDescription
deliverables
Deliverable[]RequiredOne or more questions to answer, researched together
context
object | nullOptionalOptional key/value context shared by all deliverables

Each Deliverable is { key, question, response_format }:

ParameterTypeRequiredDescription
key
stringOptionalCorrelation key echoed on the matching answer; defaults to the array index
question
stringRequiredThe question to answer about this part
response_format
ResponseFormatOptionalDesired answer shape (text, number, enum, list, JSON); default { type: markdown }

AI tokens are metered when you create the job. Polling, streaming, listing, and cancelling jobs is free. The job's usage reports the exact total of all tokens used to research the request (per-deliverable usage is not separately broken out). See Usage billing.

Result

The job's result is a DeepDiveResult (when type is deep_dive) — one answer per deliverable, in request order:

JSON
1{
2 "answers": [
3 {
4 "key": "input_bias_current",
5 "question": "Input bias current at room temperature — is it a guaranteed max or a typical value?",
6 "value": 65,
7 "value_type": "number",
8 "display": "65 pA (typ)",
9 "explanation": "The Electrical Characteristics table lists input bias current as 65 pA typical at 25°C; no guaranteed maximum is specified at room temperature.",
10 "citations": [
11 {
12 "document_name": "TL07xx … Datasheet",
13 "document_type": "Datasheet",
14 "quote": "Input bias current … 65 pA (typ), 25°C",
15 "url": "https://zenode.ai/docs/3218279084868970#p5"
16 }
17 ],
18 "status": "answered"
19 }
20 ]
21}

Each item is an Answer: the formatted value (per the requested ResponseFormat), a plain-language explanation, a status (answered / not_available / error), and supporting Citations — each linking to the Zenode page for the source. Token usage is reported on the job, not per answer.

Try it

Start a real deep dive and watch the whole async lifecycle on one screen: the 202 job, the live SSE event stream (statusprogressresult), and the final completed job with its result and token usage.

Search for the part, add your questions and their response formats, and the request JSON is built for you to copy — then run it and watch the job stream to completion.

Try itPOST · async job
Part

Picking a part sets both fields. Searching parts is scoped by the manufacturer above when set.

Deliverables
deliverable 1
deliverable 2
Context (optional, shared by all deliverables)
Request body
JSON
1{
2 "deliverables": [
3 {
4 "key": "input_bias_current",
5 "question": "Input bias current at room temperature — is it a guaranteed max or a typical value?",
6 "response_format": {
7 "type": "number",
8 "unit": "pA",
9 "hint": "room temperature; note typ vs max"
10 }
11 },
12 {
13 "key": "rohs",
14 "question": "Is this part RoHS compliant?",
15 "response_format": {
16 "type": "enum",
17 "enum_values": [
18 "compliant",
19 "non_compliant",
20 "unknown"
21 ]
22 }
23 }
24 ],
25 "context": {
26 "operating_condition": "Vs = ±15 V"
27 }
28}
Request
cURL
curl -X POST "https://api.zenode.ai/v1/parts/texas-instruments/TL072CP/deep-dive" \
-H "Authorization: Bearer <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"deliverables": [
{
"key": "input_bias_current",
"question": "Input bias current at room temperature — is it a guaranteed max or a typical value?",
"response_format": {
"type": "number",
"unit": "pA",
"hint": "room temperature; note typ vs max"
}
},
{
"key": "rohs",
"question": "Is this part RoHS compliant?",
"response_format": {
"type": "enum",
"enum_values": [
"compliant",
"non_compliant",
"unknown"
]
}
}
],
"context": {
"operating_condition": "Vs = ±15 V"
}
}'
Set a manufacturer, mpn, and at least one question.

Next