Repull IoT API pozwoli twojemu kodowi reagować na fizyczne eventy tak samo, jak reaguje na update rezerwacji. Rotuj kod do drzwi przy wymeldowaniu. Przygotuj klimat w mieszkaniu przed przyjazdem. Dostań webhooka, kiedy termostat od sześciu godzin pokazuje 30 stopni.
Co zbudujesz
Po utworzeniu rezerwacji generujesz kod. W godzinie wymeldowania wygaszasz go i wystawiasz kod następnego gościa. Koniec z „a sprzątaczka zmieniła kod?” — zamek i rezerwacja to ten sam obiekt.
Na T-2h ustawiasz mieszkanie na komfortową temperaturę. Po wymeldowaniu wracasz do trybu utrzymania. Pomnóż przez portfolio i oszczędności na energii same spłacą rachunek za IoT.
Drzwi otwarte przez godzinę w trakcie obrotu. Termostat na 30°C bez gości w środku. Czujnik wycieku wody odpalił. Webhook leci, zadanie ląduje w kolejce ops, czyjś telefon wibruje.
Jak będzie wyglądać API
IoT API traktuje każde podłączone urządzenie — zamek, termostat, czujnik — jako dziecko listingu. Rezerwacje i urządzenia mają tę samą autoryzację, te same webhooki i ten sam workspace, więc cross-cutting flowy budujesz w jednym miejscu.
Większość vendorów używa OAuth albo parowania na poziomie konta. Repull Connect picker obsługuje to tak samo, jak połączenia z PMS-ami — jeden spójny flow.
Ten sam interfejs webhooków co reszta. door.opened, lock.code.created, climate.target_changed, sensor.alert. Sygnatura zweryfikowana, retry przy 5xx, jeden event log do greppowania.
Trigger na reservation.confirmed, żeby wybić kod. Trigger na reservation.checkout, żeby go wygasić. Te same prymitywy, których już używasz do wiadomości i pricingu.
// Repull IoT API — wkrótce. Kształt, do którego dochodzimy:
import { Repull } from '@repull/sdk'
const repull = new Repull({ apiKey: ..., workspaceId: ... })
// Na reservation.confirmed
repull.webhooks.on('reservation.confirmed', async (e) => {
const lock = await repull.devices.get(e.listingId, { kind: 'lock' })
await repull.devices.lock.codes.create(lock.id, {
label: e.guestName,
code: '4271', // albo pomiń, żeby auto-wygenerować
activeFrom: e.checkIn,
activeUntil: e.checkOut,
})
})
// Na reservation.checkout kod sam wygasa.
// Przy alercie czujnika kieruj do twojej kolejki ops:
repull.webhooks.on('sensor.alert', async (e) => {
if (e.kind === 'water_leak') await ops.create({
listingId: e.listingId,
severity: 'critical',
title: `Wykryto wyciek wody · ${e.location}`,
})
})Te kształty pokazują, jak o tym myślimy — finalne nazwy metod wjadą wraz z publicznym release'em. Vendorzy zamków na v1: Yale, Schlage, August. Klimat: Nest, ecobee, Honeywell.
Wkrótce
Jeśli prowadzisz portfolio z zamkami i klimatem już wdrożonym albo budujesz produkt, który musi gadać z fizycznymi urządzeniami, daj znać. Najwcześniejsi design partnerzy kształtują API.
Zamki
Yale Linus / Assure, Schlage Encode, August, igloohome.
Klimat
Nest, ecobee, Honeywell Lyric, Sensibo.
Czujniki
Hałas (Minut, NoiseAware), wycieki wody, obecność.
Bez sztywnej daty premiery. Wypuścimy to, kiedy pierwsze trzy integracje pójdą end-to-end na produkcji.
Powiedz nam, jakie urządzenia masz wdrożone i co byś z tym zbudował. Zespół czyta każdego maila.
Idzie prosto do zespołu. Bez listy mailingowej, bez dripa.
WyślijIoT przyjdzie. Rezerwacje, kanały, pricing i agenty AI nie czekają — działają teraz.