CountdownMail API

Ten poradnik pomoże Ci zacząć korzystać z API CountdownMail. Obejmuje konfigurację, uwierzytelnianie, obsługę błędów i pracę z licznikami odliczania.

Szybki start

Ta sekcja przygotuje Cię do korzystania z API CountdownMail i pokaże, jak wykonać pierwsze zapytanie API.

  1. Pobierz swój klucz API:
    • Zaloguj się na swoje konto CountdownMail.
    • Przejdź do Profil » API.
    • Skopiuj swój klucz API.
  2. Wykonaj swoje pierwsze zapytanie API:
    • Jako przykładu użyjemy endpointu "Utwórz licznik".
    • Użyj narzędzia takiego jak cURL lub Postman, aby wysłać zapytanie POST do https://countdownmail.com/api/create.
    • Dodaj swój klucz API w nagłówku Authorization.
    • Dołącz wymagane szczegóły licznika w treści zapytania (w formacie JSON).

Oto przykład z użyciem cURL:

Zapytanie

POST
https://countdownmail.com/api/create

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"
}'
                                    
  • Zastąp YOUR_API_KEY swoim prawdziwym kluczem API.
  • Jeśli wszystko działa, otrzymasz odpowiedź taką jak ta:

Odpowiedź


{
    "status": "success",
    "message": {
        "id": 1057,
        "code": "td",
        "src": "http://i.countdownmail.com/td.gif"
    }
}
                                    

Ta odpowiedź zawiera kod licznika (np. "td") i URL obrazu licznika.


Uwierzytelnianie

Aby korzystać z API CountdownMail, musisz uwierzytelnić każde zapytanie swoim kluczem API. Oto jak to zrobić:

  • Dodaj nagłówek Authorization do swojego zapytania. Wartość to Twój klucz API.
  • Alternatywnie użyj uwierzytelniania podstawowego: ustaw klucz API jako nazwę użytkownika i pozostaw hasło puste.

Przykład z nagłówkiem Authorization (cURL):

Zapytanie

GET
https://countdownmail.com/api/some_endpoint

curl -H "Content-Type: application/json" \
-H "Authorization: YOUR_API_KEY" \
-X GET "https://countdownmail.com/api/some_endpoint"
                                    
  • Zastąp YOUR_API_KEY swoim prawdziwym kluczem API.
  • Zawsze dołączaj uwierzytelnianie, w przeciwnym razie otrzymasz błąd 401 Unauthorized.

Korzystanie z Postmana

Jeśli używasz Postman, ułatwia to testowanie zapytań API. Aby użyć go z CountdownMail:

  • Kliknij, aby zaimportować kolekcję API CountdownMail. Uruchom w Postman
  • Dodaj swój klucz API do ustawień uwierzytelniania kolekcji i możesz zacząć wysyłać zapytania.

Błędy

Czasami zapytania API kończą się niepowodzeniem. API CountdownMail używa kodów statusu HTTP, aby poinformować, co poszło nie tak. Oto lista możliwych błędów, ich znaczenie oraz zalecane działania:

KodNazwa statusuOpisSugerowane działanie
400Nieprawidłowe zapytanieCoś jest nie tak z Twoim zapytaniem.Sprawdź, czy zapytanie jest zgodne z dokumentacją i używa poprawnej składni.
401NieautoryzowanyNie masz uprawnień do wykonania tego zapytania. Upewnij się, że używasz poprawnego klucza API w nagłówku Authorization.
404Nie znalezionoSerwer nie może znaleźć tego, o co prosisz. Zweryfikuj, czy Twój URL odpowiada poprawnemu endpointowi API.
405Metoda niedozwolonaEndpoint nie obsługuje tej metody. Użyj poprawnej metody HTTP (np. GET, POST) zgodnie z dokumentacją.
429Za dużo zapytańKlient wysłał za dużo zapytań w ciągu 1 minuty. Możesz użyć nagłówków wysyłanych z każdą odpowiedzią, aby określić aktualny status limitu zapytań.
Nazwa nagłówkaOpis
X-RateLimit-LimitMaksymalna liczba zapytań na minutę
X-RateLimit-RemainingLiczba pozostałych zapytań w aktualnym limicie
X-RateLimit-ResetCzas resetowania aktualnego limitu w sekundach UTC epoch
500Wewnętrzny błąd serweraCoś się zepsuło po stronie CountdownMail.Spróbuj później. Jeśli problem się powtarza, skontaktuj się ze wsparciem.
503Usługa niedostępnaSerwer jest obecnie zbyt zajęty.Poczekaj chwilę i spróbuj ponownie.

Przykład odpowiedzi błędu (401 Unauthorized):

Odpowiedź


{
    "status": "error",
    "message": "Unauthorized"
}
                                    

Jeśli widzisz błąd, sprawdź kod statusu i komunikat, a następnie postępuj zgodnie z sugerowanym działaniem.


Model licznika

Zasób Timer zawiera wszystkie informacje o liczniku odliczania. Oto pola dostępne do definiowania licznika odliczania:

WłaściwośćTypOpisWymaganeUwagi
skin_idintegerStyl projektowy licznika (szablon).TakMusi być liczbą od 1 do 23.
namestringNazwa licznika.TakMaksymalnie 100 znaków. Przykład: Big Sale!
time_endstringKiedy licznik się kończy (YYYY-MM-DD HH:MM:SS). TakPrzykład: 2025-04-09 04:57:16
time_zonestringStrefa czasowa licznika.TakPrzykład: America/Los_Angeles. Zobacz wszystkie dostępne wartości time_zone.
font_familystringCzcionka tekstu licznika.NiePrzykład: Roboto-Bold. Zobacz wszystkie dostępne wartości font_family.
label_font_familystringCzcionka etykiet licznika.NiePrzykład: Roboto-Bold. Zobacz wszystkie dostępne wartości font_family.
color_primarystringKolor główny (kod hex).TakPrzykład: FF3A43 (czerwony).
color_textstringKolor tekstu (kod hex).TakPrzykład: FFFFFF (biały).
color_bgstringKolor tła (kod hex).TakPrzykład: 000000 (czarny).
font_sizeintegerRozmiar tekstu licznika.NieOd 14 do 73.
label_font_sizeintegerRozmiar tekstu etykiety.NieOd 0 do 50.
dayintegerPokaż dni (0 = nie, 1 = tak).NieMusi być 0 lub 1.
langstringKod języka (ISO 2-literowy).NiePrzykład: en (angielski). Zobacz wszystkie 54 obsługiwane języki.
transparentintegerTło: 0 = jednolite, 1 = przezroczyste.NieMusi być 0 lub 1.
expired_mes_onintegerPokaż komunikat wygaśnięcia (0 = nie, 1 = tak).NieMusi być 0 lub 1.
expired_messtringKomunikat po wygaśnięciu licznika.NieMaksymalnie 100 znaków. Przykład: This offer has expired
labelsintegerUżyj niestandardowych etykiet (0 = nie, 1 = tak).NieMusi być 0 lub 1.
daysstringEtykieta dla dni.NieMaksymalnie 15 znaków. Przykład: days
hoursstringEtykieta dla godzin.NieMaksymalnie 15 znaków. Przykład: hours
minutesstringEtykieta dla minut.NieMaksymalnie 15 znaków. Przykład: minutes
secondsstringEtykieta dla sekund.NieMaksymalnie 15 znaków. Przykład: seconds
timer_typeintegerTyp licznika: 1 = Licznik ze wspólną datą, 2 = Licznik personalny, 3 = Licznik z linku.NieMusi być 1, 2 lub 3. Domyślnie 1 (Licznik ze wspólną datą).
durationintegerCzas trwania licznika w sekundach (dla liczników personalnych).NieWymagane, gdy timer_type wynosi 2 (Licznik personalny). Przykład: 86400 (24 godziny).
advanced_paramsobjectDodatkowe ustawienia (np. kolor separatora).Nie

Przykład


{
    "separator_color"  : "4275BC",
    "separator_size" : 1.3,
    "separator_style" : 6,
    "labels_color" : "A3A3A3"
}
                                    

Utwórz licznik

Ten endpoint pozwala utworzyć licznik. Aby utworzyć nowy licznik, musisz podać wszystkie wymagane właściwości.

Przykład zapytania:

Zapytanie

POST
https://countdownmail.com/api/create

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-10-05 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"
}'
                                    

Odpowiedź


{
    "status": "success",
    "message": {
        "id": 1057,
        "code": "td",
        "src": "http://i.countdownmail.com/td.gif"
    }
}
                                    

Zaktualizuj licznik

Ten endpoint pozwala zaktualizować dowolny atrybut licznika. Aby zaktualizować licznik, wyślij zapytanie PUT do /update/{code} z polami do aktualizacji. Zastąp {code} kodem licznika (np. "td").

Przykład zapytania:

Zapytanie

PUT
https://countdownmail.com/api/update/{code}

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-10-05 20:00:00"
}'
                                    

Odpowiedź


{
    "status": "success",
    "message": {
        "id": 1057,
        "code": "td",
        "src": "http://i.countdownmail.com/td.gif"
    }
}
                                    

Zduplikuj licznik

Aby skopiować istniejący licznik, wyślij zapytanie POST do /duplicate/{code}. Zastąp {code} unikalnym kodem licznika do skopiowania. Tworzy to nowy licznik z tymi samymi ustawieniami co oryginał.

Możesz zaktualizować szczegóły nowego licznika, dodając obiekt JSON w treści zapytania. Pozwala to zmienić określone atrybuty, jak czas zakończenia lub nazwę, zachowując pozostałe ustawienia z oryginału. Atrybuty do aktualizacji są takie same jak przy tworzeniu nowego licznika (pełna lista w sekcji Model licznika). Jeśli nie dołączysz atrybutu, pozostanie taki sam jak w oryginalnym liczniku.

Ważne: Oryginalny licznik się nie zmienia. Tylko nowy licznik jest modyfikowany przez aktualizacje wysłane w zapytaniu.

Przykład zapytania:

Zapytanie

POST
https://countdownmail.com/api/duplicate/{code}

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-10-05 20:00:00"
}'
                                    

Odpowiedź


{
    "status": "success",
    "message": {
        "id": 1057,
        "code": "td",
        "src": "http://i.countdownmail.com/td.gif"
    }
}
                                    

Dezaktywuj licznik

Aby zatrzymać licznik (zarchiwizować), wyślij zapytanie GET do /deactivate/{code}. Zastąp {code} kodem licznika.


Aktywuj licznik

Aby ponownie aktywować licznik, wyślij zapytanie GET do /activate/{code}. Zastąp {code} kodem licznika.


Usuń licznik

Aby usunąć licznik, wyślij zapytanie DELETE do /delete/{code}. Zastąp {code} kodem licznika.


Ten poradnik powinien dać Ci wszystko, czego potrzebujesz, aby zacząć korzystać z API CountdownMail. Chroń swój klucz API, a więcej szczegółów o polach takich jak strefy czasowe czy czcionki znajdziesz w oficjalnej dokumentacji!