---
title: "Admin Backfill Blog Covers"
method: POST
path: "/api/admin/blog-posts/covers/backfill"
tags: ["admin"]
---

# Admin Backfill Blog Covers

`POST /api/admin/blog-posts/covers/backfill`

## Request

- Base URL: `https://store.hypergpt.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://store.hypergpt.ai/api/admin/blog-posts/covers/backfill`
- Auth: HTTP bearer

Regenerate composed covers so they pick up the fixed title (no doubled
'Best … AI Tools'), adaptive grid (no empty cells), site font (Lexend), and
blank-logo dropping. Covers grid landings (alternatives/listicle/filter/
category/audience/use_case/job) AND compare ('A vs B') posts. Review covers
are left untouched (they're screenshots, not composed).

Processed in id order; pass `after_id` (the last id from the previous batch)
to page through. `dry_run=true` reports what would change without rendering.

## Query parameters

- `post_type` string, nullable
- `limit` integer
- `after_id` integer
- `dry_run` boolean

## Cookies

- `access_token` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/hypergpt/apis/hyperstore-api.md) · [All operations](https://skmtc.dev/hypergpt/apis/hyperstore-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hypergpt/apis/hyperstore-api/revisions/50dc6759e3b9?raw)
