CountdownMail API
Diese Anleitung hilft Ihnen beim Einstieg in die CountdownMail API. Sie behandelt Einrichtung, Authentifizierung, Fehlerbehandlung und die Arbeit mit Countdown-Timern.
Schnellstart
Dieser Abschnitt bereitet Sie auf die Nutzung der CountdownMail API vor und zeigt Ihnen, wie Sie Ihre erste API-Anfrage stellen.
- Holen Sie sich Ihren API-Schlüssel:
- Melden Sie sich bei Ihrem CountdownMail-Konto an.
- Gehen Sie zu Profil » API.
- Kopieren Sie Ihren API-Schlüssel.
- Stellen Sie Ihre erste API-Anfrage:
- Wir verwenden den "Timer erstellen"-Endpunkt als Beispiel.
- Verwenden Sie ein Tool wie cURL oder Postman, um eine POST-Anfrage an https://countdownmail.com/api/create zu senden.
- Fügen Sie Ihren API-Schlüssel im Authorization-Header hinzu.
- Fügen Sie die erforderlichen Timer-Details im Anfragekörper hinzu (im JSON-Format).
Hier ist ein Beispiel mit cURL:
Anfrage
curl -H "Content-Type: application/json" \
-H "Authorization: YOUR_API_KEY" \
-X POST "https://countdownmail.com/api/create" \
-d '{
"skin_id": 1,
"name": "Big Sale!",
"time_end": "2025-04-21 20:00:00",
"time_zone": "America/Los_Angeles",
"font_family": "Roboto-Bold",
"color_primary": "FF3A43",
"color_text": "FFFFFF",
"color_bg": "000000"
}'
- Ersetzen Sie YOUR_API_KEY durch Ihren tatsächlichen API-Schlüssel.
- Wenn alles funktioniert, erhalten Sie eine Antwort wie diese:
Antwort
{
"status": "success",
"message": {
"id": 1057,
"code": "td",
"src": "http://i.countdownmail.com/td.gif"
}
}
Diese Antwort enthält einen Timer-Code (z.B. "td") und eine URL für das Timer-Bild.
Authentifizierung
Um die CountdownMail API zu nutzen, müssen Sie jede Anfrage mit Ihrem API-Schlüssel authentifizieren. So geht's:
- Fügen Sie Ihrer Anfrage einen Authorization-Header hinzu. Der Wert ist Ihr API-Schlüssel.
- Alternativ können Sie Basic-Authentifizierung verwenden: Setzen Sie Ihren API-Schlüssel als Benutzernamen und lassen Sie das Passwort leer.
Beispiel mit Authorization-Header (cURL):
Anfrage
curl -H "Content-Type: application/json" \
-H "Authorization: YOUR_API_KEY" \
-X GET "https://countdownmail.com/api/some_endpoint"
- Ersetzen Sie YOUR_API_KEY durch Ihren tatsächlichen API-Schlüssel.
- Authentifizieren Sie immer, sonst erhalten Sie einen 401 Unauthorized-Fehler.
Postman verwenden
Wenn Sie Postman verwenden, erleichtert es das Testen von API-Anfragen. So verwenden Sie es mit CountdownMail:
Fehler
Manchmal schlagen API-Anfragen fehl. Die CountdownMail API verwendet HTTP-Statuscodes, um Ihnen mitzuteilen, was schief gelaufen ist. Hier ist eine Liste möglicher Fehler, ihre Bedeutung und was zu tun ist:
| Code | Statusname | Beschreibung | Empfohlene Maßnahme | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 400 | Ungültige Anfrage | Etwas stimmt mit Ihrer Anfrage nicht. | Überprüfen Sie, ob Ihre Anfrage der Dokumentation entspricht und die richtige Syntax verwendet. | ||||||||
| 401 | Nicht autorisiert | Sie haben keine Berechtigung für diese Anfrage. | Stellen Sie sicher, dass Sie einen gültigen API-Schlüssel im Authorization-Header verwenden. | ||||||||
| 404 | Nicht gefunden | Der Server kann das Angeforderte nicht finden. | Überprüfen Sie, ob Ihre URL einem gültigen API-Endpunkt entspricht. | ||||||||
| 405 | Methode nicht erlaubt | Der Endpunkt unterstützt diese Methode nicht. | Verwenden Sie die richtige HTTP-Methode (z.B. GET, POST) wie in der Dokumentation angegeben. | ||||||||
| 429 | Zu viele Anfragen | Der Client hat in 1 Minute zu viele Anfragen gesendet. | Sie können die Header, die mit jeder Antwort gesendet werden, verwenden, um den aktuellen Status Ihres Ratenlimits zu ermitteln.
| ||||||||
| 500 | Interner Serverfehler | Auf der Seite von CountdownMail ist etwas schief gelaufen. | Versuchen Sie es später erneut. Wenn das Problem weiterhin besteht, kontaktieren Sie den Support. | ||||||||
| 503 | Dienst nicht verfügbar | Der Server ist gerade zu beschäftigt. | Warten Sie einen Moment und versuchen Sie es erneut. |
Beispiel-Fehlerantwort (401 Unauthorized):
Antwort
{
"status": "error",
"message": "Unauthorized"
}
Wenn Sie einen Fehler sehen, überprüfen Sie den Statuscode und die Nachricht und befolgen Sie dann die empfohlene Maßnahme.
Timer-Modell
Die Timer-Ressource enthält alle Informationen über den Countdown-Timer. Dies sind die verfügbaren Felder zum Definieren eines Countdown-Timers:
| Eigenschaft | Typ | Beschreibung | Erforderlich | Hinweise |
|---|---|---|---|---|
| skin_id | Ganzzahl | Der Designstil (Vorlage) des Timers. | Ja | Muss eine Zahl zwischen 1 und 23 sein. |
| name | Zeichenkette | Der Name des Timers. | Ja | Maximal 100 Zeichen. Beispiel: Big Sale! |
| time_end | Zeichenkette | Wann der Timer endet (YYYY-MM-DD HH:MM:SS). | Ja | Beispiel: 2025-04-09 04:57:16 |
| time_zone | Zeichenkette | Die Zeitzone des Timers. | Ja | Beispiel: America/Los_Angeles. Alle verfügbaren time_zone-Werte anzeigen. |
| font_family | Zeichenkette | Schriftart für den Timer-Text. | Nein | Beispiel: Roboto-Bold. Alle verfügbaren font_family-Werte anzeigen. |
| label_font_family | Zeichenkette | Schriftart für Timer-Beschriftungen. | Nein | Beispiel: Roboto-Bold. Alle verfügbaren font_family-Werte anzeigen. |
| color_primary | Zeichenkette | Hauptfarbe (Hex-Code). | Ja | Beispiel: FF3A43 (Rot). |
| color_text | Zeichenkette | Textfarbe (Hex-Code). | Ja | Beispiel: FFFFFF (Weiß). |
| color_bg | Zeichenkette | Hintergrundfarbe (Hex-Code). | Ja | Beispiel: 000000 (Schwarz). |
| font_size | Ganzzahl | Größe des Timer-Textes. | Nein | Zwischen 14 und 73. |
| label_font_size | Ganzzahl | Größe des Beschriftungstextes. | Nein | Zwischen 0 und 50. |
| day | Ganzzahl | Tage anzeigen (0 = nein, 1 = ja). | Nein | Muss 0 oder 1 sein. |
| lang | Zeichenkette | Sprachcode (ISO 2-Buchstaben). | Nein | Beispiel: en (Englisch). Alle 54 unterstützten Sprachen anzeigen. |
| transparent | Ganzzahl | Hintergrund: 0 = solide, 1 = transparent. | Nein | Muss 0 oder 1 sein. |
| expired_mes_on | Ganzzahl | Ablaufnachricht anzeigen (0 = nein, 1 = ja). | Nein | Muss 0 oder 1 sein. |
| expired_mes | Zeichenkette | Nachricht bei Ablauf des Timers. | Nein | Maximal 100 Zeichen. Beispiel: This offer has expired |
| labels | Ganzzahl | Benutzerdefinierte Beschriftungen verwenden (0 = nein, 1 = ja). | Nein | Muss 0 oder 1 sein. |
| days | Zeichenkette | Beschriftung für Tage. | Nein | Maximal 15 Zeichen. Beispiel: days |
| hours | Zeichenkette | Beschriftung für Stunden. | Nein | Maximal 15 Zeichen. Beispiel: hours |
| minutes | Zeichenkette | Beschriftung für Minuten. | Nein | Maximal 15 Zeichen. Beispiel: minutes |
| seconds | Zeichenkette | Beschriftung für Sekunden. | Nein | Maximal 15 Zeichen. Beispiel: seconds |
| timer_type | Ganzzahl | Timer-Typ: 1 = Timer mit gemeinsamem Datum, 2 = Persönlicher Timer, 3 = Timer per Link. | Nein | Muss 1, 2 oder 3 sein. Standard ist 1 (Timer mit gemeinsamem Datum). |
| duration | Ganzzahl | Timer-Dauer in Sekunden (für persönliche Timer). | Nein | Erforderlich, wenn timer_type 2 ist (Persönlicher Timer). Beispiel: 86400 (24 Stunden). |
| advanced_params | Objekt | Zusätzliche Einstellungen (z.B. Trennzeichenfarbe). | Nein | Beispiel |
Timer erstellen
Dieser Endpunkt ermöglicht das Erstellen eines Timers. Um einen neuen Timer zu erstellen, müssen Sie alle erforderlichen Eigenschaften angeben.
Beispielanfrage:
Anfrage
curl -H "Content-Type: application/json" \
-H "Authorization: YOUR_API_KEY" \
-X POST "https://countdownmail.com/api/create" \
-d '{
"skin_id":3,
"name":"Big Sale!",
"time_end":"2026-02-02 20:00:00",
"time_zone":"America\/Los_Angeles",
"font_family":"Roboto-Bold",
"color_primary":"FF3A43",
"color_text":"FFFFFF",
"color_bg":"000000",
"transparent":"0",
"font_size":"38",
"lang":"en",
"expired_mes_on":"1",
"expired_mes":"This offer has expired",
"labels":"1",
"days":"days",
"hours":"hours",
"minutes":"minutes",
"seconds":"seconds"
}'
Antwort
{
"status": "success",
"message": {
"id": 1057,
"code": "td",
"src": "http://i.countdownmail.com/td.gif"
}
}
Timer aktualisieren
Dieser Endpunkt ermöglicht das Aktualisieren beliebiger Timer-Attribute. Um einen Timer zu aktualisieren, senden Sie eine PUT-Anfrage an /update/{code} mit den Feldern, die Sie aktualisieren möchten. Ersetzen Sie {code} durch den Timer-Code (z.B. "td").
Beispielanfrage:
Anfrage
curl -H "Content-Type: application/json" \
-H "Authorization: YOUR_API_KEY" \
-X PUT "https://countdownmail.com/api/update/{code}" \
-d '{
"skin_id":6,
"name":"Flash Sale!",
"time_end":"2026-02-02 20:00:00"
}'
Antwort
{
"status": "success",
"message": {
"id": 1057,
"code": "td",
"src": "http://i.countdownmail.com/td.gif"
}
}
Timer duplizieren
Um eine Kopie eines vorhandenen Timers zu erstellen, senden Sie eine POST-Anfrage an /duplicate/{code}. Ersetzen Sie {code} durch den eindeutigen Code des Timers, den Sie kopieren möchten. Dies erstellt einen neuen Timer mit denselben Einstellungen wie das Original.
Sie können Details des neuen Timers aktualisieren, indem Sie ein JSON-Objekt im Anfragekörper hinzufügen. So können Sie bestimmte Attribute ändern, wie die Endzeit oder den Namen, während alles andere wie im Original bleibt. Die Attribute, die Sie aktualisieren können, sind dieselben, die Sie beim Erstellen eines neuen Timers festlegen können (siehe den Abschnitt Timer-Modell für die vollständige Liste). Wenn Sie ein Attribut nicht angeben, bleibt es wie im ursprünglichen Timer.
Wichtig: Der ursprüngliche Timer ändert sich nicht. Nur der neue Timer wird von den Aktualisierungen betroffen, die Sie in der Anfrage senden.
Beispielanfrage:
Anfrage
curl -H "Content-Type: application/json" \
-H "Authorization: YOUR_API_KEY" \
-X POST "https://countdownmail.com/api/duplicate/{code}" \
-d '{
"skin_id":6,
"name":"Flash Sale!",
"time_end":"2026-02-02 20:00:00"
}'
Antwort
{
"status": "success",
"message": {
"id": 1057,
"code": "td",
"src": "http://i.countdownmail.com/td.gif"
}
}
Timer deaktivieren
Um einen Timer zu stoppen (archivieren), senden Sie eine GET-Anfrage an /deactivate/{code}. Ersetzen Sie {code} durch den Timer-Code.
Timer aktivieren
Um einen Timer wieder zu aktivieren, senden Sie eine GET-Anfrage an /activate/{code}. Ersetzen Sie {code} durch den Timer-Code.
Timer löschen
Um einen Timer zu löschen, senden Sie eine DELETE-Anfrage an /delete/{code}. Ersetzen Sie {code} durch den Timer-Code.
Diese Anleitung sollte Ihnen alles geben, was Sie für den Einstieg in die CountdownMail API benötigen. Bewahren Sie Ihren API-Schlüssel sicher auf und konsultieren Sie die offizielle Dokumentation für weitere Details zu Feldern wie Zeitzonen oder Schriftarten!
