기본

레거시 트랜잭션

caver.transaction.legacyTransaction.create(transactionObject)
LegacyTransaction레거시 트랜잭션을 의미합니다. Klaytn 계정AccountKeyLegacy을 사용해야만 LegacyTransaction을 실행할 수 있습니다. transactionObjectLegacyTransaction을 생성하기 위해 아래와 같은 속성들을 가질 수 있습니다.
LegacyTransaction는 멤버변수로서 아래와 같은 속성들을 가지고 있습니다. 선택 사항인 속성들은 사용자가 LegacyTransaction를 생성할 때 transactionObject에 선택적으로 주어질 수 있는 속성들을 뜻합니다.
NOTE: You can create an instance of LegacyTransaction from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.legacyTransaction.create is supported since caver-js v1.6.1.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.legacyTransaction({...}), please change it to caver.transaction.legacyTransaction.create({...}).
속성
이름
타입
설명
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
value
string
(선택 사항, default: '0x0') peb로 나타낸 전송될 KLAY 양입니다. caver.utils.toPeb를 사용할 수 있습니다.
from
string
(선택 사항) 발신자의 주소입니다. 미입력시 서명에 사용되는 키링 주소로 설정됩니다.
to
string
(선택 사항, default: '0x') 전송받는 계정 주소, 또는 기본 트랜잭션이 스마트 컨트랙트를 실행하는 경우 스마트 컨트랙트 주소입니다. 기본 트랜잭션이 스마트 컨트랙트를 배포하는 경우 to는 정의될 필요가 없습니다.
input
string
(선택 사항) 스마트 컨트랙트의 배포와 실행에 사용되는 트랜잭션에 첨부된 데이터입니다.
서명
Array
(선택 사항) 서명의 배열입니다. 기본 트랜잭션은 하나의 서명만 받을 수 있습니다.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. 미입력시 논스 설정을 위해 caver.rpc.klay.getTransactionCount(address, 'pending')가 사용됩니다.
가스 가격
string
(선택 사항) 발신자가 지불할 토큰양을 구하기 위한 승수입니다. 미입력시 gasPrice 설정을 위해 caver.rpc.klay.getGasPrice가 사용됩니다.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. 미입력시 chainId 설정을 위해 caver.rpc.klay.getChainId가 사용됩니다.
예시
// KLAY 전송을 위한 legacyTransaction 생성
> caver.transaction.legacyTransaction.create({
to: '0x9957dfd92e4b70f91131c573293343bc5f21f215',
value: caver.utils.toPeb(1, 'KLAY'),
gas: 25000,
})
// 스마트 컨트랙트 배포를 위한 legacyTransaction 생성
> caver.transaction.legacyTransaction.create({
input: '0x60806...',
gas: 200000,
})
// 스마트 컨트랙트 실행을 위한 legacyTransaction 생성
> caver.transaction.legacyTransaction.create({
to: '0xfe6c9118e56a42cbc77aa3b7ee586455e3dc5b6d', // Smart contact address
input: '0xa9059...',
gas: 200000,
})
// RLP-인코딩 문자열에서 부터 legacyTransaction 생성
> caver.transaction.legacyTransaction.create('0xf8668204d219830f4240947b65b75d204abed71587c9e519a89277766ee1d00a843132333425a0b2a5a15550ec298dc7dddde3774429ed75f864c82caeb5ee24399649ad731be9a029da1014d16f2011b3307f7bbe1035b6e699a4204fc416c763def6cefd976567')
LegacyTransaction {
_type: 'TxTypeLegacyTransaction',
_from: '0x',
_gas: '0xf4240',
_nonce: '0x4d2',
_gasPrice: '0x19',
_signatures: SignatureData { _v: '0x25', _r: '0xb2a5a...', _s: '0x29da1...' },
_to: '0x7b65b75d204abed71587c9e519a89277766ee1d0',
_input: '0x31323334',
_value: '0xa'
}

ValueTransfer

caver.transaction.valueTransfer.create(transactionObject)
ValueTransferKLAY 전송 트랜잭션을 나타냅니다. transactionObjectValueTransfer를 생성하기 위해 아래와 같은 속성들을 가질 수 있습니다.
ValueTransfer는 멤버변수로서 아래와 같은 속성들을 가지고 있습니다. 선택 사항인 속성들은 사용자가 ValueTransfer 트랜잭션을 생성할 때 transactionObject에 선택적으로 주어질 수 있는 속성들을 뜻합니다.
NOTE: You can create an instance of ValueTransfer from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.valueTransfer.create is supported since caver-js v1.6.1.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.valueTransfer({...}), please change it to caver.transaction.valueTransfer.create({...}).
속성
이름
타입
설명
value
string
peb로 나타낸 전송될 KLAY 양입니다. caver.utils.toPeb를 사용할 수 있습니다.
from
string
발신자의 주소입니다.
to
string
전송되는 KLAY를 받을 계정 주소입니다.
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
서명
Array
(선택 사항) 서명의 배열입니다.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. 미입력시 논스 설정을 위해 caver.rpc.klay.getTransactionCount(address, 'pending')가 사용됩니다.
가스 가격
string
(선택 사항) 발신자가 지불할 토큰양을 구하기 위한 승수입니다. 미입력시 gasPrice 설정을 위해 caver.rpc.klay.getGasPrice가 사용됩니다.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. 미입력시 chainId 설정을 위해 caver.rpc.klay.getChainId가 사용됩니다.
예시
// valueTransfer 생성
> caver.transaction.valueTransfer.create({
from: '0x{address in hex}',
to: '0x9957dfd92e4b70f91131c573293343bc5f21f215',
value: caver.utils.toPeb(1, 'KLAY'),
gas: 25000,
})
// RLP-인코딩 문자열에서 valueTransfer 생성
> caver.transaction.valueTransfer.create('0x08f87f3a8505d21dba0083015f90948723590d5d60e35f7ce0db5c09d3938b26ff80ae01947d0104ac150f749d36bb34999bcade9f2c0bd2e6f847f845820feaa03d820b27d0997baf16f98df01c7b2b2e9734ad05b2228c4d403c2facff8397f3a01f4a44eeb8b7f0b0019162d1d6b90c401078e56fcd7495e74f7cfcd37e25f017')
ValueTransfer {
_type: 'TxTypeValueTransfer',
_from: '0x7d0104ac150f749d36bb34999bcade9f2c0bd2e6',
_gas: '0x15f90',
_nonce: '0x3a',
_gasPrice: '0x5d21dba00',
_signatures: [ SignatureData { _v: '0x0fea', _r: '0x3d820...', _s: '0x1f4a4...' } ],
_to: '0x8723590d5d60e35f7ce0db5c09d3938b26ff80ae',
_value: '0x1'
}

ValueTransferMemo

caver.transaction.valueTransferMemo.create(transactionObject)
ValueTransferMemoKLAY 전송 메모 트랜잭션을 나타냅니다. transactionObjectValueTransferMemo를 생성하기 위해 아래와 같은 속성들을 가질 수 있습니다.
ValueTransferMemo는 멤버변수로서 아래와 같은 속성들을 가지고 있습니다. 선택 사항인 속성들은 사용자가 ValueTransferMemo 트랜잭션을 생성할 때 transactionObject에 선택적으로 제공될 수 있는 속성들을 뜻합니다.
NOTE: You can create an instance of ValueTransferMemo from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.valueTransferMemo.create is supported since caver-js v1.6.1.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.valueTransferMemo({...}), please change it to caver.transaction.valueTransferMemo.create({...}).
속성
이름
타입
설명
value
string
peb로 나타낸 전송될 KLAY 양입니다. caver.utils.toPeb를 사용할 수 있습니다.
from
string
발신자의 주소입니다.
to
string
전송되는 KLAY를 받을 계정 주소입니다.
input
string
트랜잭션에 첨부되는 데이터입니다. 메시지는 이 속성으로 전달되어야 합니다.
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
서명
Array
(선택 사항) 서명의 배열입니다.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. 미입력시 논스 설정을 위해 caver.rpc.klay.getTransactionCount(address, 'pending')가 사용됩니다.
가스 가격
string
(선택 사항) 발신자가 지불할 토큰양을 구하기 위한 승수입니다. 미입력시 gasPrice 설정을 위해 caver.rpc.klay.getGasPrice가 사용됩니다.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. 미입력시 chainId 설정을 위해 caver.rpc.klay.getChainId가 사용됩니다.
예시
// valueTransferMemo 생성
> caver.transaction.valueTransferMemo.create({
from: '0x{address in hex}',
to: '0x9957dfd92e4b70f91131c573293343bc5f21f215',
value: caver.utils.toPeb(1, 'KLAY'),
gas: 25000,
input: '0x68656c6c6f',
})
// RLP-인코딩 문자열에서 valueTransferMemo 생성
> caver.transaction.valueTransferMemo.create('0x10f8808204d219830f4240947b65b75d204abed71587c9e519a89277766ee1d00a94a94f5374fce5edbc8e2a8697c15331677e6ebf0b8568656c6c6ff845f84325a07d2b0c89ee8afa502b3186413983bfe9a31c5776f4f820210cffe44a7d568d1ca02b1cbd587c73b0f54969f6b76ef2fd95cea0c1bb79256a75df9da696278509f3')
ValueTransferMemo {
_type: 'TxTypeValueTransferMemo',
_from: '0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b',
_gas: '0xf4240',
_nonce: '0x4d2',
_gasPrice: '0x19',
_signatures: [ SignatureData { _v: '0x25', _r: '0x7d2b0...', _s: '0x2b1cb...' } ],
_to: '0x7b65b75d204abed71587c9e519a89277766ee1d0',
_value: '0xa',
_input: '0x68656c6c6f'
}

AccountUpdate

caver.transaction.accountUpdate.create(transactionObject)
AccountUpdate계정 업데이트 트랜잭션을 나타냅니다. transactionObjectAccountUpdate를 생성하기 위해 아래와 같은 속성들을 가질 수 있습니다.
AccountUpdate는 멤버변수로서 아래와 같은 속성들을 가지고 있습니다. 선택 사항인 속성들은 사용자가 AccountUpdate 트랜잭션을 생성할 때 transactionObject에 선택적으로 주어질 수 있는 속성들을 뜻합니다.
NOTE: You can create an instance of AccountUpdate from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.accountUpdate.create is supported since caver-js v1.6.1.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.accountUpdate({...}), please change it to caver.transaction.accountUpdate.create({...}).
속성
이름
타입
설명
from
string
발신자의 주소입니다.
account
Account
계정 업데이트를 위해 필요한 정보를 포함하고 있는 계정 인스턴스입니다.
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
서명
Array
(선택 사항) 서명의 배열입니다.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. 미입력시 논스 설정을 위해 caver.rpc.klay.getTransactionCount(address, 'pending')가 사용됩니다.
가스 가격
string
(선택 사항) 발신자가 지불할 토큰양을 구하기 위한 승수입니다. 미입력시 gasPrice 설정을 위해 caver.rpc.klay.getGasPrice가 사용됩니다.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. 미입력시 chainId 설정을 위해 caver.rpc.klay.getChainId가 사용됩니다.
AccountKey에 대해 계정 인스턴스를 생성하는 방법은 Getting Started - Account Update 또는 caver.account.create를 참고하세요.
예시
// accountUpdate 생성
> caver.transaction.accountUpdate.create({
from: '0x{address in hex}',
gas: 50000,
account: caver.account.createWithAccountKeyLegacy('0x{address in hex}'),
})
// RLP-인코딩 문자열에서 accountUpdate 생성
> caver.transaction.accountUpdate.create('0x20f88d808505d21dba0083030d4094ffb52bc54635f840013e142ebe7c06c9c91c1625a302a102c93fcbdb2b9dbef8ee5c4748ffdce11f1f5b06d7ba71cc2b7699e38be7698d1ef847f845820fe9a09c2ca281e94567846acbeef724b1a7a5f882d581aff9984755abd92272592b8ea0344fd23d7774ae9c227809bb579387dfcd69e74ae2fe3a788617f54a4001e5ab')
AccountUpdate {
_type: 'TxTypeAccountUpdate',
_from: '0xffb52bc54635f840013e142ebe7c06c9c91c1625',
_gas: '0x30d40',
_nonce: '0x0',
_gasPrice: '0x5d21dba00',
_signatures: [ SignatureData { _v: '0x0fe9', _r: '0x9c2ca...', _s: '0x344fd...' } ],
_account: Account {
_address: '0xffb52bc54635f840013e142ebe7c06c9c91c1625',
_accountKey: AccountKeyPublic { _publicKey: '0x02c93...' }
}
}

SmartContractDeploy

caver.transaction.smartContractDeploy.create(transactionObject)
SmartContractDeploy스마트 컨트랙트 배포 트랜잭션을 나타냅니다. transactionObjectSmartContractDeploy를 생성하기 위해 아래와 같은 속성들을 가질 수 있습니다.
SmartContractDeploy는 멤버변수로서 아래와 같은 속성들을 가지고 있습니다. 선택 사항인 속성들은 사용자가 SmartContractDeploy 트랜잭션을 생성할 때 transactionObject에 선택적으로 주어질 수 있는 속성들을 뜻합니다.
NOTE: You can create an instance of SmartContractDeploy from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.smartContractDeploy.create is supported since caver-js v1.6.1.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.smartContractDeploy({...}), please change it to caver.transaction.smartContractDeploy.create({...}).
속성
이름
타입
설명
from
string
발신자의 주소입니다.
input
string
트랜잭션에 첨부되는 데이터입니다. 배포될 스마트 컨트랙트의 바이트 코드와 그 아규먼트들입니다. caver.abi.encodeContractDeploy를 통해 얻을 수 있습니다.
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
value
string
(선택 사항, default: '0x0') 컨트랙트가 초기화되었을 때 스마트 컨트랙트 주소에 전송 및 저장될 peb으로 나타낸 KLAY 양입니다. caver.utils.toPeb를 사용할 수 있습니다.
to
string
(선택 사항, default: '0x') 스마트 컨트랙트가 배포되는 주소입니다. 현재는 이 값이 정의되지 않습니다. 특정 주소를 지정하는 기능은 향후 지원될 예정입니다.
humanReadable
boolean
(선택 사항, default: false) 인간이 읽을 수 있는 형식의 주소는 아직 지원되지 않기 때문에 이 값은 false입니다.
codeFormat
string
(선택 사항, default: "EVM") 스마트 컨트랙트의 코드 포맷입니다. 현재는 오직 EVM만 지원됩니다. 이 값은 할당 후 내부적으로 16진수로 변환됩니다(e.g. EVM이 converted to 0x0).
서명
Array
(선택 사항) 서명의 배열입니다.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. 미입력시 논스 설정을 위해 caver.rpc.klay.getTransactionCount(address, 'pending')가 사용됩니다.
가스 가격
string
(선택 사항) 발신자가 지불할 토큰양을 구하기 위한 승수입니다. 미입력시 gasPrice 설정을 위해 caver.rpc.klay.getGasPrice가 사용됩니다.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. 미입력시 chainId 설정을 위해 caver.rpc.klay.getChainId가 사용됩니다.
예시
// smartContractDeploy 생성
> caver.transaction.smartContractDeploy.create({
from: '0x{address in hex}',
input: '0x60806...',
gas: 100000,
})
// RLP-인코딩 문자열에서 smartContractDeploy 생성
> caver.transaction.smartContractDeploy.create('0x28f9027e1f8505d21dba00830dbba0808094d91aec35bea25d379e49cfe2dff5f5775cdac1a3b9020e60806040526000805534801561001457600080fd5b506101ea806100246000396000f30060806040526004361061006d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306661abd1461007257806342cbb15c1461009d578063767800de146100c8578063b22636271461011f578063d14e62b814610150575b600080fd5b34801561007e57600080fd5b5061008761017d565b6040518082815260200191505060405180910390f35b3480156100a957600080fd5b506100b2610183565b6040518082815260200191505060405180910390f35b3480156100d457600080fd5b506100dd61018b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561012b57600080fd5b5061014e60048036038101908080356000191690602001909291905050506101b1565b005b34801561015c57600080fd5b5061017b600480360381019080803590602001909291905050506101b4565b005b60005481565b600043905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b50565b80600081905550505600a165627a7a7230582053c65686a3571c517e2cf4f741d842e5ee6aa665c96ce70f46f9a594794f11eb00298080f847f845820fe9a0018a9f680a74e275f1f83a5c2c45e1313c52432df4595e944240b1511a4f4ba7a02d762c3417f91b81db4907db832cb28cc64df7dca3ea9be64899ab3f4812f016')
SmartContractDeploy {
_type: 'TxTypeSmartContractDeploy',
_from: '0xd91aec35bea25d379e49cfe2dff5f5775cdac1a3',
_gas: '0xdbba0',
_nonce: '0x1f',
_gasPrice: '0x5d21dba00',
_signatures: [ SignatureData { _v: '0x0fe9', _r: '0x018a9...', _s: '0x2d762...' } ],
_to: '0x',
_value: '0x0',
_input: '0x60806...',
_humanReadable: false,
_codeFormat: '0x0'
}

SmartContractExecution

caver.transaction.smartContractExecution.create(transactionObject)
SmartContractExecution스마트 컨트랙트 실행 트랜잭션을 나타냅니다. transactionObjectSmartContractExecution를 생성하기 위해 아래와 같은 속성들을 가질 수 있습니다.
SmartContractExecution은 멤버변수로서 아래와 같은 속성들을 가지고 있습니다. 선택 사항인 속성들은 사용자가 SmartContractExecution 트랜잭션을 생성할 때 transactionObject에 선택적으로 주어질 수 있는 속성들을 뜻합니다.
NOTE: You can create an instance of SmartContractExecution from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.smartContractExecution.create is supported since caver-js v1.6.1.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.smartContractExecution({...}), please change it to caver.transaction.smartContractExecution.create({...}).
속성
이름
타입
설명
from
string
발신자의 주소입니다.
to
string
실행할 스마트 컨트랙트 계정의 주소입니다.
input
string
트랜잭션 실행에 이용되며 트랜잭션에 첨부되는 데이터입니다. 호출할 함수와 전달될 파라미터들을 나타내는 엔코딩된 문자열입니다. caver.abi.encodeFunctionCall를 통해 얻을 수 있습니다.
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
value
string
(선택 사항, default: '0x0') peb로 나타낸 전송될 KLAY 양입니다. caver.utils.toPeb를 사용할 수 있습니다.
서명
Array
(선택 사항) 서명의 배열입니다.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. 미입력시 논스 설정을 위해 caver.rpc.klay.getTransactionCount(address, 'pending')가 사용됩니다.
가스 가격
string
(선택 사항) 발신자가 지불할 토큰양을 구하기 위한 승수입니다. 미입력시 gasPrice 설정을 위해 caver.rpc.klay.getGasPrice가 사용됩니다.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. 미입력시 chainId 설정을 위해 caver.rpc.klay.getChainId가 사용됩니다.
예시
// smartContractExecution 생성
> caver.transaction.smartContractExecution.create({
from: '0x{address in hex}',
to: '0x{address in hex}',
input: '0xa9059...',
gas: 90000,
})
// RLP-인코딩 문자열에서 smartContractExecution 생성
> caver.transaction.smartContractExecution.create('0x30f8c5038505d21dba00830dbba094e3cd4e1cd287235cc0ea48c9fd02978533f5ec2b80946b604e77c0fbebb5b2941bcde3ab5eb09d99ad24b844a9059cbb0000000000000000000000008a4c9c443bb0645df646a2d5bb55def0ed1e885a0000000000000000000000000000000000000000000000000000000000003039f847f845820feaa066e1650b5779f152489633f343581c07938f8b2fc92c919d4dd7c7295d0beacea067b0b79383dbcd42a3aa8ebb1aa4bcb1fc0623ef9e97bc1e9b82d96fe37b5881')
SmartContractExecution {
_type: 'TxTypeSmartContractExecution',
_from: '0x6b604e77c0fbebb5b2941bcde3ab5eb09d99ad24',
_gas: '0xdbba0',
_nonce: '0x3',
_gasPrice: '0x5d21dba00',
_signatures: [ SignatureData { _v: '0x0fea', _r: '0x66e16...', _s: '0x67b0b...' } ],
_to: '0xe3cd4e1cd287235cc0ea48c9fd02978533f5ec2b',
_value: '0x0',
_input: '0xa9059...'
}

Cancel

caver.transaction.cancel.create(transactionObject)
LegacyTransaction취소 트랜잭션을 의미합니다. transactionObjectCancel 트랜잭션을 생성하기 위해 아래와 같은 속성들을 가질 수 있습니다.
Cancel은 트랜잭션 풀에서 같은 논스를 가진 트랜잭션 실행을 취소합니다.
Cancel는 멤버변수로서 아래와 같은 속성들을 가지고 있습니다. 선택 사항인 속성들은 사용자가 Cancel 트랜잭션을 생성할 때 transactionObject에 선택적으로 주어질 수 있는 속성들을 뜻합니다.
NOTE: You can create an instance of Cancel from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.cancel.create is supported since caver-js v1.6.1.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.xcancelxx({...}), please change it to caver.transaction.cancel.create({...}).
속성
이름
타입
설명
from
string
발신자의 주소입니다.
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. 미입력시 논스 설정을 위해 caver.rpc.klay.getTransactionCount(address, 'pending')가 사용됩니다.
서명
Array
(선택 사항) 서명의 배열입니다.
가스 가격
string
(선택 사항) 발신자가 지불할 토큰양을 구하기 위한 승수입니다. 미입력시 gasPrice 설정을 위해 caver.rpc.klay.getGasPrice가 사용됩니다.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. 미입력시 chainId 설정을 위해 caver.rpc.klay.getChainId가 사용됩니다.
예시
// cancel 생성
> caver.transaction.cancel.create({
from: '0x{address in hex}',
nonce: 1,
gas: 25000,
})
// RLP-인코딩 문자열에서 cancel 생성
> caver.transaction.cancel.create('0x38f869068505d21dba00830dbba0946b604e77c0fbebb5b2941bcde3ab5eb09d99ad24f847f845820feaa0d9994ef507951a59380309f656ee8ed685becdc89b1d1a0eb1d2f72683ae14d3a07ad5d37a89781f294fab72b254ea9266e4d039ae163db4a4c4752f1fabff023b')
Cancel {
_type: 'TxTypeCancel',
_from: '0x6b604e77c0fbebb5b2941bcde3ab5eb09d99ad24',
_gas: '0xdbba0',
_nonce: '0x6',
_gasPrice: '0x5d21dba00',
_signatures: [ SignatureData { _v: '0x0fea', _r: '0xd9994...', _s: '0x7ad5d...' } ]
}

ChainDataAnchoring

caver.transaction.chainDataAnchoring.create(transactionObject)
ChainDataAnchoring체인 데이터 앵커링 트랜잭션을 나타냅니다. transactionObjectChainDataAnchoring 트랜잭션을 생성하기 위해 아래와 같은 속성들을 가질 수 있습니다.
ChainDataAnchoring은 멤버변수로서 아래와 같은 속성들을 가지고 있습니다. 선택 사항인 속성들은 사용자가 ChainDataAnchoring 트랜잭션을 생성할 때 transactionObject에 선택적으로 주어질 수 있는 속성들을 뜻합니다.
NOTE: You can create an instance of ChainDataAnchoring from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.chainDataAnchoring.create is supported since caver-js v1.6.1.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.chainDataAnchoring({...}), please change it to caver.transaction.chainDataAnchoring.create({...}).
속성
이름
타입
설명
from
string
발신자의 주소입니다.
input
string
서비스체인의 데이터입니다.
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. 미입력시 논스 설정을 위해 caver.rpc.klay.getTransactionCount(address, 'pending')가 사용됩니다.
서명
Array
(선택 사항) 서명의 배열입니다.
가스 가격
string
(선택 사항) 발신자가 지불할 토큰양을 구하기 위한 승수입니다. 미입력시 gasPrice 설정을 위해 caver.rpc.klay.getGasPrice가 사용됩니다.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. 미입력시 chainId 설정을 위해 caver.rpc.klay.getChainId가 사용됩니다.
예시
// chainDataAnchoring 생성
> caver.transaction.chainDataAnchoring.create({
from: '0x{address in hex}',
gas: 50000,
input: '0xf8a6a...',
})
// RLP-인코딩 문자열에서 chainDataAnchoring 생성
> caver.transaction.chainDataAnchoring.create('0x48f9010e8204d219830f424094a94f5374fce5edbc8e2a8697c15331677e6ebf0bb8a8f8a6a00000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000002a00000000000000000000000000000000000000000000000000000000000000003a0000000000000000000000000000000000000000000000000000000000000000405f845f84325a0e58b9abf9f33a066b998fccaca711553fb4df425c9234bbb3577f9d9775bb124a02c409a6c5d92277c0a812dd0cc553d7fe1d652a807274c3786df3292cd473e09')
ChainDataAnchoring {
_type: 'TxTypeChainDataAnchoring',
_from: '0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b',
_gas: '0xf4240',
_nonce: '0x4d2',
_gasPrice: '0x19',
_signatures: [ SignatureData { _v: '0x25', _r: '0xe58b9...', _s: '0x2c409...' } ],
_input: '0xf8a6a...'
}

EthereumAccessList

caver.transaction.ethereumAccessList.create(transactionObject)
EthereumAccessList represents an Ethereum access list transaction. A Klaytn account can execute a EthereumAccessList only with AccountKeyLegacy. The transactionObject can have properties below to create a EthereumAccessList.
EthereumAccessList has the properties below as its member variables. Properties marked as optional refer to properties that can be optionally given in transactionObject when the user creates EthereumAccessList.
NOTE: You can create an instance of EthereumAccessList from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.ethereumAccessList is supported since caver-js v1.8.0.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.ethereumAccessList({...}), please change it to caver.transaction.ethereumAccessList.create({...}).
속성
이름
타입
설명
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
value
string
(선택 사항, default: '0x0') peb로 나타낸 전송될 KLAY 양입니다. caver.utils.toPeb를 사용할 수 있습니다.
from
string
(선택 사항) 발신자의 주소입니다. 미입력시 서명에 사용되는 키링 주소로 설정됩니다.
to
string
(optional, default: '0x') The account address that will receive the transferred value or smart contact address if an ethereum access list transaction execute smart contract. If an ethereum access list transaction deploys a smart contract, to does not need to be defined.
input
string
(선택 사항) 스마트 컨트랙트의 배포와 실행에 사용되는 트랜잭션에 첨부된 데이터입니다.
서명
Array
(선택 사항) 서명의 배열입니다. An ethereum access list transaction can have only one signature.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. 미입력시 논스 설정을 위해 caver.rpc.klay.getTransactionCount(address, 'pending')가 사용됩니다.
가스 가격
string
(선택 사항) 발신자가 지불할 토큰양을 구하기 위한 승수입니다. 미입력시 gasPrice 설정을 위해 caver.rpc.klay.getGasPrice가 사용됩니다.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. 미입력시 chainId 설정을 위해 caver.rpc.klay.getChainId가 사용됩니다.
accessList
Array
(optional) As an EIP-2930 access list that contains all storage slots and addresses read and written by the transaction.
예시
> caver.transaction.ethereumAccessList.create({
to: '0x9957dfd92e4b70f91131c573293343bc5f21f215',
value: caver.utils.toPeb(1, 'KLAY'),
gas: 40000,
accessList: [
{
address: '0x5430192ae264b3feff967fc08982b9c6f5694023',
storageKeys: [
'0x0000000000000000000000000000000000000000000000000000000000000003',
'0x0000000000000000000000000000000000000000000000000000000000000007',
],
},
]
})
> caver.transaction.ethereumAccessList.create('0x7801f90109822710238505d21dba00829c4094c5fb1386b60160614a8151dcd4b0ae41325d1cb801b844a9059cbb0000000000000000000000008a4c9c443bb0645df646a2d5bb55def0ed1e885a0000000000000000000000000000000000000000000000000000000000003039f85bf859945430192ae264b3feff967fc08982b9c6f5694023f842a00000000000000000000000000000000000000000000000000000000000000003a0000000000000000000000000000000000000000000000000000000000000000701a05ac25e47591243af2d6b8e7f54d608e9e0e0aeb5194d34c17852bd7e376f4857a0095a40394f33e95cce9695d5badf4270f4cc8aff0b5395cefc3a0fe213be1f30')
EthereumAccessList {
_type: 'TxTypeEthereumAccessList',
_from: '0x0000000000000000000000000000000000000000',
_gas: '0x9c40',
_nonce: '0x23',
_chainId: '0x2710',
_signatures: SignatureData {
_v: '0x01',
_r: '0x5ac25e47591243af2d6b8e7f54d608e9e0e0aeb5194d34c17852bd7e376f4857',
_s: '0x095a40394f33e95cce9695d5badf4270f4cc8aff0b5395cefc3a0fe213be1f30'
},
_to: '0xc5fb1386b60160614a8151dcd4b0ae41325d1cb8',
_input: '0xa9059cbb0000000000000000000000008a4c9c443bb0645df646a2d5bb55def0ed1e885a0000000000000000000000000000000000000000000000000000000000003039',
_value: '0x1',
_accessList: AccessList(0) [],
_gasPrice: '0x5d21dba00'
}

EthereumDynamicFee

caver.transaction.ethereumDynamicFee.create(transactionObject)
EthereumDynamicFee represents an Ethereum dynamic fee transaction. A Klaytn account can execute a EthereumDynamicFee only with AccountKeyLegacy. The transactionObject can have properties below to create a EthereumDynamicFee.
EthereumDynamicFee has the properties below as its member variables. Properties marked as optional refer to properties that can be optionally given in transactionObject when the user creates EthereumDynamicFee. And note that EthereumDynamicFee does not use gasPrice, it uses maxPriorityFeePerGas and maxFeePerGas.
NOTE: You can create an instance of EthereumDynamicFee from RLP-encoded strings. 아래 예시를 참고해주세요. NOTE: caver.transaction.ethereumDynamicFee is supported since caver-js v1.8.0.
NOTE: As of caver-js v1.8.1-rc.4, creating transactions is only supported using the create function. If you've been creating transactions using a constructor like new caver.transaction.ethereumDynamicFee({...}), please change it to caver.transaction.ethereumDynamicFee.create({...}).
속성
이름
타입
설명
gas
string
트랜잭션에서 사용하도록 허락된 최대 트랜잭션 수수료입니다.
value
string
(선택 사항, default: '0x0') peb로 나타낸 전송될 KLAY 양입니다. caver.utils.toPeb를 사용할 수 있습니다.
from
string
(선택 사항) 발신자의 주소입니다. If omitted, it will be set to the keyring address used for signing.
to
string
(optional, default: '0x') The account address that will receive the transferred value or smart contact address when an ethereum dynamic fee transaction executes a smart contract. When an ethereum dynamic fee transaction deploys a smart contract, to does not need to be defined.
input
string
(선택 사항) 스마트 컨트랙트의 배포와 실행에 사용되는 트랜잭션에 첨부된 데이터입니다.
서명
Array
(선택 사항) 서명의 배열입니다. An ethereum dynamic fee transaction can have only one signature.
논스
string
(선택 사항) 발신자의 트랜잭션을 고유하게 식별하기 위해 사용되는 값입니다. If omitted, it will be set to caver.rpc.klay.getTransactionCount(address, 'pending').
maxPriorityFeePerGas
string
(optional) Gas tip cap for the transaction in peb. Since Klaytn has a fixed gas price, it should be set to the same value as caver.rpc.klay.getGasPrice. If omitted, it will be set to caver.rpc.klay.getMaxPriorityFeePerGas().
maxFeePerGas
string
(optional) A maximum amount to pay for the transaction to execute. Since Klaytn has a fixed gas price, it should be set to the same value as caver.rpc.klay.getGasPrice. If omitted, the value of baseFeePerGas * 2 + maxPriorityFeePerGas is set to maxFeePerGas.
chainId
string
(선택 사항) Klaytn 네트워크의 체인 ID입니다. If omitted, it will be set to caver.rpc.klay.getChainId.
accessList
Array
(optional) As an EIP-2930 access list that contains all storage slots and addresses read and written by the transaction.
예시
> caver.transaction.ethereumDynamicFee.create({
to: '0x9957dfd92e4b70f91131c573293343bc5f21f215',
value: caver.utils.toPeb(1, 'KLAY'),
gas: 50000,
accessList: [
{
address: '0x5430192ae264b3feff967fc08982b9c6f5694023',
storageKeys: [
'0x0000000000000000000000000000000000000000000000000000000000000003',
'0x0000000000000000000000000000000000000000000000000000000000000007',
],
},
]
})
> caver.transaction.ethereumDynamicFee.create('0x7802f9010f822710258505d21dba008505d21dba00829c40941fc92c23f71a7de4cdb4394a37fc636986a0f48401b844a9059cbb0000000000000000000000008a4c9c443bb0645df646a2d5bb55def0ed1e885a0000000000000000000000000000000000000000000000000000000000003039f85bf8599467116062f1626f7b3019631f03d301b8f701f709f842a00000000000000000000000000000000000000000000000000000000000000003a0000000000000000000000000000000000000000000000000000000000000000780a04fc52da183020a27dc4b684a45404445630e946b0c1a37edeb538d4bdae63040a07d56dbcc61f42ffcbced105f838d20b8fe71e85a4d0344c7f60815fddfeae4cc')
EthereumDynamicFee {
_type: 'TxTypeEthereumDynamicFee',
_from: '0x0000000000000000000000000000000000000000',
_gas: '0x9c40',
_nonce: '0x25',
_chainId: '0x2710',
_signatures: SignatureData {
_v: '0x',
_r: '0x4fc52da183020a27dc4b684a45404445630e946b0c1a37edeb538d4bdae63040',
_s: '0x7d56dbcc61f42ffcbced105f838d20b8fe71e85a4d0344c7f60815fddfeae4cc'
},
_to: '0x1fc92c23f71a7de4cdb4394a37fc636986a0f484',
_input: '0xa9059cbb0000000000000000000000008a4c9c443bb0645df646a2d5bb55def0ed1e885a0000000000000000000000000000000000000000000000000000000000003039',
_value: '0x1',
_accessList: AccessList(0) [],
_maxPriorityFeePerGas: '0x5d21dba00',
_maxFeePerGas: '0x5d21dba00'
}
Copy link
On this page
레거시 트랜잭션
ValueTransfer
ValueTransferMemo
AccountUpdate
SmartContractDeploy
SmartContractExecution
Cancel
ChainDataAnchoring
EthereumAccessList
EthereumDynamicFee