---
title: "List dedicated endpoints"
method: GET
path: "/api/v1/dedicated/endpoints"
tags: ["dedicated"]
---

# List dedicated endpoints

`GET /api/v1/dedicated/endpoints`

## Request

- Base URL: `https://api.morphllm.com`
- URL: `https://api.morphllm.com/api/v1/dedicated/endpoints`
- Auth: HTTP bearer

Every dedicated endpoint owned by the key: an organization key sees the organization’s endpoints, a personal key sees the user’s own. Includes connection details, so discovery needs no per-endpoint call.

## Response `200`

The endpoints, newest first.

- DedicatedEndpointList: Dedicated endpoints owned by the API key’s account or organization.
  - `endpoints` DedicatedEndpointSummary[], required: Every endpoint the key can see, newest first, in every state. Ended endpoints are never removed, so filter on `state`.
    - `id` string, uuid, required: Endpoint id (the order id). Pass it to the status and cancel routes.
    - `state` 'checkout_pending' | 'paid' | 'capacity_held' | 'provisioning' | 'pr_open' | 'merged' | 'deploying' | 'ready' | 'refunding' | 'refunded' | 'failed' | 'suspended' | 'canceled', required: Lifecycle state, and the field to gate on. Provisioning: `checkout_pending`, `paid`, `capacity_held`, `provisioning`, `pr_open`, `merged`, `deploying`. Serving: `ready` (the only state that accepts requests). Paused for non-payment: `suspended` (can return to `ready`). Ended before activation (canceled, provisioning failed, no capacity, or activation window elapsed): `refunding` → `refunded`. Ended after activation, or checkout abandoned: `canceled`. Ended with an error that needs support (rare): `failed`.
    - `createdAt` string, date-time, required: ISO 8601 time the order was created.
    - `readyAt` string, date-time, nullable, required: ISO 8601 time the endpoint first became `ready`, else null.
    - `modelId` string, required: Catalog model id that was purchased. Not the name to send requests with.
    - `modelDisplayName` string, required: Human-readable model name.
    - `modelHardware` string, required: GPU generation serving the model.
    - `planName` string, required: Display name of the purchased capacity plan.
    - `endpointUrl` string, uri, nullable, required: Base URL to send OpenAI-compatible requests to (append `/v1`). Null until provisioning assigns it. It stays set after the endpoint stops serving, so check `state` before routing traffic.
    - `servedModelName` string, nullable, required: The `model` value requests must use. Null until provisioning assigns it; like `endpointUrl`, it stays set after the endpoint stops serving.

## Other responses

- `401`: The Authorization header is missing or holds an invalid Morph API key.

## Changes

- **2026-10-14** `94e639b0e59b`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/morphllm/apis/morph-api/changes/api/v1/dedicated/endpoints/get.md)

---

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