Verbleibende Tage im Monat
Der Rechner für verbleibende Tage im Monat erhält ein explizites ISO-Kalenderdatum und ermittelt die vollständigen Tageswechsel zwischen diesem Datum und dem letzten Tag desselben Monats.
Im Browser ausführen – kostenlos
Er liest weder die aktuelle Uhrzeit noch setzt er das heutige Datum voraus oder hängt von der Zeitzone des Geräts ab. Das Ergebnis ist daher für Terminpläne, Berichte, Tests und Datenabläufe reproduzierbar. Zusätzlich nennt die Ausgabe das Monatsenddatum und die Anzahl der Monatstage, damit Sie die Berechnung unmittelbar prüfen können.
Geben Sie ein exaktes Kalenderdatum ein
Übermitteln Sie das Datum als Zeichenfolge im exakten Format JJJJ-MM-TT, einschließlich führender Nullen bei einstelligen Monaten oder Tagen. Auch ein Datum Anfang April benötigt beispielsweise zwei Stellen für beide Bestandteile. Der Rechner akzeptiert gregorianische Kalenderjahre von 0001 bis 9999 und prüft, ob die Bestandteile ein echtes Datum ergeben. Monat null, Monat dreizehn, ein Tag außerhalb der Monatslänge und der 29. Februar in einem Nichtschaltjahr werden abgelehnt. Dieser strikte Eingabevertrag verhindert, dass mehrdeutige regionale Schreibweisen mit vorangestelltem Monat oder Tag die Bedeutung verändern. Die Eingabe muss ausdrücklich angegeben werden: Begriffe wie heute oder morgen sind unzulässig, da hierfür die aktuelle Uhr benötigt würde und sich das Ergebnis später ändern könnte. Nach erfolgreicher Prüfung enthält die Ausgabe dieselbe kanonische ISO-Zeichenfolge, sodass Sie das Ergebnis leicht dem Quelldatensatz zuordnen können. Fehlerhafte Eingaben führen zu einem typisierten Clientfehler und niemals zu einer Schätzung oder stillen Korrektur.
So ist die Anzahl zu verstehen
Das Ergebnis zählt die vollständigen Tage zwischen dem angegebenen Datum und dem letzten Kalenderdatum desselben Monats. Dazu wird die Tagesnummer von der Anzahl der Monatstage abgezogen. Nach dieser Definition ergibt der letzte Monatstag null, weil vor dem Monatsende kein vollständiger Tageswechsel mehr verbleibt. Der Vortag ergibt eins. Das Startdatum wird nicht als zusätzlicher verbleibender Tag mitgezählt: Der Wert beschreibt eine Dauer und keine inklusive Liste von Kalenderdaten. Neben days_remaining enthält die Ausgabe month_end und days_in_month. Diese Felder legen die Grundlagen der Subtraktion offen und erleichtern die Kontrolle. Für Februar gilt die gregorianische Schaltjahrregel: Durch vier teilbare Jahre sind Schaltjahre, außer Jahrhundertjahre, die nicht zugleich durch vierhundert teilbar sind. April, Juni, September und November haben dreißig Tage; die übrigen Monate außer Februar haben einunddreißig. Näherungen, eine durchschnittliche Monatslänge oder Zeitstempelkonvertierungen werden nicht verwendet.
Nutzen Sie deterministische Ergebnisse in Abläufen
Diese Fähigkeit eignet sich für Systeme, in denen bereits ein Datum vorliegt und ein stabiler Zeitraum bis zum Monatsende benötigt wird. Ein Abrechnungsprozess kann für jeden datierten Datensatz die vollständigen Resttage des Abrechnungsmonats bestimmen. Ein Projektbericht kann einen Countdown auf Grundlage seines Berichtsdatums anzeigen, ohne es versehentlich durch den Öffnungstag zu ersetzen. Eine Testsuite kann erwartete Werte dauerhaft festhalten, weil dieselbe Eingabe stets dieselbe Ausgabe erzeugt. Der Algorithmus verwendet ausschließlich ganzzahlige Kalenderarithmetik. Er ruft keinen Netzwerkdienst auf, erzeugt keine Zufallswerte, erstellt kein Date-Objekt, prüft keine Systemzeitzone und liest nicht die aktuelle Uhr. Daher liefern ein Browser in Tokio und eine API-Ausführung in UTC für dasselbe ISO-Datum dasselbe Ergebnis. Diese Einheitlichkeit ist besonders rund um die lokale Mitternacht wertvoll. Jede API-Anfrage verwendet den veröffentlichten Grundpreis von $0.002; im Browser kann dieselbe reine Berechnung lokal erfolgen. Für Arbeitstage, Feiertage, inklusive Intervalle oder verschiedene Monate wählen Sie bitte eine Fähigkeit, die diese Regeln ausdrücklich abbildet.
Anwendungsfälle
Monatsbericht vorbereiten
Ergänzen Sie einen reproduzierbaren Restzeitraum anhand des Berichtsdatums statt anhand des Öffnungstags.
Abrechnungsgrenzen testen
Erstellen Sie stabile Fälle für gewöhnliche Monate, Schaltjahrsfebruar und Monatsgrenzen ohne simulierte Systemuhr.
Datierte Datensätze anreichern
Ergänzen Sie jeden Datensatz um Monatsenddatum, Monatslänge und vollständige verbleibende Tage.
Häufige Fragen
Wird das eingegebene Datum mitgezählt?
Nein. Gemessen werden vollständige Tageswechsel bis zum Monatsende. Der letzte Tag ergibt null, der Vortag eins.
Wird das heutige Datum verwendet?
Nein. Sie müssen ein Datum ausdrücklich angeben; die aktuelle Uhr wird nie gelesen.
Wie wird der Februar behandelt?
Die gregorianische Regel bestimmt, ob Februar achtundzwanzig oder neunundzwanzig Tage hat, einschließlich der Jahrhundertausnahmen.
Kann die Zeitzone das Ergebnis ändern?
Nein. Die Berechnung nutzt Kalenderbestandteile und ganze Zahlen, ohne Date-Objekte oder Zeitzonenumrechnung.
Was kostet eine API-Anfrage?
Jede API-Anfrage verwendet den veröffentlichten Grundpreis von $0.002.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/date/days-remaining-month \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-02-20"}'const res = await fetch("https://api.kit.forhosting.com/date/days-remaining-month", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-02-20"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/days-remaining-month",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-02-20"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/days-remaining-month", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-02-20"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-02-20"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/days-remaining-month", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"date": "2024-02-20"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.days_remaining_month",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |