---
title: "Create Market Rate"
method: POST
path: "/v2/tms-api/rates"
tags: ["TMS API", "TMS API - Market Rates"]
---

# Create Market Rate

`POST /v2/tms-api/rates`

## Request

- Base URL: `https://api.mentium.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.mentium.io/v2/tms-api/rates`
- Auth: none declared

Persist a customer-supplied market rate snapshot.

## Headers

- `X-API-Key` string, nullable: API key for authentication

## Request body

- MarketRateCreate
  - `date` string, date-time, required: Market rate timestamp. Include date and time with timezone.
  - `source` 'DAT' | 'GREENSCREENS' | 'TRUCKSTOP' | 'CUSTOMER' | 'OTHER', required: Canonical source for customer-supplied market rate snapshots. Tight enough for reporting/validation without modelling every customer-specific vendor. Custom provider names are preserved verbatim in the snapshot's ``raw_payload`` rather than expanding this enum.
  - `equipment_type` 'DRY_VAN' | 'REEFER' | 'FLATBED' | 'FLATBED_CONESTOGA' | 'STEPDECK' | 'STEPDECK_CONESTOGA' | 'LOWBOY' | 'REMOVABLE_GOOSENECK' | 'BULK_DRY_HOPPER' | 'BULK_DRY_PNEUMATIC' | 'BULK_DRY_DUMP' | 'TANKER' | 'INTERMODAL' | 'STRAIGHT' | 'SPRINTER' | 'HOTSHOT' | 'POWER_ONLY' | 'MENTIUM_UNKNOWN_VALUE'
  - `rates` MarketRateValues, required
    - `total` number, nullable
    - `fuel` number, nullable
  - `origin` MarketRateLocation, required
    - `city` string, required
    - `state` string, required
    - `country` string, nullable
  - `destination` MarketRateLocation, required
    - `city` string, required
    - `state` string, required
    - `country` string, nullable
  - `currency` string

## Response `201`

Successful Response

- MarketRateResponse
  - `id` string, required
  - `date` string, date-time, required
  - `source` 'DAT' | 'GREENSCREENS' | 'TRUCKSTOP' | 'CUSTOMER' | 'OTHER', required: Canonical source for customer-supplied market rate snapshots. Tight enough for reporting/validation without modelling every customer-specific vendor. Custom provider names are preserved verbatim in the snapshot's ``raw_payload`` rather than expanding this enum.
  - `equipment_type` 'DRY_VAN' | 'REEFER' | 'FLATBED' | 'FLATBED_CONESTOGA' | 'STEPDECK' | 'STEPDECK_CONESTOGA' | 'LOWBOY' | 'REMOVABLE_GOOSENECK' | 'BULK_DRY_HOPPER' | 'BULK_DRY_PNEUMATIC' | 'BULK_DRY_DUMP' | 'TANKER' | 'INTERMODAL' | 'STRAIGHT' | 'SPRINTER' | 'HOTSHOT' | 'POWER_ONLY' | 'MENTIUM_UNKNOWN_VALUE', required
  - `rates` MarketRateValues, required
    - `total` number, nullable
    - `fuel` number, nullable
  - `origin` MarketRateLocation, required
    - `city` string, required
    - `state` string, required
    - `country` string, nullable
  - `destination` MarketRateLocation, required
    - `city` string, required
    - `state` string, required
    - `country` string, nullable
  - `currency` string, required

## Other responses

- `422`: Validation Error

---

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