---
title: "POST /meta-scraping"
method: POST
path: "/meta-scraping"
tags: ["metascrape"]
---

# POST /meta-scraping

`POST /meta-scraping`

Scrape a webpage meta with custom options

## Request body

- MetaScrapeDto
  - `url` string, required — Target URL
  - `device` 'desktop' | 'mobile' — Device type to emulate. Defaults to desktop.
  - `blockAds` boolean — Whether to block ads
  - `renderJS` boolean — Whether to render JavaScript
  - `proxyCountry` string — Proxy country code to route the request
  - `format` 'markdown' | 'json' — Format of the scraped result. Defaults to html.
  - `fileOutput` boolean — Whether to get response in file format

## Response `200`

Successfully scraped webpage meta

- MetaScrapeResponseDto
  - `timestamp` number, required — Timestamp of the request in milliseconds
  - `apiStatus` 'success' | 'failure', required — API status message
  - `apiCode` number, required — API status code
  - `meta` MetaScrapeMetaDto, required
    - `url` string, required — The target URL that was scraped
    - `device` 'desktop' | 'mobile', required — Device type used
    - `format` 'markdown' | 'json', required — Output format of the result
    - `fileOutput` boolean, required — Whether to get response in file format
    - `blockAds` boolean, required — Whether ads were blocked
    - `renderJS` boolean, required — Whether JavaScript was rendered
    - `proxyCountry` string — Proxy country used, if any
    - `test` TestMetaDto, required
      - `id` string, required — Unique test identifier
  - `data` union, required — Scraped data (URL or inline content depending on output)
    - string
    - object

## Other responses

- `400` — Bad request (invalid parameters)
- `500` — Internal server error

---

[API](https://skmtc.net/geekflare/apis/geekflare-api.md) · [All operations](https://skmtc.net/geekflare/apis/geekflare-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/geekflare/geekflare-api/versions/936993afc936/schema)
