Search

Home

REST API CALL

REST API CALL

Operator CALL REST API umożliwia integrację z dowolnym zewnętrznym serwisem REST, oferując pełną elastyczność w zakresie konfiguracji wywołań HTTP. Działa na poziomie pojedynczego wywołania (niezależnie od ilości rekordów na magistrali) lub pojedynczych rekordów magistrali, co oznacza, że dla każdego rekordu wykonuje osobne zapytanie, przesyłając dane w wymaganym formacie i odbierając odpowiedź.

Operator pozwala na:

  • Dowolne modelowanie adresu URL usługi korzystając z bitów magistrali, parametrów projektu czy parametrów globalnych
  • dowolne definiowanie nagłówków, parametrów oraz treści żądania (np. JSON, form-data, query string),
  • dynamiczne wstawianie wartości z bitów magistrali oraz parametrów projektu,
  • wybór metody HTTP (GET, POST, PUT, DELETE itd.),
  • obsługę autoryzacji (Basic, Bearer Token, niestandardowe),
  • oraz mapowanie odpowiedzi do istniejących bitów magistrali, w tym zapisywanie zwróconych danych i kodu statusu HTTP.

Dzięki temu operatorowi GRAVITY może działać jako aktywny klient usług zewnętrznych, automatyzując pobieranie, przesyłanie i synchronizację danych w czasie rzeczywistym.

Przykład projektu z użyciem operatora CALL REST API.

image

Operator jest operatorem bliźniaczym z INPUT REST APIINPUT REST API i główne szczegóły konfiguracji są opisane na tym operatorze.

Występują jednak pewne różnice wynikające z faktu, że operator jest operatorem środkowym - wpiętym w magistralę, a co za tym idzie domyślnie przetwarzanie uruchamiane jest dla każdego rekordu magistrali danych. W takim przypadku możliwe jest użycie bitów magistrali do budowy zarówno body jak i adresu wywoływanej usługi. Również dane zwracane przez serwis jak i wartość status code wstawiane są do każdego rekordu magistrali, dla którego nastąpiło wywołanie usługi. Możliwe jest również podanie wcześniej przygotowanych bitów (np. prze operator WIDTH BUSBARWIDTH BUSBAR ) do przechowania tych danych.

Zakładka Execution wymaga określenia czy wywołanie ma być w trybie Single execution (jeden raz dla wszystkich rekordów) czy dla każdego rekordu osobno. W polu Result target możliwe jest wybranie opcji Value into an existing column pozwalające na wybór kolumny z magistrali gdzie trafi rezultat zwracany przez serwis. Podobnie z pozostałymi kolumnami.

image
  • W przypadku zaznaczenia trybu Single execution operator będzie się zachowywać jak operator INPUT REST APIINPUT REST API. Wykona się tylko raz. Zwróci magistralę wyjściową zbudowaną z jednego rekordu z wartością status code i rezultatem zwróconym z serwisu. Nie można będzie użyć bitów magistrali w budowie adresu usługi, parametrach wywołania itp.
  • Jedyne miejsce możliwe do użycia bitów magistrali będzie w body typu raw, gdzie będzie możliwość zbudowania body wysyłanego do usługi z znacznikami LOOP i ENDLOOP.

    image

    Tekst w znacznikach zostanie powielony tyle razy ile było rekordów na magistrali wejściowej.

  • W przypadku wywołania dla każdego rekordu możliwe staje używanie bitów magistrali w budowie adresu, parametrów i body zapytania do usługi.
  • image

    Wywołanie usługi nastąpi tyle razy ile będzie rekordów na magistrali wejściowej, a rezultat wywołania zostanie przekazany do bitów wskazanych w zakładce Execution.

    image
    icon
    Zapoznaj się z uruchamianiem projektu w trybie debugera