---
title: "Get a negotiation thread"
method: GET
path: "/api/negotiations/{id}"
tags: ["Marketplace"]
---

# Get a negotiation thread

`GET /api/negotiations/{id}`

## Request

- Base URL: `https://domani.run`
- URL: `https://domani.run/api/negotiations/{id}`
- Auth: HTTP bearer

Returns a negotiation with its full offer thread, anonymized (offers are labelled 'you' or 'counterparty'). Requires `deals:read` scope.

## Path parameters

- `id` string, required

## Response `200`

Negotiation

- object
  - `negotiation` Negotiation: An anonymous, threaded price negotiation over a listed domain
    - `id` string
    - `domain` string
    - `status` 'open' | 'agreed' | 'completed' | 'declined' | 'expired' | 'cancelled'
    - `your_role` 'buyer' | 'seller'
    - `your_turn` boolean: True when it's your move to respond
    - `current_offer` number: Latest amount on the table (USD)
    - `agreed_price` number, nullable: Set once the price is agreed
    - `list_price` number: The listing's asking price (USD)
    - `expires_at` string, date-time
    - `deal_id` string, nullable: Set once finalized into a deal
    - `created_at` string, date-time
    - `offers` object[]: The negotiation thread, oldest first
      - `from` 'you' | 'counterparty'
      - `kind` 'offer' | 'counter' | 'accept' | 'decline'
      - `amount` number, nullable
      - `message` string, nullable
      - `at` string, date-time

## Other responses

- `401`: Missing or invalid API key
- `404`: Not found
- `429`: Rate limit exceeded - wait and retry

---

[API](https://skmtc.dev/domani/apis/domani-run-api.md) · [All operations](https://skmtc.dev/domani/apis/domani-run-api/llms.txt) · [OpenAPI document](https://skmtc.dev/domani/apis/domani-run-api/revisions/7679f8159533?raw)
