> Documentation index: https://api.hlplanet.com/llms.txt. Every page is also available as Markdown by adding .md to its URL.

# Keyboard sizes

`GET /v1/sizes` lists the six standard sizes. `GET /v1/sizes/{id}` returns one of them.

## Size ids

| id | Size | Also accepted |
|---|---|---|
| `full` | Full-size (100%) | `100`, `104` |
| `1800` | 98% (1800) | `98`, `96` |
| `tkl` | TKL, tenkeyless (80%) | `80`, `87` |
| `75` | 75% | `84` |
| `65` | 65% | `68` |
| `60` | 60% | `61` |

## Fields

| Field | Meaning |
|---|---|
| `keys` | Number of keys in the ANSI layout |
| `typical_width_mm`, `typical_depth_mm` | Estimated case size: 19.05 mm per key plus about 10 mm of case border |
| `narrower_than_full_size_mm` | Width saved compared to a full-size keyboard |
| `missing_vs_full_size` | Keys this size drops, as a readable `summary`, a `count` and the KeyboardEvent `codes` |
| `reviews` | Example keyboards of this size reviewed on HLPlanet |
| `compare_url` | The size drawn to scale on HLPlanet |

## Example

```bash
curl "https://api.hlplanet.com/v1/sizes/75"
```

```json
{
  "id": "75",
  "name": "75%",
  "size": "75%",
  "keys": 84,
  "typical_width_mm": 325.8,
  "typical_depth_mm": 140,
  "narrower_than_full_size_mm": 123.8,
  "missing_vs_full_size": {
    "summary": "Numpad (17 keys); System: Scroll Lock, Pause/Break; Right Windows key, Menu key",
    "count": 21,
    "codes": [
      "ScrollLock",
      "Pause",
      "NumLock",
      "NumpadDivide",
      "NumpadMultiply",
      "NumpadSubtract",
      "…"
    ]
  },
  "best_for": "The all-rounder: F-row, arrows and navigation keys in a compact body",
  "reviews": [
    {
      "name": "DrunkDeer A75 Pro",
      "url": "https://www.hlplanet.com/drunkdeer-a75-pro-keyboard-review/"
    },
    {
      "name": "MCHOSE Jet 75",
      "url": "https://www.hlplanet.com/mchose-jet-75-review/"
    }
  ],
  "compare_url": "https://www.hlplanet.com/keyboard-layout/?compare=75"
}
```
