---
title: "Rename a conversation"
method: PATCH
path: "/api/v1/assistant/trademe/conversations/{conversation_id}"
tags: ["v1"]
---

# Rename a conversation

`PATCH /api/v1/assistant/trademe/conversations/{conversation_id}`

## Request

- Base URL: `https://api.trademeai.co.nz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.trademeai.co.nz/api/v1/assistant/trademe/conversations/{conversation_id}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/trademeai/apis/trade-me-ai-platform/docs/api/v1/assistant/trademe/conversations/:conversation_id/patch.ts> (a function with typed inputs; its response is checked against the schema)

Changes the conversation's `title`. Only an owner can rename it; anyone else gets 403.

## Path parameters

- `conversation_id` string, required

## Headers

- `authorization` string, nullable

## Request body

- UpdateConversationBody: Request body for PATCH /conversations/{id}. Accepts camelCase or snake_case keys.
  - `title` string, nullable

## Response `200`

Successful Response

- ConversationSummary: Domain ConversationSummary with camelCase wire aliases.
  - `id` string, required
  - `title` string, nullable
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required
  - `lastMessageAt` string, date-time, nullable
  - `isShared` boolean, required
  - `participants` union[], required
    - union
      - MemberParticipant: Domain MemberParticipant with camelCase wire aliases.
        - `participantType` 'member'
        - `memberId` string, required
        - `displayName` string, nullable
        - `role` 'owner' | 'member' | 'invited'
      - AssistantParticipant: Domain AssistantParticipant with camelCase wire aliases.
        - `participantType` 'assistant'
        - `assistantId` string, required
        - `displayName` string, nullable
  - `assistantStatus` 'idle' | 'running' | 'error'
  - `messageCount` integer
  - `referrer` union
    - DirectReferrer: Domain DirectReferrer with camelCase wire aliases.
      - `sourceType` 'direct'
    - HomepageReferrer: Domain HomepageReferrer with camelCase wire aliases.
      - `sourceType` 'homepage'
      - `tva` TemplatedViewAddress, required: Structured navigation address compatible with Koru's responseAddress shape. :ivar view_name: Koru view name, e.g. ``"ListingDetailsPage"``. :ivar uri: Canonical URL string (same role as the old ``canonical_url``). :ivar parameters: Typed key/value parameters for the view. :ivar annotation: Optional human-readable link metadata. :ivar relative_path: Path portion of ``uri`` with the Trade Me web ``/a/`` prefix stripped, intended for client-side routing. ``None`` when uri is empty or unparseable. Not suitable as input to ``build_listing_url()`` — that function expects the canonical_path form which includes the ``/a/`` segment.
        - `viewName` string, required
        - `uri` string, required
        - `parameters` TVAParameter[]
          - `key` string, required
          - `value` TypedValue, required: A discriminated-union value carrier for TVA parameters. Exactly one of the four value fields must be non-``None``. An all-``None`` instance is semantically invalid — it represents a parameter with no value.
            - `strValue` string, nullable
            - `numValue` union
              - …
            - `boolValue` boolean, nullable
            - `arrValue` TypedValue[], nullable
        - `annotation` LinkAnnotation: Optional human-readable annotation attached to a TVA link.
          - `title` string, required
          - `summary` string, nullable
          - `imageUrl` string, nullable
    - PropertyHomepageReferrer: Domain PropertyHomepageReferrer with camelCase wire aliases.
      - `sourceType` 'property_homepage'
    - PropertyDeepLinkReferrer: Domain PropertyDeepLinkReferrer with camelCase wire aliases.
      - `sourceType` 'property_deep_link'
    - SearchFormReferrer: Domain SearchFormReferrer with camelCase wire aliases.
      - `sourceType` 'search_form'
      - `tva` TemplatedViewAddress: Structured navigation address compatible with Koru's responseAddress shape. :ivar view_name: Koru view name, e.g. ``"ListingDetailsPage"``. :ivar uri: Canonical URL string (same role as the old ``canonical_url``). :ivar parameters: Typed key/value parameters for the view. :ivar annotation: Optional human-readable link metadata. :ivar relative_path: Path portion of ``uri`` with the Trade Me web ``/a/`` prefix stripped, intended for client-side routing. ``None`` when uri is empty or unparseable. Not suitable as input to ``build_listing_url()`` — that function expects the canonical_path form which includes the ``/a/`` segment.
        - `viewName` string, required
        - `uri` string, required
        - `parameters` TVAParameter[]
          - `key` string, required
          - `value` TypedValue, required: A discriminated-union value carrier for TVA parameters. Exactly one of the four value fields must be non-``None``. An all-``None`` instance is semantically invalid — it represents a parameter with no value.
            - `strValue` string, nullable
            - `numValue` union
              - …
            - `boolValue` boolean, nullable
            - `arrValue` TypedValue[], nullable
        - `annotation` LinkAnnotation: Optional human-readable annotation attached to a TVA link.
          - `title` string, required
          - `summary` string, nullable
          - `imageUrl` string, nullable
    - SearchResultsReferrer: Domain SearchResultsReferrer with camelCase wire aliases.
      - `sourceType` 'search_results'
      - `tva` TemplatedViewAddress, required: Structured navigation address compatible with Koru's responseAddress shape. :ivar view_name: Koru view name, e.g. ``"ListingDetailsPage"``. :ivar uri: Canonical URL string (same role as the old ``canonical_url``). :ivar parameters: Typed key/value parameters for the view. :ivar annotation: Optional human-readable link metadata. :ivar relative_path: Path portion of ``uri`` with the Trade Me web ``/a/`` prefix stripped, intended for client-side routing. ``None`` when uri is empty or unparseable. Not suitable as input to ``build_listing_url()`` — that function expects the canonical_path form which includes the ``/a/`` segment.
        - `viewName` string, required
        - `uri` string, required
        - `parameters` TVAParameter[]
          - `key` string, required
          - `value` TypedValue, required: A discriminated-union value carrier for TVA parameters. Exactly one of the four value fields must be non-``None``. An all-``None`` instance is semantically invalid — it represents a parameter with no value.
            - `strValue` string, nullable
            - `numValue` union
              - …
            - `boolValue` boolean, nullable
            - `arrValue` TypedValue[], nullable
        - `annotation` LinkAnnotation: Optional human-readable annotation attached to a TVA link.
          - `title` string, required
          - `summary` string, nullable
          - `imageUrl` string, nullable
    - ListingReferrer: Domain ListingReferrer with camelCase wire aliases.
      - `sourceType` 'listing'
      - `listingId` string, required
      - `listingSummary` ListingSummary: Domain ListingSummary with camelCase wire aliases.
        - `title` string, nullable
        - `priceDisplay` string, nullable
        - `address` string, nullable
        - `suburb` string, nullable
        - `propertyType` string, nullable
        - `bedrooms` integer, nullable
        - `bathrooms` integer, nullable
        - `parking` integer, nullable
        - `floorArea` string, nullable
        - `landArea` string, nullable
        - `tva` TemplatedViewAddress: Structured navigation address compatible with Koru's responseAddress shape. :ivar view_name: Koru view name, e.g. ``"ListingDetailsPage"``. :ivar uri: Canonical URL string (same role as the old ``canonical_url``). :ivar parameters: Typed key/value parameters for the view. :ivar annotation: Optional human-readable link metadata. :ivar relative_path: Path portion of ``uri`` with the Trade Me web ``/a/`` prefix stripped, intended for client-side routing. ``None`` when uri is empty or unparseable. Not suitable as input to ``build_listing_url()`` — that function expects the canonical_path form which includes the ``/a/`` segment.
          - `viewName` string, required
          - `uri` string, required
          - `parameters` TVAParameter[]
            - `key` string, required
            - `value` TypedValue, required: A discriminated-union value carrier for TVA parameters. Exactly one of the four value fields must be non-``None``. An all-``None`` instance is semantically invalid — it represents a parameter with no value.
              - …
          - `annotation` LinkAnnotation: Optional human-readable annotation attached to a TVA link.
            - `title` string, required
            - `summary` string, nullable
            - `imageUrl` string, nullable
  - `capabilities` string[], nullable
  - `experimentMetadata` ExperimentMetadata: Which assistant model a conversation was set up with. `isInStaffGroup` is true when the conversation was created with the staff header, and `servedModel` names the model chosen at that moment. Neither changes afterwards.
    - `isInStaffGroup` boolean
    - `servedModel` string, nullable
  - `kind` string

## Other responses

- `422`: Validation Error

## Changes

- **2026-08-20** `fef830d30272`: 1 breaking, 1 info
  - added `#/components/schemas/PropertyDeepLinkReferrer` to the `referrer/anyOf[subschema #1]/` response property `oneOf` list for the response status `200`
  - added `property_deep_link` discriminator mapping keys to the `referrer/anyOf[subschema #1]/` response property for the response status `200`
- **2026-08-04** `93e6dba49eec`: 1 info
  - added the optional property `kind` to the response with the `200` status
- **2026-07-31** `daa4f3a9034b`: 1 info
  - the endpoint scheme security `AnvilBearerToken` was added to the API
- **2026-07-26** `9924b9d33661`: 1 info
  - added the optional property `experimentMetadata` to the response with the `200` status

[Operation history](https://skmtc.dev/trademeai/apis/trade-me-ai-platform/changes/api/v1/assistant/trademe/conversations/:conversation_id/patch.md)

---

[API](https://skmtc.dev/trademeai/apis/trade-me-ai-platform.md) - [All operations](https://skmtc.dev/trademeai/apis/trade-me-ai-platform/llms.txt) - [OpenAPI document](https://skmtc.dev/trademeai/apis/trade-me-ai-platform/revisions/1164c8a5c534?raw)
