Przejdź do głównej zawartości

Aplikacje deweloperskie, klucze API i webhooki

Twórz aplikacje i klucze API, testuj w sandboxie, wysyłaj webhooki, instaluj aplikacje innych firm oraz przeglądaj logi żądań i wydatki według klucza.

Napisane przez Sarah Chen

Ustawienia Deweloper to miejsce, w którym łączysz Exayard z własnym kodem i z aplikacjami tworzonymi przez inne firmy. Otwórz Ustawienia, a następnie Deweloper. Tę pozycję w menu Ustawienia widzą tylko administratorzy firmy. Członek, który otworzy tę stronę, może ją przeglądać, ale nie może niczego zmienić.

Aplikacje, klucze API, webhooki i logi są dostępne w każdym planie, także w planie Free. Płatna jest tylko praca AI.

Aplikacje

Aplikacja to jedna z Twoich integracji, na przykład „Kosztorysant Acme” lub „Nocna synchronizacja”. Każdy klucz API należy do aplikacji. Aplikacje to pierwsza sekcja na stronie. Może ją przeglądać każdy członek. Tylko administratorzy tworzą i zmieniają aplikacje.

Kliknij Nowa aplikacja i wypełnij pola Nazwa, Opis, Strona główna, E-mail pomocy technicznej i Zakresy. Zakresy są podzielone na odczyt i zapis dla każdego zasobu, na przykład read:projects i write:estimates. Aplikacje nie mogą prosić o zakres admin:org. Firma może mieć maksymalnie 25 aplikacji.

Każda aplikacja pokazuje datę utworzenia i swój limit żądań, na przykład „Do 60 żądań na minutę na firmę i 600 łącznie”. Menu Więcej działań aplikacji zawiera:

  • Edytuj zmienia dane i zakresy aplikacji.

  • Webhook ustawia jeden adres, który otrzymuje zdarzenia ze wszystkich firm, które zainstalowały aplikację.

  • Usuń aplikację usuwa aplikację i unieważnia wszystkie jej klucze. Każda firma, która ją zainstalowała, traci dostęp.

Klucze API

Klucz API pozwala Twojemu własnemu kodowi wywoływać API Exayard. Klucze znajdują się w aplikacji, w sekcji Klucze. Klucz działa w firmie, do której należy jego aplikacja, więc nie trzeba przekazywać identyfikatora firmy.

Aby utworzyć klucz, kliknij Nowy klucz w aplikacji. Wpisz nazwę klucza w polu Nazwa, na przykład „Produkcja”. W sekcji Zakresy wybierz Wszystkie, aby przyznać wszystkie zakresy aplikacji, lub Wybrane, aby wskazać mniej. Jeśli klucz służy do krótkotrwałej pracy, ustaw opcjonalną datę w polu Wygasa. Klucz działa do końca tego dnia. Kliknij Utwórz.

Exayard wyświetla pełny klucz tylko raz. Skopiuj go wtedy, ponieważ nie zostanie już nigdy pokazany. Exayard przechowuje tylko zaszyfrowaną kopię, więc utraconego klucza nie da się odzyskać. Utwórz nowy klucz i unieważnij stary.

Klucz zaczyna się od exa_live_. Klucz utworzony w sandboxie zaczyna się od exa_test_. Po utworzeniu klucz pokazuje swoją nazwę, podgląd w postaci exa_live_...AbCd oraz informację Ostatnie użycie lub Nigdy nieużywany. Klucz z datą wygaśnięcia pokazuje Wygasa i datę, a klucz, który wygasł, pokazuje Wygasł.

Aplikacja może mieć maksymalnie 25 aktywnych kluczy. Klucz, który wygasł, nadal jest wliczany, dopóki go nie unieważnisz. Aby wymienić klucze bez przerwy w działaniu, utwórz drugi klucz, przełącz na niego swoje serwery, a następnie unieważnij pierwszy.

Otwórz menu Działania klucza, aby zmienić jego nazwę (Zmień nazwę) lub go unieważnić (Unieważnij). Unieważnienie jest nieodwracalne, a klucz przestaje działać w ciągu 30 sekund.

Jeśli klucz pojawi się w miejscu publicznym, na przykład w publicznym repozytorium kodu, Exayard unieważnia go, wysyła e-mail do Twoich administratorów i pozostawia go na liście z oznaczeniem Znaleziony publicznie, unieważniony.

Gdy inna firma zainstalowała Twoją aplikację, okno nowego klucza pokazuje także opcję Gdzie działa. Domyślnie wybrana jest Ta firma. Każda firma, która ją zainstalowała tworzy klucz, którego Twój serwer używa w każdej z tych firm. Każde wywołanie wskazuje wtedy swoją firmę w nagłówku Exayard-Organization-Id.

Te same klucze łączą narzędzia no-code. Zobacz Łączenie Exayard z Zapier, Łączenie Exayard z Make oraz Łączenie Exayard z n8n. Informacje o asystentach AI znajdziesz w artykule Łączenie Exa z asystentem AI.

Starsze klucze

Klucze utworzone, zanim klucze zaczęły należeć do aplikacji, zaczynają się od ak_. Nadal działają, ale nie można tworzyć nowych. Pojawiają się w sekcji Starsze klucze na dole strony, tylko dopóki jakieś istnieją.

Każdy administrator widzi tam wszystkie klucze firmy, niezależnie od tego, kto je utworzył. Klucz utworzony przez inną osobę pokazuje Utworzone przez i jej imię i nazwisko. Każda osoba widzi także swoje własne klucze osobiste. Kliknij ikonę kosza, aby unieważnić klucz (Unieważnij). Klucz natychmiast przestaje działać.

Sandboxy

Sandbox to firma testowa powiązana z Twoją. Używaj jej do tworzenia i testowania integracji bez ingerowania w prawdziwe projekty. Sekcję Sandboxy widzą tylko administratorzy.

Kliknij Nowy sandbox, wpisz nazwę w polu Nazwa i kliknij Utwórz. Firma może mieć maksymalnie 5 sandboxów. Otwórz przełącza Cię do sandboxa, a przełącznik firm oznacza go jako Sandbox. Utwórz w nim aplikację i klucz w zwykły sposób. Jego klucze zaczynają się od exa_test_. Aby przejść do środowiska produkcyjnego, utwórz taką samą aplikację i klucz w swojej prawdziwej firmie i podmień klucz w swoim kodzie.

Sandbox korzysta z planu Twojej firmy, a za jego wykorzystanie płaci Twoja firma. Nie ma własnych rozliczeń ani własnego miesięcznego wykorzystania AI. Webhooki i integracje działają tak samo jak w Twojej prawdziwej firmie.

Sandbox nie wysyła e-maili z udostępnionymi ofertami ani podpisanych kopii do osób spoza niego i nie wysyła SMS-ów. Są one oznaczone jako „Nie wysłano, ponieważ ta firma jest sandboxem”. Zaproszenia do sandboxa są wysyłane normalnie.

Przedmiary i odczyty plików w sandboxie zwracają bezpłatnie wyniki skopiowane z naszego przykładowego projektu. Przedmiar, jego strony i webhook o zakończeniu przedmiaru są oznaczone jako przykładowe. Kosztorysy, oferty, wyszukiwanie elementów i czat również odpowiadają bezpłatnie danymi przykładowymi.

Aby usunąć sandbox, kliknij Usuń w jego wierszu, a następnie Usuń sandbox. Sandbox zostaje zamknięty, jego klucze przestają działać, a jego dane zostaną później usunięte.

Webhooki

Webhook sprawia, że Exayard powiadamia Twój serwer, gdy coś wydarzy się w Twojej firmie. Listę może przeglądać każdy członek. Tylko administratorzy dodają i zmieniają webhooki.

Kliknij Utwórz webhook, wpisz w polu URL adres, na który mają trafiać dostarczenia, i dodaj opcjonalny Opis. Wybierz Zdarzenia, które mają być wysyłane. Wybierz Wszystkie, aby otrzymywać każde zdarzenie, łącznie z nowymi, lub Wybrane, aby wskazać je z listy. Wszystkie zdarzenia i ich zawartość opisuje katalog zdarzeń webhooków.

Po utworzeniu webhooka Exayard jednorazowo wyświetla jego Sekret podpisu. Skopiuj go wtedy, ponieważ nie zostanie pokazany ponownie.

Pozostałe opcje znajdziesz w menu Więcej działań webhooka:

  • Edytuj zmienia URL, opis i zdarzenia oraz ustawia Status na Aktywny lub Wstrzymany. Wstrzymany webhook nie otrzymuje dostarczeń. W tym oknie znajduje się także przycisk Zmień sekret. Stary sekret natychmiast przestaje działać, więc najpierw zaktualizuj swój serwer.

  • Wyślij zdarzenie testowe wysyła jedno zdarzenie wybranego typu (Typ zdarzenia). Okno czeka na odpowiedź Twojego serwera i pokazuje wynik oraz kod odpowiedzi. Zdarzenie testowe zawiera "test": true.

  • Dostarczenia pokazuje ostatnie 25 dostarczeń wraz ze zdarzeniem, statusem, kodem odpowiedzi i liczbą prób. Dostarczenie ma status Oczekujące, Ponawianie, Dostarczono lub Niepowodzenie. Administratorzy mogą kliknąć Wyślij ponownie, aby ponownie wysłać dostarczenie.

  • Usuń webhook kończy wszystkie dostarczenia na ten URL.

Zdarzenie testowe i ponowne wysłanie są wysyłane jednorazowo i nigdy nie są ponawiane.

Zabezpieczanie dostarczeń webhooków

Każde dostarczenie zawiera nagłówek Exayard-Signature w formacie t=<unix>,v1=<digest>. Exayard tworzy podpis, łącząc znacznik czasu z treścią żądania, a następnie podpisując je algorytmem HMAC-SHA256 przy użyciu sekretu webhooka.

Każde dostarczenie zawiera także nagłówki Exayard-Event-Id, Exayard-Event-Type i Exayard-Organization-Id. Treść JSON zawiera pole organizationId, które wskazuje firmę, z której pochodzi zdarzenie. Nagłówek zawiera ten sam identyfikator, dzięki czemu możesz skierować dostarczenie do właściwego miejsca, zanim odczytasz treść. Podpis obejmuje całą treść, łącznie z organizationId.

Ponieważ każde dostarczenie wskazuje swoją firmę, jeden adres odbiorczy może obsługiwać wiele firm. Zarejestruj ten sam URL w każdej firmie i kieruj każde dostarczenie według organizationId. Każdy webhook ma własny sekret, więc przed weryfikacją wybierz sekret na podstawie Exayard-Organization-Id.

Aby zweryfikować dostarczenie, ponownie oblicz podpis przy użyciu swojego sekretu, sprawdź, czy znacznik czasu nie jest starszy niż pięć minut, i porównaj skróty.

Nieudane dostarczenie jest wysyłane łącznie maksymalnie 10 razy w ciągu około 80 godzin, z coraz dłuższymi przerwami między próbami. Każda próba wysyła tę samą treść i ten sam identyfikator zdarzenia. Przekierowanie jest traktowane jako niepowodzenie.

Zezwól innym firmom na instalowanie Twojej aplikacji

Twoja aplikacja działa w Twojej własnej firmie od razu po utworzeniu. Każda aplikacja ma także część Zezwól innym firmom na instalowanie tej aplikacji. Pokazuje ona, czy aplikacja ma status Zweryfikowana, Oczekuje na weryfikację czy Niezweryfikowana, a także jej Adresy logowania, ID klienta oraz liczbę firm, które mogą ją zainstalować.

Administratorzy otwierają menu Akcje instalacji, w którym znajdują się:

  • Edytuj adresy logowania ustawia adresy, na które Exayard przekierowuje użytkowników, gdy Twoja aplikacja loguje ich za pomocą konta Exayard. Wpisz jeden adres w każdym wierszu, maksymalnie 10. Każdy musi zaczynać się od https:// lub, na czas testów, od http://localhost. Gdy po raz pierwszy zapiszesz adresy logowania, Exayard jednorazowo wyświetli Sekret klienta aplikacji.

  • Kopiuj link instalacyjny kopiuje link, który możesz wysłać dowolnej firmie. Otwiera on okno instalacji dla administratora tej firmy.

  • Poproś o weryfikację wysyła aplikację do weryfikacji przez pomoc techniczną Exayard.

Nową aplikację można zainstalować w maksymalnie 25 firmach poza Twoją własną i nie pojawia się ona w sekcji Znajdź aplikacje. Firmy w sekcji Konta dla Twoich klientów nie są wliczane do tego limitu. Po zatwierdzeniu aplikacja ma status Zweryfikowana, a limit instalacji zostaje zniesiony. Użyj opcji Pokaż w „Znajdź aplikacje”, aby umieścić ją w katalogu każdej firmy, lub Ukryj w „Znajdź aplikacje”, aby ją z niego usunąć. Aplikacja ze statusem Zawieszona nie może wywoływać Exayard, dopóki pomoc techniczna nie zniesie zawieszenia, a jej instalacje zostają zachowane.

Gdy usuniesz zakresy z aplikacji, wszystkie instalacje natychmiast je tracą. Gdy dodasz zakresy, każda firma zachowuje obecny dostęp, dopóki jeden z jej administratorów nie zatwierdzi nowych zakresów.

Webhook aplikacji

Otwórz menu Więcej działań aplikacji i kliknij Webhook. Wpisz adres w polu URL i kliknij Utwórz, a następnie skopiuj Sekret podpisu, który Exayard pokazuje tylko raz. Każda firma, która zainstalowała aplikację, wysyła zdarzenia objęte przyznanymi zakresami. Twoja aplikacja otrzymuje także app.installed, app.scopes_approved i app.uninstalled, gdy firma ją instaluje, zatwierdza szerszy dostęp lub ją usuwa. Dostarczenia wskazują swoją firmę i są podpisywane tak samo jak inne webhooki.

W tym samym oknie możesz wstrzymać (Wstrzymaj) i wznowić (Wznów) dostarczenia, a także użyć opcji Zmień sekret i Usuń webhook.

Połączone aplikacje

Sekcja Połączone aplikacje zawiera listę aplikacji zainstalowanych w Twojej firmie. Widzi ją każdy członek. Tylko administratorzy instalują, usuwają i zatwierdzają aplikacje.

Każdy wiersz pokazuje nazwę aplikacji, informację, czy ma status Zweryfikowana, firmę, która ją stworzyła, kto i kiedy ją zainstalował oraz przyznane jej zakresy.

Instalowanie aplikacji

Otwórz link instalacyjny aplikacji lub kliknij Zainstaluj obok niej w sekcji Znajdź aplikacje. Okno pokazuje, kto stworzył aplikację, czy jest zweryfikowana i o jakie zakresy prosi. Następnie wybierz:

  • Firma: dowolna firma, w której jesteś administratorem. Firma, która ma już tę aplikację, jest oznaczona jako (zainstalowano). Ponowna instalacja zapisuje Twoje nowe wybory.

  • Projekty: Wszystkie projekty lub Tylko te projekty, a następnie zaznacz te, do których aplikacja może mieć dostęp, maksymalnie 500. Aplikacja nie ma dostępu do żadnego innego projektu w firmie.

  • Miesięczny limit AI: maksymalny koszt pracy AI aplikacji dla Twojej firmy w każdym miesiącu rozliczeniowym, w walucie rozliczeniowej. Pozostaw pole puste, aby wybrać Bez limitu.

Kliknij Zainstaluj. Jeśli aplikacja loguje Cię na Twoje konto, Exayard przeniesie Cię dalej, aby dokończyć logowanie w aplikacji. Jeśli jesteś członkiem, ale nie administratorem, okno poinformuje Cię, administrator której firmy może ją zainstalować. Kliknij Kopiuj link, aby mu go wysłać.

Aby później zmienić projekty, ponownie otwórz link instalacyjny i zainstaluj aplikację z nowym wyborem.

Zatwierdzanie szerszego dostępu

Gdy aplikacja prosi o więcej zakresów, jej wiersz pokazuje Prosi o szerszy dostęp wraz z nowymi zakresami. Administrator klika Zatwierdź, aby je przyznać. Do tego czasu aplikacja zachowuje dotychczasowy dostęp.

Usuwanie aplikacji

Otwórz menu Więcej działań aplikacji, kliknij Usuń i potwierdź. Aplikacja natychmiast traci dostęp do Twojej firmy, a jej webhooki przestają działać. Praca AI, którą już rozpoczęła, zostanie dokończona.

Znajdź aplikacje

Sekcja Znajdź aplikacje znajduje się w sekcji Połączone aplikacje. Zawiera zweryfikowane aplikacje, które ich twórcy zdecydowali się udostępnić na liście. Aplikacja, którą Twoja firma już ma, jest oznaczona jako Zainstalowana. Kliknij Zainstaluj przy dowolnej innej aplikacji, aby otworzyć okno instalacji.

Twoje osobiste połączenia

Sekcja Twoje osobiste połączenia zawiera listę narzędzi AI i innych aplikacji połączonych z Twoim własnym kontem Exayard, takich jak ChatGPT lub Claude. Pojawia się na górze sekcji Połączone aplikacje i tylko Ty widzisz swoje połączenia. Osobiste połączenie działa jako Ty, więc ma dostęp do wszystkiego, do czego Ty masz dostęp.

Każde połączenie pokazuje, kiedy zostało użyte po raz pierwszy i ostatni, oraz firmy, w których było używane. Aby je zatrzymać, otwórz jego menu Więcej działań, kliknij Usuń i potwierdź. Jego następne wywołanie zostanie odrzucone. Połączenie pozostaje na liście z oznaczeniem Usunięto, a opcja Zezwól ponownie przywraca mu dostęp. Aby połączyć nowe narzędzie, zobacz Łączenie Exa z asystentem AI.

Konta dla Twoich klientów

Twoja aplikacja może tworzyć firmy Exayard za pomocą API dla klientów, którzy korzystają z Exayard wyłącznie poprzez Twój produkt. Twoja firma jest właścicielem tych firm i płaci za wykonywaną w nich pracę AI. Nie mają one własnych członków, a Twoje aplikacje są w nich instalowane automatycznie.

Sekcja Konta dla Twoich klientów pokazuje je administratorom wraz z nazwą każdej firmy (Nazwa) i datą utworzenia (Utworzono). Kliknij Zrezygnuj i potwierdź, aby zamknąć firmę. Każda aplikacja w tej firmie traci dostęp.

Pierwsze kroki

Karta Szybki start zawiera gotowy prompt dla edytora AI, takiego jak Claude lub Cursor. Kliknij Kopiuj prompt i wklej go do swojego edytora. Prompt zawiera bazowy URL API, format uwierzytelniania, zakresy oraz schemat podpisywania webhooków, dzięki czemu AI może zbudować działającą integrację i zapytać Cię o potrzebne szczegóły. Tę kartę widzą tylko administratorzy, ponieważ wymaga ona klucza API.

Karta Dokumentacja zawiera link Otwórz dokumentację do pełnej dokumentacji dla deweloperów oraz link do dokumentu Specyfikacja OpenAPI, który opisuje każdą ścieżkę i schemat. Administratorzy widzą także opcję Połącz z Claude lub Cursor, która otwiera konfigurację łączenia asystentów AI z Exayard.

Logi

Sekcja Logi pokazuje żądania wysłane do API, od najnowszych. Każdy wiersz pokazuje kolumny Metoda, Ścieżka, Status, Czas i Opóźnienie. Kliknij Załaduj więcej na dole, aby zobaczyć starsze żądania.

Administratorzy widzą wszystkie żądania. Członkowie widzą tylko żądania, które nie zostały wysłane przez aplikację.

Administratorzy mogą filtrować według pola Aplikacja, a następnie według jednego z kluczy tej aplikacji. Każdy może wpisać wartość w polu Użytkownik końcowy, aby zobaczyć tylko żądania danego klienta. Użytkownik końcowy to Twój własny identyfikator jednego z Twoich klientów. Twój kod wysyła go z każdym żądaniem w nagłówku Exayard-End-User. Nigdy nie używaj adresu e-mail jako identyfikatora.

Wybierz wiersz, aby zobaczyć pełne szczegóły, w tym ID żądania, aplikację i użytkownika końcowego oraz Treść żądania i Treść odpowiedzi. Korzystaj z logów, aby potwierdzić, że wywołanie się powiodło, lub aby ustalić, dlaczego integracja nie działa.

Wydatki według klucza i użytkownika końcowego

Administratorzy widzą, ile każda aplikacja wydała w tym miesiącu, w sekcji Wydatki według aplikacji w Ustawienia, a następnie Wykorzystanie. Znajdują się tam także Twoje własne aplikacje. Pod każdą aplikacją sekcja Według klucza pokazuje, ile wydał każdy klucz, a sekcja Najwięksi użytkownicy końcowi pokazuje pięciu użytkowników końcowych, którzy wydali najwięcej. Wydatki niepowiązane z żadnym kluczem aplikacji są oznaczone jako Inne.

Miesięczny limit AI

Miesięczny limit AI aplikacji to maksymalny koszt jej pracy AI dla Twojej firmy w każdym miesiącu rozliczeniowym. Aby go ustawić, otwórz menu Więcej działań aplikacji w sekcji Wydatki według aplikacji i kliknij Ustaw miesięczny limit AI. Wpisz kwotę w walucie rozliczeniowej i kliknij Zapisz. Zapisz puste pole, aby usunąć limit.

Gdy aplikacja osiągnie swój limit, jej praca AI jest odrzucana do końca miesiąca rozliczeniowego, nawet jeśli Twojej firmie nadal pozostało wykorzystanie AI. Własne limity Twojej firmy nadal obowiązują. Praca AI uruchamiana samodzielnie przez użytkowników nigdy nie jest wliczana do limitu aplikacji.

Czy to odpowiedziało na twoje pytanie?