---
title: "Scrape Fonts"
method: GET
path: "/web/fonts"
tags: ["Web Extraction"]
---

# Scrape Fonts

`GET /web/fonts`

Scrape font information from a website including font families, usage statistics, fallbacks, and element/word counts.

## Query parameters

- `domain` string
- `directUrl` string, uri
- `maxAgeMs` integer
- `timeoutMS` integer — Optional timeout in milliseconds for the request. If the request takes longer than this value, it will be aborted with a 408 status code. Maximum allowed value is 300000ms (5 minutes).

## Response `200`

Successful response

- object
  - `status` string, required — Status of the response, e.g., 'ok'
  - `domain` string, required — The normalized domain that was processed
  - `fonts` object[], required — Array of font usage information
    - `font` string, required — Font family name
    - `uses` string[], required — Array of CSS selectors or element types where this font is used
    - `fallbacks` string[], required — Array of fallback font families
    - `num_elements` number, required — Number of elements using this font
    - `num_words` number, required — Number of words using this font
    - `percent_words` number, required — Percentage of words using this font
    - `percent_elements` number, required — Percentage of elements using this font
  - `fontLinks` object — Font assets keyed by family name as it appears in the fonts array (non-generic names only). Clients match entries in fonts to pick a file URL from files. Omitted when no families resolve to Google or custom @font-face URLs.
  - `code` integer, required — HTTP status code, e.g., 200
  - `key_metadata` KeyMetadata — Metadata about the API key used for the request. Included in every response whenever a valid API key is provided, even when the response status is not 200.
    - `credits_consumed` integer, required — The number of credits consumed by this request.
    - `credits_remaining` integer, required — The number of credits remaining for your organization after this request.

## Other responses

- `400` — Bad request - Invalid input parameters
- `401` — Unauthorized - Invalid or missing API key
- `403` — Forbidden - Insufficient permissions or usage limit exceeded
- `408` — Request timeout
- `429` — Rate limit exceeded
- `500` — Internal server error

---

[API](https://skmtc.dev/context/apis/context-dev.md) · [All operations](https://skmtc.dev/context/apis/context-dev/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/context/context-dev/revisions/de91b92d5fb7/schema)
