---
title: "Get Plan Proposal"
method: GET
path: "/trips/{trip_id}/plan-proposals/{proposal_id}"
tags: ["plan"]
---

# Get Plan Proposal

`GET /trips/{trip_id}/plan-proposals/{proposal_id}`

## Request

- Base URL: `https://stardrift.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://stardrift.ai/trips/{trip_id}/plan-proposals/{proposal_id}`
- Auth: none declared

## Path parameters

- `trip_id` string, required
- `proposal_id` string, uuid, required

## Response `200`

Successful Response

- ProposalView: `status` is the read-time state: a staged row can read `expired` or `stale`.
  - `proposal_id` string, required
  - `trip_id` string, required
  - `source` string, required
  - `status` 'staged' | 'stale' | 'expired' | 'applied' | 'dismissed' | 'superseded', required
  - `summary` string, required
  - `title` string, nullable
  - `body` string, nullable
  - `reasoning` string, nullable
  - `target_date` string, date, nullable
  - `valid_until` string, date-time, nullable
  - `base_version` integer, required
  - `conversation_id` string, nullable
  - `superseded_by_id` string, nullable
  - `edit_details` object, nullable
  - `changes` integer, required
  - `card` object, required
  - `created_at` string, date-time, required
  - `resolved_at` string, date-time, nullable

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-25** `f6559d3df7e9`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/stardrift/apis/stardrift-api/changes/trips/:trip_id/plan-proposals/:proposal_id/get.md)

---

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