> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rhinestone.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# recoverPasskeyOwnership

> Build the calls that rotate an account's passkey ownership.

Send each returned call as its own UserOperation, in order: the social
recovery validator authorizes a single `execute` per UserOperation, so
batching them is rejected onchain.

Ownership is only fully rotated once every call has landed. Until the
removals execute the previous credentials stay valid alongside the new ones.

## Import

```ts theme={null}
import { recoverPasskeyOwnership } from '@rhinestone/sdk/actions/recovery'
```

## Usage

```ts theme={null}
const passkeyOwnership = await recoverPasskeyOwnership(options)
```

## Parameters

<ParamField path="options" type="RecoverPasskeyOwnershipOptions" required />

## Returns

<ResponseField name="passkeyOwnership" type="CalldataInput[]">
  Calls to recover ownership, in the order they must be sent
</ResponseField>
