---
title: "Recent Blocks"
method: GET
path: "/v1/blocks/recent"
tags: ["blocks"]
---

# Recent Blocks

`GET /v1/blocks/recent`

## Request

- Base URL: `https://api.bitpoort.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.bitpoort.com/v1/blocks/recent`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer

Recent blocks for a chain via query string. Convenience alias for
``/v1/blocks/{chain}?limit=N`` so agents can use the more conventional
``GET /v1/blocks/recent?chain=ETH&limit=5`` shape. Supports optional
``since``/``until`` ISO 8601 time-window filtering and ``cursor``
keyset pagination.

## Query parameters

- `chain` string, required: Chain ID (ETH, BTC, HL, POLYGON)
- `limit` integer
- `offset` integer
- `since` string, nullable: ISO 8601 datetime, e.g. 2026-05-01T00:00:00Z
- `until` string, nullable: ISO 8601 datetime, e.g. 2026-05-02T00:00:00Z
- `cursor` string, nullable: Opaque cursor from a previous response's next_cursor field

## Response `200`

Recent blocks for the requested chain. Supports since/until ISO 8601 windowing and opaque cursor pagination via next_cursor / has_more.

- BlocksRecentResponse
  - `chain` string, required
  - `blocks` BlockItem[], required
    - `chain` string, required
    - `number` integer, required
    - `hash` string, required
    - `txCount` integer, nullable
    - `gasUsed` integer, nullable
    - `gasLimit` integer, nullable
    - `baseFee` integer, nullable
    - `headBlock` integer, nullable
    - `lag` integer, nullable
    - `blockTime` number, nullable
    - `status` string, nullable
  - `total` integer, nullable
  - `head_block` integer, nullable
  - `next_cursor` string, nullable
  - `has_more` boolean, nullable

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/bitpoort/apis/bitpoort-api.md) · [All operations](https://skmtc.dev/bitpoort/apis/bitpoort-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bitpoort/apis/bitpoort-api/revisions/1a51d8566777?raw)
