# Sign in with Layout

October 5, 2026 · API · Breaking

Sign in with Layout is one button, in black or white, labelled *Continue with Layout* or *Order with Layout*, in three pill sizes and a circle. It sends the person to Layout's approval page, or stays on your screens with a code Layout texts them. The [guide](https://developer.layout.link/reference/sign-in-with-layout) covers both, and the button files are ready to download.

**Returning people go straight through.** A person signed in to Layout who already approved your app is sent back to your redirect URI with a code and sees no page. `prompt=consent` always shows the page, and `prompt=none` never does, answering `login_required` or `consent_required` instead.

**`login_hint`** takes the person's phone number in E.164 and fills it in on Layout's sign-in step. It never sends a code by itself.

**Headless verify recognises returning people.** `verify/start` on someone already connected to your app texts a fresh code, and `verify` with the right code answers the same `id`. Every `verify` answer carries `id`. If the person's Layout account no longer holds the number you provisioned, `start` answers `409` `phone_changed` and texts nobody.

**The approval page says:** *"{your app} will be able to place orders for you, paid with the card on file in your Layout account. You can disconnect {your app} anytime in Layout."*

## Why it matters

A person can sign in to your app with Layout once and come back on any device without approving again, and a person who changes phones is still the same person to you.

## What to do

Nothing, unless you want the button. If your code treated a `409` from `verify/start` as "already verified", check the code the person reads back instead.

## Breaking changes

`verify/start` answers `200` where it answered `409 already_claimed` for a person already connected to your app.
