---
title: "Arquivo.pt"
description: "The Portuguese web archive's public CDX index, with original responses through noFrame/replay."
canonical_url: "https://archives.agntn.dev/providers/arquivo"
---
# Arquivo.pt

> The Portuguese web archive's public CDX index, with original responses through noFrame/replay.

<provider-facts slug="arquivo">



</provider-facts>

## Load it

```ts
import { createArchive, providers } from "@agntn/archives";

const archive = createArchive(providers.arquivo());
```

No credentials, no extra options beyond the shared ones.

## What it lists

`snapshots` queries `arquivo.pt/wayback/cdx`. A domain is treated as a prefix; a URL is looked up as given. Every row carries `status`, `mime`, `digest` and `length` in `_meta`, so two captures with the same digest are the same body even before you read them. The `from` and `to` window is applied in the query.

Arquivo.pt has archived far more than Portuguese sites: it holds a broad crawl of the early web and answers quickly, which is why it often contributes most of a merged listing.

## Reading bodies

Bodies come from `noFrame/replay`, the raw playback path that serves the archived response without the archive's frame. Timestamp resolution is the shared rule: newest at or before, else closest after.

## Gotchas

- Listings include captures with `user:pass@` URLs and `www.` variants as separate originals. Match on `digest` when you want distinct bodies.
- The `length` field is a string, as the CDX API sends it.

## Where it lives

`src/providers/arquivo.ts`.


## Sitemap

See the full [sitemap](https://archives.agntn.dev/sitemap.md) for all pages.
