RelaiAccess

Relai Access documentation

Build apps that open Relai Exchange Zone compartments. People drop off and pick up on their own time, without meeting: your app owns the experience, Relai authorizes every open server-side, and the SDK handles the hardware.

New to building apps?

You do not need to write code to build on Relai Access. There is a page for that: what you are building in plain language, what it costs, and one prompt to hand your AI tool that takes you to a working app.

Start here, without code

Start with the two checklists if you are setting up or integrating; the rest are reference. Search is in the bar above, from any page.

  • Start here, without code · For people who do not write code: what you are building, what it costs, and one prompt to hand your AI tool.
  • Portal setup checklist · What to configure in the portal so your app behaves as expected: subscription, payment mode, prices, handoff modes, webhooks, test end-users.
  • Starting prompts · Two copy-paste prompts for AI coding tools: one for a new app from scratch, one for adding Relai to an existing mobile app.
  • Integration checklist · Phase-by-phase checklist for adding Relai Access to an app, with a verification step at the end of each phase. Written for AI coding assistants.
  • Build an app · Step-by-step for React Native, new or existing. The AI starting prompts live on their own page.
  • Publish your app · App Store and Play Store: accounts, identifiers, the Bluetooth permissions reviewers read, and the privacy answers both stores ask for.
  • Drop-offs and pick-ups · Handoff modes (self, directed, open), access tags and links, pick-up windows, late fees, and override links.
  • Billing and pricing · The two things you pay for, the plans side by side, how opens are counted, the fees an order can carry, and how invoices work.
  • Dictionary · The Relai vocabulary, footnoted with usage notes and common hiccups.
  • SDK changelog · Every released version of the SDK, what it added, changed, or fixed, and which upgrades need a code change.
  • Error codes · Every stable error code the API returns, and what to do about each.

How it works

  1. Get access. Sign in, onboard as a Relai 3 partner, and request SDK access, which approves instantly. Then choose a subscription and create your app; its sandbox keys and its own simulated Exchange Zones are provisioned right then. Real hardware is a separate request you make later, for that same app.
  2. Integrate the SDK. @relai-team/access-sdk handles end-user sign-in (email OTP), Exchange Zone discovery, orders, and the BLE unlock flow.
  3. Open compartments. Create an order, request an open with an intent, and the SDK drives the authenticated unlock against the tower's Parent controller.

Quick start

import { RelaiClient, SimulatedTransport, Intents } from "@relai-team/access-sdk";

const relai = new RelaiClient({ publishableKey: "pk_sandbox_…" });

await relai.auth.startOtp("rider@example.com");
await relai.auth.verifyOtp("rider@example.com", "123456");

const [ez] = await relai.exchangeZones.near({ lat: 40.7128, lng: -74.006 });
const order = await relai.orders.create({ exchangeZoneId: ez.id });

const result = await relai.unlock({
  orderId: order.id,
  intent: Intents.Occupy,
  transport: new SimulatedTransport(),
});

Sandbox keys work against simulated Exchange Zones: same routes, no hardware needed.