Overview & Purpose

output is the cross-cutting control that shapes what comes back from any scrape-capable endpoint — raw markup, a cleaned/converted version, a link list, an image, or extracted structured data. It works the same way everywhere it appears, so understanding it once means you understand it on /scrape, /batch/scrape, /crawl, and /serp. Use this page to decide which format(s) to request and how JSON extraction works — for the exact request/response field types, see each endpoint’s API reference page. Prerequisites: none beyond a valid API key — output is a plain request field, not a separate authenticated flow.

Supported formats

Request several formats at once — e.g. output: ["markdown", "links"] — and each comes back under its own key in data, computed from the same single fetch.

JSON extraction: prompt and schema

When output includes json, pline reads the rendered page and extracts structured data guided by prompt (a plain-language instruction) and/or schema (the exact shape you want back). Use one or both:
  • prompt alone — fast, loosely-structured extraction when field names don’t need to be exact.
  • schema alone — a fixed, typed shape your code can rely on without guessing keys.
  • Both together — schema pins the shape, prompt disambiguates content the schema can’t (e.g. which of several prices is the current one). This is usually the most reliable combination.

Best practices

  • only_main_content (default true) strips navigation/footers/ads from clean_html and markdown only — it has no effect on html, links, screenshot, or json.
  • screenshot and screenshot_full_page are mutually exclusive — requesting both is rejected.
  • Not every endpoint supports every format — Crawl’s per-page output has no json or screenshot_full_page; /serp enrichment only supports html/clean_html/links. Check the endpoint’s own reference page before assuming full parity with /scrape.
  • Combine formats instead of making two requests — asking for markdown and json together costs one fetch, not two.

Practical Implementation Example

Scenario: get a readable copy of an article for your own archive and a structured summary in a single request.

Error codes

Availability by endpoint