<!-- https://unlockos.io/manual/go-portal -->

# Go Portal / Key Hub Help

## Overview

The Go Portal (`go.unlockos.io/{slug}`) is a unified PWA portal for your facility. Unauthenticated visitors see a list of available services, while logged-in users see **Key Hub** — a unified key management screen that shows all your daily keys, reservations, active check-ins, and past check-ins in one place.

## Key Features

- Single shareable URL for all facility apps
- Auto-redirects to the correct app when only one is active
- Displays all available apps when multiple are active
- No login required for the portal landing (Key Hub requires login)
- Works on any device (mobile, tablet, desktop — installable as a PWA)
- Backward compatible: old `facilityId`-based URLs redirect here automatically

---

## Key Hub

Key Hub is the central key management screen available to logged-in users. Tap the "Key Hub" tab in the bottom navigation to open it.

### How to Access Key Hub

1. Go to `go.unlockos.io/{facility-slug}`.
2. Tap the **Login** button in the top-right corner.
3. Enter your email address to receive a one-time passcode (OTP) and log in.
4. After login, the Key Hub tab is automatically selected.

### UnlockPass

When you log in to the Go Portal, you may notice UnlockPass visual cues:

| Where | What you see |
|-------|-------------|
| Login screen | "UnlockPass" pill logo above the email input |
| Right after OTP verification | A soft teal toast: "Authenticated with UnlockPass" (shown for 3 seconds) |
| Settings tab — email row | An "UnlockPass verified" tooltip |

**UnlockPass** is a shared email-verification identity that works across all UnlockOS facilities. Once your email is verified at one facility, you are recognized automatically at any other UnlockOS property — no re-entry of details needed.

> UnlockPass activates automatically. No special sign-up is required.

---

### Key Hub Sections

Key Hub displays up to four sections. Sections with no keys are hidden automatically.

| Section | Contents | Actions available |
|---------|----------|------------------|
| **Daily Keys** | Keys from active membership subscriptions | One-tap unlock |
| **Reservations** | Upcoming reservations | Check in (from 24 hours before start, completed in-app) |
| **Active** | Currently checked-in sessions | Show QR code, check out |
| **Past** | Completed check-in history | View only |

---

## Using Daily Keys (Unlock Flow)

Daily keys are available to members every day as part of their membership subscription.

1. Open Key Hub.
2. Locate your key card in the **Daily Keys** section.
3. Tap the **Unlock** button.
4. A QR code is displayed. Hold it up to the smart lock reader to enter.
5. The QR code shows a validity time ("Valid until: HH:MM"). Use it before it expires.

> If the Unlock button is not visible, your membership may have expired or the facility may be outside operating hours.

---

## Checking In from a Reservation

Tapping a reservation card takes you through the entire check-in flow inside the Go app — no redirect to a separate website.

### Check-in flow

1. Open Key Hub.
2. Your upcoming reservations are listed in the **Reservations** section.
3. Once you are within **24 hours of the reservation start time**, a **Check in** button appears on the card.
4. Tap **Check in** to open the reservation detail screen.
5. If the facility requires guest information, a form will appear asking for your name, contact details, and similar information. Fill it in and submit.
6. After submitting the form (or immediately if no form is required), tap **Check in** to confirm.
7. Once check-in is complete, your **access code and QR code** are displayed on screen. Hold the QR code up to the smart lock reader to enter.
8. The checked-in session also appears in the **Active** section of Key Hub.

### Reading the access code screen

The screen shown after a successful check-in includes:

- **Access code** (a numeric or alphanumeric code)
- **QR code** (present this to the smart lock reader)
- **Expiry time** (shown as "Valid until: HH:MM")
- Your reservation **start and end date/time**

If the QR code expires, tap **Refresh** to get a new code.

### Troubleshooting check-in

| Situation | What to do |
|-----------|-----------|
| No Check in button visible | The button appears 24 hours before the reservation start. Come back closer to that time. |
| "Reservation not found" message | Check your reservation details and the email address you are logged in with, then contact facility staff. |
| QR code has expired | Tap **Refresh** to generate a new QR code. |

> The Check in button will not appear until 24 hours before the reservation start time.

---

## Viewing and Refreshing QR Codes for Active Check-ins

Active check-in sessions appear in the **Active** section.

### Displaying the QR Code

1. Find the key card in the **Active** section.
2. If a QR code is already displayed, hold it up to the smart lock reader directly.
3. If no QR code is shown, tap **Show QR** to fetch one.

### Refreshing an Expired QR Code

QR codes have a limited validity window. When one expires:

1. Tap **Show QR** again.
2. A new QR code is fetched and displayed.
3. Confirm the updated "Valid until" time before presenting it to the reader.

### Checking Out

1. Tap the **Check out** button on the active check-in card.
2. You will be directed to the checkout app to complete the process.

---

## Changing Language and Logging Out

### Changing the Display Language

Tap the language toggle in the top-right corner of any screen (shown as **JP / EN**) to switch between Japanese and English instantly. The preference is saved in your browser.

Alternatively, use the **Settings** tab:

1. Tap the **Settings** tab in the bottom navigation.
2. Select your preferred language from the "Language" row.

### Logging Out

1. Tap the **Settings** tab in the bottom navigation.
2. Tap the **Logout** button.
3. Confirm the logout when prompted.
4. You will be returned to the portal landing screen.

---

## Walk-in (Drop-in Use)

Tap the **Walk-in** tab in the bottom navigation to be redirected to the facility's check-in app. Use this when you want to check in on the spot without a prior reservation.

---

## Portal Landing (Unauthenticated View)

When you visit the Go Portal without being logged in, you see a list of services available at the facility.

| Icon | Service | Description |
|------|---------|-------------|
| Checkmark | Check-in | Check in to the facility |
| Calendar | Booking | Book a space |
| Users | Member | Membership services |
| Lock | Locker | Use a locker |
| Home | Resident | Resident services |
| Monitor | Front Desk | Front desk |

If only one service is available, the portal skips the list and redirects you directly to that service.

---

## How It Works

### URL Patterns

| Pattern | Behavior |
|---------|----------|
| `go.unlockos.io/{slug}` | Portal page listing available apps, or auto-redirect if only one |
| `go.unlockos.io/{slug}/{app}` | Direct redirect to a specific app |

Where `{app}` is one of: `checkin`, `booking`, `locker`, `resident`, `frontdesk`.

### Available Apps on the Portal

| App | URL navigated to | When shown |
|-----|-----------------|------------|
| Check-in | `checkin.unlockos.io/{slug}` | Active check-in configuration exists |
| Booking | `booking.unlockos.io/{slug}` | Active room reservation config exists |
| Locker | `locker.unlockos.io/{slug}` | Active locker reservation config exists |
| Resident Registration | `resident.unlockos.io/{slug}/register` | Facility has a slug set |
| Front Desk | `frontdesk.unlockos.io/{slug}` | Always shown |

### Auto-Redirect Behavior

If only one app is available for your facility, visiting `go.unlockos.io/{slug}` skips the portal page and redirects the guest directly to that app. No intermediate step is needed.

---

## Accessing the Short URL

The Short URL for your facility is displayed in **Basic Settings** on the App URL Preview panel.

1. Go to **Basic Settings**.
2. Set or confirm your facility slug in the "App URL" field.
3. The Short URL (`go.unlockos.io/{slug}`) appears in the preview panel below the slug field.
4. Use the copy button to copy the URL, or scan/download the QR code displayed there.

---

## Security

- The portal page does not expose API keys or internal IDs.
- Old URLs that contained `facilityId` or `configId` as query parameters are redirected to the new slug-based URLs — API keys are no longer embedded in public-facing URLs.
- Rate limiting: 60 requests per minute per IP address.
- Inactive facilities return a 404 page.

---

## FAQ

### Q: No keys are showing in Key Hub
A: Verify that you are logged in with the correct email address, that your membership is active, and that you have reservations registered. Contact facility staff if the issue persists.

### Q: My QR code has expired
A: Tap **Show QR** again to generate a fresh QR code. QR codes have a short validity window for security and are refreshed on demand.

### Q: I have a reservation but there is no Check in button
A: The Check in button appears **24 hours before** the reservation start time. Visit Key Hub again when you are within that window.

### Q: What if a guest visits go.unlockos.io with the wrong slug?
A: A 404 "Facility not found" page is displayed. The guest should check the URL or QR code and contact facility staff if the issue persists.

### Q: Can I link directly to a specific app instead of the portal?
A: Yes. Use the pattern `go.unlockos.io/{slug}/{app}` to link directly. For example, `go.unlockos.io/sakura-mansion/checkin` redirects to the check-in app.

### Q: Does the portal page support English?
A: Yes. Use the language toggle in the top-right corner or the Settings tab to switch between Japanese and English.

### Q: What happens if I change the slug?
A: The old `go.unlockos.io/{old-slug}` URL will stop working. Update any printed QR codes and distributed links after changing the slug.

### Q: Is the portal URL indexed by search engines?
A: The portal page does not include `noindex` directives, but it is a functional gateway page, not a marketing page. Its primary purpose is operational access for guests.

---

## Related Pages

- [Basic Settings](base-settings.md) - Set your facility slug and view all app URLs
- [Guest Check-in](guest-checkin.md) - Check-in steps for guests
- [Guest Reservation](reservation-guest.md) - View and manage reservations
- [Check-in Configuration](checkin-config-form.md) - Configure the check-in app
- [Booking](booking.md) - Configure the booking app
- [Delivery Management](okihai-manager.md) - Issue resident registration QR codes

Last updated: 2026-04-19 - Added UnlockPass section (OTP login pill, authentication toast, My Page badge)
