Centrum pomocy / Systell Contact Center API

Systell Contact Center API

pliki do pobrania

biblioteka.json


Pomocne
  • Jeśli adresem Twojego Systell Contact Center byłoby https://TWOJ_SYSTEM.scc24.pl, adres API to https://TWOJ_SYSTEMapi.scc24.pl.
  • W plikach do pobrania załączamy kolekcję endpointów w formacie PostMan. Kolekcja jest integralną częścią tej dokumentacji.

Aby ułatwić wprowadzanie i pobieranie danych – komunikację z bazą danych systemu Systell Contact Center, dajemy Ci dostęp do API integracyjnego. API jest to pośrednik w przekazywaniu informacji między systemami różnych rodzajów. Nie obsługuje się go przy pomocy aplikacji SCC, a jedynie na poziomie programistycznym.

Korzyści biznesowe
  • Możesz wprowadzać dane do systemu Systell Contact Center, na przykład z Twoich formularzy strony internetowej.
  • Możesz pobierać dane z bazy Systell Contact Center na potrzeby obróbki poza systemem lub raportowania zleceniodawcy.

API integracyjne daje wiele możliwości. Opisaliśmy dla Ciebie kilka podstawowych scenariuszy integracji:

  • Dodanie kontaktów.
  • Dodawanie spraw.
  • Synchronizacja kontaktów.

Ważne

Scenariusze przewidują, że masz już skonfigurowane niektóre elementy środowiska (na przykład kampanie).

 

Pobranie tokena autoryzacyjnego

Przekazywanie danych z wykorzystaniem API integracyjnego, wymaga uzyskania zabezpieczonego dostępu do tego typu komunikacji.

Ważne

Pobranie tokena autoryzacyjnego jest wymagane do realizacji każdej z kolejnych metod API integracyjnego.

Żeby pobrać token, niezbędny do wywołania metod API integracyjnego, będziesz potrzebować:

  • Login użytkownika.
  • Hasło do konta użytkownika.

Dane te uzyskasz od nas.

 

Aby pobrać token wywołaj:

{
    //login do NEXT - dostarczony przez Systell
    "login": "api_user",
    //hasło do NEXT - dostarczone przez Systell
    "password": "pass"
}

Jeśli podane dane będą prawidłowe, w odpowiedzi API otrzymasz token dostępu.

 

Dodanie kontaktu

Jedną z podstawowych możliwości wykorzystania API integracyjnego jest dodawanie kontaktów do systemu Systell Contact Center.

Pomocne

Pojedynczy kontakt w systemie, to zbiór danych dotyczących osoby lub przedsiębiorstwa, takich jak nazwisko lub nazwa, kontaktowy numer telefonu czy adres email.

 

Aby dodać kontakt wywołaj (dane przykładowe):

POST
IntegrationApi/Record

{
    "name": "Nazwa",
    "firstName": "Jan",
    "lastName": "Testowski",
    "city": "Poznań",
    "region": "TEST6",
    "postCode": "60-600",
    "phoneNumber1": "123456789",
    "phoneNumber2": "987654321",
    "email": "jan.testowski@systell.eu",
    "recordItems": [
        {
            "name": "PoleTest",
            "value": "Dodatkowe pole na dane kontaktu"
        }
    ]
}
}

W rezultacie otrzymasz status 201 created oraz identyfikator nowo dodanego kontaktu.

Dobre praktyki

Uzyskany identyfikator dobrze jest zapisać w swoim systemie. Ułatwi to późniejsze aktualizacje kontaktu i na przykład dodanie go do kampanii.

 

Dodatkowe pola danych kontaktu

Jeśli potrzebujesz przekazać do SCC dodatkowe parametry dotyczące kontaktu, które zostały skonfigurowanie w czasie wdrażania systemu (na przykład Telefon zapasowy), najpierw konieczne będzie pobranie danych definiujących to pole.

 

Aby pobrać definicje pól kontaktu wywołaj (dane przykładowe):

GET
IntegrationApi/Record/GetDefinitions

 

 

{
    "record":[
        {
            "key": "Name",
            "value": "Firma"
        },
        {
            "key": "FirstName",
            "value": "Imię"
        },
        { 
            "key": "LastName", 
            "value": "Nazwisko"
        },
        {
            "key": "Adress",
            "value": "Adres"
        },
        { 
            "key": "PhoneNumber1", 
            "value": "Telefon 1"
        },
        {
            "key": "RecordEmail",
            "value": "Email"
        },
        { 
            "key": "PESEL", 
            "value": "PESEL"
        },
        {
            "key": "REGON",
            "value": "REGON"
        },
        { 
            "key": "KRS", 
            "value": "KRS"
        },
        {
            "key": "NIP",
            "value": "NIP"
        },
        { 
            "key": "Position", 
            "value": "Stanowisko"
        }
    ]
    "recordItems":[
        {
            "key": "Telefon_zapasowy",
            "value": "Telefon zapasowy"
         }
    ]
}

Gdzie, w otrzymanym rezultacie:

  • key – to nazwa parametru w bazie danych,
  • value – jest nazwą tego parametru widoczną w systemie Systell Contact Center.

 

Dodanie sprawy

Kolejną opcją wykorzystania API integracyjnego SCC jest dodawanie spraw.

Pomocne

Sprawa stanowi powiązanie między kontaktem a kampanią. Zawiera informacje związane z obsługą pojedynczego zgłoszenia.

Żeby dodać do systemu sprawę, będziesz potrzebować:

  • Identyfikator kontaktu – znasz go ze scenariusza dodawania kontaktu, ze scenariusza synchronizacji kontaktów lub uzyskasz przez wyszukiwanie.
  • Identyfikator kampanii – te dane uzyskasz od nas.

To minimalny wymagany zestaw danych do założenia sprawy. Wszystkie pozostałe informacje zamieszczasz według swoich potrzeb.

 

Aby dodać sprawę wywołaj (dane przykładowe):

POST
IntegrationApi/Case

{
    "campaignId": "BC83823E-7AED-4977-AA22-3D1FD4B620B6",
    "recordID": "9d4b79dd-5205-4b36-abd7-f63e4192b197",
    "extendedData": {
        "TextField11": "Jedno z wielu pól dodatkowych do których można przekazać dane powiązane ze sprawą." 
    }
}

W rezultacie otrzymasz status 201 created oraz identyfikator nowo utworzonej sprawy.

Dobre praktyki

Identyfikator dobrze jest zapisać w swoim systemie. Ułatwi to późniejsze wprowadzanie zmian w sprawie, na przykład zmianę status, przekazanie źródła pochodzenia sprawy lub dodanie numeru identyfikacyjnego systemu zewnętrznego (CRM, ERP).

Dodawanie do danych sprawy dodatkowych informacji umożliwiają pola extendedData. Listę pól do uzupełniania otrzymasz od nas.

 

Synchronizacja kontaktów

Synchronizacja jest akcją uzupełniającą do scenariusza dodawania kontaktów.

Pomocne

Synchronizacja jest procesem umożliwiającym:

  • Aktualizowanie listy kontaktów, bez powielania wpisów, mimo że wprowadzana lista może zawierać mieszaninę kontaktów już dodanych do SCC wcześniej i nowych.
  • Aktualizowanie danych w istniejących kontaktach.

Do synchronizacji danych kontaktu będą potrzebne:

  • Nazwa pola, według którego ma zostać określone czy jest to nowy kontakt do dodania, czy istniejący do aktualizacji danych – żeby synchronizacja zadziałała prawidłowo musi być to pole zawierające wartości unikatowe dla każdego wpisu.
  • Dane kontaktu do dodania lub aktualizacji.

 

Żeby zsynchronizować dane kontaktowe w SCC wywołaj (dane przykładowe):

POST
IntegrationApi/Record/Upsert

Przykład synchronizacji danych po polu Email, w którym przechowywane są informacje o adresie poczty elektronicznej kontaktu:

{
    "record": {
        "name": "Nazwa",
        "firstName": "Jan",
        "lastName": "Testowski",
        "phoneNumber1": "123456789",
        "email": "jan.testowski@systell.eu",
        "region": "jan.testowski@systell.pl"
    },
    "syncFields": [
        "record.region"
    ]
}

Jeśli w systemie istnieje już kontakt o danym adresie email – jego pozostałe dane zostaną zaktualizowane. Jeżeli podany adres nie znajduje się w polu Email przypisanego do żadnego z istniejących kontaktów – zostanie utworzony nowy kontakt.

 

Przykład dodania nowego kontaktu:

{
    "operationName": "INSERT",
    "records": [
        {
            "id": "aeca92df-6aa9-4eab-a844-7811a9989d72",
            "recordNumber": "R9LCH9T1W1",
            "lastUse": "1899-12-31T23:00:00Z",
            "lastActiveUse": "1899-12-31T23:00:00Z",
            "timeOfCreation": "2023-08-21T11:38:17Z",
            "timeOfModification": "2023-08-21T11:38:17Z",
            "recordItems": [],
            "recordType": {
                "key": "efd810b0-f462-4e01-9160-b69621b78c58",
                "name": "RECORD_TYPE_RECORD",
                "description": "Jestem ciekaw ile się tekstu tu zmieści (Kontakt)"
            }
            "parent": null, 
            "children": null, 
            "guardian": null, 
            "name": "Nazwa", 
            "firstName": "Jan", 
            "lastName": "Testowski", 
            "address": "", 
            "addressNumber": "", 
            "city": "", 
            "region": "jan.testowski.systell.pl", 
            "postCode": "", 
            "phoneNumber1": "123456789", 
            "phoneNumber2": "", 
            "customKey": "",
            "blocked": 0, 
            "lifeSpan": null, 
            "nextId": "R9LCH9T1W1", 
            "email": "jan.testowski@systell.eu", 
            "nip": null, 
            "pesel": null, 
            "regon": null, 
            "krs": null, 
            "position": null
        }
    ]
    "succeeded": true
}

 

Przykład zaktualizowania istniejącego kontaktu:

{
    "operationName": "UPDATE", 
    "records": [
        {
            "id": "aeca92df-6aa9-4eab-a844-7811a9989d72", 
            "recordNumber": "R9LCH9T1W1", 
            "lastUse": "1899-12-31T23:00:00Z", 
            "lastActiveUse": "1899-12-31T23:00:00Z", 
            "timeOfCreation": "2023-08-21T11:38:17Z", 
            "timeOfModification": "2023-08-21T11:41:37Z", 
            "recordItems": [], 
            "recordType": {
                "key": "efd810b0-f462-4e01-9160-b69621b78c58", 
                "name": "RECORD_TYPE_RECORD", 
                "description": "Jestem ciekaw ile się tekstu tu zmieści (Kontakt)" 
            }
            "parent": null, 
            "children": null, 
            "guardian": null, 
            "name": "Nazwa", 
            "firstName": "Jan", 
            "lastName": "Testowski", 
            "address": "", 
            "addressNumber": "", 
            "city": "", 
            "region": "jan.testowski.systell.pl", 
            "postCode": "", 
            "phoneNumber1": "123456789", 
            "phoneNumber2": "", 
            "customKey": "", 
            "blocked": 0, 
            "lifeSpan": null, 
            "nextId": "R9LCH9T1W1", 
            "email": "jan.testowski@systell.eu", 
            "nip": null, 
            "pesel": null, 
            "regon": null, 
            "krs": null, 
            "position": null
        }
    ]
    "succeeded": true
}

 

 

 

Pomocne

Pamiętaj, że jeśli masz pytania lub potrzebujesz rozwiązania problemu z samodzielną integracją, zawsze możesz liczyć na nasz zespół specjalistów i skontaktować się z nami

Czy artykuł był pomocny?