Skip to main content
Nimble Web Search Agents (WSA) are ready-to-use extraction agents for popular websites like Amazon, Google, LinkedIn, and hundreds more. No CSS selectors or scraping expertise required - just provide the agent name and parameters, and get structured data instantly.

Quick Start

Example Request

from nimble_python import Nimble

nimble = Nimble(api_key="YOUR-API-KEY")

result = nimble.agent(
    agent="amazon_pdp",
    params={
        "asin": "B0DLKFK6LR",
        "zip_code": "90210"
    }
)

print(f"Product: {result['data']['parsing']['product_title']}")
print(f"Price: ${result['data']['parsing']['web_price']}")

Example Response

{
  "url": "https://www.amazon.com/dp/B08N5WRWNW",
  "task_id": "b1fa7943-cba5-4ec2-a88c-4d2d6799c794",
  "status": "success",
  "data": {
    "html": "...",
    "parsing": {
      "asin": "B08N5WRWNW",
      "product_title": "Apple AirPods Pro (2nd Generation)",
      "brand": "Apple",
      "web_price": 249.00,
      "list_price": 279.00,
      "average_of_reviews": 4.7,
      "number_of_reviews": 125432,
      "availability": true
    }
  },
  "status_code": 200
}

How it works

1

Select an agent and provide inputs

Choose an agent by name (e.g., amazon_pdp, google_search) and pass the required parameters like product ID, search query, or URL
2

Nimble handles everything

The agent fetches the page, handles anti-bot protection, and extracts data using battle-tested selectors maintained by Nimble
3

Receive structured data

Get clean, normalized JSON with consistent field names - ready to use in your application immediately

Two types of agents

Public Search Agent


Maintained by Nimble - Gallery of pre-built agents for popular websites.

Battle-tested, auto-healing, and updated 24/7 when sites change. Browse the Gallery.

Custom Search Agent


Created by you - Build agents for any website using the Agentic Studio.

No coding required - just describe what you need in natural language.

Parameters

Supported input parameters:
agent
string
required
The name of the pre-built agent to use. Each agent is designed for a specific platform or data type.Popular agents:
  • amazon_pdp - Amazon product pages
  • amazon_serp - Amazon search results
  • google_search - Google search results
  • google_maps_search - Google Maps locations
  • walmart_pdp - Walmart products
  • chatgpt - ChatGPT prompt results
  • perplexity - Perplexity prompt results
Browse all agents →
params
object
required
Agent-specific parameters that tell the agent what data to fetch. Each agent has different requirements.Common param types:
  • Product IDs (ASINs, SKUs)
  • Search queries
  • URLs or usernames
  • Location information (country, zip code)
  • Page numbers for pagination
Example:
{
  "asin": "B08N5WRWNW",
  "country": "US",
  "zip_code": "90210"
}
localization
boolean
default:"false"
Enable location-based pricing and availability. When enabled, pass zip_code or store_id in params.Only available for agents that support localization (check agent details).Example:
{
  "agent": "amazon_pdp",
  "localization": true,
  "params": {
    "asin": "B08N5WRWNW",
    "zip_code": "90210"
  }
}
Each agent has unique parameter requirements. Check the Agent Gallery for exact parameters for each agent.

Usage

E-commerce product extraction

Extract product data from Amazon, Walmart, and other retailers:
from nimble_python import Nimble

nimble = Nimble(api_key="YOUR-API-KEY")

# Amazon product
result = nimble.agent(
    agent="amazon_pdp",
    params={
        "asin": "B08N5WRWNW",
        "country": "US"
    }
)

print(f"Product: {result['data']['parsing']['product_title']}")
print(f"Price: ${result['data']['parsing']['web_price']}")
print(f"Rating: {result['data']['parsing']['average_of_reviews']}")

Search results extraction

Get search results from Google, Amazon, and other platforms:
from nimble_python import Nimble

nimble = Nimble(api_key="YOUR-API-KEY")

# Amazon search
result = nimble.agent(
    agent="amazon_serp",
    params={
        "query": "wireless headphones",
        "country": "US"
    }
)

print(f"Found {len(result['data']['parsing'])} products")
for product in result['data']['parsing']:
    print(f"- {product['product_name']}: ${product['price']}")

Google Maps extraction

Find businesses and locations:
from nimble_python import Nimble

nimble = Nimble(api_key="YOUR-API-KEY")

result = nimble.agent(
    agent="google_maps_search",
    params={
        "query": "coffee shops near Times Square"
    }
)

for place in result['data']['parsing']['entities']['SearchResult']:
    print(f"- {place['title']} ({place['rating']} stars)")

LLM platform extraction

Get responses from AI platforms like ChatGPT and Perplexity:
from nimble_python import Nimble

nimble = Nimble(api_key="YOUR-API-KEY")

result = nimble.agent(
    agent="chatgpt",
    params={
        "prompt": "What are the best practices for web scraping?"
    }
)

print(result['data']['parsing']['response'])

Localized extraction

Get location-specific pricing and availability:
from nimble_python import Nimble

nimble = Nimble(api_key="YOUR-API-KEY")

# Get New York pricing
result = nimble.agent(
    agent="amazon_pdp",
    localization=True,
    params={
        "asin": "B08N5WRWNW",
        "zip_code": "10001"
    }
)

print(f"Price in NYC: ${result['data']['parsing']['web_price']}")

Async extraction

Run agent extractions asynchronously for batch processing:
from nimble_python import Nimble
import time

nimble = Nimble(api_key="YOUR-API-KEY")

# Submit async extraction
response = nimble.agent_async(
    agent="amazon_pdp",
    params={"asin": "B08N5WRWNW"}
)

task_id = response['task']['id']
print(f"Task created: {task_id}")

# Poll for completion
while True:
    status = nimble.get_task_status(task_id)
    if status['state'] == 'completed':
        results = nimble.get_task_results(task_id)
        print(f"Product: {results['data']['parsing']['product_title']}")
        break
    elif status['state'] == 'failed':
        print(f"Task failed: {status.get('error')}")
        break
    time.sleep(5)
Async mode supports webhooks and cloud storage. See the Agent Usage Guide for batch processing and advanced async options.
Browse pre-built agents maintained by Nimble for popular platforms:

Explore Full Gallery

Browse all agents with interactive documentation and live testing

E-commerce

AgentPlatformDescription
amazon_pdpAmazonProduct details, pricing, reviews
amazon_serpAmazonSearch results with products
walmart_pdpWalmartProduct details and pricing
walmart_searchWalmartSearch results
target_pdpTargetProduct details
best_buy_pdpBest BuyProduct details

Search Engines

AgentPlatformDescription
google_searchGoogleSearch results with snippets
google_maps_searchGoogle MapsBusiness listings and locations
google_search_aioGoogleAI Overview results

LLM Platforms

AgentPlatformDescription
chatgptChatGPTPrompt responses
perplexityPerplexitySearch + AI responses
geminiGoogle GeminiPrompt responses
grokGrokPrompt responses

Social Media

AgentPlatformDescription
tiktok_accountTikTokAccount profiles and videos
facebook_pageFacebookPage information
youtube_shortsYouTubeShort-form videos

Create Custom Agents

Can’t find an agent for your target website? Create your own using Agentic Studio - no coding required.
1

Open Agentic Studio

Go to the Agentic Studio in Nimble Platform
2

Provide URL and describe your needs

Enter the website URL and describe what data you need in plain English:“Extract product name, price, rating, and all review comments”
3

AI creates your agent

Our AI analyzes the page and builds an extraction agent automatically - no CSS selectors needed
4

Test and refine

Preview extracted data and refine your description if needed
5

Use via API

Your custom agent is available via the same Agent API with your chosen name

Custom agent example

from nimble_python import Nimble

nimble = Nimble(api_key="YOUR-API-KEY")

# Use your custom agent just like a public one
result = nimble.agent(
    agent="my_custom_store_pdp",  # Your custom agent name
    params={
        "url": "https://example-store.com/products/widget-pro"
    }
)

print(f"Product: {result['data']['parsing']['product_name']}")
print(f"Price: ${result['data']['parsing']['price']}")
Custom agents are private to your account and not maintained by Nimble. You’re responsible for updating them if the target site changes. For popular sites, always prefer public agents which are maintained by Nimble 24/7.

Response Fields

FieldTypeDescription
urlstringThe URL that was extracted
task_idstringUnique identifier for the request
statusstringsuccess or failed
data.htmlstringRaw HTML content
data.parsingobjectStructured extracted data
status_codenumberHTTP status code from target

Use cases

Price Monitoring

Track prices across Amazon, Walmart, and other retailers with consistent data formats

Product Research

Gather comprehensive product data from major e-commerce platforms

Search Tracking

Monitor Google, Bing, and marketplace search results for SEO and visibility

Competitive Intelligence

Extract competitor data from any website using public or custom agents

Agents vs other tools

What you needUse
Data from popular sites (Amazon, Google, etc.)Public Agents - browse gallery
Data from sites not in the galleryCustom Agents - create in Studio
Data from specific URLs (expert users)Extract - full control with CSS selectors
Data from entire websiteCrawl
Search web + extract content from resultsSearch
Most users should start with Web Search Agents. Public agents cover popular sites with zero configuration. For anything else, create a custom agent in the Agentic Studio - it’s the fastest path to production-ready data extraction.

Next steps