---
title: "Register the key that signs the person’s yes"
method: POST
path: "/v1/yes-key"
tags: ["yes_key"]
---

# Register the key that signs the person’s yes

`POST /v1/yes-key`

## Request

- Base URL: `https://www.pendingyou.com`
- URL: `https://www.pendingyou.com/v1/yes-key`
- Auth: OAuth 2 (authorization code, authorization URL `https://www.pendingyou.com/oauth/authorize`, token URL `https://www.pendingyou.com/oauth/token`, scopes: `cards:high_stakes`)

The key that signs the person’s yes to a high-stakes card (`Pending-You-Yes`), kept on the device behind Face ID. `proof` is a JWS of type `pending-you-yes-key+jwt`, signed by that key with it in its header, naming this sign-in (`grant`), when it was made (`iat`) and a `jti`. A new key replaces the last. Pending You’s own apps only (cards:high_stakes).

## Headers

- `Pending-You-Version` '2026-10-05'
- `Pending-You-Client` string
- `DPoP` string
- `Idempotency-Key` string

## Request body

- YesKeyRequest
  - `proof` string, required

## Response `200`

Register the key that signs the person’s yes

- YesKeyResponse
  - `registeredAt` string, date-time, required

## Other responses

- `400`: invalid
- `401`: invalid_token, invalid_dpop_proof or use_dpop_nonce (OAuth, with WWW-Authenticate)
- `403`: app_not_available; forbidden; insufficient_scope (OAuth, with WWW-Authenticate naming the scope)
- `409`: idempotency_in_progress
- `422`: idempotency_mismatch
- `426`: client_outdated
- `429`: rate_limited
- `500`: server_error
- `503`: unavailable

---

[API](https://skmtc.dev/pendingyou/apis/pending-you-person-api.md) · [All operations](https://skmtc.dev/pendingyou/apis/pending-you-person-api/llms.txt) · [OpenAPI document](https://skmtc.dev/pendingyou/apis/pending-you-person-api/revisions/4c0d997495a6?raw)
