---
title: Search + Product
slug: rainforestapi/search-product
docTags: 
createdAt: 2025-03-07T21:19:40.295Z
---

# Search + Product Request

`LIVE REQUESTS ONLY`

`NOT SUPPORTED FOR BATCHES`

***

Make a `type=search` request and choose how many of the top search results should have `product` requests run. Control the number of search results returned `number_of_results=` and the number of corresponding product requests `include_products_count=` to run. To build a search and/or product request, refer to  [product parameters](https://docs.trajectdata.com/rainforestapi/product-data-api/parameters/product) and [search parameters](https://docs.trajectdata.com/rainforestapi/product-data-api/parameters/search) pages

For example, to request search results for the search term "memory cards", and run product requests for the top ten search results,on  `amazon.com` , the request would be:

:::CodeblockTabs
HTTP

```none
https://api.rainforestapi.com/request?api_key=demo&type=search&amazon_domain=amazon.com&search_term=memory+cards&include_products_count=10
```
:::

**Note**: Each product request counts as +1 credit. The base search costs 1 credit, and for every result included in include\_products\_count, an additional 1 credit is charged. If you set `include_products_count = 10`, the total cost will be 1 (search) + 10 (products) = 11 credits.

***

### Use Case and Benefits

**Benefit 1: Improved API Efficiency** – The ability to make a single type=search API call and automatically fan out into type=product requests reduces the need for multiple manual API calls, streamlining data retrieval.

**Benefit 2:** **Significantly Faster Response Times** – Various optimization strategies, such as limiting the number of search results, excluding sponsored\_results, selectively retrieving only necessary fields, will improve response times

**Benefit 3:** **Flexible Data Selection** – Users can control the number of search results returned (number\_of\_results=) and the number of corresponding product requests (include\_products\_count=), optimizing the balance between speed and data completeness.

**Benefit 4:** **Parallel Processing for Maximum Speed** – The system executes product requests in parallel, ensuring that fetching product details does not create unnecessary sequential delays.

**Benefit 5:** **Customizable Field Selection for Performance Gains** – Using the fields= parameter, users can limit API responses to only the essential data, leading to additional speed improvements and reduced payload size. 

***

## Example:

A search request that returns 10 results, runs product requests for those 10 results (excluding any sponsored listings), and only retrieves specific fields in the JSON response

```none
 https://api.rainforestapi.com/request?api_key=<api_key>&type=search&amazon_domain=amazon.com&search_term=paranormal+detective&number_of_results=10&include_products_count=10&exclude_sponsored=true&fields=search_results.price,search_results.product.bestsellers_rank,search_results.product.specifications,search_results.product.publication_date
```

***

**Next Steps**
     [Search + Product Results](https://docs.trajectdata.com/rainforestapi/product-data-api/results/search_product)
