Interfejs REST

Informacje dla firm

Uwierzytelnianie

Wszystkie firmy zarządzające muszą uwierzytelnić się za pomocą tokenu dostępu o ograniczonym czasie ważności (token oAuth Bearer). W tym celu otrzymują one za pośrednictwem portalu (w zakładce „Ustawienia importu danych”) dane użytkownika serwisu (ID i sekret). Dzięki tym danym firma może zażądać tokenu dostępu o ograniczonym czasie ważności za pośrednictwem interfejsu. Token dostępu musi być następnie przekazany do interfejsu zdarzeń jako token nośnikowy w nagłówku uwierzytelniającym podczas komunikacji HTTP z interfejsem.

Jeśli firma zarządza kilkoma innymi firmami, token dostępu musi być utworzony wyłącznie dla identyfikatora CareFlex firmy zarządzającej. Wszystkie pozostałe zgłoszenia dotyczące różnych identyfikatorów CareFlex są zgłaszane przy użyciu tokenu dostępu firmy zarządzającej. W związku z tym do zarządzania wszystkimi firmami przypisanymi do głównego identyfikatora CareFlex potrzebna jest tylko jedna kombinacja użytkownika usługi i klucza tajnego użytkownika usługi.

Autoryzacja

Wszystkie przedsiębiorstwa muszą przekazać zarówno token API, jak i identyfikator CareFlex podczas zgłoszenia.

Wraz ze zgłoszeniem należy przesłać identyfikator CareFlex (przedsiębiorstwa uprawnionego) oraz token API (przedsiębiorstwa zgłaszającego).

Token API można wygenerować w portalu firmowym w sekcji „CRM” / „Ustawienia importu danych”. Istnieje tylko jeden token API dla wszystkich podmiotów zarządzanych przez daną firmę.

Poprawność identyfikatora CareFlex ID w połączeniu z tokenem API nie jest sprawdzana podczas wysyłania wiadomości, ale można ją zweryfikować po pomyślnym zaimportowaniu wysłanej wiadomości do portalu za pomocą funkcji informacji zwrotnej.

Funkcje interfejsu

  • Zgłaszanie zdarzeń kadrowych z danymi podstawowymi i bez nich
    Punkt końcowy REST: incident/new
    Uwaga: W jednym żądaniu REST można przesłać maksymalnie 100 zdarzeń kadrowych.
  • Zgłoszenie braku zdarzeń
    Punkt końcowy REST: incident/none
    Opis: Żądanie to należy wysłać, jeśli w bieżącym miesiącu nie wystąpiły żadne zdarzenia kadrowe.

Przykład komunikacji

Zapytanie o token dostępu

POST EP1 (patrz wyżej)
z treścią JSON:
{
"grant_type":"password",
"username":"<user_id (użytkownik usługi)>",
"password":"<user_secret (użytkownik usługi)>"
}
oraz nagłówkami:
"Content-Type: application/json"


Odpowiedź zawiera token dostępu ważny przez 12 godzin

{
"access_token":"P7kmfo8HXItLLOReHq65o4%§ggg45dYhSm5ODc",
"token_type":"Bearer",
"expires_in":43200,
                "created_at":1589887223
}


Token dostępu jest używany jako token na okaziciela podczas komunikacji z interfejsem

POST
REST EP3 (patrz wyżej)
z nagłówkami REST:
„Authorization: Bearer
P7kmfo8HXItLLOReHq65o4%§ggg45dYhSm5ODc” „Content-Type: application/json;charset=UTF-8”

 


Pusta wiadomość

REQUEST
{
"careflexId": "09ce3580d84bf087",
"apiToken": "maL0HMDszA2b9PKiqCAZRGh0ZDpVjmvc",
"createdAt": „2020-10-24”
}
RESPONSE
HTTP-RESPONSE: 201 Utworzono

Przykłady ładowności

Powiadomienia z danymi podstawowymi i bez nich

REQUEST
{
"careflexId": "09ce3580d84bf087",
"apiToken": "maL0HMDszA2b9PKiqCAZRGh0ZDpVjmvc",
"incidentList": [
{
           "externalId": "1000" ,
"type": "NEU",
"employeeId": "49239697103",
"createdAt": "2020-10-24",
"validFrom": "2020-10-24",
"employee": {
"title": "Prof. Dr.",
"firstName": "Thomas",
"lastName": "Mustermann",
"birthday": "1979-01-15",
"sex": "m",
"address": {
"street": "Musterstraße",
"houseNumber": 9,
                   "adresSufiks": "c/o Max Hauptmieter",
"kodPocztowy": "01234",
"miasto": "Musterstadt",
"kraj": „DE”
},
               "job": {
"employmentSite": "Oddział 1",
"employmentStatus": "T",
"startOfEmployment": "2020-04-24",
                  "personnelNumber": "string",
"management": false
},
"contact": {
"emailBusiness": "thomas.mustermann@musterfirma.de",
"mobileBusiness": "0123 12345678",
"landlineBusiness": „030 12345678”
}
}
},
{
"externalId": "1234-xx",
           "type": "SDB",
"createdAt": "2021-06-30",
"validFrom": "2021-07-01",
"employeeId": "12345678901",
           "employee": {
"firstName": "Thomas",
"lastName": „Mustermann”
}
},
{
"type": "WIK",
          "employeeId": "49239697103",
"createdAt": "2020-09-24",
"validFrom": "2020-08-24"
}
]
}

RESPONSE
{
"importId": "8d2adbc0-4d63-4cec-a8f4-445b08a3e33e",
"incidentResponseList": [
{
"rowNumber": 0,
           "incidentId": "8ba8977c-a75b-4ec0-9798-7a7f14209720",
"externalId": "1000",
"employeeId": "49239697103",
          "type": „NOWY”
},
{
"rowNumber": 1,
"incidentId": "916aebfc-2feb-429b-8631-52703a195ad9",
           "externalId": "1234-xx",
"employeeId": "12345678901",
"type": „SDB”
},
{
"rowNumber": 2,
           "incidentId": "e8b77933-2a31-404c-9e23-8b547b37068f",
"externalId": null,
"employeeId": "49239697103",

          "type": „WIK”
}
]
}

Scroll to top