# Scrapfly Documentation

## Table of Contents

### Dashboard

- [Intro](https://scrapfly.io/docs)
- [Project](https://scrapfly.io/docs/project)
- [Account](https://scrapfly.io/docs/account)
- [Workspace & Team](https://scrapfly.io/docs/workspace-and-team)
- [Billing](https://scrapfly.io/docs/billing)

### Products

#### MCP Server

- [Getting Started](https://scrapfly.io/docs/mcp/getting-started)
- [Tools & API Spec](https://scrapfly.io/docs/mcp/tools)
- [Authentication](https://scrapfly.io/docs/mcp/authentication)
- [Examples & Use Cases](https://scrapfly.io/docs/mcp/examples)
- [FAQ](https://scrapfly.io/docs/mcp/faq)
##### Integrations

- [Overview](https://scrapfly.io/docs/mcp/integrations)
- [Claude Desktop](https://scrapfly.io/docs/mcp/integrations/claude-desktop)
- [Claude Code](https://scrapfly.io/docs/mcp/integrations/claude-code)
- [ChatGPT](https://scrapfly.io/docs/mcp/integrations/chatgpt)
- [Cursor](https://scrapfly.io/docs/mcp/integrations/cursor)
- [Cline](https://scrapfly.io/docs/mcp/integrations/cline)
- [Windsurf](https://scrapfly.io/docs/mcp/integrations/windsurf)
- [Zed](https://scrapfly.io/docs/mcp/integrations/zed)
- [Roo Code](https://scrapfly.io/docs/mcp/integrations/roo-code)
- [VS Code](https://scrapfly.io/docs/mcp/integrations/vscode)
- [LangChain](https://scrapfly.io/docs/mcp/integrations/langchain)
- [LlamaIndex](https://scrapfly.io/docs/mcp/integrations/llamaindex)
- [CrewAI](https://scrapfly.io/docs/mcp/integrations/crewai)
- [OpenAI](https://scrapfly.io/docs/mcp/integrations/openai)
- [n8n](https://scrapfly.io/docs/mcp/integrations/n8n)
- [Make](https://scrapfly.io/docs/mcp/integrations/make)
- [Zapier](https://scrapfly.io/docs/mcp/integrations/zapier)
- [Vapi AI](https://scrapfly.io/docs/mcp/integrations/vapi)
- [Agent Builder](https://scrapfly.io/docs/mcp/integrations/agent-builder)
- [Custom Client](https://scrapfly.io/docs/mcp/integrations/custom-client)


#### Web Scraping API

- [Getting Started](https://scrapfly.io/docs/scrape-api/getting-started)
- [API Specification]()
- [Monitoring](https://scrapfly.io/docs/monitoring)
- [Customize Request](https://scrapfly.io/docs/scrape-api/custom)
- [Debug](https://scrapfly.io/docs/scrape-api/debug)
- [Anti Scraping Protection](https://scrapfly.io/docs/scrape-api/anti-scraping-protection)
- [Proxy](https://scrapfly.io/docs/scrape-api/proxy)
- [Proxy Mode](https://scrapfly.io/docs/scrape-api/proxy-mode)
- [Proxy Mode - Screaming Frog](https://scrapfly.io/docs/scrape-api/proxy-mode/screaming-frog)
- [Proxy Mode - Apify](https://scrapfly.io/docs/scrape-api/proxy-mode/apify)
- [(Auto) Data Extraction](https://scrapfly.io/docs/scrape-api/extraction)
- [Javascript Rendering](https://scrapfly.io/docs/scrape-api/javascript-rendering)
- [Javascript Scenario](https://scrapfly.io/docs/scrape-api/javascript-scenario)
- [SSL](https://scrapfly.io/docs/scrape-api/ssl)
- [DNS](https://scrapfly.io/docs/scrape-api/dns)
- [Cache](https://scrapfly.io/docs/scrape-api/cache)
- [Session](https://scrapfly.io/docs/scrape-api/session)
- [Webhook](https://scrapfly.io/docs/scrape-api/webhook)
- [Screenshot](https://scrapfly.io/docs/scrape-api/screenshot)
- [Errors](https://scrapfly.io/docs/scrape-api/errors)
- [Timeout](https://scrapfly.io/docs/scrape-api/understand-timeout)
- [Throttling](https://scrapfly.io/docs/throttling)
- [Troubleshoot](https://scrapfly.io/docs/scrape-api/troubleshoot)
- [Billing](https://scrapfly.io/docs/scrape-api/billing)
- [FAQ](https://scrapfly.io/docs/scrape-api/faq)

#### Crawler API

- [Getting Started](https://scrapfly.io/docs/crawler-api/getting-started)
- [API Specification]()
- [Retrieving Results](https://scrapfly.io/docs/crawler-api/results)
- [WARC Format](https://scrapfly.io/docs/crawler-api/warc-format)
- [Data Extraction](https://scrapfly.io/docs/crawler-api/extraction-rules)
- [Webhook](https://scrapfly.io/docs/crawler-api/webhook)
- [Billing](https://scrapfly.io/docs/crawler-api/billing)
- [Errors](https://scrapfly.io/docs/crawler-api/errors)
- [Troubleshoot](https://scrapfly.io/docs/crawler-api/troubleshoot)
- [FAQ](https://scrapfly.io/docs/crawler-api/faq)

#### Screenshot API

- [Getting Started](https://scrapfly.io/docs/screenshot-api/getting-started)
- [API Specification]()
- [Accessibility Testing](https://scrapfly.io/docs/screenshot-api/accessibility)
- [Webhook](https://scrapfly.io/docs/screenshot-api/webhook)
- [Billing](https://scrapfly.io/docs/screenshot-api/billing)
- [Errors](https://scrapfly.io/docs/screenshot-api/errors)

#### Extraction API

- [Getting Started](https://scrapfly.io/docs/extraction-api/getting-started)
- [API Specification]()
- [Rules Template](https://scrapfly.io/docs/extraction-api/rules-and-template)
- [LLM Extraction](https://scrapfly.io/docs/extraction-api/llm-prompt)
- [AI Auto Extraction](https://scrapfly.io/docs/extraction-api/automatic-ai)
- [Webhook](https://scrapfly.io/docs/extraction-api/webhook)
- [Billing](https://scrapfly.io/docs/extraction-api/billing)
- [Errors](https://scrapfly.io/docs/extraction-api/errors)
- [FAQ](https://scrapfly.io/docs/extraction-api/faq)

#### Proxy Saver

- [Getting Started](https://scrapfly.io/docs/proxy-saver/getting-started)
- [Fingerprints](https://scrapfly.io/docs/proxy-saver/fingerprints)
- [Optimizations](https://scrapfly.io/docs/proxy-saver/optimizations)
- [SSL Certificates](https://scrapfly.io/docs/proxy-saver/certificates)
- [Protocols](https://scrapfly.io/docs/proxy-saver/protocols)
- [Pacfile](https://scrapfly.io/docs/proxy-saver/pacfile)
- [Secure Credentials](https://scrapfly.io/docs/proxy-saver/security)
- [Billing](https://scrapfly.io/docs/proxy-saver/billing)

#### Cloud Browser API

- [Getting Started](https://scrapfly.io/docs/cloud-browser-api/getting-started)
- [Proxy & Geo-Targeting](https://scrapfly.io/docs/cloud-browser-api/proxy)
- [Unblock API](https://scrapfly.io/docs/cloud-browser-api/unblock)
- [File Downloads](https://scrapfly.io/docs/cloud-browser-api/file-downloads)
- [Session Resume](https://scrapfly.io/docs/cloud-browser-api/session-resume)
- [Human-in-the-Loop](https://scrapfly.io/docs/cloud-browser-api/human-in-the-loop)
- [Debug Mode](https://scrapfly.io/docs/cloud-browser-api/debug-mode)
- [Bring Your Own Proxy](https://scrapfly.io/docs/cloud-browser-api/bring-your-own-proxy)
- [Browser Extensions](https://scrapfly.io/docs/cloud-browser-api/extensions)
##### Integrations

- [Puppeteer](https://scrapfly.io/docs/cloud-browser-api/puppeteer)
- [Playwright](https://scrapfly.io/docs/cloud-browser-api/playwright)
- [Selenium](https://scrapfly.io/docs/cloud-browser-api/selenium)
- [Vercel Agent Browser](https://scrapfly.io/docs/cloud-browser-api/agent-browser)
- [Browser Use](https://scrapfly.io/docs/cloud-browser-api/browser-use)
- [Stagehand](https://scrapfly.io/docs/cloud-browser-api/stagehand)

- [Billing](https://scrapfly.io/docs/cloud-browser-api/billing)
- [Errors](https://scrapfly.io/docs/cloud-browser-api/errors)


### Tools

- [Antibot Detector](https://scrapfly.io/docs/tools/antibot-detector)

### SDK

- [Golang](https://scrapfly.io/docs/sdk/golang)
- [Python](https://scrapfly.io/docs/sdk/python)
- [TypeScript](https://scrapfly.io/docs/sdk/typescript)
- [Scrapy](https://scrapfly.io/docs/sdk/scrapy)

### Integrations

- [Getting Started](https://scrapfly.io/docs/integration/getting-started)
- [LangChain](https://scrapfly.io/docs/integration/langchain)
- [LlamaIndex](https://scrapfly.io/docs/integration/llamaindex)
- [CrewAI](https://scrapfly.io/docs/integration/crewai)
- [Zapier](https://scrapfly.io/docs/integration/zapier)
- [Make](https://scrapfly.io/docs/integration/make)
- [n8n](https://scrapfly.io/docs/integration/n8n)

### Academy

- [Overview](https://scrapfly.io/academy)
- [Web Scraping Overview](https://scrapfly.io/academy/scraping-overview)
- [Tools](https://scrapfly.io/academy/tools-overview)
- [Reverse Engineering](https://scrapfly.io/academy/reverse-engineering)
- [Static Scraping](https://scrapfly.io/academy/static-scraping)
- [HTML Parsing](https://scrapfly.io/academy/html-parsing)
- [Dynamic Scraping](https://scrapfly.io/academy/dynamic-scraping)
- [Hidden API Scraping](https://scrapfly.io/academy/hidden-api-scraping)
- [Headless Browsers](https://scrapfly.io/academy/headless-browsers)
- [Hidden Web Data](https://scrapfly.io/academy/hidden-web-data)
- [JSON Parsing](https://scrapfly.io/academy/json-parsing)
- [Data Processing](https://scrapfly.io/academy/data-processing)
- [Scaling](https://scrapfly.io/academy/scaling)
- [Walkthrough Summary](https://scrapfly.io/academy/walkthrough-summary)
- [Scraper Blocking](https://scrapfly.io/academy/scraper-blocking)
- [Proxies](https://scrapfly.io/academy/proxies)

---

# AI Powered Data Extraction

 [  View as markdown ](https://scrapfly.io/?view=markdown)   Copy for LLM    Copy for LLM  [     Open in ChatGPT ](https://chatgpt.com/?hints=search&prompt=Read%20from%20https%3A%2F%2Fscrapfly.io%2Fdocs%2Fextraction-api%2Fautomatic-ai%20so%20I%20can%20ask%20questions%20about%20it.) [     Open in Claude ](https://claude.ai/new?q=Read%20from%20https%3A%2F%2Fscrapfly.io%2Fdocs%2Fextraction-api%2Fautomatic-ai%20so%20I%20can%20ask%20questions%20about%20it.) [     Open in Perplexity ](https://www.perplexity.ai/search/new?q=Read%20from%20https%3A%2F%2Fscrapfly.io%2Fdocs%2Fextraction-api%2Fautomatic-ai%20so%20I%20can%20ask%20questions%20about%20it.) 

 

 

 Scrapfly's AI-powered automatic parser effortlessly converts unstructured HTML data into predefined, structured models. Experience precise and efficient data extraction with our advanced technology. It can ingest any text format like `HTML`, `text`, `Markdown`, `json`

 Minimal API call is a `POST` request with `key` and `extraction_model` parameters:

 ```
https://api.scrapfly.io/extraction?key=&extraction_model=<model name=""></model>
```

 

   

 

 

 

 [  See Available Models ](#models) 

## Usage

1. We will use <https://web-scraping.dev/product/1> page as example and save its content to the current directory where you will run the curl command below as `product.html`
2. We will use the [product](https://scrapfly.io/docs/extraction-api/automatic-ai/models/product) model to extract product information
3. Call the extraction API  ```
    curl -X POST \
    -H "content-type: text/html" \
    "https://api.scrapfly.io/extraction?key=&url=<span class="snippet-var" data-default="https%3A%2F%2Fweb-scraping.dev%2Fproduct%2F1" data-var="target_url" title="Click to edit: URL encoded target URL">{target_url}</span>&extraction_model=product" \
    -d @<span class="snippet-var" data-default="product.html" data-var="file_name" title="Click to edit: Local HTML file">{file_name}</span>
    
    ```
    
     
    
       
    
     
    
    > If you have `jq` available on your machine, you can pretty print the output JSON by appending it to the command like `-d @product.html | jq`.
    
      Command Explanation
    - **`curl -X POST`**: 
        - `curl` is a command-line tool for transferring data with URLs.
        - `-X POST` specifies the HTTP method to be used, which is POST in this case.
    - **`-H "content-type: text/html"`**: 
        - `-H` is used to specify an HTTP header for the request.
        - `"content-type: text/html"` sets the Content-Type header to `text/html`, indicating that the data being sent is HTML.
    - **URL**: 
        - The URL of the API endpoint being accessed, including query parameters for authentication and specifying the target URL and extraction prompt.
        - [ `key`: ](https://scrapfly.io/docs/extraction-api/getting-started#api_param_key) An API key for authentication.
        - [ `url`: ](https://scrapfly.io/docs/extraction-api/getting-started#api_param_url) The URL of the web page to be scraped, URL-encoded.
        - [ `extraction_model`: ](https://scrapfly.io/docs/extraction-api/getting-started#api_param_extraction_model) The AI model to use for extraction.
    - **`-d @product.html`**: 
        - `-d` is used to specify the data to be sent in the POST request body.
        - `@product.html` indicates that the data should be read from a file named `product.html`.
 
Result:

 ```
{
    "config" : {
        ...
    },
    "context": {
        ...
    },
    "result": {
        ...
        "content": ".... html content ... too long for the example",
        "content_encoding": "utf-8",
        "content_format": "raw",
        "content_type": "text/html; charset=utf-8",
        "duration": 3.7,
        "error": null,
        "extracted_data": {
            "content_type": "application/json",
            "data": {
                "additional_property": [],
                "aggregate_rating": null,
                "brand": "ChocoDelight",
                "breadcrumbs": null,
                "canonical_url": null,
                "color": null,
                "description": "Indulge your sweet tooth with our Box of Chocolate Candy. Each box contains an assortment of rich, flavorful chocolates with a smooth, creamy filling. Choose from a variety of flavors including zesty orange and sweet cherry. Whether you're looking for the perfect gift or just want to treat yourself, our Box of Chocolate Candy is sure to satisfy.",
                "identifiers": {
                    "ean13": null,
                    "gtin14": null,
                    "gtin8": null,
                    "isbn10": null,
                    "isbn13": null,
                    "ismn": null,
                    "issn": null,
                    "mpn": null,
                    "sku": null,
                    "upc": null
                },
                "images": [],
                "main_category": "Products",
                "main_image": null,
                "name": "Box of Chocolate Candy",
                "offers": [
                    {
                        "availability": "available",
                        "currency": "$",
                        "price": 9.99,
                        "regular_price": 12.99
                    }
                ],
                "related_products": [
                    {
                        "availability": "available",
                        "description": null,
                        "images": [
                            {
                                "url": "https://web-scraping.dev/assets/products/red-potion.webp"
                            }
                        ],
                        "link": "https://web-scraping.dev/product/28",
                        "name": "Red Energy Potion",
                        "price": {
                            "amount": 4.99,
                            "currency": null,
                            "raw": "4.99"
                        }
                    },
                    {
                        "availability": "available",
                        "description": null,
                        "images": [
                            {
                                "url": "https://web-scraping.dev/assets/products/darkred-potion.webp"
                            }
                        ],
                        "link": "https://web-scraping.dev/product/2",
                        "name": "Dark Red Energy Potion",
                        "price": {
                            "amount": 4.99,
                            "currency": null,
                            "raw": "4.99"
                        }
                    },
                    {
                        "availability": "available",
                        "description": null,
                        "images": [
                            {
                                "url": "https://web-scraping.dev/assets/products/women-sandals-beige-1.webp"
                            }
                        ],
                        "link": "https://web-scraping.dev/product/8",
                        "name": "Women's High Heel Sandals",
                        "price": {
                            "amount": 59.99,
                            "currency": null,
                            "raw": "59.99"
                        }
                    },
                    {
                        "availability": "available",
                        "description": null,
                        "images": [
                            {
                                "url": "https://web-scraping.dev/assets/products/red-potion.webp"
                            }
                        ],
                        "link": "https://web-scraping.dev/product/4",
                        "name": "Red Energy Potion",
                        "price": {
                            "amount": 4.99,
                            "currency": null,
                            "raw": "4.99"
                        }
                    }
                ],
                "secondary_category": null,
                "size": null,
                "specifications": [
                    {
                        "name": "material",
                        "value": "Premium quality chocolate"
                    },
                    {
                        "name": "flavors",
                        "value": "Available in Orange and Cherry flavors"
                    },
                    {
                        "name": "sizes",
                        "value": "Available in small, medium, and large boxes"
                    },
                    {
                        "name": "brand",
                        "value": "ChocoDelight"
                    },
                    {
                        "name": "care instructions",
                        "value": "Store in a cool, dry place"
                    },
                    {
                        "name": "purpose",
                        "value": "Ideal for gifting or self-indulgence"
                    }
                ],
                "style": null,
                "url": "https://web-scraping.dev/",
                "variants": [
                    {
                        "color": "orange",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=orange-small"
                    },
                    {
                        "color": "orange",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=orange-medium"
                    },
                    {
                        "color": "orange",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=orange-large"
                    },
                    {
                        "color": "cherry",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=cherry-small"
                    },
                    {
                        "color": "cherry",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=cherry-medium"
                    },
                    {
                        "color": "cherry",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=cherry-large"
                    }
                ]
            },
            "data_quality": {
                "errors": [
                    "identifiers.sku: Input should be a valid string"
                ],
                "fulfilled": false,
                "fulfillment_percent": 45
            }
        },
        "format": "text",
        "reason": "OK",
        "request_headers": [],
        "response_headers": {
            ...
        },
        "status": "DONE",
        "status_code": 200,
        "success": true,
        "url": "https://web-scraping.dev/product/1"
    }
}
```

 

   

 

## Models

> These models have been tailored based on customer feedback and usage. If you need a specific general model, you can contact us through the support link below. In addition, if the existing models are missing some important fields you can also request them to be added. 
>  
>  [Contact us](https://scrapfly.io/docs/support)

For automatic structured data extraction, choose a model from below and the AI will try to fulfill it from the scrape web page you provide

 | Name | API name [ `&extraction_model={model-name}` ](https://scrapfly.io/docs/extraction-api/getting-started#api_param_extraction_model) |
|---|---|
| [ Article  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/article) | `article` |
| [ Event  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/event) | `event` |
| [ Food Recipe  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/food_recipe) | `food_recipe` |
| [ Hotel  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/hotel) | `hotel` |
| [ Hotel Listing  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/hotel_listing) | `hotel_listing` |
| [ Job Listing  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/job_listing) | `job_listing` |
| [ Job Posting  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/job_posting) | `job_posting` |
| [ Organization  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/organization) | `organization` |
| [ Product  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/product) | `product` |
| [ Product Listing  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/product_listing) | `product_listing` |
| [ Real Estate Property  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/real_estate_property) | `real_estate_property` |
| [ Real Estate Property Listing  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/real_estate_property_listing) | `real_estate_property_listing` |
| [ Review List  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/review_list) | `review_list` |
| [ Search Engine Results  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/search_engine_results) | `search_engine_results` |
| [ Social Media Post  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/social_media_post) | `social_media_post` |
| [ Software  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/software) | `software` |
| [ Stock  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/stock) | `stock` |
| [ Vehicle Ad  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/vehicle_ad) | `vehicle_ad` |
| [ Vehicle Ad Listing  ](https://scrapfly.io/docs/extraction-api/automatic-ai/models/vehicle_ad_listing) | `vehicle_ad_listing` |

 
## Web Scraping API

 [Curl](#player-a47b7a) [HTTP](#http-a47b7a) 

   [  ](https://scrapfly.io/login "Sign in to try from the API player") 

 

 ```
curl -G \
--request "GET" \
--url "https://api.scrapfly.io/scrape" \
--data-urlencode "tags=player,project:default" \
--data-urlencode "extraction_model=product" \
--data-urlencode "asp=true" \
--data-urlencode "render_js=true" \
--data-urlencode "auto_scroll=true" \
--data-urlencode "key=__API_KEY__" \
--data-urlencode "url=https://web-scraping.dev/product/1"
```

 

 ```
https://api.scrapfly.io/scrape?tags=player%2Cproject%3Adefault&extraction_model=product&asp=true&render_js=true&auto_scroll=true&key=&url=https%3A%2F%2Fweb-scraping.dev%2Fproduct%2F1
```

 

 

 

#### API Response

 You will retrieve the following information from the API response `result.extracted_data`

- `result.extracted_data.content_type`: Always be JSON
- `result.extracted_data.data`: Structured extracted data
- `result.extracted_data.data_quality`
    - **errors** Will give the list of data violations that do not follow the validation schema
    - **fulfilled** A boolean indicating whether the schema is fully satisfied.
    - **fulfillment\_percent** The percentage of fulfillment, where 0 indicates empty and 100 indicates perfect.
 
 ```
{
    "config" : {
        ...
    },
    "context": {
        ...
    },
    "result": {
        ...
        "content": ".... html content ... too long for the example",
        "content_encoding": "utf-8",
        "content_format": "raw",
        "content_type": "text/html; charset=utf-8",
        "duration": 3.7,
        "error": null,
        "extracted_data": {
            "content_type": "application/json",
            "data": {
                "additional_property": [],
                "aggregate_rating": null,
                "brand": "ChocoDelight",
                "breadcrumbs": null,
                "canonical_url": null,
                "color": null,
                "description": "Indulge your sweet tooth with our Box of Chocolate Candy. Each box contains an assortment of rich, flavorful chocolates with a smooth, creamy filling. Choose from a variety of flavors including zesty orange and sweet cherry. Whether you're looking for the perfect gift or just want to treat yourself, our Box of Chocolate Candy is sure to satisfy.",
                "identifiers": {
                    "ean13": null,
                    "gtin14": null,
                    "gtin8": null,
                    "isbn10": null,
                    "isbn13": null,
                    "ismn": null,
                    "issn": null,
                    "mpn": null,
                    "sku": null,
                    "upc": null
                },
                "images": [],
                "main_category": "Products",
                "main_image": null,
                "name": "Box of Chocolate Candy",
                "offers": [
                    {
                        "availability": "available",
                        "currency": "$",
                        "price": 9.99,
                        "regular_price": 12.99
                    }
                ],
                "related_products": [
                    {
                        "availability": "available",
                        "description": null,
                        "images": [
                            {
                                "url": "https://web-scraping.dev/assets/products/red-potion.webp"
                            }
                        ],
                        "link": "https://web-scraping.dev/product/28",
                        "name": "Red Energy Potion",
                        "price": {
                            "amount": 4.99,
                            "currency": null,
                            "raw": "4.99"
                        }
                    },
                    {
                        "availability": "available",
                        "description": null,
                        "images": [
                            {
                                "url": "https://web-scraping.dev/assets/products/darkred-potion.webp"
                            }
                        ],
                        "link": "https://web-scraping.dev/product/2",
                        "name": "Dark Red Energy Potion",
                        "price": {
                            "amount": 4.99,
                            "currency": null,
                            "raw": "4.99"
                        }
                    },
                    {
                        "availability": "available",
                        "description": null,
                        "images": [
                            {
                                "url": "https://web-scraping.dev/assets/products/women-sandals-beige-1.webp"
                            }
                        ],
                        "link": "https://web-scraping.dev/product/8",
                        "name": "Women's High Heel Sandals",
                        "price": {
                            "amount": 59.99,
                            "currency": null,
                            "raw": "59.99"
                        }
                    },
                    {
                        "availability": "available",
                        "description": null,
                        "images": [
                            {
                                "url": "https://web-scraping.dev/assets/products/red-potion.webp"
                            }
                        ],
                        "link": "https://web-scraping.dev/product/4",
                        "name": "Red Energy Potion",
                        "price": {
                            "amount": 4.99,
                            "currency": null,
                            "raw": "4.99"
                        }
                    }
                ],
                "secondary_category": null,
                "size": null,
                "specifications": [
                    {
                        "name": "material",
                        "value": "Premium quality chocolate"
                    },
                    {
                        "name": "flavors",
                        "value": "Available in Orange and Cherry flavors"
                    },
                    {
                        "name": "sizes",
                        "value": "Available in small, medium, and large boxes"
                    },
                    {
                        "name": "brand",
                        "value": "ChocoDelight"
                    },
                    {
                        "name": "care instructions",
                        "value": "Store in a cool, dry place"
                    },
                    {
                        "name": "purpose",
                        "value": "Ideal for gifting or self-indulgence"
                    }
                ],
                "style": null,
                "url": "https://web-scraping.dev/",
                "variants": [
                    {
                        "color": "orange",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=orange-small"
                    },
                    {
                        "color": "orange",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=orange-medium"
                    },
                    {
                        "color": "orange",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=orange-large"
                    },
                    {
                        "color": "cherry",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=cherry-small"
                    },
                    {
                        "color": "cherry",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=cherry-medium"
                    },
                    {
                        "color": "cherry",
                        "offers": [
                            {
                                "availability": "available",
                                "price": {
                                    "amount": null,
                                    "currency": null,
                                    "raw": null
                                }
                            }
                        ],
                        "sku": "https://web-scraping.dev/product/1?variant=cherry-large"
                    }
                ]
            },
            "data_quality": {
                "errors": [
                    "identifiers.sku: Input should be a valid string"
                ],
                "fulfilled": false,
                "fulfillment_percent": 45
            }
        },
        "format": "text",
        "reason": "OK",
        "request_headers": [],
        "response_headers": {
            ...
        },
        "status": "DONE",
        "status_code": 200,
        "success": true,
        "url": "https://web-scraping.dev/product/1"
    }
}
```

 

   

 

> Combined with cache feature, we cache the raw data from the website, allowing you to **re-extract the data with multiple extraction passes** at a **much faster speed** and **lower cost**. This applies to the following extraction types: - [Extraction Template](https://scrapfly.io/docs/extraction-api/rules-and-template)
> - [Extraction Model](https://scrapfly.io/docs/extraction-api/automatic-ai)
> - [LLM Extraction](https://scrapfly.io/docs/extraction-api/llm-prompt)
>  
>   ##### Learn more about cache feature
> 
> - [Cache feature](https://scrapfly.io/docs/scrape-api/cache)
> - [API Specification](https://scrapfly.io/docs/scrape-api/getting-started)

## Error Handling

 All related errors are listed below. You can see full description and example of error response on the [Errors section](https://scrapfly.io/docs/extraction-api/errors).

- [ERR::EXTRACTION::CONFIG\_ERROR](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::CONFIG_ERROR "Parameters sent to the API are not valid") - Parameters sent to the API are not valid
- [ERR::EXTRACTION::CONTENT\_TYPE\_NOT\_SUPPORTED](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::CONTENT_TYPE_NOT_SUPPORTED "The content type of the response is not supported for extraction.") - The content type of the response is not supported for extraction.
- [ERR::EXTRACTION::DATA\_ERROR](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::DATA_ERROR "Extracted data is invalid or have an issue") - Extracted data is invalid or have an issue
- [ERR::EXTRACTION::INVALID\_RULE](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::INVALID_RULE "The extraction rule is invalid") - The extraction rule is invalid
- [ERR::EXTRACTION::INVALID\_TEMPLATE](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::INVALID_TEMPLATE "The template used for extraction is invalid") - The template used for extraction is invalid
- [ERR::EXTRACTION::NO\_CONTENT](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::NO_CONTENT "Target response is empty") - Target response is empty
- [ERR::EXTRACTION::OPERATION\_TIMEOUT](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::OPERATION_TIMEOUT "Extraction Operation Timeout") - Extraction Operation Timeout
- [ERR::EXTRACTION::OUT\_OF\_CAPACITY](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::OUT_OF_CAPACITY "Not able to extract more data, backend are out of capacity, retry later.") - Not able to extract more data, backend are out of capacity, retry later.
- [ERR::EXTRACTION::TEMPLATE\_NOT\_FOUND](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::TEMPLATE_NOT_FOUND "The provided template do not exist") - The provided template do not exist
- [ERR::EXTRACTION::TIMEOUT](https://scrapfly.io/docs/extraction-api/error/ERR::EXTRACTION::TIMEOUT "The extraction was too long or did not had enough time to complete") - The extraction was too long or did not had enough time to complete
 
## Pricing

 Extraction model is billed **5 API Credits**.

For more information about the pricing you can [learn more on the dedicated section](https://scrapfly.io/docs/extraction-api/billing)