CountdownMail API
Deze handleiding helpt u aan de slag te gaan met de CountdownMail API. Het behandelt het instellen, authenticeren, afhandelen van fouten en werken met countdown-timers.
Snelstart
Dit gedeelte bereidt u voor op het gebruik van de CountdownMail API en laat zien hoe u uw eerste API-verzoek doet.
- Verkrijg uw API-sleutel:
- Log in op uw CountdownMail-account.
- Ga naar Profiel » API.
- Kopieer uw API-sleutel.
- Doe uw eerste API-verzoek:
- We gebruiken het "Timer maken"-endpoint als voorbeeld.
- Gebruik een tool zoals cURL of Postman om een POST-verzoek naar https://countdownmail.com/api/create te sturen.
- Voeg uw API-sleutel toe in de Authorization-header.
- Voeg de vereiste timerdetails toe in de request body (in JSON-formaat).
Hier is een voorbeeld met cURL:
Verzoek
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"
}'
- Vervang YOUR_API_KEY door uw werkelijke API-sleutel.
- Als alles werkt, krijgt u een respons zoals dit:
Respons
{
"status": "success",
"message": {
"id": 1057,
"code": "td",
"src": "http://i.countdownmail.com/td.gif"
}
}
Deze respons bevat een timercode (bijv. "td") en een URL voor de timer-afbeelding.
Authenticatie
Om de CountdownMail API te gebruiken, moet u elk verzoek authenticeren met uw API-sleutel. Zo werkt het:
- Voeg een Authorization-header toe aan uw verzoek. De waarde is uw API-sleutel.
- U kunt ook basisauthenticatie gebruiken: stel uw API-sleutel in als gebruikersnaam en laat het wachtwoord leeg.
Voorbeeld met Authorization-header (cURL):
Verzoek
curl -H "Content-Type: application/json" \
-H "Authorization: YOUR_API_KEY" \
-X GET "https://countdownmail.com/api/some_endpoint"
- Vervang YOUR_API_KEY door uw werkelijke API-sleutel.
- Voeg altijd authenticatie toe, anders krijgt u een 401 Unauthorized-fout.
Postman gebruiken
Als u Postman gebruikt, maakt het het testen van API-verzoeken gemakkelijk. Om het te gebruiken met CountdownMail:
Fouten
Soms mislukken API-verzoeken. De CountdownMail API gebruikt HTTP-statuscodes om aan te geven wat er mis is gegaan. Hier is een lijst met mogelijke fouten, hun betekenis en wat te doen:
| Code | Statusnaam | Beschrijving | Aanbevolen actie | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 400 | Ongeldig verzoek | Er is iets mis met uw verzoek. | Controleer of uw verzoek overeenkomt met de documentatie en de juiste syntax gebruikt. | ||||||||
| 401 | Niet geautoriseerd | U heeft geen toestemming om dit verzoek te doen. | Zorg ervoor dat u een geldige API-sleutel gebruikt in de Authorization-header. | ||||||||
| 404 | Niet gevonden | De server kan niet vinden wat u vroeg. | Controleer of uw URL overeenkomt met een geldig API-endpoint. | ||||||||
| 405 | Methode niet toegestaan | Het endpoint ondersteunt die methode niet. | Gebruik de juiste HTTP-methode (bijv. GET, POST) zoals weergegeven in de documentatie. | ||||||||
| 429 | Te veel verzoeken | De client heeft te veel verzoeken verzonden in 1 minuut. | U kunt de headers die met elke respons worden verzonden gebruiken om de huidige status van uw rate limit te bepalen.
| ||||||||
| 500 | Interne serverfout | Er is iets misgegaan aan de kant van CountdownMail. | Probeer het later opnieuw. Als het blijft gebeuren, neem contact op met support. | ||||||||
| 503 | Service niet beschikbaar | De server is momenteel te druk. | Wacht even en probeer het opnieuw. |
Voorbeeld foutrespons (401 Unauthorized):
Respons
{
"status": "error",
"message": "Unauthorized"
}
Als u een fout ziet, controleer de statuscode en het bericht en volg dan de aanbevolen actie.
Timer-model
De Timer-resource bevat alle informatie over de countdown-timer. Dit zijn de beschikbare velden voor het definiëren van een countdown-timer:
| Eigenschap | Type | Beschrijving | Vereist | Opmerkingen |
|---|---|---|---|---|
| skin_id | integer | De ontwerpstijl van de timer (template). | Ja | Moet een getal tussen 1 en 23 zijn. |
| name | string | De naam van de timer. | Ja | Maximaal 100 tekens. Voorbeeld: Big Sale! |
| time_end | string | Wanneer de timer eindigt (YYYY-MM-DD HH:MM:SS). | Ja | Voorbeeld: 2025-04-09 04:57:16 |
| time_zone | string | De tijdzone van de timer. | Ja | Voorbeeld: America/Los_Angeles. Bekijk alle beschikbare time_zone-waarden. |
| font_family | string | Lettertype voor de timertekst. | Nee | Voorbeeld: Roboto-Bold. Bekijk alle beschikbare font_family-waarden. |
| label_font_family | string | Lettertype voor timerlabels. | Nee | Voorbeeld: Roboto-Bold. Bekijk alle beschikbare font_family-waarden. |
| color_primary | string | Hoofdkleur (hex-code). | Ja | Voorbeeld: FF3A43 (rood). |
| color_text | string | Tekstkleur (hex-code). | Ja | Voorbeeld: FFFFFF (wit). |
| color_bg | string | Achtergrondkleur (hex-code). | Ja | Voorbeeld: 000000 (zwart). |
| font_size | integer | Grootte van de timertekst. | Nee | Tussen 14 en 73. |
| label_font_size | integer | Grootte van de labeltekst. | Nee | Tussen 0 en 50. |
| day | integer | Toon dagen (0 = nee, 1 = ja). | Nee | Moet 0 of 1 zijn. |
| lang | string | Taalcode (ISO 2-letterig). | Nee | Voorbeeld: en (Engels). Bekijk alle 54 ondersteunde talen. |
| transparent | integer | Achtergrond: 0 = solide, 1 = transparant. | Nee | Moet 0 of 1 zijn. |
| expired_mes_on | integer | Toon vervalbericht (0 = nee, 1 = ja). | Nee | Moet 0 of 1 zijn. |
| expired_mes | string | Bericht wanneer timer verloopt. | Nee | Maximaal 100 tekens. Voorbeeld: This offer has expired |
| labels | integer | Gebruik aangepaste labels (0 = nee, 1 = ja). | Nee | Moet 0 of 1 zijn. |
| days | string | Label voor dagen. | Nee | Maximaal 15 tekens. Voorbeeld: days |
| hours | string | Label voor uren. | Nee | Maximaal 15 tekens. Voorbeeld: hours |
| minutes | string | Label voor minuten. | Nee | Maximaal 15 tekens. Voorbeeld: minutes |
| seconds | string | Label voor seconden. | Nee | Maximaal 15 tekens. Voorbeeld: seconds |
| timer_type | integer | Timertype: 1 = Timer met gedeelde datum, 2 = Persoonlijke timer, 3 = Timer per link. | Nee | Moet 1, 2 of 3 zijn. Standaard is 1 (Timer met gedeelde datum). |
| duration | integer | Timerduur in seconden (voor persoonlijke timers). | Nee | Vereist wanneer timer_type 2 is (Persoonlijke timer). Voorbeeld: 86400 (24 uur). |
| advanced_params | object | Extra instellingen (bijv. scheidingsteken kleur). | Nee | Voorbeeld |
Timer maken
Dit endpoint stelt u in staat een timer te maken. Om een nieuwe timer te maken, moet u alle vereiste eigenschappen opgeven.
Voorbeeldverzoek:
Verzoek
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"
}'
Respons
{
"status": "success",
"message": {
"id": 1057,
"code": "td",
"src": "http://i.countdownmail.com/td.gif"
}
}
Timer bijwerken
Dit endpoint stelt u in staat elk timerattribuut bij te werken. Om een timer bij te werken, stuurt u een PUT-verzoek naar /update/{code} met de velden die u wilt bijwerken. Vervang {code} door de timercode (bijv. "td").
Voorbeeldverzoek:
Verzoek
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"
}'
Respons
{
"status": "success",
"message": {
"id": 1057,
"code": "td",
"src": "http://i.countdownmail.com/td.gif"
}
}
Timer dupliceren
Om een kopie te maken van een bestaande timer, stuurt u een POST-verzoek naar /duplicate/{code}. Vervang {code} door de unieke code van de timer die u wilt kopiëren. Dit maakt een nieuwe timer aan met dezelfde instellingen als het origineel.
U kunt details van de nieuwe timer bijwerken door een JSON-object toe te voegen in de request body. Hiermee kunt u specifieke attributen wijzigen, zoals de eindtijd of naam, terwijl al het andere hetzelfde blijft als het origineel. De attributen die u kunt bijwerken zijn dezelfde als die u kunt instellen bij het maken van een nieuwe timer (zie de Timer Model-sectie voor de volledige lijst). Als u een attribuut niet opneemt, blijft het hetzelfde als in de originele timer.
Belangrijk: De originele timer verandert niet. Alleen de nieuwe timer wordt beïnvloed door de updates die u in het verzoek stuurt.
Voorbeeldverzoek:
Verzoek
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"
}'
Respons
{
"status": "success",
"message": {
"id": 1057,
"code": "td",
"src": "http://i.countdownmail.com/td.gif"
}
}
Timer deactiveren
Om een timer te stoppen (archiveren), stuurt u een GET-verzoek naar /deactivate/{code}. Vervang {code} door de timercode.
Timer activeren
Om een timer opnieuw te activeren, stuurt u een GET-verzoek naar /activate/{code}. Vervang {code} door de timercode.
Timer verwijderen
Om een timer te verwijderen, stuurt u een DELETE-verzoek naar /delete/{code}. Vervang {code} door de timercode.
Deze handleiding zou u alles moeten geven wat u nodig heeft om aan de slag te gaan met de CountdownMail API. Bewaar uw API-sleutel veilig en raadpleeg de officiële documentatie voor meer details over velden zoals tijdzones of lettertypen!
