POST /api/notebookcheck/processors/search
Price: 20 credits
Search the processor benchmark database by segment, cores, threads, TDP, age and free text
Reach for this to compare processors on measured scores rather than on datasheet numbers: every result carries the site's own performance rating plus the score of each benchmark suite the chip has been run through. Ordering is by performance rating, best first, unless `sort_by` is set, so a bare call with a small `count` answers 'what are the fastest chips in this segment'. `min_cores`, `min_threads` and the TDP bounds are lower or upper bounds, not exact matches. Feed `page_id` to notebookcheck/processors for the full specification; a small minority of rows have no page of their own and leave it empty.
access-token string requiredtimeout integer — Max scrapping execution timeout (in seconds) (default: 300; min: 20; max: 1500)query string nullable — Free text matched against manufacturer, model, series and codename (examples: "Ryzen 9", "Snapdragon"; minLength: 1)match_all_words boolean — Require every word of `query` to match; set false to match any of them (default: true)segment string — Device class the processor is built for (default: "all"; one of: "all", "laptop", "desktop", "smartphone_and_tablet", "laptop_and_desktop")instruction_set string nullable — Instruction set architecture of the processor (one of: "x86", "arm")min_cores integer nullable — Keep processors with at least this many cores (min: 1)min_threads integer nullable — Keep processors with at least this many threads (min: 1)min_tdp_watt integer nullable — Keep processors rated at least this TDP (min: 1)max_tdp_watt integer nullable — Keep processors rated at most this TDP (min: 1)announced_months_ago integer nullable — Keep processors announced at least this many months ago (min: 1)benchmarked_only boolean — Keep only processors that carry at least one measured benchmark score (default: false)on_sale_only boolean — Keep only processors the site still lists as available rather than archived (default: false)sort_by string nullable — Order the result by this attribute instead of by performance rating (one of: "name", "codename", "cores", "threads", "clock", "turbo_clock", "tdp", "tdp_turbo", "l2_cache", "l3_cache")count integer required — Max number of results (min: 1)@type string (default: "NotebookcheckProcessorListing")item_id string requiredname string requiredpage_id string nullableurl string nullableposition integer nullablecodename string nullableseries string nullablel2_cache string nullablel3_cache string nullabletdp_watt number nullabletdp_turbo_watt number nullableclock_mhz number nullableturbo_clock_mhz number nullablecores integer nullablethreads integer nullableprocess_nm number nullableinstruction_set string nullableis_64_bit boolean nullableai_npu_tops_int8 number nullableai_chip_tops_int8 number nullablegraphics_card string nullableperformance_rating number nullableperformance_percent number nullablebenchmarks array (default: [])@type string (default: "NotebookcheckBenchmark")name string requiredvalue number nullablesample_count integer nullable422 — The request body did not validate Check the fields against this schema. A URN with the wrong prefix is the most common cause.408 — The request ran past its time limit Raise `timeout` in the request body, up to the maximum this endpoint documents. Lowering `count` or turning off the `with_*` flags also helps, because less work finishes sooner.412 — The entity was not found, or a precondition failed Retrying will not help: either the entity does not exist, or the input points at a different one.429 — Too many requests: a rate limit or a usage window is exhausted When the response carries an X-Retry-After header, wait that many seconds and retry: the same number is in the body as `detail.retry_after`, and the limit clears once that window passes. The message in the body names the limit that was hit.500 — Something broke on our side Retrying will not help. If it keeps happening, send us the X-Request-ID from the response headers.529 — Rate limit reached, or the endpoint is overloaded Wait at least 30 seconds, then retry.X-Error — Error message text (present only on error)X-Request-ID — Unique request identifierX-Execution-Time — Execution time in secondsX-Result-Count — How many records the body carries. 0 means an empty result, which is a normal answer and not by itself an error. A non-zero count can come back together with X-Error when the failure happened partway through — read this header and X-Error independently.X-Total-Available-Results — How many records exist for this query, when the endpoint can say. On a `dry_run` request this is the answer and the body is empty. It saturates: the endpoint's documented maximum means 'at least that many', any smaller number is exact.X-Warning — Present when the request body carried keys this endpoint does not document. They were ignored, so any filter you meant to apply through them did not apply. Check the spelling against this schema and retry.X-Retry-After — Seconds to wait before retrying. Present only on 429.