---
title: "Get Shared Budget (public, token-scoped)"
method: GET
path: "/api/v1/budgets/{externalId}/shared"
tags: ["Budget"]
---

# Get Shared Budget (public, token-scoped)

`GET /api/v1/budgets/{externalId}/shared`

## Request

- Base URL: `https://www.endlesstravelplans.com`
- URL: `https://www.endlesstravelplans.com/api/v1/budgets/{externalId}/shared`
- Auth: HTTP bearer

Loads a budget for a share-link recipient. No auth: access is granted by the
budget's share token (the same is_shared + hash_equals contract the web share
link uses). Responds 404 — not 403 — on a bad token so the endpoint never
confirms a budget id exists.

## Query parameters

- `token` string, required: The share token from the share link.

## Response `200`

- object
  - `budget` object
    - `external_id` string
    - `status` string

## Other responses

- `404`
- `429`: rate_limited: A throttle or a per-account allowance refused the request; `retry_after` or `remaining` may be present.
- `500`: server_error: Unhandled failure; quote `request_id` to support.

---

[API](https://skmtc.dev/endlesstravelplans/apis/endless-travel-plans-api.md) · [All operations](https://skmtc.dev/endlesstravelplans/apis/endless-travel-plans-api/llms.txt) · [OpenAPI document](https://skmtc.dev/endlesstravelplans/apis/endless-travel-plans-api/revisions/ae82ed3e4a8f?raw)
