For AI agents: the documentation index is at https://api.hlplanet.com/llms.txt. This page is also available as Markdown at https://api.hlplanet.com/docs/compare.md.

HLPlanet Keyboard APIKeyboard sizesMeasured keyboardsCompare keyboardsDesk fitFind a keyTesting toolsMCP serverErrorsOpenAPI

Compare keyboards

GET /v1/compare puts two to six sizes or measured keyboards side by side. The first item is the reference; every other item reports its difference from it.

Query parameters

ParameterExampleMeaning
itemstkl,75,wooting-80heRequired. 2 to 6 comma-separated size ids or keyboard ids
isotrueUse the ISO layout (UK/EU: tall Enter, extra key next to left Shift). Default ANSI

Negative width_diff_mm means the item is narrower than the reference, which leaves that much more room for the mouse. missing_keys are keys the reference has and the item lacks; they are usually on an Fn layer.

Example

curl "https://api.hlplanet.com/v1/compare?items=tkl,75"
{
  "layout": "ANSI",
  "reference": {
    "kind": "size",
    "id": "tkl",
    "name": "TKL (tenkeyless) (80%)",
    "size": "80%",
    "keys": 87,
    "width_mm": 368.6,
    "depth_mm": 144.8,
    "measured": false
  },
  "items": [
    {
      "kind": "size",
      "id": "75",
      "name": "75%",
      "size": "75%",
      "keys": 84,
      "width_mm": 325.8,
      "depth_mm": 140,
      "measured": false,
      "width_diff_mm": -42.9,
      "depth_diff_mm": -4.8,
      "missing_keys": {
        "summary": "System: Scroll Lock, Pause/Break; Right Windows key, Menu key",
        "count": 4,
        "codes": [
          "ScrollLock",
          "Pause",
          "MetaRight",
          "ContextMenu"
        ]
      },
      "extra_keys": {
        "summary": "Fn",
        "count": 1,
        "codes": [
          "Fn"
        ]
      }
    }
  ],
  "compare_url": "https://www.hlplanet.com/keyboard-layout/?compare=tkl,75,ref-tkl",
  "notes": "Negative width_diff_mm means narrower than the reference. Missing keys are usually reached through an Fn layer."
}