## Table of Contents

- [Cache](#cache)

---

[API](https://microlink.io/docs/api/getting-started/overview)

[GUIDES](https://microlink.io/docs/guides) [MQL](https://microlink.io/docs/mql/getting-started/overview) [SDK](https://microlink.io/docs/sdk/getting-started/overview) [CARDS](https://microlink.io/docs/cards/getting-started/overview)

API GUIDES MQL SDK CARDS

Getting Started

[Overview](https://microlink.io/docs/api/getting-started/overview)

[Data fields](https://microlink.io/docs/api/getting-started/data-fields)

[CLI](https://microlink.io/docs/api/getting-started/cli)

Basics

[Authentication](https://microlink.io/docs/api/basics/authentication)

[Cache](https://microlink.io/docs/api/basics/cache)

[Compression](https://microlink.io/docs/api/basics/compression)

[Endpoint](https://microlink.io/docs/api/basics/endpoint)

[Error codes](https://microlink.io/docs/api/basics/error-codes)

[Format](https://microlink.io/docs/api/basics/format)

[Rate limit](https://microlink.io/docs/api/basics/rate-limit)

Query Parameters

[adblock](https://microlink.io/docs/api/parameters/adblock)

[animations](https://microlink.io/docs/api/parameters/animations)

[audio](https://microlink.io/docs/api/parameters/audio)

[cacheKey](https://microlink.io/docs/api/parameters/cacheKey)

[click](https://microlink.io/docs/api/parameters/click)

[colorScheme](https://microlink.io/docs/api/parameters/colorScheme)

[data](https://microlink.io/docs/api/parameters/data)

[device](https://microlink.io/docs/api/parameters/device)

[embed](https://microlink.io/docs/api/parameters/embed)

[filename](https://microlink.io/docs/api/parameters/filename)

[filter](https://microlink.io/docs/api/parameters/filter)

[force](https://microlink.io/docs/api/parameters/force)

[function](https://microlink.io/docs/api/parameters/function)

[headers](https://microlink.io/docs/api/parameters/headers)

[iframe](https://microlink.io/docs/api/parameters/iframe)

[insights](https://microlink.io/docs/api/parameters/insights)

[lighthouse](https://microlink.io/docs/api/parameters/insights/lighthouse)

[technologies](https://microlink.io/docs/api/parameters/insights/technologies)

[javascript](https://microlink.io/docs/api/parameters/javascript)

[mediaType](https://microlink.io/docs/api/parameters/mediaType)

[meta](https://microlink.io/docs/api/parameters/meta)

[modules](https://microlink.io/docs/api/parameters/modules)

[palette](https://microlink.io/docs/api/parameters/palette)

[pdf](https://microlink.io/docs/api/parameters/pdf)

[format](https://microlink.io/docs/api/parameters/pdf/format)

[height](https://microlink.io/docs/api/parameters/pdf/height)

[landscape](https://microlink.io/docs/api/parameters/pdf/landscape)

[margin](https://microlink.io/docs/api/parameters/pdf/margin)

[pageRanges](https://microlink.io/docs/api/parameters/pdf/pageRanges)

[scale](https://microlink.io/docs/api/parameters/pdf/scale)

[width](https://microlink.io/docs/api/parameters/pdf/width)

[ping](https://microlink.io/docs/api/parameters/ping)

[prerender](https://microlink.io/docs/api/parameters/prerender)

[proxy](https://microlink.io/docs/api/parameters/proxy)

[retry](https://microlink.io/docs/api/parameters/retry)

[screenshot](https://microlink.io/docs/api/parameters/screenshot)

[codeScheme](https://microlink.io/docs/api/parameters/screenshot/codeScheme)

[element](https://microlink.io/docs/api/parameters/screenshot/element)

[fullPage](https://microlink.io/docs/api/parameters/screenshot/fullPage)

[overlay](https://microlink.io/docs/api/parameters/screenshot/overlay)

[omitBackground](https://microlink.io/docs/api/parameters/screenshot/omitBackground)

[type](https://microlink.io/docs/api/parameters/screenshot/type)

[scripts](https://microlink.io/docs/api/parameters/scripts)

[scroll](https://microlink.io/docs/api/parameters/scroll)

[styles](https://microlink.io/docs/api/parameters/styles)

[staleTtl](https://microlink.io/docs/api/parameters/staleTtl)

[timeout](https://microlink.io/docs/api/parameters/timeout)

[ttl](https://microlink.io/docs/api/parameters/ttl)

[url](https://microlink.io/docs/api/parameters/url)

[video](https://microlink.io/docs/api/parameters/video)

[viewport](https://microlink.io/docs/api/parameters/viewport)

[waitForSelector](https://microlink.io/docs/api/parameters/waitForSelector)

[waitForTimeout](https://microlink.io/docs/api/parameters/waitForTimeout)

[waitUntil](https://microlink.io/docs/api/parameters/waitUntil)

API GUIDES MQL SDK CARDS

Getting Started

[Overview](https://microlink.io/docs/api/getting-started/overview)

[Data fields](https://microlink.io/docs/api/getting-started/data-fields)

[CLI](https://microlink.io/docs/api/getting-started/cli)

Basics

[Authentication](https://microlink.io/docs/api/basics/authentication)

[Cache](https://microlink.io/docs/api/basics/cache)

[Compression](https://microlink.io/docs/api/basics/compression)

[Endpoint](https://microlink.io/docs/api/basics/endpoint)

[Error codes](https://microlink.io/docs/api/basics/error-codes)

[Format](https://microlink.io/docs/api/basics/format)

[Rate limit](https://microlink.io/docs/api/basics/rate-limit)

Query Parameters

[adblock](https://microlink.io/docs/api/parameters/adblock)

[animations](https://microlink.io/docs/api/parameters/animations)

[audio](https://microlink.io/docs/api/parameters/audio)

[cacheKey](https://microlink.io/docs/api/parameters/cacheKey)

[click](https://microlink.io/docs/api/parameters/click)

[colorScheme](https://microlink.io/docs/api/parameters/colorScheme)

[data](https://microlink.io/docs/api/parameters/data)

[device](https://microlink.io/docs/api/parameters/device)

[embed](https://microlink.io/docs/api/parameters/embed)

[filename](https://microlink.io/docs/api/parameters/filename)

[filter](https://microlink.io/docs/api/parameters/filter)

[force](https://microlink.io/docs/api/parameters/force)

[function](https://microlink.io/docs/api/parameters/function)

[headers](https://microlink.io/docs/api/parameters/headers)

[iframe](https://microlink.io/docs/api/parameters/iframe)

[insights](https://microlink.io/docs/api/parameters/insights)

[lighthouse](https://microlink.io/docs/api/parameters/insights/lighthouse)

[technologies](https://microlink.io/docs/api/parameters/insights/technologies)

[javascript](https://microlink.io/docs/api/parameters/javascript)

[mediaType](https://microlink.io/docs/api/parameters/mediaType)

[meta](https://microlink.io/docs/api/parameters/meta)

[modules](https://microlink.io/docs/api/parameters/modules)

[palette](https://microlink.io/docs/api/parameters/palette)

[pdf](https://microlink.io/docs/api/parameters/pdf)

[format](https://microlink.io/docs/api/parameters/pdf/format)

[height](https://microlink.io/docs/api/parameters/pdf/height)

[landscape](https://microlink.io/docs/api/parameters/pdf/landscape)

[margin](https://microlink.io/docs/api/parameters/pdf/margin)

[pageRanges](https://microlink.io/docs/api/parameters/pdf/pageRanges)

[scale](https://microlink.io/docs/api/parameters/pdf/scale)

[width](https://microlink.io/docs/api/parameters/pdf/width)

[ping](https://microlink.io/docs/api/parameters/ping)

[prerender](https://microlink.io/docs/api/parameters/prerender)

[proxy](https://microlink.io/docs/api/parameters/proxy)

[retry](https://microlink.io/docs/api/parameters/retry)

[screenshot](https://microlink.io/docs/api/parameters/screenshot)

[codeScheme](https://microlink.io/docs/api/parameters/screenshot/codeScheme)

[element](https://microlink.io/docs/api/parameters/screenshot/element)

[fullPage](https://microlink.io/docs/api/parameters/screenshot/fullPage)

[overlay](https://microlink.io/docs/api/parameters/screenshot/overlay)

[omitBackground](https://microlink.io/docs/api/parameters/screenshot/omitBackground)

[type](https://microlink.io/docs/api/parameters/screenshot/type)

[scripts](https://microlink.io/docs/api/parameters/scripts)

[scroll](https://microlink.io/docs/api/parameters/scroll)

[styles](https://microlink.io/docs/api/parameters/styles)

[staleTtl](https://microlink.io/docs/api/parameters/staleTtl)

[timeout](https://microlink.io/docs/api/parameters/timeout)

[ttl](https://microlink.io/docs/api/parameters/ttl)

[url](https://microlink.io/docs/api/parameters/url)

[video](https://microlink.io/docs/api/parameters/video)

[viewport](https://microlink.io/docs/api/parameters/viewport)

[waitForSelector](https://microlink.io/docs/api/parameters/waitForSelector)

[waitForTimeout](https://microlink.io/docs/api/parameters/waitForTimeout)

[waitUntil](https://microlink.io/docs/api/parameters/waitUntil)

## Cache

[Copy for LLM](https://microlink.io/docs/api/basics/cache.md "Copy content for LLM")

\|

[View as Markdown](https://microlink.io/docs/api/basics/cache.md "View content as Markdown")

Microlink API has a built-in cache layer to speed up consecutive requests over the same resource.

The cache layer is enabled for any request under the following workflow:

- The first time a resource is requested, a cache copy will be created.
- Sucessive access over the resource will consume the cache copy.

The cache layer is a combination of a unified cache and edge node cache. The combination provides

[eventual consistency](https://en.wikipedia.org/wiki/Eventual_consistency)

.

**Unified cache**

When you query for a resource against Microlink API for the first time, the request will generate a shallow cache copy.

That known as 'MISS' and it's reflect as `x-cache-status` on response headers.

Any successive API access based on the same URL will consume the shallow copy created, reflecting a 'HIT' at `x-cache-status` response headers.

**Edge node cache**

Since Microlink relies on

[CloudFlare CDN](https://microlink.io/blog/edge-cdn/)

, after the unified cache is warm, any successive API access based on the sam URL will be served from the nearest edge node over [CloudFlare Network](https://www.cloudflare.com/network).

That means not only response will be served from cache, also it will be served from the nearest distance relative to the request origin. That's reflected under `cf-cache-status` response header as 'HIT'.

Edge nodes cache is per edge location, meaning every edge node as their own cache, causing a 'MISS' reflected at `cf-cache-status` response header when the access comes from a different location.

When this happen, the edge node cache will fallback automatically into the unified cache, creating a new edge cache copy.

**Cache invalidation**

The cached request will be considered as valid until it reached the expiration time, reflected at the cache-control response header.

There is two ways to setup the expiration:

- [ttl](https://microlink.io/docs/api/parameters/ttl): It sets the maximum quantity of time the value is considered valid.
- [force](https://microlink.io/docs/api/parameters/force): It invalidates the cache immediately, generating a new fresh cache copy.

**Cache identity**

The cache key is derived from the target URL and all recognized query parameters, so identical requests share one cached copy.

- [cacheKey](https://microlink.io/docs/api/parameters/cacheKey): It appends a custom identifier to the cache key, producing separate cache entries for otherwise identical requests.

Last updated on May 22, 2026

[Edit on GitHub](https://github.com/microlinkhq/www/blob/master/src/content/docs/api/basics/cache.md)