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.

 Czym jest integracja API?

Aby ułatwić wprowadzanie i pobieranie danych – komunikację z bazą danych systemu Systell Contact Center, udostępniamy Ci możliwość korzystania z API integracyjnego.

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

Scenariusze integracyjne

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

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

Jeśli przed rozpoczęciem prac z API integracyjnym, potrzebujesz zapoznania się z podstawowymi definicjami, przejrzyj wprowadzenie dla managera.

Ważne

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

Pobranie tokena autoryzacyjnego

Żeby do przekazywania danych skorzystać z API integracyjnego, konieczne jest uzyskanie dostępu do tego typu komunikacji.

Ważne

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

Aby 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

Kontakt w SCC, jest to zbiór zdefiniowanych wartości:

  • Dane osobowe: imię, nazwisko i nazwa firmy.
  • Dane kontaktowe: numer telefonu, drugi numer telefonu, adres poczty elektronicznej, adres fizyczny (ulica), numer domu, miasto, kod pocztowy, województwo.

Ważne

Jeśli potrzebujesz przekazać do SCC dodatkowe dane dotyczące kontaktu (na przykład NIP, PESEL, REGON), skontaktuj się z nami – wymaga to wcześniejszego przygotowania.


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.

Dodanie sprawy

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

Pomocne

Sprawa w SCC to obiekt łączący kontakt z kampanią. Zawiera informacje związane z obsługą pojedynczego zgłoszenia.

Ważne

Ż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.

Ważne

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?