---
title: "Info"
method: GET
path: "/cpes"
tags: ["If you have the name of a specific software product and want to check if there are any Common Platform Enumeration (CPE) entries that have vulnerabilities (CVE) attached and are related to your product, then this endpoint is just for you."]
---

# Info

`GET /cpes`

This endpoint allows you to retrieve a CPE 2.3 dictionary based on a specified product.

 Parameters
 - `product` (String, Required): The name of the product for which you want to retrieve CPE dictionary.
 - `count` (Boolean, Default: false):If set to true, this returns only the count of matching CPEs. This will help a
 quick overview of how many CPEs are associated with the product name, especially if the total number exceeds the
 limit (by default the limit is 1000 but can be adjusted).
 - `skip` (Integer, Default: 0): Number of CPEs to skip in the result set.
 - `limit` (Integer, Default: 1000): The maximum number of CPEs to return in a single query. By default, up to 1000
 CPEs can be returned, but you can adjust this value based on your specific needs.

Returns
 - if `product` is specified:
     - Return: `cpes` is a list of CPEs matching the specified product name. Please refer to the `CPEs` schema for
     more details.

 Workflow retrieve all CPE dictionary based on the `count`, `skip` and `limit` parameters:
 - Setting `count` is true:
     - The `skip` and `limit` parameters are ignored for this request.
     - Return: `total` is the total number of CPEs matching the specified product name. This allows the user to
     understand the scale of CPEs associated with the product and plan data retrieval accordingly.
 - Following the retrieval of the `total` count, users can make subsequent requests to fetch the actual CPE data:
     - if `count` is false:
         - Users should use the `skip` and `limit` parameters to paginate through the results effectively. This
         approach facilitates the retrieval of all CPEs associated with the specified product in a structured manner
         - Parameters `skip` and `limit` allow for precise control over the data fetched in each request. By
         incrementing `skip` by `limit` after each request, users can sequentially access all records up to the
         `total` number.
         - Return: `cpes` is an list containing details about the CPEs associated with the specified product within
          the specified range. This data is returned in accordance with the pagination parameters
          (`skip` and `limit`) set by the user. Please refer to the `CPEs` schema for more details on the
          structure of returned data.

## Query parameters

- `product` string, required
- `count` boolean
- `skip` integer
- `limit` integer
- `format` 'json' | 'markdown'

## Response `200`

Successful Response

- union
  - CPEs
    - `cpes` string[], required — A dictionary of specific CPE version 2.3 identifiers. This dictionary serves as a valuable resource for systematically identifying and categorizing potentially affected software and hardware when assessing vulnerabilities.
  - CPEsTotal
    - `total` integer, nullable — The total count of CPE identifiers that match a given query. This provides a overview of the number of distinct products or components identified as potentially vulnerable, allowing for a broad assessment of exposure risk.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/shodan/apis/cvedb.md) · [All operations](https://skmtc.net/shodan/apis/cvedb/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/shodan/cvedb/versions/21a0c9a80453/schema)
