Pular para o conteúdo principal

EVM

Encontre abaixo uma lista de métodos JSON-RPC suportados no CrossFi, ordenados por namespaces.

Exemplos de Curl Explicados

As opções curl abaixo podem retornar uma resposta onde o nó reclama sobre o tipo de conteúdo. Isso ocorre porque a opção --data define o tipo de conteúdo como application/x-www-form-urlencoded. Se o seu nó reclamar, defina manualmente o cabeçalho colocando -H \"Content-Type: application/json\" no início da chamada.

Os exemplos também não incluem a combinação de URL/IP & porta que deve ser o último argumento dado ao curl, por exemplo, 127.0.0.1:8545

Endpoints

MétodoNamespaceImplementadoPúblicoNotas
web3_clientVersionWeb3
web3_sha3Web3
net_versionNet
net_peerCountNet
net_listeningNet
eth_protocolVersionEth
eth_syncingEth
eth_gasPriceEth
eth_accountsEth
eth_blockNumberEth
eth_getBalanceEth
eth_getStorageAtEth
eth_getTransactionCountEth
eth_getBlockTransactionCountByNumberEth
eth_getBlockTransactionCountByHashEth
eth_getCodeEth
eth_signEth
eth_sendTransactionEth
eth_sendRawTransactionEth
eth_callEth
eth_estimateGasEth
eth_getBlockByNumberEth
eth_getBlockByHashEth
eth_getTransactionByHashEth
eth_getTransactionByBlockHashAndIndexEth
eth_getTransactionReceiptEth
eth_newFilterEth
eth_newBlockFilterEth
eth_newPendingTransactionFilterEth
eth_uninstallFilterEth
eth_getFilterChangesEth
eth_getFilterLogsEth
eth_getLogsEth
eth_getTransactionbyBlockNumberAndIndexEth
eth_getWorkEthN/AApenas PoW
eth_submitWorkEthN/AApenas PoW
eth_submitHashrateEth
eth_getCompilersEth
eth_compileLLLEth
eth_compileSolidityEth
eth_compileSerpentEth
eth_signTransactionEth
eth_miningEth
eth_coinbaseEth
eth_hashrateEthN/ASomente PoW
eth_getUncleCountByBlockHashEthN/ASomente PoW
eth_getUncleCountByBlockNumberEthN/ASomente PoW
eth_getUncleByBlockHashAndIndexEthN/ASomente PoW
eth_getUncleByBlockNumberAndIndexEthN/ASomente PoW
eth_getProofEth
eth_subscribeWebsocket
eth_unsubscribeWebsocket
personal_importRawKeyPessoal
personal_listAccountsPessoal
personal_lockAccountPessoal
personal_newAccountPessoal
personal_unlockAccountPessoal
personal_sendTransactionPessoal
personal_signPessoal
personal_ecRecoverPessoal
personal_initializeWalletPessoal
personal_unpairPessoal
db_putStringDB
db_getStringDB
db_putHexDB
db_getHexDB
shh_postSSH
shh_versionSSH
shh_newIdentitySSH
shh_hasIdentitySSH
shh_newGroupSSH
shh_addToGroupSSH
shh_newFilterSSH
shh_uninstallFilterSSH
shh_getFilterChangesSSH
shh_getMessagesSSH
admin_addPeerAdmin
admin_datadirAdmin
admin_nodeInfoAdmin
admin_peersAdmin
admin_startRPCAdmin
admin_startWSAdmin
admin_stopRPCAdmin
admin_stopWSAdmin
clique_getSnapshotClique
clique_getSnapshotAtHashClique
clique_getSignersClique
clique_proposalsClique
clique_proposeClique
clique_discardClique
clique_statusClique
debug_backtraceAtDepurar
debug_blockProfileDepurar
debug_cpuProfileDepurar
debug_dumpBlockDepurar
debug_gcStatsDepurar
debug_getBlockRlpDepurar
debug_goTraceDepurar
debug_freeOSMemoryDepurar
debug_memStatsDepurar
debug_mutexProfileDepurar
debug_seedHashDepurar
debug_setHeadDepurar
debug_setBlockProfileRateDepurar
debug_setGCPercentDepurar
debug_setMutexProfileFractionDepurar
debug_stacksDepurar
debug_startCPUProfileDepurar
debug_startGoTraceDepurar
debug_stopCPUProfileDepurar
debug_stopGoTraceDepurar
debug_traceBlockDepurar
debug_traceBlockByNumberDepurar
debug_traceBlockByHashDepurar
debug_traceBlockFromFileDepurar
debug_standardTraceBlockToFileDepurar
debug_standardTraceBadBlockToFileDepurar
debug_traceTransactionDepurar
debug_verbosityDepurar
debug_vmoduleDepurar
debug_writeBlockProfileDepurar
debug_writeMemProfileDepurar
debug_writeMutexProfileDepurar
les_serverInfoLes
les_clientInfoLes
les_priorityClientInfoLes
les_addBalanceLes
les_setClientParamsLes
les_setDefaultParamsLes
les_latestCheckpointLes
les_getCheckpointLes
les_getCheckpointContractAddressLes
miner_getHashrateMinerNo-op
miner_setExtraMinerNo-op
miner_setGasPriceMinerRequer reinício do nó
miner_startMinerNo-op
miner_stopMinerNo-op
miner_setGasLimitMinerNo-op
miner_setEtherbaseMiner
txpool_contentTxPool
txpool_inspectTxPool
txpool_statusTxPool
Número do Bloco pode ser inserido como uma string Hex, "earliest", "latest" ou "pending".

:::Abaixo está uma lista dos métodos RPC, os parâmetros e um exemplo de resposta dos namespaces.## Métodos Web3### web3_clientVersionObtenha a versão cliente web3.#### Parâmetros (0)#### Exemplos de Cliente```shell curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''

javascript web3.clientVersion(); ### `web3_sha3`Retorna Keccak-256 (não o padronizado SHA3-256) dos dados fornecidos.#### Parâmetros (1)1: entrada `hexutil.Bytes`- Necessário: ✓ Sim#### Resultadojson

#### Exemplos de Clienteshell curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''

javascript web3.sha3(input); ## Métodos Net### `net_version`Retorna o id de rede atual.json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

### `net_peerCount`Retorna o número de peers atualmente conectados ao cliente.json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

### `net_listening`Retorna se o cliente está ativamente ouvindo conexões de rede.json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

## Métodos Eth### `eth_protocolVersion`Retorna a versão atual do protocolo ethereum.json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

### `eth_syncing`O objeto de status de sincronização pode precisar ser diferente dependendo dos detalhes do protocolo de sincronização do Tendermint. No entanto, o resultado 'sincronizado' é simplesmente um booleano e pode ser facilmente derivado do estado de sincronização interno do Tendermint.json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

### `eth_gasPrice`Retorna o preço do gas atual na denominação padrão do EVM.json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

### `eth_accounts`Retorna uma array de todas as contas eth.json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

### `eth_blockNumber`Retorna a altura do bloco atual.json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

```### eth_getBalanceRetorna o saldo da conta para um endereço de conta dado e Número do Bloco.#### Parâmetros- Endereço da Conta

  • Número do Bloco ou Hash do Bloco (EIP-1898)```json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

```### eth_getStorageAtRetorna o endereço de armazenamento para um endereço de conta dado.#### Parâmetros- Endereço da Conta

  • Inteiro da posição no armazenamento
  • Número do Bloco ou Hash do Bloco (EIP-1898)```json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

```### eth_getTransactionCountRetorna a transação total para um endereço de conta dado e Número do Bloco.#### Parâmetros- Endereço da Conta

  • Número do Bloco ou Hash do Bloco (EIP-1898)```json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

### `eth_getBlockTransactionCountByNumber`Retorna a contagem total de transações para um número de bloco dado.#### Parâmetros- Número do Blocojson // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado } ### `eth_getBlockTransactionCountByHash`Retorna a contagem total de transações para um hash de bloco dado.#### Parâmetros- Hash do Blocojson // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

```### eth_getCodeRetorna o código para um endereço de conta dado e Número do Bloco.#### Parâmetros- Endereço da Conta

  • Número do Bloco ou Hash do Bloco (EIP-1898)```json // Solicitação curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

```### eth_signO método sign calcula uma assinatura específica da Ethereum com: sign(keccak256("\x19Ethereum Signed Message:\n" + len(mensagem) + mensagem))).Adicionando um prefixo à mensagem torna a assinatura calculada reconhecível como uma assinatura específica da Ethereum. Isso previne o uso indevido onde um DApp malicioso pode assinar dados arbitrários (e.g. transação) e usar a assinatura para se passar pela vítima.

Abaixo está uma lista dos métodos RPC, os parâmetros e um exemplo de resposta dos namespaces.

Métodos Web3

web3_clientVersion

Obtenha a versão cliente web3.

Parâmetros (0)

Exemplos de Cliente

curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''
javascript
web3.clientVersion();

web3_sha3

Retorna Keccak-256 (não o padronizado SHA3-256) dos dados fornecidos.

Parâmetros (1)

1: entrada hexutil.Bytes

  • Necessário: ✓ Sim

Resultado

Exemplos de Cliente

curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''
javascript
web3.sha3(input);

Métodos de Rede

net_version

Retorna o ID da rede atual.

// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

net_peerCount

Retorna o número de pares atualmente conectados ao cliente.

// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

net_listening

Retorna se o cliente está ativamente ouvindo por conexões de rede.

// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

Métodos Eth

eth_protocolVersion

Retorna a versão do protocolo Ethereum atual.

// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_syncing

O objeto de status de sincronização pode precisar ser diferente dependendo dos detalhes do protocolo de sincronização do Tendermint. Contudo, o resultado 'sincronizado' é simplesmente um booleano e pode ser derivado facilmente do estado de sincronização interna do Tendermint.

// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_gasPrice

Retorna o preço atual do gás na denominação padrão do EVM.

// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_accounts

Retorna uma matriz de todas as contas eth.

// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_blockNumber

Retorna a altura atual do bloco.

// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getBalance

Retorna o saldo da conta para um determinado endereço de conta e número de bloco.

Parâmetros

  • Endereço da Conta
  • Número do Bloco ou Hash do Bloco (EIP-1898)
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getStorageAt

Retorna o endereço de armazenamento para um determinado endereço de conta.

Parâmetros

  • Endereço da Conta
  • Integer da posição no armazenamento
  • Número do Bloco ou Hash do Bloco (EIP-1898)
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getTransactionCount

Retorna o total de transações para um determinado endereço de conta e número de bloco.

Parâmetros

  • Endereço da Conta
  • Número do Bloco ou Hash do Bloco (EIP-1898)
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getBlockTransactionCountByNumber

Retorna o total de transações para um determinado número de bloco.

Parâmetros

  • Número do bloco
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getBlockTransactionCountByHash

Retorna o total de transações para um determinado hash de bloco.

Parâmetros

  • Hash do Bloco
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getCode

Retorna o código para um dado endereço de conta e número de bloco.

Parâmetros

  • Endereço da Conta
  • Número do Bloco ou Hash do Bloco (EIP-1898)
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_sign

O método sign calcula uma assinatura específica do Ethereum com: sign(keccak256("\x19Ethereum Signed Message:\n" + len(message) + message))).

Ao adicionar um prefixo à mensagem, a assinatura calculada torna-se reconhecível como uma assinatura específica do Ethereum. Isso evita o mau uso, onde um DApp mal-intencionado pode assinar dados arbitrários (por exemplo, transação) e usar a assinatura para se passar pela vítima.

O endereço para assinar deve estar desbloqueado.

Parâmetros

  • Endereço da Conta
  • Mensagem para assinar
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_sendTransaction

Envia transação de uma conta fornecida para uma conta fornecida.

Parâmetros

  • Objeto contendo:

    from: DATA, 20 Bytes - O endereço do qual a transação é enviada.

    to: DATA, 20 Bytes - (opcional ao criar novo contrato) O endereço ao qual a transação é direcionada.

    gas: QUANTIDADE - (opcional, padrão: 90000) Integer do gás fornecido para a execução da transação. Será retornado o gás não usado.

    gasPrice: QUANTIDADE - (opcional, padrão: A Ser Determinado) Integer do preço do gás usado para cada gás pago

    value: QUANTIDADE - valor enviado com esta transação

    data: DATA - O código compilado de um contrato OU o hash da assinatura do método invocado e parâmetros codificados. Para detalhes veja Ethereum Contract ABI

    nonce: QUANTIDADE - (opcional) Integer de um nonce. Isso permite sobrescrever suas próprias transações pendentes que usam o mesmo nonce.

// Solicitação
curl -X POST --data '],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_sendRawTransaction

Cria uma nova transação de chamada de mensagem ou uma criação de contrato para transações assinadas. Você pode obter dados de transação assinados usando o método personal_sign.

Parâmetros

  • Os dados da transação assinada
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_call

Executa uma nova chamada de mensagem imediatamente sem criar uma transação no blockchain.

Parâmetros

  • Objeto contendo:

    from: DATA, 20 Bytes - (opcional) O endereço do qual a transação é enviada.

    to: DATA, 20 Bytes - O endereço ao qual a transação é direcionada.

    gas: QUANTIDADE - gás fornecido para a execução da transação. eth_call consome zero gás, mas esse parâmetro pode ser necessário em algumas execuções.

    gasPrice: QUANTIDADE - preço do gás usado para cada gás pago

    value: QUANTIDADE - valor enviado com esta transação

    data: DATA - (opcional) Hash da assinatura do método e parâmetros codificados. Para detalhes veja Ethereum Contract ABI na documentação de Solidity

  • Número do bloco ou Hash do Bloco (EIP-1898)

// Solicitação
curl -X POST --data ', "0x0"],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_estimateGas

Retorna um valor estimado do gás necessário para enviar a transação.

Parâmetros

  • Objeto contendo:

    from: DATA, 20 Bytes - O endereço do qual a transação é enviada.

    to: DATA, 20 Bytes - (opcional ao criar novo contrato) O endereço ao qual a transação é direcionada.

    value: QUANTIDADE - valor enviado com esta transação

// Solicitação
curl -X POST --data '],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getBlockByNumber

Retorna informações sobre um bloco pelo número do bloco.

Parâmetros

  • Número do Bloco
  • Se verdadeiro, retorna os objetos de transação completos, caso contrário apenas os hashes das transações.
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getBlockByHash

Retorna as informações do bloco dado o hash encontrado no comando acima e um bool.

Parâmetros

  • Hash de um bloco.
  • Se verdadeiro, retorna os objetos de transação completos, caso contrário apenas os hashes das transações.
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getTransactionByHash

Retorna detalhes da transação dado o tx algo do Ethereum.

Parâmetros

  • hash de uma transação
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getTransactionByBlockHashAndIndex

Retorna detalhes da transação dado o hash do bloco e o índice da transação.

Parâmetros

  • Hash de um bloco.
  • Posição do índice da transação.
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getTransactionReceipt

Retorna o recibo de uma transação pelo hash da transação.

Nota: O código Tx do Tendermint e o status do recibo Ethereum são trocados:

TendermintEthereum
Sucesso01
Falha10

Parâmetros

  • Hash de uma transação
// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_newFilter

Cria um novo filtro usando tópicos de algum tipo.

Parâmetros

  • hash de uma transação
// Solicitação
curl -X POST --data '],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_newBlockFilter

Cria um filtro no nó, para notificar quando um novo bloco chegar.

// Solicitação
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_newPendingTransactionFilter

Cria um filtro no nó para notificar quando novas transações pendentes chegarem.

// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_uninstallFilter

Remove o filtro com o ID fornecido. Retorna verdadeiro se o filtro foi desinstalado com sucesso, caso contrário, falso.

Parâmetros

  • O ID do filtro
// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getFilterChanges

Método de polling para um filtro que retorna um array de logs que ocorreram desde a última consulta.

Parâmetros

  • O ID do filtro
// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getFilterLogs

Retorna um array de todos os logs que correspondem ao filtro com o ID fornecido.

Parâmetros

  • QUANTIDADE - O ID do filtro
// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getLogs

Retorna um array de todos os logs que correspondem a um objeto de filtro fornecido.

Parâmetros

  • Objeto contendo:

    fromBlock: QUANTIDADE|TAG - (opcional, padrão: "latest") Número do bloco inteiro ou "latest" para o último bloco minerado ou "pending", "earliest" para transações ainda não mineradas.

    toBlock: QUANTIDADE|TAG - (opcional, padrão: "latest") Número do bloco inteiro ou "latest" para o último bloco minerado ou "pending", "earliest" para transações ainda não mineradas.

    address: DADOS|Array, 20 Bytes - (opcional) Endereço do contrato ou uma lista de endereços de onde os logs devem se originar.

    topics: Array de DADOS, - (opcional) Array de 32 Bytes DADOS tópicos. Os tópicos são dependentes de ordem. Cada tópico também pode ser um array de DADOS com opções "ou".

    blockhash: (opcional, futuro) Com a adição de EIP-234, blockHash será uma nova opção de filtro que restringirá os logs retornados ao bloco único com o hash blockHash de 32 bytes. Usar blockhash é equivalente a fromBlock = toBlock = o número do bloco com hash blockHash. Se blockhash estiver presente nos critérios de filtro, então nem fromBlock nem toBlock são permitidos.

// Requisição
curl -X POST --data '],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_coinbase

Retorna a conta para a qual as recompensas de mineração serão enviadas.

// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

eth_getProof

Retorna os valores de conta e armazenamento da conta especificada, incluindo a prova de Merkle.

Parâmetros

  • Endereço da conta ou contrato
  • Inteiro da posição no armazenamento
  • Número do Bloco ou Hash do Bloco (EIP-1898)
// Requisição
curl -X POST --data '' -H "Content-type:application/json" http://localhost:8545

// Resultado

Métodos WebSocket

Leia sobre websockets em Eventos Tendermint

eth_subscribe

inscrever-se usando notificações JSON-RPC. Isso permite que os clientes esperem por eventos em vez de consultá-los.

Funciona inscrevendo-se em eventos específicos. O nó retornará um ID de inscrição. Para cada evento que coincida com a inscrição, uma notificação com dados relevantes é enviada junto com o ID de inscrição.

Parâmetros

  • Nome da Inscrição
  • Argumentos Opcionais
// Requisição
]}

// Resultado
<

eth_unsubscribe

Cancelar a inscrição de um evento usando o ID de inscrição

Parâmetros

  • ID de Inscrição
// Requisição

// Resultado

Métodos Pessoais

personal_importRawKey

Privado: Requer autenticação.

:::Importa a chave privada não criptografada fornecida (string codificada em hexadecimal) para o armazenamento de chaves, criptografando-a com a senha.Retorna o endereço da nova conta.#### Parâmetros (2)1: privkey string- Requerido: ✓ Sim2: senha string- Requerido: ✓ Sim```json // Requisição curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

```### personal_listAccounts:::dica Privado: Requer autenticação.

Importa a chave privada não criptografada fornecida (string codificada em hexadecimal) para o armazenamento de chaves, criptografando-a com a senha.

Retorna o endereço da nova conta.

Parâmetros (2)

1: privkey string

  • Requerido: ✓ Sim

2: senha string

  • Requerido: ✓ Sim
// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

personal_listAccounts

:::dica Privado: Requer autenticação. :::

Retorna uma lista de endereços para contas geridas por este nó.

// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

personal_lockAccount

Privado: Requer autenticação.

:::Remove a chave privada com o endereço fornecido da memória. A conta não poderá mais ser usada para enviar transações.#### Parâmetros- Endereço da Conta```json // Requisição curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

```### personal_newAccount:::dica Privado: Requer autenticação.

Remove a chave privada com o endereço fornecido da memória. A conta não poderá mais ser usada para enviar transações.

Parâmetros

  • Endereço da Conta
// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

personal_newAccount

:::dica Privado: Requer autenticação. :::

Gera uma nova chave privada e armazena-a no diretório de armazenamento de chaves. O arquivo de chave é criptografado com a senha fornecida. Retorna o endereço da nova conta.

Parâmetros

  • Senha
// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

personal_unlockAccount

Privado: Requer autenticação.

:::Descriptografa a chave com o endereço fornecido do armazenamento de chaves.Tanto a senha quanto a duração do desbloqueio são opcionais ao usar o console JavaScript. A chave descriptografada ficará na memória até que o tempo do desbloqueio expire. Se a duração do desbloqueio não for especificada, o padrão é 300 segundos. Uma duração explícita de zero segundos desbloqueia a chave até que o "geth" feche.A conta pode ser utilizada com eth_sign e eth_sendTransaction enquanto estiver desbloqueada.#### Parâmetros- Endereço da Conta

  • Senha
  • Duração```json // Requisição curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

```### personal_sendTransaction:::dica Privado: Requer autenticação.

Descriptografa a chave com o endereço fornecido do armazenamento de chaves.

Tanto a senha quanto a duração do desbloqueio são opcionais ao usar o console JavaScript. A chave descriptografada ficará na memória até que o tempo do desbloqueio expire. Se a duração do desbloqueio não for especificada, o padrão é 300 segundos. Uma duração explícita de zero segundos desbloqueia a chave até que o "geth" feche.

A conta pode ser utilizada com eth_sign e eth_sendTransaction enquanto estiver desbloqueada.

Parâmetros

  • Endereço da Conta
  • Senha
  • Duração
// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

personal_sendTransaction

:::dica Privado: Requer autenticação. :::

Valide a senha fornecida e envie a transação.

A transação é o mesmo argumento como para eth_sendTransaction e contém o endereço "from". Se a senha puder ser utilizada para descriptografar a chave privada pertencente a "tx.from", a transação é verificada, assinada e enviada para a rede.

aviso

A conta não é desbloqueada globalmente no nó e não pode ser utilizada em outras chamadas RPC.

Parâmetros

  • Objeto contendo:

    from: DADOS, 20 Bytes - O endereço de onde a transação é enviada.

    to: DADOS, 20 Bytes - (opcional ao criar novo contrato) O endereço para o qual a transação é direcionada.

    value: QUANTIDADE - valor enviado com esta transação.

  • Senha

// Requisição
curl -X POST --data ', "senha"],"id":1}' -H "Content-Type: application/json" http://localhost:8545

// Resultado

personal_sign

Privado: Requer autenticação.

:::O método de assinatura calcula uma assinatura específica do Ethereum com: sign(keccack256("\x19Ethereum Signed Message:\n" + len(message) + message))),#### Parâmetros- Mensagem

  • Endereço da Conta
  • Senha```json // Requisição curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

```### personal_ecRecover:::dica Privado: Requer autenticação.

O método de assinatura calcula uma assinatura específica do Ethereum com: sign(keccack256("\x19Ethereum Signed Message:\n" + len(message) + message))),

Parâmetros

  • Mensagem
  • Endereço da Conta
  • Senha
// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

personal_ecRecover

:::dica Privado: Requer autenticação. :::

ecRecover retorna o endereço associado à chave privada que foi utilizada para calcular a assinatura em personal_sign.

Parâmetros

// Requisição
curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

// Resultado

personal_initializeWallet

Privado: Requer autenticação.

:::Inicializa uma nova carteira no URL fornecido, gerando e retornando uma nova chave privada.#### Parâmetros (1)Os parâmetros devem ser fornecidos por posição.1: url string- Requerido: ✓ Sim#### Exemplos de Cliente```shell curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''

javascript personal.initializeWallet(url); ```### personal_unpair:::dica Privado: Requer autenticação.

Inicializa uma nova carteira no URL fornecido, gerando e retornando uma nova chave privada.

Parâmetros (1)

Os parâmetros devem ser fornecidos por posição.

1: url string

  • Requerido: ✓ Sim

Exemplos de Cliente

curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''
javascript
personal.initializeWallet(url);

personal_unpair

:::dica Privado: Requer autenticação. :::

Unpair deleta um emparelhamento entre carteira e o nó.

Parâmetros (2)

  • URL
  • Senha do emparelhamento

Exemplos de Cliente

curl -X POST -H "Content-Type: application/json" http://localhost:8545 --data ''

wscat -c ws://localhost:8546 -x ''
javascript
personal.unpair(url,pin);

Métodos de Debug

debug_traceTransaction

O método de debug traceTransaction tentará executar a transação da mesma maneira que foi executada na rede. Ele irá reproduzir qualquer transação que possa ter sido executada antes desta para finalmente tentar executar a transação que corresponde ao hash fornecido.

Parâmetros

  • Configuração de Trace
// Requisição
curl -X POST --data ', step: function(log) , result: function() }"}],"id":1}' -H "Content-Type: application/json" http://localhost:8545

//Resultado
["68410", "51470"]

debug_traceBlockByNumber

O endpoint traceBlockByNumber aceita um número de bloco e reproduzirá o bloco que já está presente no banco de dados.

Parâmetros

  • Configuração de Rastreio
// Solicitação\ncurl -X POST --data ', step: function(log) , result: function() }"}],"id":1}' -H "Content-Type: application/json" http://localhost:8545\n\n//Resultado\n]}

Métodos de Mineração

miner_getHashrate

Privado: Requer autenticação.

:::\n\nObtenha a taxa de hash em H/s (Operações de Hash por segundo).\n\n:::aviso\nEspecífico para Proof-of-Work. Este endpoint sempre retorna 0.

Obtenha a taxa de hash em H/s (Operações de Hash por segundo).

:::aviso\nEspecífico para Proof-of-Work. Este endpoint sempre retorna 0.\n:::

// Solicitação\ncurl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n\n// Resultado\n

miner_setExtra

Privado: Requer autenticação.

:::\n\nDefine os dados extras que um validador pode incluir ao propor blocos. Isso está limitado a 32 bytes.\n\n:::aviso\nNão compatível. Este endpoint sempre retorna um erro

Define os dados extras que um validador pode incluir ao propor blocos. Isso está limitado a 32 bytes.

:::aviso\nNão compatível. Este endpoint sempre retorna um erro\n:::

Parâmetros

  • Dados
// Solicitação\ncurl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n\n// Resultado\n

miner_setGasPrice

Privado: Requer autenticação.

:::\n\nDefine o preço mínimo do gás usado para aceitar transações. Qualquer transação abaixo deste limite é excluída do processo de proposta de bloco do validador.\n\nEste método requer reiniciar um após ser chamado porque ele altera o arquivo de configuração.\n\nCertifique-se de que seu chamador de crossfid start não esteja usando a bandeira minimum-gas-prices porque este valor será usado em vez do que está configurado no arquivo de configuração.\n\n#### Parâmetros\n\n* Preço do Gás Hex\n\njson\n// Solicitação\ncurl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n\n// Resultado\n\n\n\n### miner_start\n\n:::dica Privado: Requer autenticação.

Define o preço mínimo do gás usado para aceitar transações. Qualquer transação abaixo deste limite é excluída do processo de proposta de bloco do validador.

Este método requer reiniciar um após ser chamado porque ele altera o arquivo de configuração.

Certifique-se de que seu chamador de crossfid start não esteja usando a bandeira minimum-gas-prices porque este valor será usado em vez do que está configurado no arquivo de configuração.

Parâmetros

  • Preço do Gás Hex
// Solicitação\ncurl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n\n// Resultado\n

miner_start

:::dica Privado: Requer autenticação. \n:::

Inicia o processo de validação do CPU com o número dado de threads.

aviso

Não compatível. Este endpoint sempre retorna um erro

Parâmetros

  • Hex número de threads
// Solicitação\ncurl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n\n// Resultado\n

miner_stop

Privado: Requer autenticação.

:::\n\nPare a operação de validação.\n\n:::aviso\nNão compatível. Este endpoint sempre realiza uma operação sem efeito.

Pare a operação de validação.

:::aviso\nNão compatível. Este endpoint sempre realiza uma operação sem efeito.\n:::

// Solicitação\ncurl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545

miner_setGasLimit

Privado: Requer autenticação.

:::\n\nDefine o limite de gás que o minerador visará ao minerar. Nota: em redes onde o EIP-1559 está ativado, isso deve ser definido para o dobro do que se deseja como alvo de gás (ou seja, o gás efetivo usado em média por bloco).\n\n:::aviso\nNão suportado. Este endpoint sempre retorna false

Define o limite de gás que o minerador visará ao minerar. Nota: em redes onde o EIP-1559 está ativado, isso deve ser definido para o dobro do que se deseja como alvo de gás (ou seja, o gás efetivo usado em média por bloco).

:::aviso\nNão suportado. Este endpoint sempre retorna false\n:::

Parâmetros

  • Limite de gás Hex
// Solicitação\ncurl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n\n// Resultado\n

miner_setEtherbase

:::dica Privado: Requer autenticação. \n:::

Define o etherbase. Isso altera a carteira onde as recompensas do validador serão depositadas.

Parâmetros

  • Endereço da conta
// Solicitação\ncurl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n\n// Resultado\n

Métodos TxPool

txpool_content

Retorna uma lista com os detalhes exatos de todas as transações atualmente pendentes para inclusão nos próximos blocos, assim como aquelas que estão programadas para execução futura apenas.

Parame (0)

Exemplos de Cliente

curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n
wscat -c ws://localhost:8546 -x ''
javascript\ntxpool.content();\n

Resultado

json\n,"queued":{}

txpool_inspect

Retorna uma lista em formato de texto para resumir todas as transações atualmente pendentes para inclusão nos próximos blocos, assim como aquelas que estão programadas para execução futura apenas. Este é um método especificamente adaptado para desenvolvedores verem rapidamente as transações no pool e encontrarem quaisquer potenciais problemas.

Parâmetros (0)

Exemplos de Cliente

curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n
wscat -c ws://localhost:8546 -x ''
javascript\ntxpool.inspect();\n

Resultado

json\n,"queued":{}

txpool_status

Retorna o número de transações atualmente pendentes para inclusão nos próximos blocos, assim como aquelas que estão programadas para execução futura apenas.

Parâmetros (0)

Exemplos de Cliente

curl -X POST --data '' -H "Content-Type: application/json" http://localhost:8545\n
wscat -c ws://localhost:8546 -x ''
txpool.status();

Resultado

json\n}