Palettes API
Durchsuche die Farbpaletten-Bibliothek von Jinero – 6.200+ kuratierte Paletten mit Filtern nach Stimmung, Harmonie, Temperatur, Ton und Tags, dazu vollständige Farbdaten und SEO-Metadaten ab Werk.
Rein lesende API für die Palettenbibliothek von Jinero. Suche nach Stimmung, Harmonie, Temperatur, Ton, Farbanzahl und Tags; rufe einzelne Paletten mit vollständigen Farbdaten, SEO-freundlichen Anzeigenamen und Vorschlägen ähnlicher Paletten ab. Sie versorgt sowohl unsere eigene Oberfläche als auch jeden LLM-Agenten, der kuratierte Palettendaten braucht.
# List 5 most popular palettes
curl "https://jinero.online/api/v1/palettes?per_page=5&order=popular"
# Fetch one palette by id
curl "https://jinero.online/api/v1/palettes/3798"
const r = await fetch("https://jinero.online/api/v1/palettes?mood=pastel&per_page=24");
const { data: palettes, last_page } = await r.json();
Alle Endpunkte sind öffentlich – kein Schlüssel nötig. Rein lesend und ressourcenschonend, daher großzügige Limits.
# Anonymous limits (per IP):
# GET /palettes 60 req/min
# GET /palettes/{id} 60 req/min
# Pagination: per_page max 100, default 24
Paginierte Suche. Jeder Filter ist optional und kombinierbar. Ohne Filter erhältst du die gesamte Bibliothek, sortiert nach dem gewählten order.
https://jinero.online/api/v1/palettes
| Parameter | Typ | Beschreibung |
|---|---|---|
name |
string | Unscharfe Namenssuche (LIKE). Die meisten Paletten haben keinen Namen – kombiniere stattdessen andere Filter. |
tone |
string | light · dark · mixed. |
temperature |
string | warm · cool · neutral. |
mood |
string | pastel · muted · earthy · vibrant · monochrome (und weitere – die Werteliste ist offen). |
harmony |
string | analogous · complementary · triadic · monochromatic · tetradic · split-complementary. |
color_count |
integer | Exakte Anzahl (2–6) oder 7+ für „viele Farben“. |
tags[] |
string[] | Erforderliche Tag-Slugs. Für mehrere Tags den Parameter wiederholen. |
order |
string | newest (Standard) · popular · name. |
per_page |
integer | 1–100, Standard 24. |
page |
integer | Seitennummer, Standard 1. |
# Top 10 cool-pastel palettes
curl "https://jinero.online/api/v1/palettes?temperature=cool&mood=pastel&order=popular&per_page=10"
const url = new URL("https://jinero.online/api/v1/palettes");
url.searchParams.set("temperature", "warm");
url.searchParams.set("color_count", "5");
url.searchParams.set("order", "popular");
const r = await fetch(url);
const { data, total, last_page } = await r.json();
$res = Http::get("https://jinero.online/api/v1/palettes", [
"mood" => "vibrant",
"harmony" => "triadic",
"per_page" => 30,
]);
$palettes = $res->json("data");
{
"current_page": 1,
"data": [
{
"id": 3798,
"name": null,
"display_name": "4-Color Muted Palette",
"slug": "222831393e4600adb5eeeeee",
"colors": ["#222831", "#393e46", "#00adb5", "#eeeeee"],
"color_count": 4,
"tone": "mixed",
"temperature": "cool",
"mood": "muted",
"harmony": "analogous",
"source": "imported",
"source_url": "...",
"tags": [],
"likes_count": 71122,
"views_count": 0,
"url": "https://jinero.online/colors/palettes/3798"
}
],
"first_page_url": "...",
"last_page": 421,
"per_page": 24,
"total": 10103
}
Ruft eine einzelne Palette plus 8 ähnliche Paletten ab (gleiche Temperatur + gleicher Ton, nach Beliebtheit sortiert). Jeder Aufruf dieses Endpunkts erhöht außerdem views_count.
https://jinero.online/api/v1/palettes/{id}
| Parameter | Typ | Beschreibung |
|---|---|---|
id |
integer (path) | ID der Palette aus der Listen-Antwort. |
curl "https://jinero.online/api/v1/palettes/3798"
const r = await fetch("https://jinero.online/api/v1/palettes/3798");
const { palette, related } = await r.json();
document.title = palette.seo_title;
$res = Http::get("https://jinero.online/api/v1/palettes/3798");
$palette = $res->json("palette");
{
"success": true,
"palette": {
"id": 3798,
"name": null,
"display_name": "4-Color Muted Palette",
"colors": ["#222831", "#393e46", "#00adb5", "#eeeeee"],
"color_count": 4,
"tone": "mixed",
"temperature": "cool",
"mood": "muted",
"harmony": "analogous",
"tags": [],
"likes_count": 71122,
"views_count": 1,
"url": "https://jinero.online/colors/palettes/3798",
"seo_title": "4-Color Muted Palette — Cool Mixed, Analogous Harmony | Jinero Online",
"seo_description": "4-color muted palette with cool temperature and analogous harmony. Hex codes: #222831, #393E46, #00ADB5, #EEEEEE..."
},
"related": [
{ "id": 1234, "display_name": "...", "colors": [...] }
]
}
Rund 65 % der importierten Bibliothek haben name: null. Wir leiten über einen Model-Accessor einen lesbaren display_name aus mood + color_count ab – eine unbenannte gedeckte Palette mit 4 Farben wird zum Beispiel zu "4-Color Muted Palette". Die Felder seo_title und seo_description werden genauso abgeleitet, damit Links und Meta-Tags konsistent bleiben – egal, ob die Palette einen redaktionellen Namen hatte oder nicht.
// Unnamed palette as it appears in the database
{ "id": 3798, "name": null, "mood": "muted", "color_count": 4 }
// What you actually receive from the API
{
"id": 3798,
"name": null,
"display_name": "4-Color Muted Palette",
"seo_title": "4-Color Muted Palette — Cool Mixed, Analogous Harmony | Jinero Online"
}
Standard-HTTP-Semantik. Fehler liefern JSON mit dem Feld "message".
// 404 — palette id not found
{ "message": "Palette not found" }
// 422 — invalid filter value (e.g. unknown order)
{ "message": "The selected order is invalid." }
// 429 — rate limit exceeded
{ "message": "Too Many Attempts." }
Über die Palettes API von jinero.online
Kostenlose REST-API für eine Bibliothek mit 6.200+ Paletten – geordnet nach Stimmung, Harmonie, Temperatur und Ton, mit SEO-fertigen Anzeigenamen und integrierten Vorschlägen ähnlicher Paletten.
6.200+ Paletten
Kuratierte und importierte Paletten mit einheitlichen Metadaten – Stimmung, Harmonie, Temperatur, Ton. Durchsuchbar nach jedem relevanten Kriterium.
Paginierung & Filter
Standard-Paginierung von Laravel – current_page, last_page, total plus typisierte Filterparameter. Keine eigenen Cursor-Formate, die du erst lernen musst.
SEO-fertig ab Werk
Jede Palette kommt mit abgeleiteten display_name, seo_title und seo_description – übernimm sie direkt in deinen <title> und deine Meta-Tags.
Ähnliche Paletten
Antworten für einzelne Paletten enthalten bis zu 8 ähnliche Paletten (gleiche Temperatur + gleicher Ton, nach Beliebtheit sortiert) – ideal für „Das könnte dir auch gefallen“-Reihen.
Häufig gestellte Fragen
Nein. Beide Endpunkte sind öffentlich und auf 60 Anfragen/min pro IP begrenzt. Wenn du für Batch-Jobs höhere Limits brauchst, registriere dich und hol dir ein API-Token.
Die Bibliothek wurde ursprünglich durch Importe von öffentlichen Farbpaletten-Seiten befüllt, die überwiegend unbenannte Paletten veröffentlichen. Wir erfinden nie falsche redaktionelle Namen – stattdessen leiten wir über einen Model-Accessor einen stabilen display_name aus mood + color_count ab, damit die API konsistent bleibt.
Ja – wiederhole den Parameter tags[]: ?tags[]=warm-tones&tags[]=monochrome. Alle angegebenen Tags müssen vorhanden sein (AND-Semantik). Für ein OR-Verhalten schickst du zwei separate Anfragen und führst die Ergebnisse clientseitig zusammen.
likes_count, views_count und saves_count werden in Echtzeit aktualisiert – jeder Aufruf von /palettes/{id} erhöht views_count synchron. Order=popular sortiert nach likes_count.
Nicht in v1. Slugs sind deterministisch (aneinandergereihte Hex-Codes ohne #), du kannst sie also clientseitig bilden – die Abfrage funktioniert aber nur über die numerische ID. Wenn du einen Anwendungsfall für den Abruf per Slug hast, eröffne ein Issue.