List the workspace offers waiting for the caller
Returns the caller's pending workspace invites and, when the legacy-restore feature is enabled for them, the legacy workspace claims matched to their verified email address, ordered for the onboarding screen. Any authenticated caller with a synced profile may read their own offers; a caller with no verified email gets an empty list. Listing a stale offer is harmless, because accepting one re-checks strictly and rejects.
Authorization
apiKey Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.
In: header
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/v1/me/onboarding-offers"{ "data": [ { "kind": "invite", "id": "string", "workspaceId": "string", "workspaceName": "string", "workspaceIcon": "initials", "workspaceAccentColor": "string", "role": "owner", "memberCount": 0, "isLegacyOwner": true, "canDeleteOnSkip": true, "canTransferOnSkip": true } ]}{ "_tag": "ApiNotFound", "error": "not_found", "message": "That item does not exist, or this key cannot see it.", "status": 404}{ "_tag": "ApiNotFound", "error": "not_found", "message": "That item does not exist, or this key cannot see it.", "status": 404}Restore a surface to an earlier version
Rewrites the surface's blocks back to the state reconstructed at the given version in one transaction, emitting ordinary block delete and create events so the restore is itself a revision and can be undone by restoring forward. Requires `surfaces:write` on the surface. A version outside the plan's history window, or one whose replay is only approximate, is refused.
Accept a legacy workspace restore claim
Claims the restored workspace behind an offer for the caller and returns the resulting workspace summary. Requires a Clerk session whose verified email matches the claim, checked without the profile cache, and the legacy-restore feature must be enabled. An unknown, blocked, or non-matching claim is not found; a workspace that is not activated yet, an offer already resolved, and a legacy identity already claimed by another account are all conflicts. Re-accepting a claim the caller already accepted returns the same workspace.