[Account] klay_getAccountKey
Returns the account key of the Externally Owned Account (EOA) of a given address. If the account has AccountKeyLegacy or the account of the given address is a Smart Contract Account, it will return an empty key value.
NOTE: In versions earlier than Klaytn v1.7.0, only integer block number, the string "earliest" and "latest" are available
JSONRPC: klay_getAccountKey
Request
- application/json
Body
Array [
- IntegerBlockNumber
- HexadecimalBlockNumber
- BlockTag
- BlockHash
]
Default value: klay_getAccountKey
Method name
Default value: 1
Request ID, Random or Auto incrementation
Default value: 2.0
JSON-RPC Version (2.0)
params
undefined[]
required
Address
BlockNumberOrHashOrTag
object
oneOf
number
string
string
string
Responses
- 200
Returns the account key or an empty key value.
- application/json
- Schema
- Example (from schema)
Schema
- AccountKeyLegacy
- AccountKeyNil
- AccountKeyPublic
- AccountKeyFail
- AccountKeyWeightedMultiSig
- AccountKeyRoleBased
Array [
]
Array [
- AccountKeyNil
- AccountKeyLegacy
- AccountKeyPublic
- AccountKeyFail
- AccountKeyWeightedMultiSig
Array [
]
]
Default value: 2.0
error
object
A Number that indicates the error type that occurred. This MUST be an integer.
| code | message | description | |-----|-----|-------| | -32700 | Parse error | invalid JSON was received by the server. An error occurred on the server while parsing the JSON text. | |-32602 | Invalid params | Invalid method parameter(s). |
A String providing a short description of the error. The message SHOULD be limited to a concise single sentence.
A Primitive or Structured value that contains additional information about the error. This may be omitted. The value of this member is defined by the Server (e.g. detailed error information, nested errors etc.).
result
object
oneOf
The type of AccountKeyLegacy. This must be 0x01.
string
key
object
required
Key should be a compressed public key on S256 curve.
The x coordinate of the public key.
The y coordinate of the public key.
The type of AccountKeyPublic. This must be 0x02.
The type of AccountKeyFail. This must be 0x03.
The type of AccountKeyWeightedMultiSig. This must be 0x04.
Validation threshold. To be a valid transaction, the weight sum of signatures should be larger than or equal to the threshold.
WeightedPublicKeys
object[]
required
A list of weighted public keys. A weighted public key contains a compressed public key and its weight.
PublicKey
object
required
The x coordinate of the public key.
The y coordinate of the public key.
key
object[]
required
A list of keys. A key can be any of AccountKeyNil, AccountKeyLegacy, AccountKeyPublic, AccountKeyFail, and AccountKeyWeightedMultiSig
anyOf
string
The type of AccountKeyLegacy. This must be 0x01.
key
object
required
Key should be a compressed public key on S256 curve.
The x coordinate of the public key.
The y coordinate of the public key.
The type of AccountKeyPublic. This must be 0x02.
The type of AccountKeyFail. This must be 0x03.
The type of AccountKeyWeightedMultiSig. This must be 0x04.
Validation threshold. To be a valid transaction, the weight sum of signatures should be larger than or equal to the threshold.
WeightedPublicKeys
object[]
required
A list of weighted public keys. A weighted public key contains a compressed public key and its weight.
PublicKey
object
required
The x coordinate of the public key.
The y coordinate of the public key.
The type of AccountKeyRoleBased. This must be 0x05.
{
"jsonrpc": "2.0",
"id": 0,
"error": {
"code": -32700,
"message": "Parse error",
"data": "string"
},
"result": {
"key": {},
"keyType": 0
}
}