POST /v1/core/color-convert

Colour converter

Between hex, RGB, HSL and Lab — and the WCAG contrast ratio against another colour.

Convert and check colours now No key, no code — 1 credit either way.

curl -X POST "$DOATHING_API/v1/core/color-convert" \
  -H "x-api-key: $DOATHING_KEY" \
  -H "content-type: application/json" \
  -d '{"color": "#C15F3C", "against": "#F0EEE6"}'

Between hex, RGB, HSL and Lab — and the WCAG contrast ratio against another colour.

Convert colours between hex, rgb, hsl and CIELAB, and compute WCAG 2.1 contrast ratios.

Response

The result carries your remaining balance alongside it, so you can track spend without a second call.

{
  "hex": "#C15F3C",
  "rgb": [
    193,
    95,
    60
  ],
  "contrast": {
    "ratio": 3.64,
    "aa_normal": false,
    "aa_large": true
  },
  "request_id": "37f01edb-0163-42a1-ac51-0acaef979800",
  "credits_remaining": 96
}

Cost

1 credit per call, whether it is run from the site or from the API — the credential differs, the price does not. A new account starts with 20 credits.

A rejected request still costs a credit: the authorizer decrements before the tool validates. A call rejected for a missing or invalid key is free.

Parameters

Generated from the endpoint’s own validation, so this is exactly what it accepts. A body field goes at the top level; an option goes inside options.

NameInTypeDefaultNotes
colour *bodystring
againstbodystring
shadesoptionsbooleanfalseAlso return a nine-step lightness ramp.