castomAPI
Odbierz klucz

/c/twoj-slug · izolowane V8 · ten sam portfel

Własne endpointy

Katalog to 706 operacji. Sześćset sześćdziesiąta druga jest Twoja: wgraj skrypt, dostań adres, wywołuj tym samym kluczem, płać z tego samego portfela.

Jak to działa

Napisz main(req)

Funkcja asynchroniczna. req niesie metodę, parametry zapytania, nagłówki i sparsowaną treść wywołania, które trafiło pod Twój slug. Zwróć cokolwiek serializowalnego do JSON.

Wgraj

POST /custom/endpoints ze slugiem i skryptem. Slugi są globalnie unikalne; zajęty odpowiada 409. Skrypt jest przy wgraniu przechowywany, nie wykonywany.

Wywołaj

GET, POST, PUT albo DELETE /c/twoj-slug z x-api-key. Każde wywołanie działa w świeżym izolacie ograniczonym do właściciela klucza — cudzy slug odpowiada 404, identycznie jak nieistniejący.

POST/custom/endpoints
{
  "slug": "order-check",
  "script": "async function main(req) {
    const { iban, vat } = req.body;
    const [i, v] = await Promise.all([
      $safeFetch('https://app.castomapi.com/v1/verify/iban', { method: 'POST', body: JSON.stringify({ iban }) }),
      $safeFetch('https://app.castomapi.com/v1/verify/vat',  { method: 'POST', body: JSON.stringify({ vat }) })
    ]);
    return { ibanValid: (await i.json()).valid, vatValid: (await v.json()).valid };
  }"
}
{ "status": "success", "url": "https://app.castomapi.com/c/order-check" }

Na co piaskownica pozwala, a czego odmawia

CPU2 sekundy na żądanie. Dłużej odpowiada 408 i nie jest rozliczane.
Pamięć128 MB na izolat.
SiećBrak — poza $safeFetch, mostkowanym fetchem, który przekazuje metodę, nagłówki i treść, odmawia każdego zakresu prywatnego, loopback i link-local w v4 i v6, rozwiązuje nazwę hosta przed połączeniem i weryfikuje każdy skok przekierowania.
StanBrak między wywołaniami. Utrwalaj przez DB albo własne API.
NajemcyWykonanie jest ograniczone do właściciela wywołującego klucza. Slug innego najemcy to 404 za zero tokenów.
RozliczanieRozliczane jak każde inne wywołanie: po odpowiedzi, tylko przy sukcesie. Wywołania katalogu, które Twój skrypt robi przez $safeFetch, są rozliczane na klucz, który im przekażesz.

Po co to istnieje

Narzędzie do przepływów potrzebuje kroku, który robi trzy rzeczy naraz. Dashboard potrzebuje liczby, której nikt nie wystawia. Partner potrzebuje endpointu w kształcie dla swojego klienta. Wszystkie trzy kiedyś znaczyły serwer, wdrożenie i rachunek. Teraz znaczą funkcję.

Siedem operacji Custom → · Jako usługa platformy → · Bezpieczeństwo →