> For the complete documentation index, see [llms.txt](https://docs.bifrostnetwork.com/bifrost-network/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bifrostnetwork.com/bifrost-network/developer-documentations/client-api/json-rpc-api/author.md).

# author

### hasKey(**publicKey: `Bytes`, keyType: `Text`): `bool`**

* **interface**: `api.rpc.author.hasKey`
* **jsonrpc**: `author_hasKey`
* **summary**: Returns true if the keystore has private keys for the given public key and key type.

### **hasSessionKeys(sessionKeys: `Bytes`): `bool`**

* **interface**: `api.rpc.author.hasSessionKeys`
* **jsonrpc**: `author_hasSessionKeys`
* **summary**: Returns true if the keystore has private keys for the given session public keys.

### **insertKey(keyType: `Text`, suri: `Text`, publicKey: `Bytes`): `Bytes`**

* **interface**: `api.rpc.author.insertKey`
* **jsonrpc**: `author_insertKey`
* **summary**: Inserts a key into the keystore.

### **pendingExtrinsics(): `Vec<Extrinsic>`**

* **interface**: `api.rpc.author.pendingExtrinsics`
* **jsonrpc**: `author_pendingExtrinsics`
* **summary**: Returns all pending extrinsics, potentially grouped by sender

### **removeExtrinsic(bytesOrHash: `Vec<ExtrinsicOrHash>`): `Vec<Hash>`**

* **interface**: `api.rpc.author.removeExtrinsic`
* **jsonrpc**: `author_removeExtrinsic`
* **summary**: Removes given extrinsic from the pool and temporarily ban it to prevent reimporting

### **rotateKeys(): `Bytes`**

* **interface**: `api.rpc.author.rotateKeys`
* **jsonrpc**: `author_rotateKeys`
* **summary**: Generates new session keys and returns the corresponding public keys

### **submitExtrinsic(extrinsic: `Extrinsic`): `Hash`**

* **interface**: `api.rpc.author.submitExtrinsic`
* **jsonrpc**: `author_submitExtrinsic`
* **summary**: Submits a fully formatted extrinsic for block inclusion
