app-data

Claim an unlock after paying (public)

Two shapes. { sessionId } is the instant post-checkout claim: the Payment Link redirect carries {CHECKOUT_SESSION_ID}, and a paid session returns { status: "granted", key } , store that key. { status: "pending" } means a slow payment method is still clearing; { status: "expired" } means the session is older than the 24h claim window, so use the email path instead. { email } is the restore path: it ALWAYS answers { sent: true }, whether or not that address bought anything, so never surface "no purchase found". A 429 means try again shortly , it is NOT "not purchased".

post/public/playground/entitlements/{slug}/claim

Request

  • Base URL: https://api.onplana.com/api
  • URL: https://api.onplana.com/api/public/playground/entitlements/{slug}/claim
  • Auth: none required

Path parameters

slugstring required

The published app label, i.e. <slug>.onplana.app.

Request body

sessionIdstring

Stripe Checkout Session id from the post-payment redirect.

emailstring

The email used at checkout. Triggers a magic-link restore.

Response

{ ok, status?, key?, sent? }. Absent status = nothing to claim.

Changes

No recorded changes to this operation across all 1 revision of this API.