Package google.cloud.universalledger.v1

Índice

UniversalLedger

Um serviço para interagir com o Google Cloud Universal Ledger. Os endpoints são criados e gerenciados pelo Google e não podem ser modificados pelos usuários. Os nomes dos endpoints disponíveis serão fornecidos na documentação pública. Um endpoint é um recurso regional em uma rede do Universal Ledger. As solicitações enviadas a um endpoint podem ser encaminhadas para diferentes validadores na rede e região especificadas.

GetEndpoint

rpc GetEndpoint(GetEndpointRequest) returns (Endpoint)

Recebe os detalhes de um endpoint específico.

Escopos de autorização

Requer o seguinte escopo OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Para mais informações, consulte Authentication Overview.

ListEndpoints

rpc ListEndpoints(ListEndpointsRequest) returns (ListEndpointsResponse)

Lista todos os endpoints de um determinado projeto e local.

Escopos de autorização

Requer o seguinte escopo OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Para mais informações, consulte Authentication Overview.

QueryAccount

rpc QueryAccount(QueryAccountRequest) returns (QueryAccountResponse)

Consulta todas as informações armazenadas sobre uma conta na rede. Os detalhes da conta retornados podem variar entre as chamadas, porque um endpoint pode encaminhar solicitações para diferentes validadores na rede e na região, e os validadores podem não estar no mesmo ID de rodada a qualquer momento.

Escopos de autorização

Requer o seguinte escopo OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Para mais informações, consulte Authentication Overview.

QueryData

rpc QueryData(QueryDataRequest) returns (QueryDataResponse)

Consulta a rede para informações armazenadas no livro-razão, como contas e transações.

O acesso a determinados campos sensíveis, como saldos de contas, pode ser restrito com base na identidade do remetente derivada da assinatura na solicitação. Se o remetente não tiver permissão, os campos sensíveis serão omitidos da resposta e informados no campo redacted_fields.

Escopos de autorização

Requer o seguinte escopo OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Para mais informações, consulte Authentication Overview.

QueryTransactionState

rpc QueryTransactionState(QueryTransactionStateRequest) returns (QueryTransactionStateResponse)

Consulta o estado de uma transação. Esse método pode ser chamado para qualquer transação enviada à rede. Os detalhes da transação retornados podem variar entre as chamadas, porque um endpoint pode rotear solicitações para diferentes validadores na rede e na região, e os validadores podem não estar no mesmo ID de rodada em um determinado momento.

Escopos de autorização

Requer o seguinte escopo OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Para mais informações, consulte Authentication Overview.

SubmitOperationalTransaction

rpc SubmitOperationalTransaction(SubmitOperationalTransactionRequest) returns (SubmitOperationalTransactionResponse)

Envia uma transação operacional para a rede. Esse método só retorna depois que a transação é replicada na maioria dos validadores da rede ou se ela falhar.

Escopos de autorização

Requer o seguinte escopo OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Para mais informações, consulte Authentication Overview.

SubmitTransaction

rpc SubmitTransaction(SubmitTransactionRequest) returns (SubmitTransactionResponse)

Envia uma transação para a rede. A solicitação é validada primeiro quanto à correção básica. Se a validação falhar, a solicitação vai falhar imediatamente. Se a validação for bem-sucedida, esse método só vai retornar depois que a transação for replicada em uma maioria dos validadores na rede ou até que a solicitação falhe.

Escopos de autorização

Requer o seguinte escopo OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Para mais informações, consulte Authentication Overview.

Conta

Representa o estado de uma conta no livro razão.

Campos
sequence_number

int64

Apenas saída. O número de sequência desta conta. Esse número aumenta a cada transação enviada por essa conta.

public_key

bytes

Apenas saída. A chave pública principal associada a esta conta, usada para verificação de assinatura.

round_id

int64

Apenas saída. O ID da rodada de execução (semelhante à "altura" do bloco) em que as informações da conta fornecidas estão corretas.

comment

string

Apenas saída. O comentário da conta armazenado quando ela foi criada.

Campo de união account_details. Detalhes específicos com base no tipo de conta. account_details pode ser apenas de um dos tipos a seguir:
user_details

UserDetails

Apenas saída. Detalhes de uma conta de usuário padrão.

account_manager_details

AccountManagerDetails

Apenas saída. Detalhes de uma conta de gerente de contas.

token_manager_details

TokenManagerDetails

Apenas saída. Detalhes de uma conta de administrador de tokens.

contract_token_manager_details

ContractTokenManagerDetails

Apenas saída. Detalhes de uma conta de administrador de token de contrato.

contract_details

ContractDetails

Apenas saída. Detalhes de uma conta de contrato inteligente.

clearinghouse_details

ClearingHouseDetails

Apenas saída. Detalhes de uma conta de compensação.

currency_operator_details

CurrencyOperatorDetails

Apenas saída. Detalhes de uma conta de operador de moeda.

platform_operator_details

PlatformOperatorDetails

Apenas saída. Detalhes de uma conta de operador da plataforma.

AccountIdList

Uma lista de IDs de contas.

Campos
values[]

string

Opcional. Os valores de ID da conta.

AccountManagerDetails

Detalhes específicos de um gerente de contas.

Campos
token_manager
(deprecated)

Entity

Apenas saída. Descontinuado: use token_manager_id. O gerenciador de tokens padrão para contas criadas por esse administrador de contas.

num_accounts

int32

Apenas saída. O número de contas criadas por este gerente de contas.

token_manager_id

string

Apenas saída. O ID do gerenciador de tokens padrão para contas criadas por este gerente de contas.

AccountStatus

O status de uma conta.

Tipos enumerados
ACCOUNT_STATUS_UNSPECIFIED Status inválido.
ACCOUNT_STATUS_ACTIVE Estado ativo em que a conta pode realizar as operações permitidas pelas funções dela.
ACCOUNT_STATUS_INACTIVE Estado inativo em que todas as transações na conta são proibidas. O gerente da conta ainda pode enviar transações de gerenciamento de conta.

ActivateAccount

Marca uma conta como ACCOUNT_STATUS_ACTIVE. O remetente precisa ser o gerente da conta a ser ativada.

O proprietário da conta pode retomar as operações normais permitidas pelas funções na conta.

Campos
account
(deprecated)

Entity

Opcional. Descontinuado: use account_id. O ID da conta a ser ativada.

account_id

string

Opcional. O ID da conta a ser ativada. É preciso especificar account ou account_id. O valor é limitado a 60 caracteres.

AddRoles

Adiciona os papéis especificados à conta. O remetente precisa ser o gerente da conta a ser modificada.

Campos
account
(deprecated)

Entity

Opcional. Descontinuado: use account_id. O ID da conta a ser modificada.

account_id

string

Opcional. O ID da conta a ser modificada. É preciso especificar account ou account_id. O valor é limitado a 60 caracteres.

roles[]

Role

Obrigatório. As funções a serem adicionadas.

AmountValue

Representa um valor denominado em uma moeda.

Campos
currency

QualifiedCurrencyValue

Obrigatório. A moeda do valor.

amount_value

int64

Obrigatório. O número de unidades menores da moeda.

BalanceToSettle

Um saldo a ser liquidado entre dois gerenciadores de tokens.

Campos
balance_payer
(deprecated)

Entity

Apenas saída. Descontinuado: use balance_payer_id. A conta que deve o saldo a ser liquidado.

balance_payer_id

string

Apenas saída. O ID da conta que deve o saldo a ser liquidado.

balance_receiver
(deprecated)

Entity

Apenas saída. Descontinuado: use balance_receiver_id. A conta que deve receber o saldo a ser liquidado.

balance_receiver_id

string

Apenas saída. O ID da conta que deve receber o saldo a ser liquidado.

balance

CurrencyValue

Apenas saída. O saldo a ser liquidado. Precisa ser positivo.

BoolList

Uma lista de booleanos.

Campos
values[]

bool

Opcional. Os valores booleanos.

Queima

Destrói tokens de moeda. O remetente precisa ser um gerente de token, e a conta que fornece os tokens a serem queimados também precisa assinar a transação.

O fluxo esperado é que o gerenciador de tokens tenha uma conta de destruição designada para onde os clientes transferem os tokens antes de serem destruídos. Como alternativa, os clientes podem assinar diretamente a transação, que atuaria como uma transação atômica de "transferência e gravação".

Campos
burn_amount

CurrencyValue

Obrigatório. O valor a ser queimado.

payer
(deprecated)

Entity

Opcional. Descontinuado: use payer_id. A conta que fornece os tokens a serem queimados. A conta precisa ter o ROLE_PAYER ativado.

payer_id

string

Opcional. O ID da conta que fornece os tokens a serem gravados. A conta pagadora precisa ter o ROLE_PAYER ativado. É preciso especificar payer ou payer_id.

ChangeAccountManager

Transfere a responsabilidade de gerenciar uma conta específica para outro administrador. O remetente precisa ser o gerente de conta atual, e o novo gerente também precisa assinar a transação para dar consentimento.

Campos
account
(deprecated)

Entity

Opcional. Descontinuado: use account_id. O ID da conta cujo administrador será mudado.

account_id

string

Opcional. O ID da conta cujo administrador será mudado. É preciso especificar account ou account_id. O valor é limitado a 60 caracteres.

next_manager
(deprecated)

Entity

Opcional. Descontinuado: use next_manager_id. O ID do novo gerente de contas proposto. A validação exige que o novo gerente também assine essa transação.

next_manager_id

string

Opcional. O ID do novo gerente de contas proposto. A validação exige que o novo gerente também assine essa transação. É preciso especificar next_manager ou next_manager_id. O valor é limitado a 60 caracteres.

ClearingHouseDetails

Detalhes específicos de uma Clearinghouse.

Campos
account_status

AccountStatus

Apenas saída. O status desta conta.

balances[]

BalanceToSettle

Apenas saída. Os saldos que essa câmara de compensação está rastreando para liquidação.

settlement_mode

SettlementMode

Apenas saída. O modo de liquidação dessa câmara de compensação.

ClientTransaction

Representa uma transação iniciada por um cliente.

Campos
source
(deprecated)

Entity

Opcional. O remetente da transação. Descontinuado: use sender_id.

sender_id

string

Opcional. O ID da conta que está enviando esta transação. É necessário definir um source ou sender_id.

signatories[]
(deprecated)

Entity

Opcional. Contas que, além do remetente, assinaram esta transação. Descontinuado: use other_signatory_ids.

other_signatory_ids[]

string

Opcional. Os IDs das contas que, além do remetente, assinaram esta transação.

sequence_number

int64

Obrigatório. Um número exclusivo e monotonicamente crescente, começando em 0.

Esse número precisa ser aumentado em um para cada transação enviada anteriormente à rede pelo mesmo remetente.

Observação: isso não inclui unidades de transação que podem ter sido enviadas como parte de uma cadeia, que não deve definir um número de sequência. mas inclui o remetente da cadeia de transações.

chained_unit

bool

Precisa ser definido como "true" se esta transação do cliente fizer parte de uma cadeia de transações. Caso contrário, ele precisa ser definido como "false".

Isso é necessário para evitar que uma transação assinada destinada a fazer parte de uma cadeia seja enviada sozinha.

Campo de união kind. A mensagem específica da transação do cliente. kind pode ser apenas de um dos tipos a seguir:
app
(deprecated)

Any

Opcional. Descontinuado: use um dos campos específicos da mensagem. Uma mensagem específica da transação do cliente. Precisa ser uma das seguintes opções:

operational

Any

Opcional. Uma mensagem de transação operacional. Isso só pode ser enviado pelo operador da plataforma. Precisa ser uma das seguintes opções:

transfer_platform_operator_transaction

TransferPlatformOperator

Opcional. Mensagem para transferir a função de operador da plataforma para uma nova conta.

create_currency_operator_transaction

CreateCurrencyOperator

Opcional. Mensagem para criar um novo operador de moeda.

transfer_currency_operator_transaction

TransferCurrencyOperator

Opcional. Mensagem para transferir a função de operador de moeda para uma nova conta.

create_clearinghouse_transaction

CreateClearinghouse

Opcional. Mensagem para criar uma nova câmara de compensação.

create_account_manager_transaction

CreateAccountManager

Opcional. Mensagem para criar um novo gerente de contas.

create_token_manager_transaction

CreateTokenManager

Opcional. Mensagem para criar um novo gerenciador de tokens associado à moeda do operador que envia a solicitação.

increase_token_issuance_limit_transaction

IncreaseTokenIssuanceLimit

Opcional. Notifica a rede de que a conta de destino depositou fundos de reserva e aumenta o limite de emissão de tokens.

decrease_token_issuance_limit_transaction

DecreaseTokenIssuanceLimit

Opcional. Notifica a rede de que a conta de destino quer retirar fundos da reserva e diminui o limite de emissão de tokens.

settlement_request_transaction

SettlementRequest

Opcional. Mensagem para iniciar uma operação de liquidação.

mint_transaction

Mint

Opcional. Mensagem para cunhar tokens de moeda e transferi-los para uma conta.

burn_transaction

Burn

Opcional. Mensagem para queima de tokens de moeda de uma conta.

create_account_transaction

CreateAccount

Opcional. Mensagem para criar uma nova conta de usuário.

deactivate_account_transaction

DeactivateAccount

Opcional. Mensagem para desativar uma conta de usuário.

activate_account_transaction

ActivateAccount

Opcional. Mensagem para ativar uma conta de usuário.

add_roles_transaction

AddRoles

Opcional. Mensagem para adicionar papéis a uma conta.

remove_roles_transaction

RemoveRoles

Opcional. Mensagem para remover papéis de uma conta.

change_account_manager_transaction

ChangeAccountManager

Opcional. Mensagem para mudar o gerente de uma conta.

transfer_transaction

Transfer

Opcional. Mensagem para transferir tokens de uma conta de usuário para outra.

create_contract_transaction

CreateContract

Opcional. Mensagem para criar um novo contrato no livro-razão.

grant_contract_permissions_transaction

GrantContractPermissions

Opcional. Mensagem para conceder permissões a um contrato.

invoke_contract_method_transaction

InvokeContractMethod

Opcional. Mensagem para invocar a execução de um método de contrato.

create_contract_token_manager_transaction

CreateContractTokenManager

Opcional. Mensagem para criar um novo gerenciador de tokens associado à moeda do operador que envia a solicitação.

transfer_contract_token_manager_transaction

TransferContractTokenManager

Opcional. Mensagem para transferir a função de gerente de token de uma moeda de uma conta para outra.

remove_signing_public_key_transaction

RemoveSigningPublicKey

Opcional. Mensagem para remover uma chave de assinatura de conta.

replace_signing_public_key_transaction

ReplaceSigningPublicKey

Opcional. Mensagem para substituir uma chave de assinatura de conta.

chain

TransactionChain

Opcional. Mensagem para uma cadeia de transações, incluindo várias unidades de transação a serem executadas em sequência.

ContractDetails

Detalhes específicos de um contrato inteligente.

Campos
owner
(deprecated)

Entity

Apenas saída. Descontinuado: use owner_id. O proprietário do contrato.

owner_id

string

Apenas saída. O ID do proprietário do contrato.

code

bytes

Apenas saída. O código do contrato serializado.

contract_fields

Fields

Apenas saída. Os campos do contrato (nome do campo -> valor).

currency_balances

map<string, CurrencyValue>

Apenas saída. Os saldos de moeda mantidos pelo contrato (operador de moeda -> saldo).

ContractPermission

O conjunto de permissões que podem ser concedidas a um contrato. Mais valores serão adicionados no futuro.

Tipos enumerados
CONTRACT_PERMISSION_UNSPECIFIED Permissão inválida.
CONTRACT_PERMISSION_STORAGE

Permite que um contrato leia e grave no armazenamento de propriedade da conta que concedeu a permissão. O contrato só pode ler e gravar as propriedades que foram gravadas anteriormente.

Isso não permite que o contrato leia ou grave dados gerenciados por outros contratos, nem que ele atualize diretamente outras propriedades da conta (por exemplo, o saldo da conta na moeda local).

ContractTokenManagerDetails

Detalhes específicos de um gerenciador de tokens de contrato.

Campos
issuance_limit

CurrencyValue

Apenas saída. A quantidade de tokens que este gerenciador de tokens de contrato pode oferecer suporte.

Como os gerentes de tokens de contrato não podem aumentar ou diminuir o limite de emissão, esse valor precisa ser igual a issued_tokens.

issued_tokens

CurrencyValue

Apenas saída. A quantidade de tokens que este gerenciador de tokens de contrato está oferecendo suporte (ou seja, sua responsabilidade total).

Isso é igual à soma de todos os saldos mantidos em contratos para a moeda, mais a posição líquida na matriz de liquidação.

previous_contract_token_manager_id

string

Apenas saída. O ID da conta do gerenciador de tokens de contrato anterior para essa moeda. Isso forma uma trilha de auditoria que pode ser percorrida para descobrir todos os gerentes anteriores. Se este for o primeiro gerenciador de tokens de contrato para a moeda, ele vai estar vazio.

account_status

AccountStatus

Apenas saída. O status desta conta.

CreateAccount

Cria uma nova conta de usuário. O remetente precisa ser um gerente de contas.

Se a transação for concluída, o ID da conta recém-criada será retornado como um evento no TransactionCertificate da transação finalizada.

Campos
public_key

bytes

Obrigatório. A chave pública do proprietário da conta. Essa não é a chave pública do remetente. Essa é a chave pública do proprietário da nova conta, que será armazenada no livro-razão. Ele será usado para validar a assinatura das transações originadas da conta criada.

O formato da chave pública é definido pelo campo key_format. Consideradas informações públicas.

key_format

KeyFormat

Opcional. Imutável. O formato da chave pública. Se não for especificado, o padrão será um conjunto de chaves serializado binário no formato de fio do Tink. Consideradas informações públicas.

roles[]

Role

Opcional. A lista de papéis a serem concedidos a essa conta.

account_status

AccountStatus

Opcional. O status da conta a ser criada. Por padrão, o status de uma conta recém-criada é ACCOUNT_STATUS_ACTIVE.

account_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no razão da conta. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

token_manager
(deprecated)

Entity

Opcional. Descontinuado: use token_manager_id. O gerenciador de tokens desta conta. Esse campo é opcional. Se não for fornecido, o gerenciador de tokens padrão associado ao gerenciador de contas (ou seja, o remetente desta transação) será usado.

token_manager_id

string

Opcional. O ID do gerenciador de tokens desta conta. Esse campo é opcional. Se não for fornecido, o gerenciador de tokens padrão associado ao gerenciador de contas (ou seja, o remetente desta transação) será usado. O valor é limitado a 60 caracteres.

CreateAccountManager

Cria um novo gerente de contas. O remetente precisa ser um operador de moeda.

Se a transação for concluída, o ID da conta recém-criada será retornado como um evento no TransactionCertificate da transação finalizada.

Campos
public_key

bytes

Obrigatório. A chave pública do novo gerente de contas. Essa não é a chave pública do operador. Essa chave pública será associada ao gerenciador de contas e armazenada no livro razão. Ele será usado para validar a assinatura das transações originadas da conta do gerente de contas.

O formato da chave pública é definido pelo campo key_format. Consideradas informações públicas.

key_format

KeyFormat

Opcional. Imutável. O formato da chave pública. Se não for especificado, o padrão será um conjunto de chaves serializado binário no formato de fio do Tink. Consideradas informações públicas.

default_token_manager
(deprecated)

Entity

Opcional. Descontinuado: use default_token_manager_id. O gerenciador de tokens padrão para as contas que serão criadas por esse gerente.

default_token_manager_id

string

Opcional. O ID do gerenciador de tokens padrão para as contas que serão criadas por esse gerenciador. O valor é limitado a 60 caracteres.

account_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no razão da conta. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

CreateClearinghouse

Cria uma nova câmara de compensação. O remetente precisa ser um operador de moeda.

Se a transação for concluída, o ID da conta recém-criada será retornado como um evento no TransactionCertificate da transação finalizada.

Campos
public_key

bytes

Obrigatório. A chave pública da nova câmara de compensação. Essa não é a chave pública do operador. Essa chave pública será associada à câmara de compensação e armazenada no livro razão. Ele será usado para validar a assinatura das transações da conta da câmara de compensação.

O formato da chave pública é definido pelo campo key_format. Consideradas informações públicas.

key_format

KeyFormat

Opcional. Imutável. O formato da chave pública. Se não for especificado, o padrão será um conjunto de chaves serializado binário no formato de fio do Tink. Consideradas informações públicas.

account_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no razão da conta. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

settlement_mode

SettlementMode

Obrigatório. O modo de liquidação para esta câmara de compensação. Obrigatório. Consideradas informações públicas.

CreateContract

Armazena um contrato no livro-razão.

Campos
contract_bytes

bytes

Bytes de contrato serializados.

arguments
(deprecated)

map<string, Value>

Opcional. Imutável. Descontinuado: use init_arguments. Argumentos para o método __init__.

init_arguments

map<string, Value>

Opcional. Imutável. Contém argumentos para o método __init__.

contract_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no livro-razão do contrato. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

CreateContractTokenManager

Cria um novo gerenciador de tokens de contrato associado à moeda do operador que envia a solicitação. O remetente precisa ser um operador de moeda. O gerenciador de tokens de contrato recém-criado fica ativo por padrão. Se o gerenciador de tokens de contrato precisar ser substituído, envie a transação "TransferContractTokenManager". Se houver outro gerente de tokens de contrato associado à mesma moeda, essa transação vai falhar.

Ao contrário dos gerenciadores de tokens comuns, os gerenciadores de tokens de contrato não podem executar transações como cunhagem ou destruição. No entanto, eles podem participar de operações de liquidação.

Se a transação for concluída, o ID da conta recém-criada será retornado como um evento no TransactionCertificate da transação finalizada.

Campos
public_key

bytes

Obrigatório. A chave pública do novo gerenciador de tokens de contrato. Essa não é a chave pública do operador. Essa chave pública será associada ao gerenciador de tokens de contrato e armazenada no livro-razão. Ele será usado para validar a assinatura das transações da conta do gerenciador de tokens de contrato.

O formato da chave pública é definido pelo campo key_format. Consideradas informações públicas.

account_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no razão da conta. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

key_format

KeyFormat

Opcional. Imutável. O formato da chave pública. Se não for especificado, o padrão será um conjunto de chaves serializado binário no formato de fio do Tink. Consideradas informações públicas.

CreateCurrencyOperator

Cria um novo operador de moeda. O remetente precisa ser o operador da plataforma.

Se a transação for concluída, o ID da conta recém-criada será retornado como um evento no TransactionCertificate da transação finalizada.

Essa transação precisa introduzir uma nova moeda no sistema. Se a moeda especificada já existir, a transação vai falhar. Se o operador de moeda precisar ser substituído, envie a transação TransferCurrencyOperator.

Campos
public_key

bytes

Obrigatório. A chave pública do novo operador de moeda. Essa chave pública será associada ao operador de moeda e armazenada no livro razão. Ele será usado para validar a assinatura das transações originadas da conta do operador.

O formato da chave pública é definido pelo campo key_format. Consideradas informações públicas.

key_format

KeyFormat

Opcional. Imutável. O formato da chave pública. Se não for especificado, o padrão será um conjunto de chaves serializado binário no formato de fio do Tink. Consideradas informações públicas.

account_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no razão da conta. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

currency
(deprecated)

string

Opcional. Descontinuado: use currency_code. A moeda fiduciária associada a esse operador, representada como um código ISO 4217 de três letras maiúsculas. Consideradas informações públicas.

currency_code

string

Opcional. A moeda fiduciária associada a esse operador, representada como um código ISO 4217 de três letras maiúsculas. Consideradas informações públicas.

CreateSnapshot

Esse tipo não tem campos.

Aciona a criação de um snapshot da rede. O remetente precisa ser o operador da plataforma.

CreateTokenManager

Cria um novo gerenciador de tokens associado à moeda do operador que envia a solicitação. O remetente precisa ser um operador de moeda.

Se a transação for concluída, o ID da conta recém-criada será retornado como um evento no TransactionCertificate da transação finalizada.

Campos
public_key

bytes

Obrigatório. A chave pública do novo gerenciador de tokens. Essa não é a chave pública do operador. Essa chave pública será associada ao gerenciador de tokens e armazenada no livro-razão. Ele será usado para validar a assinatura das transações originadas da conta do gerenciador de tokens.

O formato da chave pública é definido pelo campo key_format. Consideradas informações públicas.

key_format

KeyFormat

Opcional. Imutável. O formato da chave pública. Se não for especificado, o padrão será um conjunto de chaves serializado binário no formato de fio do Tink. Consideradas informações públicas.

account_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no razão da conta. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

CurrencyOperatorDetails

Detalhes específicos de um operador de moeda.

Campos
currency
(deprecated)

string

Apenas saída. Descontinuado: use currency_code. A moeda associada a esta conta, representada pelo código ISO 4217 de três letras.

currency_code

string

Apenas saída. O ID da moeda associada a esta conta, representado pelo código ISO 4217 de três letras.

account_status

AccountStatus

Apenas saída. O status desta conta.

previous_entity_id
(deprecated)

Entity

Apenas saída. Descontinuado: use previous_currency_operator_id. O operador de moeda anterior que transferiu a propriedade da função de operador de moeda para esta conta. Se for o primeiro operador de moeda para a moeda, esse campo vai estar vazio.

previous_currency_operator_id

string

Apenas saída. O ID do operador de moeda anterior que transferiu a propriedade da função de operador de moeda para esta conta. Se for o primeiro operador de moeda para a moeda, esse campo vai estar vazio.

platform_operator_entity_id
(deprecated)

Entity

Apenas saída. Descontinuado: use platform_operator_id. O operador da plataforma que criou esse operador de moeda.

platform_operator_id

string

Apenas saída. O ID do operador da plataforma que criou este operador de moeda.

contract_token_manager
(deprecated)

Entity

Apenas saída. Descontinuado: use contract_token_manager_id. O gerenciador de tokens de contrato associado a esse operador de moeda.

contract_token_manager_id

string

Apenas saída. O ID do gerenciador de tokens de contrato associado a esse operador de moeda.

clearinghouse_id

string

Apenas saída. O ID da câmara de compensação associada a esse operador de moeda.

CurrencyValue

Representa um valor monetário (ou seja, dinheiro). A moeda denominada não está incluída nesta mensagem. A moeda relevante é decidida pela conta que envia a transação. Cada conta tem uma moeda imutável exclusiva associada a ela.

Campos
value

int64

Obrigatório. O número de unidades menores da moeda.

Essa menor denominação válida é chamada de "unidades secundárias" e é especificada na ISO 4217. Por exemplo, para USD, o valor será o número de centavos, e para GBP, o número de pence. Para o iene japonês, que não tem uma unidade menor, será o número de ienes.

DeactivateAccount

Marca uma conta como ACCOUNT_STATUS_INACTIVE. O remetente precisa ser o gerente da conta a ser desativada.

Isso significa que o proprietário da conta não poderá fazer transações nela, independentemente das funções.

Campos
account
(deprecated)

Entity

Opcional. Descontinuado: use account_id. O ID da conta a ser desativada.

account_id

string

Opcional. O ID da conta a ser desativada. É preciso especificar account ou account_id. O valor é limitado a 60 caracteres.

DecreaseTokenIssuanceLimit

Notifica a rede de que a conta de destino quer retirar fundos da reserva e diminui o limite de emissão de tokens. O remetente precisa ser uma conta de câmara de compensação.

Essa transação precisa ser concluída antes que os fundos de reserva possam ser retirados. Isso é necessário porque a transação pode falhar. Por exemplo, se o valor gerado já estiver acima do limite reduzido solicitado.

Campos
token_manager
(deprecated)

Entity

Opcional. Descontinuado: use token_manager_id. O ID da conta institucional cujo limite de emissão será reduzido. Essa conta precisa ser um gerenciador de tokens para que a transação seja válida.

token_manager_id

string

Opcional. O ID da conta institucional cujo limite de emissão será reduzido. Essa conta precisa ser um gerenciador de tokens para que a transação seja válida. É preciso especificar token_manager_id (preferencial) ou token_manager (descontinuado).

amount

CurrencyValue

Obrigatório. O valor pelo qual reduzir o limite. O valor precisa ser positivo. A transação vai falhar se o limite reduzido ficar abaixo dos tokens emitidos no momento.

DictList

Uma lista de dicionários.

Campos
values[]

DictValue

Opcional. Os valores de DictValue. Todos os dicionários aninhados precisam ter o mesmo tipo concreto.

DictValue

Os índices mapeiam a chave para o valor. Por exemplo, a chave keys[0] é mapeada para values[0].

Campos
Campo de união keys. Cada chave pode ser de apenas um tipo. keys pode ser apenas de um dos tipos a seguir:
bool_keys

BoolList

Opcional. Uma lista de chaves booleanas.

string_keys

StringList

Opcional. Uma lista de chaves de string.

int64_keys

Int64List

Opcional. Uma lista de chaves int64.

account_id_keys

AccountIdList

Opcional. Uma lista de chaves de ID da conta.

Campo de união values. Cada valor pode ser de um tipo. values pode ser apenas de um dos tipos a seguir:
bool_values

BoolList

Opcional. Uma lista de valores booleanos.

string_values

StringList

Opcional. Uma lista de valores de string.

int64_values

Int64List

Opcional. Uma lista de valores int64.

dict_values

DictList

Opcional. Os valores são uma lista de dicionários aninhados.

Endpoint

Representa um endpoint do Universal Ledger.

Campos
name

string

Identificador. O nome do recurso do endpoint. Formato: projects/{project}/locations/{location}/endpoints/{endpoint}

Entidade

Uma entidade na rede do Universal Ledger. Todas as contas estão vinculadas a uma entidade. O ID da entidade, também chamado de ID da conta, é exclusivo e imutável em toda a rede.

Campos
id

string

Apenas saída. O ID atribuído à entidade. Ele é atribuído pela rede na criação da conta.

EventDetails

Representa detalhes adicionais de um evento de status.

Campos
Campo de união event_details. Os detalhes do evento. event_details pode ser apenas de um dos tipos a seguir:
execution_details

ExecutionDetails

Apenas saída. Detalhes adicionais de um evento de execução.

EventType

Representa o tipo de um evento no processamento de uma transação, conforme observado pelo validador para o qual a solicitação foi encaminhada.

Tipos enumerados
EVENT_TYPE_UNSPECIFIED Evento desconhecido ou não especificado.
EVENT_TYPE_RECEIVED A transação foi recebida diretamente de um cliente por este validador.
EVENT_TYPE_BROADCASTED A transação foi transmitida por ele para outros validadores.
EVENT_TYPE_ORDERED A transação foi solicitada e programada para execução por este validador.
EVENT_TYPE_EXECUTION_STARTED A execução da transação foi iniciada.
EVENT_TYPE_EXECUTION_COMPLETED A execução da transação foi concluída.
EVENT_TYPE_FINALIZED A transação foi finalizada por este validador.

ExecutionDetails

Detalhes adicionais de um evento de execução.

Campos
round_id

int64

Apenas saída. O ID da rodada em que o evento de execução ocorreu.

Campos

Um mapa de campos (nome do campo -> valor) de um contrato usado para representar campos de contrato ou de conta.

Campos
fields

map<string, Value>

Apenas saída. O mapa de nomes de campos para os respectivos valores.

GetEndpointRequest

Mensagem de solicitação para GetEndpoint.

Campos
name

string

Obrigatório. O nome do endpoint a ser recuperado. Formato: projects/{project}/locations/{location}/endpoints/{endpoint}

GrantContractPermissions

Concede permissões ao contrato pelo remetente da transação. Se delegate_contract_id for especificado, as permissões e o armazenamento correspondente serão concedidos exclusivamente ao contrato delegate_contract_id, não ao remetente.

Não há suporte para revogação de permissões.

Campos
contract
(deprecated)

Entity

Opcional. Descontinuado: use contract_id. ID do contrato a que as permissões estão sendo concedidas.

contract_id

string

Opcional. O ID do contrato a que as permissões estão sendo concedidas. É preciso especificar contract ou contract_id.

permissions[]

ContractPermission

As permissões a serem concedidas.

delegate_contract_id

string

Opcional. O ID do contrato para o qual as permissões estão sendo concedidas. O remetente da transação precisa ser o proprietário desse contrato.

IncreaseTokenIssuanceLimit

Transações para emissão e cunhagem de tokens. Notifica a rede de que a conta de destino depositou fundos de reserva e aumenta o limite de emissão de tokens. O remetente precisa ser uma conta de câmara de compensação.

Campos
token_manager
(deprecated)

Entity

Opcional. Descontinuado: use token_manager_id. O ID da conta institucional cujo limite de emissão será aumentado. Essa conta precisa ser um gerenciador de tokens para que a transação seja válida.

token_manager_id

string

Opcional. O ID da conta institucional cujo limite de emissão será aumentado. Essa conta precisa ser um gerenciador de tokens para que a transação seja válida. É preciso especificar token_manager ou token_manager_id.

amount

CurrencyValue

Obrigatório. O valor pelo qual aumentar o limite. O valor precisa ser positivo.

Int64List

Uma lista de int64s.

Campos
values[]

int64

Opcional. Os valores int64.

InvokeContractMethod

Invoca a execução de um método de contrato.

Campos
contract
(deprecated)

Entity

Opcional. Descontinuado: use contract_id. ID do contrato a ser executado.

contract_id

string

Opcional. O ID do contrato a ser executado. É preciso especificar contract ou contract_id.

method_name

string

Nome do método a ser executado.

arguments
(deprecated)

map<string, Value>

Opcional. Imutável. Descontinuado: use method_arguments. Argumentos para o método.

method_arguments

map<string, Value>

Opcional. Imutável. Contém argumentos a serem transmitidos para o método.

payment

CurrencyValue

O valor a ser pago. Precisa ser maior que zero ao invocar métodos pagáveis e zero para métodos não pagáveis.

KeyFormat

Especifica o formato em que uma chave pública é fornecida. Novos valores podem ser adicionados a essa enumeração no futuro.

Tipos enumerados
KEY_FORMAT_UNSPECIFIED O formato da chave não foi especificado. Esse valor é inválido e não deve ser usado.
KEY_FORMAT_TINK_WIRE_FORMAT Um conjunto de chaves serializado binário no formato de transmissão do Tink.
KEY_FORMAT_PEM_EC_P256_SHA256 Uma chave de assinatura de curva elíptica codificada em PEM usando a curva P-256 com resumo SHA256. As assinaturas precisam ser fornecidas no formato DER.

KeySlot

Um identificador dos slots que podem conter chaves em uma conta.

Tipos enumerados
KEY_SLOT_UNSPECIFIED O slot da chave não foi especificado.
KEY_SLOT_PRIMARY O slot de chave primária.
KEY_SLOT_ALTERNATE O slot de chave alternativa.

ListEndpointsRequest

Mensagem de solicitação para ListEndpoints.

Campos
parent

string

Obrigatório. O pai, que tem essa coleção de endpoints. Formato: projects/{project}/locations/{location}

page_size

int32

Opcional. O número máximo de endpoints a serem retornados. O serviço pode retornar um valor inferior a este. Se não for especificado, no máximo 50 endpoints serão retornados. O valor máximo é 1.000. Valores maiores serão convertidos para 1.000.

page_token

string

Opcional. Um token de página recebido de uma chamada ListEndpoints anterior. Forneça isso para recuperar a página subsequente.

ListEndpointsResponse

Mensagem de resposta para "ListEndpoints".

Campos
endpoints[]

Endpoint

Os endpoints para o projeto e local especificados.

next_page_token

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

MerkleTree

Uma árvore de Merkle com um resumo criptográfico do nó raiz.

Campos
root_hash_hex
(deprecated)

string

Apenas saída. O resumo criptográfico do nó raiz. Descontinuado: use root_digest_hex.

root_digest_hex

string

Apenas saída. A representação hexadecimal do resumo do nó raiz. Formato: uma string hexadecimal de 64 caracteres.

num_transactions

int64

Apenas saída. O número de transações na árvore.

Mint

Cria tokens de moeda e os transfere para uma conta especificada. O remetente precisa ser um gerenciador de tokens.

Campos
mint_amount

CurrencyValue

Obrigatório. O valor a ser cunhado. O valor precisa ser tal que o total de tokens gerados pelo gerenciador não exceda o limite de geração. Se o valor for maior, a transação será rejeitada.

beneficiary
(deprecated)

Entity

Opcional. Descontinuado: use beneficiary_id. A conta para onde o valor cunhado será transferido. A conta beneficiária precisa ter o ROLE_RECEIVER ativado.

beneficiary_id

string

Opcional. O ID da conta para onde o valor gerado deve ser transferido. A conta de destino precisa ter o ROLE_RECEIVER ativado. É preciso especificar beneficiary ou beneficiary_id.

NoneValue

Uma enumeração singleton para representar o valor None.

Tipos enumerados
NONE_VALUE_UNSPECIFIED O valor "None".

PlatformOperatorDetails

Detalhes específicos de um operador de plataforma.

Campos
account_status

AccountStatus

Apenas saída. O status desta conta.

previous_entity_id
(deprecated)

Entity

Apenas saída. Descontinuado: use previous_platform_operator_id. O operador da plataforma anterior que transferiu a propriedade da função de operador da plataforma para esta conta. Se for o primeiro operador de plataforma, esse campo vai estar vazio.

previous_platform_operator_id

string

Apenas saída. O ID do operador da plataforma anterior que transferiu a propriedade da função de operador da plataforma para esta conta. Se for o primeiro operador de plataforma, esse campo vai estar vazio.

ProofOfInclusion

Certificado da inclusão dos efeitos de uma transação no estado mundial.

Campos
transaction_certificate

TransactionCertificate

Apenas saída. Certificado da inclusão dos efeitos da transação em uma rodada específica.

round_certificate

RoundCertificate

Apenas saída. Certificado da execução da rodada.

path_to_round_root[]

MerkleTreeNode

Apenas saída. Prova criptográfica da inclusão dos efeitos da transação na rodada de execução.

Ele é fornecido como um caminho de uma determinada folha (um resumo de transação) até a raiz da rodada de execução. O caminho é representado como uma lista de pares (filho à esquerda, filho à direita), e o primeiro par são os filhos à esquerda e à direita do nó pai da determinada folha. Por exemplo, supondo que a árvore de Merkle tenha sido criada com oito resumos de folhas [t0, t1, t2, t3, t4, t5, t6, t7], com a seguinte estrutura:

       _____root_digest____
      |                    |
   __ h20__             __h21__
  |        |           |       |
 h10     h11          h12     h13
 | |     | |          | |     | |
t0 t1   t2 t3        t4 t5   t6 t7

Aqui, path_to_round_root para t0 vai conter: [(t0, t1), (h10, h11), (h20, h21)].

É possível calcular consecutivamente os resumos SHA-256 de cada nó do caminho para verificar se o resumo do caminho produz o mesmo valor que o round_certificate.merkle_tree.root_digest_hex. Assim, é possível verificar se a folha foi incluída na árvore de Merkle da rodada.

MerkleTreeNode

Representa um nó em um caminho de árvore de Merkle.

Campos
left_child_hash_hex
(deprecated)

string

Apenas saída. A representação hexadecimal do resumo do filho à esquerda de um nó. Descontinuado: use left_child_digest_hex.

right_child_hash_hex
(deprecated)

string

Apenas saída. A representação hexadecimal do resumo do filho à direita de um nó. Descontinuado: use right_child_digest_hex.

left_child_digest_hex

string

Apenas saída. A representação hexadecimal do resumo do filho à esquerda de um nó. Formato: uma string hexadecimal de 64 caracteres.

right_child_digest_hex

string

Apenas saída. A representação hexadecimal do resumo do filho à direita de um nó. Formato: uma string hexadecimal de 64 caracteres.

QualifiedCurrencyValue

Representa uma moeda no livro razão, qualificada pelo operador de moeda.

Campos
operator_id

string

Obrigatório. O ID do operador de moeda que administra a moeda.

QueryAccountRequest

Mensagem de solicitação para "QueryAccount".

Campos
endpoint

string

Obrigatório. O endpoint para atender à solicitação. Formato: projects/{project}/locations/{location}/endpoints/{endpoint}. O local é uma região.

account_id

string

Obrigatório. O ID da conta para receber informações. O valor é limitado a 60 caracteres.

round_id

int64

Opcional. O ID da rodada de execução (semelhante à "altura" do bloco) em que os dados serão solicitados. As informações da conta retornadas serão precisas para o estado do mundo nessa rodada de execução. Se não for especificado, usará a última rodada finalizada conhecida pelo validador de serviço. O estado em um determinado ID de rodada é sempre consistente e canônico.

QueryAccountResponse

Mensagem de resposta para QueryAccount.

Campos
account

Account

As informações da conta e a altura em que foram obtidas.

QueryDataRequest

Mensagem de solicitação para QueryData.

Campos
endpoint

string

Obrigatório. O endpoint para atender à solicitação. Formato: projects/{project}/locations/{location}/endpoints/{endpoint}. O local é uma região.

serialized_signed_query_request

bytes

Obrigatório. Um SignedQueryRequest serializado em protobuf para consultar a rede do Universal Ledger.

QueryDataResponse

Mensagem de resposta para QueryData.

Campos
redacted_fields[]

RedactedField

Indica quais campos foram editados da resposta devido a restrições de permissão.

Campo de união kind. O resultado específico da consulta. kind pode ser apenas de um dos tipos a seguir:
account

Account

As informações da conta, se a consulta for de uma conta.

transaction_state

TransactionState

O estado de uma transação, se a consulta for sobre uma transação.

QueryTransactionStateRequest

Mensagem de solicitação para QueryTransactionState.

Campos
endpoint

string

Obrigatório. O endpoint para atender à solicitação. Formato: projects/{project}/locations/{location}/endpoints/{endpoint}. O local é uma região.

transaction_digest_hex

string

Obrigatório. O ID da transação para receber o estado.

QueryTransactionStateResponse

Mensagem de resposta para QueryTransactionState.

Campos
transaction_attempts[]

TransactionAttempt

Uma entrada para cada envio conhecido da transação ao validador que processa a solicitação.

RedactedField

Informações sobre um campo editado na resposta.

Campos
redacted_path

FieldMask

Apenas saída. Os caminhos de campo totalmente qualificados que foram redigidos do payload.

reason

string

Apenas saída. Uma explicação legível do motivo pelo qual os campos foram editados.

reason_code

Code

Apenas saída. Um código legível por máquina que explica por que os campos foram editados.

RemoveRoles

Remove as funções especificadas da conta. O remetente precisa ser o gerente da conta a ser modificada.

Campos
account
(deprecated)

Entity

Opcional. Descontinuado: use account_id. O ID da conta a ser modificada.

account_id

string

Opcional. O ID da conta a ser modificada. É preciso especificar account ou account_id. O valor é limitado a 60 caracteres.

roles[]

Role

Obrigatório. Os papéis a serem removidos.

RemoveSigningPublicKey

Remove a chave de assinatura da conta do slot especificado. O outro slot não pode estar vazio e precisa conter a chave usada para assinar o ClientTransaction.

Campos
key_slot

KeySlot

Obrigatório. O slot de chave de que estamos removendo a chave. Se ele já estiver vazio, a transação vai falhar.

ReplaceSigningPublicKey

Substitui a chave de assinatura da conta no slot especificado. O outro slot não pode estar vazio e precisa conter a chave usada para assinar o ClientTransaction.

Campos
key_slot

KeySlot

Obrigatório. O slot de chave em que estamos substituindo a chave.

new_public_key

bytes

Obrigatório. A nova chave pública, que vai substituir a chave pública no slot especificado.

O formato da chave pública é definido pelo campo "new_key_format". Consideradas informações públicas.

new_key_format

KeyFormat

Obrigatório. O formato da nova chave pública. Consulte a definição de KeyFormat para ver uma lista de formatos compatíveis. Consideradas informações públicas.

Papel

O conjunto regular de papéis.

Tipos enumerados
ROLE_UNSPECIFIED Função inválida.
ROLE_PAYER A função que permite que uma conta inicie uma transação de pagamento.
ROLE_RECEIVER A função que permite que uma conta receba pagamentos.
ROLE_CONTRACT_CREATOR O papel que permite que uma conta implante contratos.
ROLE_CONTRACT_PARTICIPANT A função que permite que uma conta interaja com contratos implantados.

RoundCertificate

Certificado da execução de uma rodada por um validador específico.

Campos
round_id

int64

Apenas saída. O ID da rodada a que o certificado se refere.

validator_id

string

Apenas saída. O identificador legível do validador. Usado para pesquisar a chave pública em relação à qual o validator_signatures é verificado.

round_state_checksum_hex

string

Apenas saída. A representação hexadecimal do resumo homomórfico no estado mundial após a aplicação dos efeitos desta rodada.

round_delta_checksum_hex

string

Apenas saída. A representação hexadecimal do resumo homomórfico sobre os efeitos agregados da transação desta rodada.

merkle_tree

MerkleTree

Apenas saída. A árvore de Merkle tem essa rodada como nó raiz e lotes de transações (executados na rodada) como folhas.

validator_signatures[]

bytes

Opcional. A assinatura do validador. Assinado sobre o resumo do payload anterior deste registro.

is_finalized

bool

Apenas saída. Booleano para indicar se a rodada foi finalizada, ou seja, se um quórum suficiente de validadores certificou essa rodada com o mesmo certificado.

SettlementMode

O modo de liquidação de uma câmara de compensação.

Tipos enumerados
SETTLEMENT_MODE_UNSPECIFIED O modo de liquidação não foi especificado. Esse valor é inválido e não deve ser usado.
SETTLEMENT_MODE_DEFERRED A câmara de compensação é responsável por rastrear a propriedade dos fundos fora do livro-razão e emitir periodicamente transações SettlementRequest para manter os saldos correspondentes no livro-razão sincronizados.
SETTLEMENT_MODE_INSTANT A câmara de compensação mantém um único pool de fundos, e o razão atua como a fonte principal para a alocação desses fundos entre os gerenciadores de tokens. Esse modo de liquidação também pode ser descrito como "liquidação bruta instantânea".

SettlementRequest

Inicia uma operação de liquidação entre dois gerenciadores de tokens. O remetente precisa ser uma conta de câmara de compensação.

No SettlementMode adiado, em que a câmara de compensação tem a custódia dos fundos do gerenciador de tokens, essa é a única transação que precisa ser enviada para executar uma liquidação entre os dois gerenciadores de tokens.

Campos
payer
(deprecated)

Entity

Opcional. Imutável. Descontinuado: use payer_id. O ID da conta da parte que precisa fazer a transferência de fundos.

payer_id

string

Opcional. Imutável. O ID da conta da parte que precisa fazer a transferência de fundos. É preciso especificar payer ou payer_id.

beneficiary
(deprecated)

Entity

Opcional. Imutável. Descontinuado: use beneficiary_id. O ID da conta da parte que precisa ser paga.

beneficiary_id

string

Opcional. Imutável. O ID da conta da parte que vai receber os fundos. É preciso especificar beneficiary ou beneficiary_id.

balance

CurrencyValue

Obrigatório. Imutável. O saldo de tokens emitidos que precisam ser transferidos da conta payer para a conta beneficiary no livro razão.

round_id

int64

Obrigatório. Imutável. O ID da rodada em que esse valor de liquidação foi calculado.

SignedTransaction

Uma transação com assinaturas anexadas. Para enviar uma transação, essa mensagem precisa ser serializada e incluída em um SubmitTransactionRequest.

Campos
serialized_client_transaction

bytes

Obrigatório. Um ClientTransaction serializado com os detalhes da transação.

sender_signature

bytes

Obrigatório. A assinatura do remetente da transação.

A assinatura precisa ser calculada assinando os bytes serialized_client_transaction com a própria chave privada.

Para uma cadeia de transações, os bytes a serem assinados são calculados como a concatenação de: - Um resumo da transação do cliente serializada de toda a cadeia. - Um resumo da transação assinada serializada de cada unidade na cadeia, na ordem em que aparecem. Os resumos são calculados usando SHA-256.

sender_signing_key_slot

KeySlot

Opcional. O slot de chave do remetente usado para assinar a transação. Usa o slot principal da conta do remetente se não for especificado.

other_signatures[]

bytes

Opcional. As assinaturas das contas listadas como signatários adicionais da transação. O número e a ordem dessas assinaturas precisam corresponder ao campo signatories no ClientTransaction.

Os bytes a serem assinados são os mesmos do sender_signature, que cada signatário deve assinar com a própria chave privada.

O número e a identidade dos signatários adicionais dependem do tipo de transação. Para uma cadeia de transações, é necessária uma assinatura para cada conta que aparece como remetente ou signatário de uma unidade na cadeia.

other_signing_key_slots[]

KeySlot

Opcional. Os slots de chave das contas listadas como signatários adicionais da transação. Se definido, o número e a ordem desses slots de chave precisam corresponder ao campo other_signatures no SignedTransaction. Se não for especificado, o padrão será o slot principal de cada conta.

StatusEvent

Representa um evento no processamento de uma transação, conforme observado por um único validador.

Todos os valores informados são da perspectiva do validador que processa a solicitação e podem ser diferentes da visão de outros validadores.

Campos
event_time

Timestamp

Apenas saída. O momento em que o evento foi registrado por este validador.

event_type

EventType

Apenas saída. O tipo do evento.

event_details

EventDetails

Apenas saída. Outros detalhes associados ao evento.

StringList

Uma lista de strings.

Campos
values[]

string

Opcional. Os valores de string.

SubmitOperationalTransactionRequest

Mensagem de solicitação para "SubmitOperationalTransaction".

Campos
endpoint

string

Obrigatório. O endpoint para atender à solicitação. Formato: projects/{project}/locations/{location}/endpoints/{endpoint}. O local é uma região.

serialized_signed_operational_transaction

bytes

Obrigatório. Um SignedTransaction serializado em protobuf para enviar ao livro-razão. A transação do cliente anexada precisa ser operacional, e o remetente precisa ser o operador da plataforma. Usar um formato serializado garante que todos os validadores calculem o mesmo ID de transação como o resumo SHA-256 dos bytes serializados.

SubmitOperationalTransactionResponse

Mensagem de resposta para "SubmitOperationalTransaction".

Campos
transaction_digest_hex

string

Identificador que representa exclusivamente a transação operacional enviada. É a representação hexadecimal da síntese SHA-256 do serialized_signed_operational_transaction. Esse ID é fornecido para que um cliente possa rastrear a transação sem precisar implementar a lógica de hash. O identificador pode ser usado diretamente em chamadas de API subsequentes, por exemplo, para consultar o estado da transação.

SubmitTransactionRequest

Mensagem de solicitação para "SubmitTransaction".

Campos
endpoint

string

Obrigatório. O endpoint para enviar a transação. Formato: projects/{project}/locations/{location}/endpoints/{endpoint}. O local é uma região.

serialized_signed_transaction

bytes

Obrigatório. Um SignedTransaction serializado em protobuf para enviar ao livro-razão. Usar um formato serializado garante que todos os validadores calculem o mesmo ID de transação como o resumo SHA-256 dos bytes serializados.

SubmitTransactionResponse

Mensagem de resposta para "SubmitTransaction".

Campos
transaction_digest_hex

string

Identificador que representa exclusivamente a transação enviada. É a representação hexadecimal da síntese SHA-256 do serialized_signed_transaction. Esse ID é fornecido para que um cliente possa rastrear a transação sem precisar implementar a lógica de hash. O identificador pode ser usado diretamente em chamadas de API subsequentes, por exemplo, para consultar o estado da transação.

TokenManagerDetails

Detalhes específicos de um gerenciador de tokens.

Campos
issuance_limit

CurrencyValue

Apenas saída. A quantidade de tokens que esse gerenciador de tokens pode criar.

issued_tokens

CurrencyValue

Apenas saída. A quantidade de tokens gerados por este gerenciador de tokens. Esse número aumenta quando a cunhagem é feita e diminui quando a queima é realizada.

TransactionAttempt

O estado de uma tentativa de envio de transação.

Campos
status

TransactionStatus

Apenas saída. O status atual da tentativa de transação.

proof_of_inclusion

ProofOfInclusion

Apenas saída. Certificado da inclusão dos efeitos da transação no estado do mundo. Só é fornecido se o status for FINALIZED.

status_events[]

StatusEvent

Apenas saída. Os eventos de status ordenados registrados para a tentativa de transação.

TransactionStatus

O status da tentativa de transação.

Tipos enumerados
TRANSACTION_STATUS_UNSPECIFIED Estado desconhecido ou não inicializado.
PENDING A transação é conhecida por este validador, mas ainda não foi finalizada.
FINALIZED A transação é finalizada. Os efeitos foram mantidos no blockchain e não podem ser revertidos.

TransactionCertificate

Certificado da execução de uma transação específica em uma rodada.

Campos
transaction_digest_hex

string

Apenas saída. O ID da transação a que este certificado se refere.

round_id

int64

Apenas saída. O ID da rodada de execução em que essa transação foi executada.

transaction_effects

TransactionEffects

Apenas saída. Os efeitos da execução da transação.

events[]

TransactionEvent

Apenas saída. Eventos produzidos pela transação.

transaction_effects_state_checksum_hex

string

Apenas saída. Checksum homomórfico dos efeitos. Um valor de 2.048 bytes codificado como uma string hexadecimal.

certification_results_digest_hex

string

Apenas saída. O resumo criptográfico de todos os campos anteriores em sequência. Usado para criar uma árvore de Merkle para a prova de inclusão.

TransactionChain

Uma cadeia de transações que inclui várias unidades de transação para serem executadas em sequência.

As unidades serão executadas sequencialmente, na ordem em que estão listadas. Se todas as unidades forem bem-sucedidas, os efeitos cumulativos delas serão confirmados atomicamente no estado do mundo. Caso contrário, se algum deles falhar, toda a cadeia vai falhar e nenhum dos efeitos será aplicado.

Campos
units[]

bytes

As unidades individuais da cadeia. Cada unidade precisa ser um SignedTransaction serializado.

Os bytes serializados são necessários para determinar os bytes a serem assinados para a própria cadeia.

TransactionEffect

Representa uma atualização feita por alguma transação no estado mundial.

Se ele tiver um delta_val, será considerado um delta (um deslocamento de número inteiro) aplicado ao valor armazenado anteriormente em uma determinada chave. Nesse caso, new_val e old_val precisam estar vazios.

Caso contrário, presume-se que ele tenha pelo menos um de old_val ou new_val (ou ambos). Um old_val vazio indica que o valor foi inserido. Um new_val vazio indica que o valor foi excluído.

Campos
key

bytes

Apenas saída. A chave no estado do mundo que foi atualizada.

old_val

bytes

Apenas saída. O valor da chave antes da execução da transação.

new_val

bytes

Apenas saída. O valor da chave após a execução da transação.

delta_val

int64

Apenas saída. Um deslocamento de número inteiro que foi aplicado ao valor armazenado anteriormente.

TransactionEffects

Efeitos da execução de uma transação.

Campos
status

TransactionStatus

Apenas saída. O status resultante da execução da transação.

effects[]
(deprecated)

TransactionEffect

Apenas saída. Descontinuado: consulte o estado da rede para determinar mudanças no estado do mundo. Os efeitos da transação no estado mundial.

TransactionEvent

Um evento produzido por uma transação.

Campos
type

string

Apenas saída. O tipo de evento. Um evento especial do tipo transaction_output contém as saídas produzidas pela transação, por exemplo, o ID de uma conta recém-criada.

attributes[]

EventAttribute

Apenas saída. Os atributos do evento como pares de chave-valor arbitrários.

EventAttribute

Um atributo individual como um par de chave-valor.

Campos
key

string

Apenas saída. A chave do atributo.

value

string

Apenas saída. O valor do atributo.

TransactionState

O estado de uma transação.

Campos
transaction_attempts[]

TransactionAttempt

Uma entrada para cada envio conhecido da transação ao validador que processa a solicitação.

TransactionStatus

Representa o status da execução de uma transação.

Campos
code

int32

Apenas saída. O código de status, um valor numérico cujo significado é definido pelo código de status gRPC correspondente.

message

bytes

Apenas saída. A mensagem de erro, se houver. Definido apenas se o código não for OK. É uma string codificada como bytes utf-8. Armazenado como bytes para evitar problemas com o determinismo da codificação.

Transferir

Transfere tokens de uma conta de usuário para outra. O remetente precisa ser uma conta de usuário comum, e não uma conta privilegiada, como um gerenciador de tokens ou de contas.

Além disso, o remetente da transação precisa ter o ROLE_PAYER ativado, e o destinatário precisa ter o ROLE_RECEIVER ativado.

Campos
beneficiary
(deprecated)

Entity

Opcional. Descontinuado: use beneficiary_id. A conta que recebe os tokens.

beneficiary_id

string

Opcional. O ID da conta que recebe os tokens. É preciso especificar beneficiary ou beneficiary_id.

amount

CurrencyValue

Obrigatório. O valor a ser transferido. O valor precisa ser positivo.

TransferContractTokenManager

Transfere a propriedade do gerenciador de tokens de contrato para uma nova conta. O remetente precisa ser o operador da moeda atual.

Se a transação for concluída, o gerenciador de tokens do contrato atual será desativado para a moeda, e o ID da conta recém-criada será retornado como um evento no TransactionCertificate da transação finalizada.

Campos
public_key

bytes

Obrigatório. A chave pública do novo gerenciador de tokens de contrato. Essa não é a chave pública do operador. Essa é a chave pública do gerenciador de tokens de contrato novo, e ela será armazenada no livro-razão. Ele será usado para validar a assinatura das transações da conta do gerenciador de tokens de contrato.

O formato da chave pública é definido pelo campo key_format. Consideradas informações públicas.

account_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no razão da conta. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

key_format

KeyFormat

Opcional. Imutável. O formato da chave pública. Se não for especificado, o padrão será um conjunto de chaves serializado binário no formato de fio do Tink. Consideradas informações públicas.

TransferCurrencyOperator

Transfere a propriedade do operador de moeda especificado para uma nova conta. O remetente precisa ser o operador da plataforma.

Se a transação for concluída, o operador de moeda especificado será desativado, e o ID da conta recém-criada será retornado como um evento no TransactionCertificate da transação finalizada.

Campos
public_key

bytes

Obrigatório. A chave pública do novo operador de moeda. Essa chave pública será associada ao operador de moeda e armazenada no livro razão. Ela será usada para validar a assinatura das transações originadas da conta do operador de moeda.

O formato da chave pública é definido pelo campo key_format. Consideradas informações públicas.

key_format

KeyFormat

Opcional. Imutável. O formato da chave pública. Se não for especificado, o padrão será um conjunto de chaves serializado binário no formato de fio do Tink. Consideradas informações públicas.

account_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no razão da conta. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

currency_operator
(deprecated)

Entity

Opcional. Descontinuado: use currency_operator_id. O operador de moeda a ser substituído. Precisa estar ativo.

currency_operator_id

string

Opcional. O ID do operador de moeda a ser substituído. Precisa estar ativo. É preciso especificar currency_operator ou currency_operator_id. O valor é limitado a 60 caracteres.

TransferPlatformOperator

Transfere a propriedade do operador da plataforma para uma nova conta. O remetente precisa ser o operador da plataforma atual.

Se a transação for concluída, o operador da plataforma atual será desativado, e o ID da conta recém-criada será retornado como um evento no TransactionCertificate da transação finalizada.

Campos
public_key

bytes

Obrigatório. A chave pública do novo operador da plataforma. Essa chave pública será associada ao operador da plataforma e armazenada no livro-razão. Ele será usado para validar a assinatura das transações originadas da conta do operador da plataforma.

O formato da chave pública é definido pelo campo key_format. Consideradas informações públicas.

key_format

KeyFormat

Opcional. Imutável. O formato da chave pública. Se não for especificado, o padrão será um conjunto de chaves serializado binário no formato de fio do Tink. Consideradas informações públicas.

account_comment

string

Opcional. Imutável. Um campo de comentário opaco que não é interpretado pelo sistema, mas armazenado no razão da conta. Consideradas informações públicas. O tamanho máximo é de 128 caracteres. Pode ser deixado em branco. Depois de criado, o campo é imutável.

UserDetails

Detalhes específicos de uma conta de usuário.

Campos
account_manager
(deprecated)

Entity

Apenas saída. Descontinuado: use account_manager_id. O gerente da conta deste usuário.

account_manager_id

string

Apenas saída. O ID do gerente de contas desse usuário.

token_manager
(deprecated)

Entity

Apenas saída. Descontinuado: use token_manager_id. O gerenciador de tokens para este usuário.

token_manager_id

string

Apenas saída. O ID do gerenciador de tokens para esse usuário.

roles[]

Role

Apenas saída. A lista de papéis concedidos a essa conta.

account_status

AccountStatus

Apenas saída. O status desta conta.

balance

CurrencyValue

Apenas saída. O saldo de tokens desta conta de usuário.

account_fields
(deprecated)

map<string, Fields>

Apenas saída. Descontinuado: use contract_account_fields. Os campos da conta de contrato (ID do contrato -> campos) para esse usuário.

contract_account_fields

map<string, Fields>

Apenas saída. Os campos da conta de contrato (ID do contrato -> campos) para esse usuário.

Valor

Um valor concreto de algum tipo.

Campos
Campo de união value. O valor real. value pode ser apenas de um dos tipos a seguir:
none_value

NoneValue

Opcional. Representa um valor "None".

bool_value

bool

Opcional. Um valor booleano.

int64_value

int64

Opcional. Um valor int64.

string_value

string

Opcional. Um valor de string.

account_id

string

Opcional. Um ID da conta.

dict_value

DictValue

Opcional. Um valor de dicionário.

qualified_currency_value

QualifiedCurrencyValue

Opcional. Um valor de moeda qualificado.

amount_value

AmountValue

Opcional. Um valor de quantia.