Natywne opakowania dla API Ajoxi. Rozpocznij pracę w ciągu kilku minut dzięki klientom bezpiecznym dla typów i wbudowanej weryfikacji elementu webhook.
Ta sama powierzchnia we wszystkich czterech językach. Ta sama częstotliwość wydawania. Ta sama umowa SLA.
$ npm install @ajoxi/sdk$ pip install ajoxi$ go get github.com/ajoxi/ajoxi-go$ gem install ajoxiTa sama operacja w każdym zestawie SDK — zainicjuj klienta, wywołaj calls.create, zapisz wynik. Wybierz język i skopiuj fragment.
Klawisze trybu testowego (AJX_TEST_…) nawiązuj połączenia z naszym symulatorem. Nigdy nie dzwonią z prawdziwego telefonu i nie naliczają opłat za Twoje minuty — idealne rozwiązanie dla CI.
import Ajoxi from '@ajoxi/sdk';
const ajoxi = new Ajoxi({ apiKey: process.env.AJOXI_KEY });
const call = await ajoxi.calls.create({
to: '+14155551234',
from: '+14155550100',
aiReceptionist: true,
});
console.log(call.id, call.status);Każdy zestaw SDK Ajoxi zawiera te same elementy operacyjne, dzięki czemu możesz skupić się na logice biznesowej.
Pełne definicje typów dla każdego punktu końcowego i odpowiedzi — bez zgadywania nazw pól.
Sygnały sieciowe i błędy 5xx są ponawiane automatycznie z wykładniczym wycofywaniem, z uwzględnieniem opcji Retry-After.
Jednowierszowa weryfikacja podpisu HMAC-SHA256 z porównaniem w stałym czasie.
Iteruj przez miliony rekordów bez zapisywania ani jednej pętli kursora.
Każde żądanie zwraca identyfikator X-Request-Id, który możesz zacytować w celu wsparcia — pojawia się przy każdym błędzie.
Przełączaj między kluczami testowymi a kluczami produkcyjnymi za pomocą jednego argumentu konstruktora.
Jeśli wolisz pracować w Rust, PHP, .NET lub Elixir, społeczność ma dla Ciebie wsparcie. Nie są one własne i mogą być opóźnione w zakresie nowych funkcji — przypnij do testowanej wersji w środowisku produkcyjnym.
cargo add ajoxi-rsUtrzymywany przez @ajoxi-communitycomposer require ajoxi/ajoxi-phpUtrzymywany przez @ajoxi-communitydotnet add package AjoxiUtrzymywany przez @ajoxi-communitymix deps.get ajoxi_exUtrzymywany przez @ajoxi-communityWybierz ten, który pasuje do Twojego środowiska wykonawczego. Node.js i Python jako pierwsze otrzymują aktualizacje funkcji i mają najszersze zastosowanie produkcyjne. Go i Ruby dostarczają tę samą powierzchnię w ciągu jednej lub dwóch wersji. Wszystkie cztery są rozwiązaniami własnymi — obsługiwanymi przez zespół Ajoxi z tą samą umową SLA dotyczącą wsparcia.
Jest oznaczony jako beta, ponieważ publiczny interfejs API nie został zamrożony — przed wersją 1.0 mogliśmy zmienić nazwę jednego lub dwóch parametrów. Funkcjonalnie obejmuje każdy punkt końcowy i działa w naszych wewnętrznych potokach od ponad roku. Zastosowanie produkcyjne jest w porządku; przypnij do mniejszej wersji.
Zestawy SDK są przeznaczone dla najnowszej stabilnej wersji interfejsu API (obecnie v1). Kiedy pojawia się nowa wersja API, opiekunowie SDK aktualizują klientów w ciągu dwóch cykli wydawniczych — nie musisz wybierać. Zestawy SDK obsługują przypinanie określonej wersji interfejsu API za pomocą opcji konstruktora na potrzeby migracji.
Tak. Node.js jest domyślnie asynchroniczny (wszystkie metody zwracają obietnice). Python dostarcza zarówno klientów synchronizujących, jak i asynchronicznych („Ajoxi” i „AsyncAjoxi”). W przypadku każdego połączenia Go działa kontekstowo. Ruby jest synchroniczny ze współbieżnością opartą na światłowodzie, dostępną poprzez opcjonalny klejnot `ajoxi-async`.
Zestaw SDK Node.js zawiera ręcznie dobierane typy TypeScript obejmujące każdy punkt końcowy, żądanie i odpowiedź. Zawężanie typów w odpowiedziach unii działa zgodnie z oczekiwaniami. Wygenerowane typy są także publikowane oddzielnie w `@ajoxi/sdk-types` dla projektów, które wymagają typów bez klienta wykonawczego.
Tak — wszystkie cztery zestawy SDK są typu open source w GitHub. Problemy i PR są mile widziane. Zastrzegamy sobie prawo do przepisania szczegółów realizacji pod kątem zgodności z wewnętrznymi wzorcami, jednakże opublikowana powierzchnia traktowana jest jako umowa.
Uruchom klucz piaskownicy i wyślij działającą integrację przed końcem dnia.