---
title: "Price items and lock the quote (moves no credits)"
method: POST
path: "/v1/quotes"
tags: ["quote_order"]
---

# Price items and lock the quote (moves no credits)

`POST /v1/quotes`

## Request

- Base URL: `https://api.buzzdealer.ai`
- URL: `https://api.buzzdealer.ai/v1/quotes`
- Auth: HTTP bearer

Same behavior as the MCP tool quote_order.

## Request body

- object
  - `items` object[], required: 1 to 50 items, each by item_id (from find_publications) or a site's domain, with optional add-ons and inputs
    - `item_id` string, uuid: The item id from find_publications or plan_campaign
    - `domain` string: Or a site's domain, for example example.com: used when exactly one published site has it; when several do, the answer lists them with their ids
    - `add_ons` object
      - `writing` boolean: Our writers write it (priced per article or release)
      - `logo` boolean: PR packages only
    - `inputs` object: Customer inputs as text fields. Releases: release_text or release_url, company_name, contact_name, contact_email; optional contact_phone, preferred_date (YYYY-MM-DD) and logo_url. Articles: article_text (or brief with the writing add-on), target_url, anchor_text. Audits: brand_name (brand or person name), website; personal audit also relationship (myself, my_company or client). Any: notes.
  - `brand_id` string, uuid: Optional. A brand of this account (listed in the dashboard under Brands); items for an unverified brand wait for its verification before fulfilment

## Response `200`

Success

- object

## Other responses

- `401`: Error
- `429`: Error
- `default`: Error

---

[API](https://skmtc.dev/buzzdealer/apis/buzz-dealer-ai-api.md) · [All operations](https://skmtc.dev/buzzdealer/apis/buzz-dealer-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/buzzdealer/apis/buzz-dealer-ai-api/revisions/e4865a268cd5?raw)
