Issue a mobile key in 60 seconds
Create a grant, wait for issuance, then deliver the mobile SDK token or Instant Key URL. Run these examples on your server with a supported entrance ID and SEAM_API_KEY; the CLI and cURL examples also require jq.
Build it with your AI agent
Install the Seam plugin and your coding agent picks up three integration skills: Reservation Automations, Access Grants and Access Codes. It then writes the calls the way we would. Paste the prompt below and let it build.
1. Install the plugin
The Claude Code install also adds our documentation MCP server, so the agent can look up endpoints and device capabilities while it works. Cursor, Codex and other agents get the skills through npx skills add and can add the MCP server there separately.
2. Paste this prompt
What you can build
Tap-to-unlock in your own app
The Seam mobile SDK holds the credential and unlocks over Bluetooth, under your UI and your brand. Works with the phone offline, which is what stairwells, garages and basements demand.
Keys that arrive by text
Every mobile key carries an Instant Key URL: a browser-based key with no download and no account. Day passes, visitors and the guest who refuses to install anything are all covered.
Membership access that manages itself
The key lives on the grant's window, so a renewal extends it and a cancellation revokes it. Lost phone? Delete the grant and issue a new one; the door hardware never needs a visit.
How it works
Confirm the door can take a mobile key
List the entrances for your connected access system and check can_unlock_with_mobile_key. Select a supported entrance and set SEAM_ACS_ENTRANCE_ID to its ID. The step examples use the client and imports from the quickstart.
Create an Access Grant with a mobile key
Name the person, the doors and the window, and ask for mode mobile_key. This example creates a user identity inline; use user_identity_id for an existing member. The quickstart supplies the dates and selected entrance. Swap acs_entrance_ids for space_ids to cover a group of doors at once.
Hand the key to your app
Wait until the mobile access method is issued, then read client_session_token. Return it only to the authenticated member's app and initialize the iOS or Android SDK with that token. A session ID is not a token. The linked mobile SDK guide covers native initialization, activation, permissions, and unlocking.
Cover everyone else with the Instant Key
The issued access method also carries an instant_key_url. Your app can deliver it through its own SMS or email provider; messaging is an application integration, not a Seam SDK call. It grants access on the same schedule, so deliver it only to the person who owns the grant.
Frequently asked questions
Do my users need to install an app?
Not always. With your own app, the Seam mobile SDK holds the credential and unlocks over Bluetooth. Without one, text the instant_key_url that comes with every mobile key.
Does a mobile key work when the phone has no signal?
Yes, on systems that provision the credential to the phone. The key unlocks over Bluetooth with both the phone and the lock offline, which is why mobile keys suit stairwells and garages.
Which platforms does the mobile SDK support?
iOS and Android. Both take a client session token, hold the credentials, and expose the scan-and-unlock flow; your app owns everything the user sees.
How do I revoke a mobile key?
Delete the grant, or let it expire at ends_at. Seam removes the credential on the underlying system, so a lost phone is one API call instead of a locksmith.
Can one person have a mobile key and a PIN code?
Yes. Request both modes in one Access Grant, or add an access method to an existing grant later. They share the grant's schedule and doors, so a dead battery on the phone is not a lockout.
How is this different from each lock vendor's own mobile SDK?
Vendor SDKs are per brand: a different credential model, provisioning flow and revocation rule each time. Seam issues mobile keys through one Access Grants call and one mobile SDK across every system it supports.
Related
- Access API overviewSee how mobile keys, PIN codes, and key cards fit into the same access workflow.
- Smart locks that support mobile keysEvery model and system that can hold a Bluetooth credential, with live status.
- Seam mobile SDKsInitializing the iOS and Android SDKs, client sessions, and the unlock flow.
- How to connect a smart lock to your appThe step before this one: getting your user's doors into Seam.
- How to generate temporary access codes programmaticallyThe PIN-code path, for doors with keypads and users without phones.