> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stateset.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get checkpoint details

> **Required scope:** read

**Required scope:** `read`

### Path parameters

<ParamField path="checkpoint_id" type="string" required>
  Checkpoint identifier
</ParamField>

### Response

`ModelCheckpoint`

<ResponseField name="config" type="ModelConfig" required>
  <Expandable title="ModelConfig">
    <ResponseField name="attention_heads" type="integer" required>
      Number of attention heads
    </ResponseField>

    <ResponseField name="dropout" type="number (float)" required>
      Dropout rate
    </ResponseField>

    <ResponseField name="embedding_dim" type="integer" required>
      Embedding dimension
    </ResponseField>

    <ResponseField name="features" type="string[]" required>
      Feature flags enabled
    </ResponseField>

    <ResponseField name="hidden_dims" type="integer[]" required>
      Hidden layer dimensions
    </ResponseField>

    <ResponseField name="max_sequence_length" type="integer" required>
      Maximum sequence length
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="created_at" type="integer (int64)" required>
  Creation timestamp (Unix ms)
</ResponseField>

<ResponseField name="description" type="string">
  Optional description
</ResponseField>

<ResponseField name="id" type="string" required>
  Unique checkpoint identifier
</ResponseField>

<ResponseField name="metrics" type="ModelMetrics" required>
  <Expandable title="ModelMetrics">
    <ResponseField name="accuracy" type="number (double)" required>
      Accuracy on test set
    </ResponseField>

    <ResponseField name="epochs" type="integer" required>
      Training epochs completed
    </ResponseField>

    <ResponseField name="f1_score" type="number (double)" required>
      F1 score
    </ResponseField>

    <ResponseField name="train_loss" type="number (double)" required>
      Training loss
    </ResponseField>

    <ResponseField name="training_time_secs" type="integer (int64)" required>
      Total training time (seconds)
    </ResponseField>

    <ResponseField name="val_loss" type="number (double)" required>
      Validation loss
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="name" type="string" required>
  Human-readable name
</ResponseField>

<ResponseField name="tags" type="string[]">
  Tags for organization
</ResponseField>

<ResponseField name="version" type="string" required>
  Version string (semver)
</ResponseField>

### Status codes

| Code  | Meaning                                            |
| ----- | -------------------------------------------------- |
| `200` | Checkpoint details                                 |
| `401` | Unauthorized — missing or invalid credentials      |
| `403` | Forbidden — the key/token lacks the required scope |
| `404` | Checkpoint not found                               |
| `429` | Rate limited — see Retry-After / X-RateLimit-Reset |

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://api.nsr.stateset.com/api/v1/model/checkpoints/{checkpoint_id}' \
    --header 'X-API-Key: YOUR_API_KEY'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "config": {
      "attention_heads": 1,
      "dropout": 1,
      "embedding_dim": 1,
      "features": [
        "string"
      ],
      "hidden_dims": [
        1
      ],
      "max_sequence_length": 1
    },
    "created_at": 1,
    "description": "string",
    "id": "string",
    "metrics": {
      "accuracy": 1,
      "epochs": 1,
      "f1_score": 1,
      "train_loss": 1,
      "training_time_secs": 1,
      "val_loss": 1
    },
    "name": "string",
    "tags": [
      "string"
    ],
    "version": "string"
  }
  ```
</ResponseExample>
