monoicon

API Docs

単色アイコン画像を返すHTTP APIです。認証は不要です。v1 APIは 旧ドキュメント を参照してください。

GET /api/v2/icon

指定した1色で塗りつぶした正方形の画像をレスポンスします。色はCSSカラー文字列で指定できます。 sRGB色域外の色はDisplay P3のPNG(cICPチャンク付き)として出力します。この場合format=png以外は400をレスポンスします。

QUERY PARAMETERS

colorstring必須

CSSカラー文字列(hex, rgb(), hsl(), oklch(), lab()等)

sizeinteger任意

1〜2048の整数。既定値は512

formatstring任意

png / jpeg / webp / jxl(非推奨) / ppm(非推奨)のいずれか。既定値はpng

downloadflag任意

付与するとContent-Disposition: attachmentで応答

RESPONSE

画像バイナリ(image/png, image/jpeg, image/webp, image/jxl, image/x-portable-pixmap)をレスポンスします。Cache-Control: public, max-age=31536000, immutableが付与されます。パラメータが不正な場合は400と以下のいずれかのメッセージをレスポンスします。

  • Invalid color: expected a CSS color
  • Invalid size: expected integer between 1 and 2048
  • Invalid format: expected png, jpeg, webp, jxl or ppm
  • Color is outside the sRGB gamut; use format=png

EXAMPLE

curl -G -o icon.png "https://monoicon.mq1.dev/api/v2/icon" --data-urlencode "color=oklch(70% 0.25 340)" -d size=512
#f1f2cd#e4e9c6#e9f1bc#dfecbf

* 本APIで生成した画像

GET /api/v2/palette

ランダムパレット12色と初期選択色をレスポンスします。gamut=srgbはHEX、gamut=display-p3はDisplay P3色域を基準としたoklch()文字列を返します。後者はsRGB色域外の色を含む場合があります。

QUERY PARAMETERS

gamutstring任意

srgb / display-p3のいずれか。既定値はsrgb

RESPONSE

パラメータが不正な場合は400と以下のメッセージをレスポンスします。

  • Invalid gamut: expected srgb or display-p3
{
	"colors": [
		"oklch(89.1% 0.062 14.2)", "oklch(90.4% 0.071 43.8)",
		"oklch(87.2% 0.089 61.5)", "oklch(91.0% 0.058 86.9)",
		"oklch(88.6% 0.104 152.3)", "oklch(90.1% 0.077 168.4)",
		"oklch(86.9% 0.066 214.7)", "oklch(89.7% 0.059 247.1)",
		"oklch(88.0% 0.072 291.6)", "oklch(90.8% 0.061 318.2)",
		"oklch(87.5% 0.083 337.9)", "oklch(89.3% 0.068 352.4)"
	],
	"initial": "oklch(88.6% 0.104 152.3)"
}

EXAMPLE

curl "https://monoicon.mq1.dev/api/v2/palette?gamut=display-p3"