---
title: "Estimate"
method: POST
path: "/v1/pricing/estimate"
tags: ["pricing"]
---

# Estimate

`POST /v1/pricing/estimate`

## Request

- Base URL: `https://api.wievielkostetmeinumzug.de` (the document declares no server; this is the origin it was published from)
- URL: `https://api.wievielkostetmeinumzug.de/v1/pricing/estimate`
- Auth: none declared

Generate a preliminary price estimate using the config-driven all_in formula.

## Headers

- `X-API-Key` string, nullable
- `X-Brand` string, nullable

## Request body

- QuoteRequest: Request body for POST /v1/pricing/estimate. Mirrors research/13-pricing-engine.md PricingRequest, trimmed to what the pure pricing function actually consumes, and using schema.sql-aligned identifiers (`country`, `brand` -> brand.code) for config selection.
  - `brand` string, required
  - `country` string, required
  - `segment` 'local' | 'fern' | 'international' | 'office', nullable
  - `total_m3` number, required
  - `distance_km` number, required
  - `from_country` string, nullable
  - `to_country` string, nullable
  - `access_from` AccessInfo: Floor/elevator/long-carry conditions for one side of the move.
    - `floor` integer
    - `has_elevator` boolean
    - `long_carry_m` number, nullable
  - `access_to` AccessInfo: Floor/elevator/long-carry conditions for one side of the move.
    - `floor` integer
    - `has_elevator` boolean
    - `long_carry_m` number, nullable
  - `packing` 'none' | 'partial' | 'full'
  - `storage_months` integer
  - `request_id` string, nullable

## Response `200`

Successful Response

- QuoteResponse (unresolved $ref)

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/wievielkostetmeinumzug/apis/transport-hub-api.md) · [All operations](https://skmtc.dev/wievielkostetmeinumzug/apis/transport-hub-api/llms.txt) · [OpenAPI document](https://skmtc.dev/wievielkostetmeinumzug/apis/transport-hub-api/revisions/b279e15073a5?raw)
