Jak bezpiecznie publikować odpowiedzi z formularza na Twojej stronie
Częsta prośba: „Chcę pokazać listę zapisanych osób na naszej stronie” albo „Potrzebuję odpowiedzi w moim własnym panelu administracyjnym”. REST API to umożliwia, a o tym, czy wdrożenie będzie bezpieczne, decyduje jedna rzecz: gdzie znajduje się klucz API.
Warto wiedzieć: edytor Gatherino i konto są dostępne po angielsku lub czesku. Formularze wypełniane przez respondentów mogą być wyświetlane w 18 językach, w tym po polsku.
Podstawowa zasada
Klucz API powinien znajdować się na Twoim serwerze, nigdy w kodzie JavaScript po stronie przeglądarki. Umieszczenie klucza w kodzie front-endu sprawia, że każdy może odczytać go ze źródła strony i pobrać każdą odpowiedź z każdego Twojego formularza, nie tylko tych, które chciałeś pokazać.
Prawidłowy przebieg wygląda tak: przeglądarka pyta Twój serwer → serwer pyta Gatherino z kluczem → serwer zwraca tylko te pola, które mają być publiczne.
Część serwerowa
Pobieranie odpowiedzi na backendzie (Node.js):
const res = await fetch(
`https://gatherino.com/api/v1/submissions?formId=${FORM_ID}&limit=100`,
{ headers: { Authorization: `Bearer ${process.env.GATHERINO_KEY}` } }
);
const { items, total, totalPages } = await res.json();
// Publish selected fields only — never the whole data object
const publicList = items.map((s) => ({
name: s.data[FIELD_NAME_ID],
city: s.data[FIELD_CITY_ID],
}));Kroki
- 1
Utwórz klucz API
W sekcji Ustawienia → Klucze API. Jest wyświetlany tylko raz, dlatego zapisz go w zmiennej środowiskowej po stronie serwera.
- 2
Znajdź ID pól
Punkt końcowy szczegółów formularza zwraca ID i etykietę każdego pola. Zachowaj mapowanie, ponieważ ID są stabilne.
- 3
Obsłuż paginację
Jedno żądanie zwraca maksymalnie 100 odpowiedzi. Pobieraj kolejne strony, korzystając z pola totalPages.
- 4
Dodaj buforowanie
Nie wywołuj API przy każdym załadowaniu strony. Buforowanie na kilka minut w zupełności wystarcza i oszczędza też Twój czas.
- 5
Filtruj to, co publikujesz
Wybieraj konkretne pola. Nigdy nie wysyłaj całego obiektu odpowiedzi do przeglądarki.
Dane osobowe: lista imion na publicznej stronie internetowej to publikacja danych osobowych. Upewnij się, że masz podstawę prawną, albo publikuj wyłącznie informacje, których respondenci mogą się spodziewać jako publicznych (na przykład imiona na liście startowej, o której wcześniej wiedzieli).
FAQ
Czy mogę wywoływać API bezpośrednio z przeglądarki?
Nie z kluczem API — byłby on wtedy publiczny. Zawsze przechodź przez własny serwer.
Dlaczego klucze danych wyglądają jak field_1778…?
To ID pól formularza. Pobierz ich etykiety ze szczegółów formularza.
Jak często powinienem pobierać dane?
Zależy to od potrzeb. W przypadku listy zapisanych osób wystarczy co kilka minut. Do natychmiastowych reakcji użyj webhooka.
Czy API obsługuje polskie znaki diakrytyczne?
Tak, wszystko jest zakodowane w UTF-8.
Powiązane
Wypróbuj Gatherino za darmo
Plan darmowy: 3 formularze i 100 odpowiedzi miesięcznie. Bez karty kredytowej, dane hostowane w UE.
Zacznij za darmo →