---
title: "Bulk Canonicalize All"
method: POST
path: "/api/products/canonicalize-all"
tags: ["Products"]
---

# Bulk Canonicalize All

`POST /api/products/canonicalize-all`

## Request

- Base URL: `https://api.soeru.biz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.soeru.biz/api/products/canonicalize-all`
- Auth: none declared. Required headers: `authorization`

Bulk-canonicalize all learned products that lack canonical_name_*.

Returns counts: processed / succeeded / skipped (manual). Errors per
product are silently logged + counted but don't abort the batch.

## Query parameters

- `max_products` integer

## Headers

- `x-shop-id` string, nullable: Optional shop ID
- `authorization` string, required: Bearer <token>

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

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