#
Informacje podstawowe
Główny punkt dostępowy: https://{instance-name}.timeharmony.pl/api/ext/
{instance-name} - nazwa instancji klienta
API obsługuje tylko zawartość typu application/json.
Wszystkie żądania muszą być szyfrowane i wykonywane na protkole HTTPS. Żądania HTTP bez szyfrowania będą odrzucane.
#
Zwracane kody HTTP i ich znaczenie:
- 200 - żądanie przetworzone prawidłowo
- 202 - żądanie przyjęte, nic nie zwraca
- 400 - błąd w przetwarzaniu, zwracany jest obiekt opisujący błąd
- 401 - brak klucza API, nic nie zwraca
- 403 - brak uprawnień do wykonania akcji, nic nie zwraca
- 404 - brak zasobu, nic nie zwraca
- 405 - niedozwolona metoda, nic nie zwraca
- 409 - konflikt wywołań, prawdopodobnie podany klucz
X-Idempotency-Keyzostał wcześniej użyty dla innej metody - 429 - zbyt częste wywołania API
- 5XX - inne błędy po strone Time Harmony, nic nie zwraca
#
Format danych
string- tekst, ciąg znakówdatetime- data i czas zgodnie z formatem ISO8601, np: "2008-04-10T06:30:00"date- data bez czasu np: "2008-04-10"yyyy-MM-ddtime- czas bez daty np: "14:00:00"HH:mm:ssshorttime- czas bez sekund i bez daty np: "14:00"HH:mmduration- całkowita ilość godzin oraz minut i sekund, np.: "26:30:15" oznacza 1 dzień, 2 godziny, 30 minut i 15 sekundHH:mm:ssdecimal- liczba ułamkowa, np.: 1.5 (invariant)int- liczba całkowita, np.: 1bool- wartość logiczna, np.: true, falseguid- uuidobject- obiekt definiujący encjęlist- obiekt definiujący listę obiektów oraz metadane do jej obsługiarray- lista obiektów
#
Nagłówki
Opis nagłówków oczekiwanych lub wysyłanych podczas przetwarzania żądań do serwera.
#
Żądania
Wymagane:
- Authorization - Uwierzytelnienie odbywa się poprzez
HTTP Basic Auth. Żądanie bez prawidłowego klucza zostanie odrzucone. Na przykład:Authorization: Basic 910796d20ab54cd9800f7647360a298f - Accept - */* lub
application/json - Content-Type -
application/json
Opcjonalne:
- X-Idempotency-Key - Podanie tego klucza dla metody wywołania
POSTspowoduje, że kolejne wywołania z tą samą wartością zostaną pominięte. Jako klucz zalecamy stosowanie UUID (GUID), ale może być inny dowolny ciąg znaków. Maksymalna rozmiar to 32 bajty.
Rekomendowane:
- Accept-Encoding - gzip, deflate, br
#
Odpowiedzi
- X-Request-Id - Każde wywołanie metod API zwraca w odpowiedzi unikalny identyfikator.
#
Definicja obiektu błędu
Definicja obiektu error
#
Atrybuty
message string
Informacja opisująca treść błędu.
code int
Numer kodu błędu.
param string
Nazwa atrybutu. Dostępna jeśli błąd związany jest z konkretnym atrybutem obiektu.
{
"errors": [
{
"message": "Pracownik o podanym id już istnieje.",
"code": 1,
"param": "employee"
},
{ ... }
]
}
#
Definicja obiektu listy
Definicja obiektu list
#
Atrybuty
paging object
Obiekt reprezentujący informacje o stronicowaniu wyników.
current int
Numer strony.
total int
Liczba wszystkich dostępnych stron z wynikami.
items array
Lista obiektów.
{
"paging": {
"current": 1,
"total": 1
},
"items": [
{ Object },
{ Object },
{ ... }
]
}