Skip to main content
GET
/
web
/
fonts
JavaScript
import ContextDev from 'context.dev';

const client = new ContextDev({
  apiKey: process.env['CONTEXT_DEV_API_KEY'], // This is the default and can be omitted
});

const response = await client.web.extractFonts();

console.log(response.code);
{
  "status": "<string>",
  "domain": "<string>",
  "fonts": [
    {
      "font": "<string>",
      "uses": [
        "<string>"
      ],
      "fallbacks": [
        "<string>"
      ],
      "num_elements": 123,
      "num_words": 123,
      "percent_words": 123,
      "percent_elements": 123
    }
  ],
  "code": 123,
  "fontLinks": {}
}
5 Credits

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Query Parameters

domain
string

Domain name to extract fonts from (e.g., 'example.com', 'google.com'). The domain will be automatically normalized and validated. You must provide either 'domain' or 'directUrl', but not both.

directUrl
string<uri>

A specific URL to fetch fonts from directly, bypassing domain resolution (e.g., 'https://example.com/design-system'). When provided, fonts are extracted from this exact URL. You must provide either 'domain' or 'directUrl', but not both.

maxAgeMs
integer
default:7776000000

Maximum age in milliseconds for cached data before the API performs a hard refresh. Defaults to 3 months (7776000000 ms). Values below 1 day (86400000 ms) are clamped to 1 day; values above 1 year (31536000000 ms) are clamped to 1 year.

Required range: 86400000 <= x <= 31536000000
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).

Required range: 1000 <= x <= 300000

Response

Successful response

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

code
integer
required

HTTP status code, e.g., 200

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.