# Etsy Shop & Listing Scraper (`glassventures/etsy-shop-scraper`) Actor

Scrape Etsy listings, shops, and search results. Extract prices, ratings, reviews, images, tags, materials, and shipping info. Export to JSON, CSV, Excel.

- **URL**: https://apify.com/glassventures/etsy-shop-scraper.md
- **Developed by:** [Glass Ventures](https://apify.com/glassventures) (community)
- **Categories:** E-commerce
- **Stats:** 1 total users, 0 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-usage

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Etsy Shop & Listing Scraper

Scrape product listings from Etsy shops, search results, and individual listing pages. Extract prices, ratings, reviews, images, tags, materials, descriptions, and shipping info.

### What does Etsy Shop & Listing Scraper do?

Etsy Shop & Listing Scraper is a powerful data extraction tool that collects detailed product information from Etsy, the world's largest marketplace for handmade, vintage, and unique goods. It handles shop pages, search results, and individual listing URLs automatically.

The actor uses efficient HTTP-based scraping (no browser needed) to extract structured data from Etsy's server-rendered HTML and JSON-LD metadata. It handles pagination, deduplication, and anti-bot protections with session rotation and proxy support.

Whether you're researching competitors, tracking prices, or building a product database, this actor delivers clean, structured data ready for analysis.

### Use Cases

- **Market researchers** — Analyze pricing trends, popular materials, and product categories across Etsy's handmade marketplace
- **E-commerce sellers** — Monitor competitor shops, track pricing strategies, and identify bestselling items
- **Data analysts** — Build datasets of Etsy products with ratings, reviews, and engagement metrics for trend analysis
- **Developers** — Integrate Etsy product data into applications, dashboards, or recommendation engines via API

### Features

- Scrape Etsy search results by keyword
- Scrape entire Etsy shops with all listings
- Extract individual listing details from URLs
- JSON-LD extraction for clean structured data
- Automatic page type detection (search, shop, listing)
- Handles pagination across search results and shop pages
- Deduplication to avoid scraping the same listing twice
- Proxy support with automatic session rotation
- Exports to JSON, CSV, Excel, or connect via API

### How much will it cost?

| Results | Estimated Cost |
|---------|---------------|
| 100     | ~$0.50        |
| 1,000   | ~$3.00        |
| 10,000  | ~$25.00       |

| Cost Component | Per 1,000 Results |
|----------------|-------------------|
| Platform compute | ~$0.50 |
| Proxy (residential) | ~$2.50 |
| **Total** | **~$3.00** |

### How to use

1. Go to the Etsy Shop & Listing Scraper page on Apify Store
2. Click "Start" or "Try for free"
3. Enter Etsy URLs (shop pages, search URLs, or listing URLs) or search terms
4. Set the maximum number of items to scrape
5. Click "Start" and wait for the results

### Input parameters

| Parameter | Type | Description | Default |
|-----------|------|-------------|---------|
| startUrls | array | Etsy URLs to scrape (shops, listings, search pages) | - |
| searchTerms | array | Search queries to run on Etsy | - |
| maxItems | number | Max results to return (0 = unlimited) | 100 |
| maxConcurrency | number | Parallel requests (lower = less blocking) | 10 |
| debugMode | boolean | Enable verbose logging | false |
| proxyConfig | object | Proxy settings (residential recommended) | Apify Proxy |

### Output

The actor produces a dataset with the following fields:

```json
{
    "url": "https://www.etsy.com/listing/123456789/handmade-silver-ring",
    "listingId": "123456789",
    "title": "Handmade Silver Ring - Sterling Silver Band",
    "price": 45.99,
    "currency": "USD",
    "originalPrice": null,
    "seller": "SilverCraftShop",
    "shopUrl": "https://www.etsy.com/shop/SilverCraftShop",
    "rating": 4.8,
    "reviewCount": 1523,
    "images": [
        "https://i.etsystatic.com/12345/il_fullxfull.jpg"
    ],
    "tags": ["silver ring", "handmade jewelry", "sterling silver"],
    "materials": ["Sterling silver", "925 silver"],
    "description": "Beautiful handmade sterling silver ring...",
    "shippingInfo": "Free shipping",
    "favoritesCount": 2847,
    "category": "Jewelry > Rings > Bands",
    "isAd": false,
    "scrapedAt": "2026-04-23T10:30:00.000Z"
}
````

| Field | Type | Description |
|-------|------|-------------|
| url | string | Listing page URL |
| listingId | string | Etsy listing ID |
| title | string | Product title |
| price | number | Current price |
| currency | string | Currency code (USD, EUR, GBP, etc.) |
| originalPrice | number | Original price before discount |
| seller | string | Shop/seller name |
| shopUrl | string | Seller's shop URL |
| rating | number | Average star rating (1-5) |
| reviewCount | number | Total number of reviews |
| images | array | Product image URLs |
| tags | array | Listing tags/keywords |
| materials | array | Materials used in the product |
| description | string | Full product description |
| shippingInfo | string | Shipping details |
| favoritesCount | number | Number of users who favorited |
| category | string | Product category breadcrumb |
| isAd | boolean | Whether listing was a promoted result |
| scrapedAt | string | ISO 8601 scrape timestamp |

### Integrations

Connect Etsy Shop & Listing Scraper with other tools:

- **Apify API** — REST API for programmatic access
- **Webhooks** — get notified when a run finishes
- **Zapier / Make** — connect to 5,000+ apps
- **Google Sheets** — export directly to spreadsheets

#### API Example (Node.js)

```javascript
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('YOUR_USERNAME/etsy-shop-scraper').call({
    startUrls: [{ url: 'https://www.etsy.com/search?q=handmade+jewelry' }],
    maxItems: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
```

#### API Example (Python)

```python
from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('YOUR_USERNAME/etsy-shop-scraper').call(run_input={
    'startUrls': [{'url': 'https://www.etsy.com/search?q=handmade+jewelry'}],
    'maxItems': 100,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
```

#### API Example (cURL)

```bash
curl "https://api.apify.com/v2/acts/YOUR_USERNAME~etsy-shop-scraper/runs" \
  -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{"startUrls": [{"url": "https://www.etsy.com/search?q=handmade+jewelry"}], "maxItems": 100}'
```

### Tips and tricks

- Start with a small `maxItems` (10-20) to test before running large scrapes
- Use residential proxies if you encounter blocking — Etsy has moderate anti-bot protections
- Lower `maxConcurrency` to 3-5 if you experience rate limiting
- Shop URLs and search URLs automatically paginate to collect all listings
- Individual listing URLs are scraped directly without pagination

### FAQ

**Q: Does this actor require login credentials?**
A: No. The actor scrapes publicly available Etsy listings without authentication.

**Q: How fast is the scraping?**
A: Approximately 50-150 listings per minute depending on proxy type and concurrency settings.

**Q: What should I do if I get blocked?**
A: Switch to residential proxies in the Proxy Configuration settings and reduce maxConcurrency to 3-5.

**Q: Can I scrape an entire Etsy shop?**
A: Yes. Provide the shop URL (e.g., https://www.etsy.com/shop/ShopName) and the actor will paginate through all listings.

**Q: What URL formats are supported?**
A: Shop pages (etsy.com/shop/Name), listing pages (etsy.com/listing/123456), and search pages (etsy.com/search?q=query).

### Is it legal to scrape Etsy?

Web scraping of publicly available data is generally legal based on precedents like the LinkedIn v. HiQ Labs case. This actor only accesses publicly available data. Always review and respect the target site's Terms of Service and robots.txt. For more information, see [Apify's blog on web scraping legality](https://blog.apify.com/is-web-scraping-legal/).

### Limitations

- Only scrapes publicly visible listings (no private or draft listings)
- Some fields may be null if Etsy changes their page structure
- Rate limiting may slow scraping at high concurrency
- Etsy may serve different content based on geographic location and proxy IP

### Changelog

- **v0.1** (2026-04-23) — Initial release

# Actor input Schema

## `startUrls` (type: `array`):

List of Etsy URLs to scrape. Supports shop pages (etsy.com/shop/ShopName), listing pages (etsy.com/listing/123456), and search URLs (etsy.com/search?q=...).

## `searchTerms` (type: `array`):

Search queries to run on Etsy. The actor will search for each term and scrape listing details from the results.

## `maxItems` (type: `integer`):

Maximum number of listing items to scrape. Use 0 or leave empty for unlimited.

## `maxConcurrency` (type: `integer`):

Maximum number of pages processed in parallel. Lower values reduce chance of blocking.

## `debugMode` (type: `boolean`):

Enables verbose logging for troubleshooting.

## `extendOutputFunction` (type: `string`):

A JavaScript function to customize each output item. Receives { data, $, request }.

## `proxyConfig` (type: `object`):

Select proxies to be used. Residential proxies are recommended for Etsy to avoid blocking.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.etsy.com/search?q=handmade+jewelry"
    }
  ],
  "searchTerms": [
    "handmade candles"
  ],
  "maxItems": 100,
  "maxConcurrency": 10,
  "debugMode": false,
  "extendOutputFunction": "async ({ data, $ }) => {\n    return data;\n}",
  "proxyConfig": {
    "useApifyProxy": true
  }
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://www.etsy.com/search?q=handmade+jewelry"
        }
    ],
    "searchTerms": [
        "handmade candles"
    ],
    "extendOutputFunction": async ({ data, $ }) => {
        return data;
    },
    "proxyConfig": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("glassventures/etsy-shop-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrls": [{ "url": "https://www.etsy.com/search?q=handmade+jewelry" }],
    "searchTerms": ["handmade candles"],
    "extendOutputFunction": """async ({ data, $ }) => {
    return data;
}""",
    "proxyConfig": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("glassventures/etsy-shop-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://www.etsy.com/search?q=handmade+jewelry"
    }
  ],
  "searchTerms": [
    "handmade candles"
  ],
  "extendOutputFunction": "async ({ data, $ }) => {\\n    return data;\\n}",
  "proxyConfig": {
    "useApifyProxy": true
  }
}' |
apify call glassventures/etsy-shop-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=glassventures/etsy-shop-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Etsy Shop & Listing Scraper",
        "description": "Scrape Etsy listings, shops, and search results. Extract prices, ratings, reviews, images, tags, materials, and shipping info. Export to JSON, CSV, Excel.",
        "version": "0.1",
        "x-build-id": "d5SjNihMBmewkenaX"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/glassventures~etsy-shop-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-glassventures-etsy-shop-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/glassventures~etsy-shop-scraper/runs": {
            "post": {
                "operationId": "runs-sync-glassventures-etsy-shop-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/glassventures~etsy-shop-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-glassventures-etsy-shop-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "startUrls": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "List of Etsy URLs to scrape. Supports shop pages (etsy.com/shop/ShopName), listing pages (etsy.com/listing/123456), and search URLs (etsy.com/search?q=...).",
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "searchTerms": {
                        "title": "Search Terms",
                        "type": "array",
                        "description": "Search queries to run on Etsy. The actor will search for each term and scrape listing details from the results.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum number of listing items to scrape. Use 0 or leave empty for unlimited.",
                        "default": 100
                    },
                    "maxConcurrency": {
                        "title": "Max Concurrency",
                        "minimum": 1,
                        "maximum": 50,
                        "type": "integer",
                        "description": "Maximum number of pages processed in parallel. Lower values reduce chance of blocking.",
                        "default": 10
                    },
                    "debugMode": {
                        "title": "Debug Mode",
                        "type": "boolean",
                        "description": "Enables verbose logging for troubleshooting.",
                        "default": false
                    },
                    "extendOutputFunction": {
                        "title": "Extend Output Function",
                        "type": "string",
                        "description": "A JavaScript function to customize each output item. Receives { data, $, request }."
                    },
                    "proxyConfig": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Select proxies to be used. Residential proxies are recommended for Etsy to avoid blocking."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
