Package google.cloud.universalledger.v1

Indice

UniversalLedger

Un servizio per interagire con Google Cloud Universal Ledger. Gli endpoint sono creati e gestiti da Google e non possono essere modificati dagli utenti. I nomi degli endpoint disponibili verranno forniti nella documentazione pubblica. Un endpoint è una risorsa di regione all'interno di una rete Universal Ledger. Le richieste inviate a un endpoint possono essere indirizzate a diversi validatori nella rete specificata all'interno della regione specificata.

GetEndpoint

rpc GetEndpoint(GetEndpointRequest) returns (Endpoint)

Recupera i dettagli di un endpoint specifico.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

Per saperne di più, consulta la Authentication Overview.

ListEndpoints

rpc ListEndpoints(ListEndpointsRequest) returns (ListEndpointsResponse)

Elenca tutti gli endpoint per un progetto e una località specifici.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

Per saperne di più, consulta la Authentication Overview.

QueryAccount

rpc QueryAccount(QueryAccountRequest) returns (QueryAccountResponse)

Esegue query su tutte le informazioni memorizzate su un account nella rete. I dettagli dell'account restituiti possono variare tra le chiamate, perché un endpoint può indirizzare le richieste a diversi validatori all'interno della rete e della regione e i validatori potrebbero non avere lo stesso ID round in un determinato momento.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

Per saperne di più, consulta la Authentication Overview.

QueryData

rpc QueryData(QueryDataRequest) returns (QueryDataResponse)

Esegue query sulla rete per informazioni memorizzate nel ledger, come account e transazioni.

L'accesso a determinati campi sensibili, come i saldi dei conti, potrebbe essere limitato in base all'identità del mittente derivata dalla firma nella richiesta. Se il mittente non dispone dell'autorizzazione, i campi sensibili verranno oscurati dalla risposta e segnalati nel campo redacted_fields.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

Per saperne di più, consulta la Authentication Overview.

QueryTransactionState

rpc QueryTransactionState(QueryTransactionStateRequest) returns (QueryTransactionStateResponse)

Esegue query sullo stato di una transazione. Questo metodo può essere chiamato per qualsiasi transazione inviata alla rete. I dettagli della transazione restituiti possono variare tra le chiamate, perché un endpoint può indirizzare le richieste a diversi validatori all'interno della rete e della regione e i validatori potrebbero non trovarsi nello stesso ID round in un determinato momento.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

Per saperne di più, consulta la Authentication Overview.

SubmitOperationalTransaction

rpc SubmitOperationalTransaction(SubmitOperationalTransactionRequest) returns (SubmitOperationalTransactionResponse)

Invia una transazione operativa alla rete. Questo metodo viene restituito solo dopo che la transazione è stata replicata nella maggior parte dei validatori della rete o se la transazione non va a buon fine.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

Per saperne di più, consulta la Authentication Overview.

SubmitTransaction

rpc SubmitTransaction(SubmitTransactionRequest) returns (SubmitTransactionResponse)

Invia una transazione alla rete. La richiesta viene prima convalidata per verificarne la correttezza di base. Se la convalida non va a buon fine, la richiesta non andrà a buon fine immediatamente. Se la convalida ha esito positivo, questo metodo viene restituito solo dopo che la transazione è stata replicata nella maggior parte dei nodi di convalida della rete o fino al mancato completamento della richiesta.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

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

Per saperne di più, consulta la Authentication Overview.

Account

Rappresenta lo stato di un account nel libro mastro.

Campi
sequence_number

int64

Solo output. Il numero di sequenza di questo account. Questo numero aumenta a ogni transazione inviata da questo account.

public_key

bytes

Solo output. La chiave pubblica principale associata a questo account, utilizzata per la verifica della firma.

round_id

int64

Solo output. L'ID del round di esecuzione (simile all'"altezza" del blocco) in cui le informazioni dell'account fornite sono accurate.

comment

string

Solo output. Il commento dell'account memorizzato al momento della creazione.

Campo unione account_details. Dettagli specifici in base al tipo di account. account_details può essere solo uno dei seguenti tipi:
user_details

UserDetails

Solo output. Dettagli di un account utente standard.

account_manager_details

AccountManagerDetails

Solo output. Dettagli di un account account manager.

token_manager_details

TokenManagerDetails

Solo output. Dettagli per un account amministratore dei token.

contract_token_manager_details

ContractTokenManagerDetails

Solo output. Dettagli di un account amministratore token contratto.

contract_details

ContractDetails

Solo output. Dettagli di un account smart contract.

clearinghouse_details

ClearingHouseDetails

Solo output. Dettagli di un account di compensazione.

currency_operator_details

CurrencyOperatorDetails

Solo output. Dettagli di un account operatore valutario.

platform_operator_details

PlatformOperatorDetails

Solo output. Dettagli di un account operatore della piattaforma.

AccountIdList

Un elenco di ID account.

Campi
values[]

string

Facoltativo. I valori dell'ID account.

AccountManagerDetails

Dettagli specifici per un account manager.

Campi
token_manager
(deprecated)

Entity

Solo output. Deprecato: utilizza token_manager_id. Il gestore dei token predefinito per gli account creati da questo account amministratore.

num_accounts

int32

Solo output. Il numero di account creati da questo account manager.

token_manager_id

string

Solo output. L'ID del gestore dei token predefinito per gli account creati da questo account amministratore.

AccountStatus

Lo stato di un account.

Enum
ACCOUNT_STATUS_UNSPECIFIED Stato non valido.
ACCOUNT_STATUS_ACTIVE Stato attivo in cui l'account può eseguire le operazioni consentite dai suoi ruoli.
ACCOUNT_STATUS_INACTIVE Stato inattivo in cui tutte le transazioni sull'account sono vietate. Il gestore dell'account può comunque inviare transazioni di gestione dell'account.

ActivateAccount

Contrassegna un account come ACCOUNT_STATUS_ACTIVE. Il mittente deve essere il responsabile dell'account da attivare.

Il proprietario dell'account può riprendere le normali operazioni consentite dai ruoli dell'account.

Campi
account
(deprecated)

Entity

Facoltativo. Deprecato: utilizza account_id. L'ID dell'account da attivare.

account_id

string

Facoltativo. L'ID dell'account da attivare. È necessario specificare account o account_id. Il valore è limitato a 60 caratteri.

AddRoles

Aggiunge i ruoli specificati all'account. Il mittente deve essere l'account manager dell'account da modificare.

Campi
account
(deprecated)

Entity

Facoltativo. Deprecato: utilizza account_id. L'ID dell'account da modificare.

account_id

string

Facoltativo. L'ID dell'account da modificare. È necessario specificare account o account_id. Il valore è limitato a 60 caratteri.

roles[]

Role

Obbligatorio. I ruoli da aggiungere.

AmountValue

Rappresenta un importo denominato in una valuta.

Campi
currency

QualifiedCurrencyValue

Obbligatorio. La valuta dell'importo.

amount_value

int64

Obbligatorio. Il numero di unità minori della valuta.

BalanceToSettle

Un saldo da regolare tra due gestori di token.

Campi
balance_payer
(deprecated)

Entity

Solo output. Deprecato: utilizza balance_payer_id. L'account che deve saldare il saldo.

balance_payer_id

string

Solo output. L'ID dell'account che deve saldare il saldo.

balance_receiver
(deprecated)

Entity

Solo output. Deprecato: utilizza balance_receiver_id. L'account a cui è dovuto il saldo da saldare.

balance_receiver_id

string

Solo output. L'ID dell'account a cui è dovuto il saldo da saldare.

balance

CurrencyValue

Solo output. Il saldo da saldare. Deve essere positivo.

BoolList

Un elenco di valori booleani.

Campi
values[]

bool

Facoltativo. I valori booleani.

Burn

Brucia i token di valuta. Il mittente deve essere un gestore di token e l'account che fornisce i token da bruciare deve firmare anche la transazione.

Il flusso previsto è che il gestore dei token abbia il proprio account di masterizzazione designato a cui i clienti trasferiranno i token prima che vengano masterizzati. In alternativa, i clienti possono firmare direttamente la transazione, nel qual caso fungerà da transazione atomica di "trasferimento e burn".

Campi
burn_amount

CurrencyValue

Obbligatorio. L'importo da bruciare.

payer
(deprecated)

Entity

Facoltativo. Deprecato: utilizza payer_id. L'account che fornisce i token da bruciare. L'account deve avere ROLE_PAYER abilitato.

payer_id

string

Facoltativo. L'ID dell'account che fornisce i token da bruciare. L'account pagatore deve avere ROLE_PAYER abilitato. È necessario specificare payer o payer_id.

ChangeAccountManager

Trasferisce la responsabilità della gestione di un determinato account a un altro amministratore. Il mittente deve essere l'account manager attuale dell'account e, per fornire il consenso, anche il nuovo manager deve firmare questa transazione.

Campi
account
(deprecated)

Entity

Facoltativo. Deprecato: utilizza account_id. L'ID dell'account di cui deve essere modificato l'amministratore.

account_id

string

Facoltativo. L'ID dell'account di cui deve essere modificato l'amministratore. È necessario specificare account o account_id. Il valore è limitato a 60 caratteri.

next_manager
(deprecated)

Entity

Facoltativo. Deprecato: utilizza next_manager_id. L'ID del nuovo account manager proposto. La convalida richiede che anche il nuovo gestore abbia firmato questa transazione.

next_manager_id

string

Facoltativo. L'ID del nuovo account manager proposto. La convalida richiede che anche il nuovo gestore abbia firmato questa transazione. È necessario specificare next_manager o next_manager_id. Il valore è limitato a 60 caratteri.

ClearingHouseDetails

Dettagli specifici di una Clearinghouse.

Campi
account_status

AccountStatus

Solo output. Lo stato di questo account.

balances[]

BalanceToSettle

Solo output. I saldi che questa camera di compensazione sta attualmente monitorando per il regolamento.

settlement_mode

SettlementMode

Solo output. La modalità di compensazione di questa camera di compensazione.

ClientTransaction

Rappresenta una transazione avviata da un client.

Campi
source
(deprecated)

Entity

Facoltativo. Il mittente della transazione. Deprecato: utilizza sender_id.

sender_id

string

Facoltativo. L'ID dell'account che invia questa transazione. È necessario impostare source o sender_id.

signatories[]
(deprecated)

Entity

Facoltativo. Gli account che, oltre al mittente, hanno firmato questa transazione. Deprecato: utilizza other_signatory_ids.

other_signatory_ids[]

string

Facoltativo. Gli ID degli account che, oltre al mittente, hanno firmato questa transazione.

sequence_number

int64

Obbligatorio. Un numero univoco che aumenta monotonicamente, a partire da 0.

Questo numero deve essere aumentato di uno per ogni transazione precedentemente inviata alla rete dallo stesso mittente della transazione.

Tieni presente che non sono incluse le unità di transazione che potrebbero essere state inviate nell'ambito di una catena, che non deve impostare un numero di sequenza. ma include il mittente della catena di transazioni.

chained_unit

bool

Deve essere impostato su true se questa transazione client fa parte di una catena di transazioni. In caso contrario, deve essere impostato su false.

Ciò è necessario per evitare che una transazione firmata destinata a far parte di una catena venga inviata separatamente.

Campo unione kind. Il messaggio specifico per la transazione del cliente. kind può essere solo uno dei seguenti tipi:
app
(deprecated)

Any

Facoltativo. Deprecato: utilizza uno dei campi specifici del messaggio. Un messaggio specifico per la transazione del cliente. Deve essere uno dei seguenti:

operational

Any

Facoltativo. Un messaggio Transaction operativo. Tieni presente che questa operazione può essere eseguita solo dall'operatore della piattaforma. Deve essere uno dei seguenti:

transfer_platform_operator_transaction

TransferPlatformOperator

Facoltativo. Messaggio per il trasferimento del ruolo di operatore della piattaforma a un nuovo account.

create_currency_operator_transaction

CreateCurrencyOperator

Facoltativo. Messaggio per la creazione di un nuovo operatore di valuta.

transfer_currency_operator_transaction

TransferCurrencyOperator

Facoltativo. Messaggio per il trasferimento del ruolo di operatore valutario a un nuovo account.

create_clearinghouse_transaction

CreateClearinghouse

Facoltativo. Messaggio per la creazione di un nuovo centro di compensazione.

create_account_manager_transaction

CreateAccountManager

Facoltativo. Messaggio per la creazione di un nuovo account manager.

create_token_manager_transaction

CreateTokenManager

Facoltativo. Messaggio per la creazione di un nuovo gestore dei token associato alla valuta dell'operatore che invia la richiesta.

increase_token_issuance_limit_transaction

IncreaseTokenIssuanceLimit

Facoltativo. Comunica alla rete che l'account di destinazione ha depositato fondi di riserva e aumenta il limite di emissione dei token.

decrease_token_issuance_limit_transaction

DecreaseTokenIssuanceLimit

Facoltativo. Notifica alla rete che l'account di destinazione vuole ritirare i fondi di riserva e riduce il limite di emissione di token.

settlement_request_transaction

SettlementRequest

Facoltativo. Messaggio per l'avvio di un'operazione di compensazione.

mint_transaction

Mint

Facoltativo. Messaggio per la creazione di token di valuta e il loro trasferimento a un account.

burn_transaction

Burn

Facoltativo. Messaggio per l'utilizzo dei token di valuta da un account.

create_account_transaction

CreateAccount

Facoltativo. Messaggio per la creazione di un nuovo account utente.

deactivate_account_transaction

DeactivateAccount

Facoltativo. Messaggio per la disattivazione di un account utente.

activate_account_transaction

ActivateAccount

Facoltativo. Messaggio per l'attivazione di un account utente.

add_roles_transaction

AddRoles

Facoltativo. Messaggio per l'aggiunta di ruoli a un account.

remove_roles_transaction

RemoveRoles

Facoltativo. Messaggio per la rimozione dei ruoli da un account.

change_account_manager_transaction

ChangeAccountManager

Facoltativo. Messaggio per la modifica del responsabile dell'account di un account.

transfer_transaction

Transfer

Facoltativo. Messaggio per il trasferimento di token da un account utente a un altro.

create_contract_transaction

CreateContract

Facoltativo. Messaggio per la creazione di un nuovo contratto nel registro.

grant_contract_permissions_transaction

GrantContractPermissions

Facoltativo. Messaggio per la concessione delle autorizzazioni a un contratto.

invoke_contract_method_transaction

InvokeContractMethod

Facoltativo. Messaggio per richiamare l'esecuzione di un metodo di contratto.

create_contract_token_manager_transaction

CreateContractTokenManager

Facoltativo. Messaggio per la creazione di un nuovo gestore dei token associato alla valuta dell'operatore che invia la richiesta.

transfer_contract_token_manager_transaction

TransferContractTokenManager

Facoltativo. Messaggio per il trasferimento del ruolo di gestore dei token per una valuta da un account a un altro.

remove_signing_public_key_transaction

RemoveSigningPublicKey

Facoltativo. Messaggio per la rimozione di una chiave di firma dell'account.

replace_signing_public_key_transaction

ReplaceSigningPublicKey

Facoltativo. Messaggio per la sostituzione di una chiave di firma dell'account.

chain

TransactionChain

Facoltativo. Messaggio per una catena di transazioni che include più unità di transazione da eseguire in sequenza.

ContractDetails

Dettagli specifici di uno smart contract.

Campi
owner
(deprecated)

Entity

Solo output. Deprecato: utilizza owner_id. Il proprietario del contratto.

owner_id

string

Solo output. L'ID del proprietario del contratto.

code

bytes

Solo output. Il codice del contratto serializzato.

contract_fields

Fields

Solo output. I campi del contratto (nome campo -> valore) per questo contratto.

currency_balances

map<string, CurrencyValue>

Solo output. I saldi in valuta detenuti dal contratto (operatore di valuta -> saldo).

ContractPermission

L'insieme di autorizzazioni che possono essere concesse a un contratto. In futuro verranno aggiunti altri valori.

Enum
CONTRACT_PERMISSION_UNSPECIFIED Autorizzazione non valida.
CONTRACT_PERMISSION_STORAGE

Consente a un contratto di leggere e scrivere nello spazio di archiviazione di proprietà dell'account che ha concesso l'autorizzazione. Il contratto può leggere e scrivere solo le proprietà che ha scritto in precedenza.

Tieni presente che ciò non consente al contratto di leggere o scrivere dati gestiti da altri contratti, né di aggiornare direttamente altre proprietà dell'account (ad esempio, il saldo dell'account nella sua valuta nativa).

ContractTokenManagerDetails

Dettagli specifici di un gestore dei token di contratto.

Campi
issuance_limit

CurrencyValue

Solo output. La quantità di token per cui questo gestore di token del contratto è autorizzato a fornire garanzia.

Poiché i gestori di token contrattuali non possono aumentare o diminuire il limite di emissione, questo valore deve essere uguale a issued_tokens.

issued_tokens

CurrencyValue

Solo output. Il numero di token per cui questo gestore di token del contratto fornisce la garanzia (ovvero la sua responsabilità totale).

È pari alla somma di tutti i saldi detenuti nei contratti per la valuta, più la posizione netta nella matrice di compensazione.

previous_contract_token_manager_id

string

Solo output. L'ID account del precedente amministratore dei token di contratto per questa valuta. In questo modo si crea una traccia di audit che può essere attraversata per scoprire tutti i gestori precedenti. Se questo è il primo gestore di token di contratto per la valuta, il campo sarà vuoto.

account_status

AccountStatus

Solo output. Lo stato di questo account.

CreateAccount

Crea un nuovo account utente. Il mittente deve essere un account manager.

Se la transazione va a buon fine, l'ID dell'account appena creato viene restituito come evento nel TransactionCertificate della transazione finalizzata.

Campi
public_key

bytes

Obbligatorio. La chiave pubblica del proprietario dell'account. Tieni presente che non si tratta della chiave pubblica del mittente. Si tratta della chiave pubblica del nuovo proprietario dell'account e verrà archiviata nel ledger. Verrà utilizzato per convalidare la firma delle transazioni provenienti dall'account creato.

Il formato della chiave pubblica è definito dal campo key_format. Considerate informazioni pubbliche.

key_format

KeyFormat

Facoltativo. Immutabile. Il formato della chiave pubblica. Se non specificato, il valore predefinito è un keyset serializzato binario nel formato wire di Tink. Considerate informazioni pubbliche.

roles[]

Role

Facoltativo. L'elenco dei ruoli da concedere a questo account.

account_status

AccountStatus

Facoltativo. Lo stato dell'account da creare. Per impostazione predefinita, lo stato dell'account di un account appena creato sarà ACCOUNT_STATUS_ACTIVE.

account_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro dell'account. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

token_manager
(deprecated)

Entity

Facoltativo. Deprecato: utilizza token_manager_id. Il gestore dei token per questo account. Questo campo è facoltativo e, se non viene fornito, verrà utilizzato il gestore dei token predefinito associato all'account manager (ovvero il mittente di questa transazione).

token_manager_id

string

Facoltativo. L'ID del gestore dei token per questo account. Questo campo è facoltativo e, se non viene fornito, verrà utilizzato il gestore dei token predefinito associato all'account manager (ovvero il mittente di questa transazione). Il valore è limitato a 60 caratteri.

CreateAccountManager

Crea un nuovo account manager. Il mittente deve essere un operatore valutario.

Se la transazione va a buon fine, l'ID dell'account appena creato viene restituito come evento nel TransactionCertificate della transazione finalizzata.

Campi
public_key

bytes

Obbligatorio. La chiave pubblica del nuovo account manager. Tieni presente che non si tratta della chiave pubblica dell'operatore. Questa chiave pubblica verrà associata al gestore dell'account e archiviata nel ledger. Verrà utilizzato per convalidare la firma delle transazioni provenienti dall'account del responsabile dell'account.

Il formato della chiave pubblica è definito dal campo key_format. Considerate informazioni pubbliche.

key_format

KeyFormat

Facoltativo. Immutabile. Il formato della chiave pubblica. Se non specificato, il valore predefinito è un keyset serializzato binario nel formato wire di Tink. Considerate informazioni pubbliche.

default_token_manager
(deprecated)

Entity

Facoltativo. Deprecato: utilizza default_token_manager_id. Il gestore dei token predefinito per gli account che verranno creati da questo amministratore.

default_token_manager_id

string

Facoltativo. L'ID del gestore dei token predefinito per gli account che verranno creati da questo amministratore. Il valore è limitato a 60 caratteri.

account_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro dell'account. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

CreateClearinghouse

Crea una nuova camera di compensazione. Il mittente deve essere un operatore valutario.

Se la transazione va a buon fine, l'ID dell'account appena creato viene restituito come evento nel TransactionCertificate della transazione finalizzata.

Campi
public_key

bytes

Obbligatorio. La chiave pubblica della nuova clearing house. Tieni presente che non si tratta della chiave pubblica dell'operatore. Questa chiave pubblica verrà associata alla clearing house e memorizzata nel ledger. Verrà utilizzato per convalidare la firma delle transazioni provenienti dall'account della camera di compensazione.

Il formato della chiave pubblica è definito dal campo key_format. Considerate informazioni pubbliche.

key_format

KeyFormat

Facoltativo. Immutabile. Il formato della chiave pubblica. Se non specificato, il valore predefinito è un keyset serializzato binario nel formato wire di Tink. Considerate informazioni pubbliche.

account_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro dell'account. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

settlement_mode

SettlementMode

Obbligatorio. La modalità di pagamento per questa camera di compensazione. Obbligatorio. Considerate informazioni pubbliche.

CreateContract

Memorizza un contratto nel ledger.

Campi
contract_bytes

bytes

Byte del contratto serializzati.

arguments
(deprecated)

map<string, Value>

Facoltativo. Immutabile. Deprecato: utilizza init_arguments. Argomenti per il metodo __init__.

init_arguments

map<string, Value>

Facoltativo. Immutabile. Contiene gli argomenti per il metodo __init__.

contract_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro contabile del contratto. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

CreateContractTokenManager

Crea un nuovo gestore di token di contratto associato alla valuta dell'operatore che invia la richiesta. Il mittente deve essere un operatore valutario. Il nuovo gestore dei token di contratto è attivo per impostazione predefinita. Se il gestore dei token di contratto deve essere sostituito, deve essere inviata la transazione TransferContractTokenManager. Se esiste un altro gestore di token contratto associato alla stessa valuta, questa transazione non andrà a buon fine.

A differenza dei normali gestori di token, i gestori di token di contratto non sono autorizzati a eseguire transazioni come la creazione o l'eliminazione. Tuttavia, possono partecipare alle operazioni di compensazione.

Se la transazione va a buon fine, l'ID dell'account appena creato viene restituito come evento nel TransactionCertificate della transazione finalizzata.

Campi
public_key

bytes

Obbligatorio. La chiave pubblica del nuovo gestore dei token del contratto. Tieni presente che non si tratta della chiave pubblica dell'operatore. Questa chiave pubblica verrà associata al gestore dei token di contratto e memorizzata nel ledger. Verrà utilizzato per convalidare la firma delle transazioni provenienti dall'account del gestore dei token di contratto.

Il formato della chiave pubblica è definito dal campo key_format. Considerate informazioni pubbliche.

account_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro dell'account. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

key_format

KeyFormat

Facoltativo. Immutabile. Il formato della chiave pubblica. Se non specificato, il valore predefinito è un keyset serializzato binario nel formato wire di Tink. Considerate informazioni pubbliche.

CreateCurrencyOperator

Crea un nuovo operatore di valuta. Il mittente deve essere l'operatore della piattaforma.

Se la transazione va a buon fine, l'ID dell'account appena creato viene restituito come evento nel TransactionCertificate della transazione finalizzata.

Questa transazione deve introdurre una nuova valuta nel sistema. Se la valuta specificata esiste già, questa transazione non andrà a buon fine. Se l'operatore di valuta deve essere sostituito, deve essere inviata la transazione TransferCurrencyOperator.

Campi
public_key

bytes

Obbligatorio. La chiave pubblica del nuovo operatore di valuta. Questa chiave pubblica verrà associata all'operatore di valuta e memorizzata nel ledger. Verrà utilizzato per convalidare la firma delle transazioni provenienti dall'account dell'operatore.

Il formato della chiave pubblica è definito dal campo key_format. Considerate informazioni pubbliche.

key_format

KeyFormat

Facoltativo. Immutabile. Il formato della chiave pubblica. Se non specificato, il valore predefinito è un keyset serializzato binario nel formato wire di Tink. Considerate informazioni pubbliche.

account_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro dell'account. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

currency
(deprecated)

string

Facoltativo. Deprecato: utilizza currency_code. La valuta fiat associata a questo operatore, rappresentata come codice ISO 4217 di tre lettere maiuscole. Considerate informazioni pubbliche.

currency_code

string

Facoltativo. La valuta fiat associata a questo operatore, rappresentata come codice ISO 4217 di tre lettere maiuscole. Considerate informazioni pubbliche.

CreateSnapshot

Questo tipo non contiene campi.

Attiva la creazione di uno snapshot della rete. Il mittente deve essere l'operatore della piattaforma.

CreateTokenManager

Crea un nuovo gestore dei token associato alla valuta dell'operatore che invia la richiesta. Il mittente deve essere un operatore valutario.

Se la transazione va a buon fine, l'ID dell'account appena creato viene restituito come evento nel TransactionCertificate della transazione finalizzata.

Campi
public_key

bytes

Obbligatorio. La chiave pubblica del nuovo gestore dei token. Tieni presente che non si tratta della chiave pubblica dell'operatore. Questa chiave pubblica verrà associata al gestore dei token e memorizzata nel ledger. Verrà utilizzato per convalidare la firma delle transazioni provenienti dall'account del gestore dei token.

Il formato della chiave pubblica è definito dal campo key_format. Considerate informazioni pubbliche.

key_format

KeyFormat

Facoltativo. Immutabile. Il formato della chiave pubblica. Se non specificato, il valore predefinito è un keyset serializzato binario nel formato wire di Tink. Considerate informazioni pubbliche.

account_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro dell'account. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

CurrencyOperatorDetails

Dettagli specifici di un operatore valutario.

Campi
currency
(deprecated)

string

Solo output. Deprecato: utilizza currency_code. La valuta associata a questo account, rappresentata dal codice ISO 4217 di 3 lettere.

currency_code

string

Solo output. L'ID della valuta associata a questo account, rappresentato dal codice ISO 4217 di 3 lettere.

account_status

AccountStatus

Solo output. Lo stato di questo account.

previous_entity_id
(deprecated)

Entity

Solo output. Deprecato: utilizza previous_currency_operator_id. L'operatore di valuta precedente che ha trasferito la proprietà del ruolo di operatore di valuta a questo account. Se questo è il primo operatore di valuta per la valuta, il campo sarà vuoto.

previous_currency_operator_id

string

Solo output. L'ID dell'operatore di valuta precedente che ha trasferito la proprietà del ruolo di operatore di valuta a questo account. Se questo è il primo operatore di valuta per la valuta, il campo sarà vuoto.

platform_operator_entity_id
(deprecated)

Entity

Solo output. Deprecato: utilizza platform_operator_id. L'operatore della piattaforma che ha creato questo operatore di valuta.

platform_operator_id

string

Solo output. L'ID dell'operatore della piattaforma che ha creato questo operatore di valuta.

contract_token_manager
(deprecated)

Entity

Solo output. Deprecato: utilizza contract_token_manager_id. Il gestore dei token di contratto associato a questo operatore di valuta.

contract_token_manager_id

string

Solo output. L'ID del gestore dei token di contratto associato a questo operatore di valuta.

clearinghouse_id

string

Solo output. L'ID della camera di compensazione associata a questo operatore valutario.

CurrencyValue

Rappresenta un importo di valuta (ovvero denaro). Tieni presente che la valuta denominata non è inclusa in questo messaggio. La valuta pertinente viene decisa dall'account che invia la transazione. Ogni account ha una valuta univoca e immutabile associata.

Campi
value

int64

Obbligatorio. Il numero di unità minori della valuta.

Questa denominazione valida più piccola è denominata "unità minori" ed è specificata nello standard ISO 4217. Ad esempio, per i dollari statunitensi, il valore sarà il numero di centesimi e per le sterline britanniche il numero di pence. Per lo yen giapponese, che non ha un'unità secondaria, sarà il numero di yen.

DeactivateAccount

Contrassegna un account come ACCOUNT_STATUS_INACTIVE. Il mittente deve essere il responsabile dell'account da disattivare.

Ciò implica che il proprietario dell'account non potrà effettuare transazioni sull'account indipendentemente dai ruoli.

Campi
account
(deprecated)

Entity

Facoltativo. Deprecato: utilizza account_id. L'ID dell'account da disattivare.

account_id

string

Facoltativo. L'ID dell'account da disattivare. È necessario specificare account o account_id. Il valore è limitato a 60 caratteri.

DecreaseTokenIssuanceLimit

Notifica alla rete che l'account di destinazione vuole ritirare i fondi di riserva e riduce il limite di emissione di token. Il mittente deve essere un account di compensazione.

Tieni presente che questa transazione deve essere finalizzata correttamente prima che i fondi di riserva possano essere prelevati. Ciò è necessario perché è possibile che la transazione non vada a buon fine (ad esempio, se l'importo coniato è già superiore al limite ridotto richiesto).

Campi
token_manager
(deprecated)

Entity

Facoltativo. Deprecato: utilizza token_manager_id. L'ID dell'account istituzionale il cui limite di conio deve essere ridotto. Perché la transazione sia valida, questo account deve essere un gestore di token.

token_manager_id

string

Facoltativo. L'ID dell'account istituzionale il cui limite di conio deve essere ridotto. Perché la transazione sia valida, questo account deve essere un gestore di token. È necessario specificare token_manager_id (preferito) o token_manager (obsoleto).

amount

CurrencyValue

Obbligatorio. L'importo di cui ridurre il limite. L'importo deve essere positivo. La transazione non andrà a buon fine se il limite ridotto sarà inferiore ai token attualmente emessi.

DictList

Un elenco di dizionari.

Campi
values[]

DictValue

Facoltativo. I valori DictValue. Tutti i dizionari nidificati devono avere lo stesso tipo concreto.

DictValue

Gli indici mappano la chiave al valore. Ad esempio, il tasto keys[0] corrisponde a values[0].

Campi
Campo unione keys. Ogni chiave può essere di un solo tipo. keys può essere solo uno dei seguenti tipi:
bool_keys

BoolList

Facoltativo. Un elenco di chiavi booleane.

string_keys

StringList

Facoltativo. Un elenco di chiavi stringa.

int64_keys

Int64List

Facoltativo. Un elenco di chiavi int64.

account_id_keys

AccountIdList

Facoltativo. Un elenco di chiavi ID account.

Campo unione values. Ogni valore può essere di un solo tipo. values può essere solo uno dei seguenti tipi:
bool_values

BoolList

Facoltativo. Un elenco di valori booleani.

string_values

StringList

Facoltativo. Un elenco di valori stringa.

int64_values

Int64List

Facoltativo. Un elenco di valori int64.

dict_values

DictList

Facoltativo. I valori sono un elenco di dizionari nidificati.

Endpoint

Rappresenta un endpoint Universal Ledger.

Campi
name

string

Identificatore. Il nome della risorsa dell'endpoint. Formato: projects/{project}/locations/{location}/endpoints/{endpoint}

Entità

Un'entità nella rete Universal Ledger. Tutti gli account sono collegati a un'entità. L'ID entità, spesso chiamato anche ID account, è univoco e immutabile in tutta la rete.

Campi
id

string

Solo output. L'ID assegnato all'entità. Viene assegnato dall'emittente al momento della creazione dell'account.

EventDetails

Rappresenta i dettagli aggiuntivi di un evento di stato.

Campi
Campo unione event_details. I dettagli dell'evento. event_details può essere solo uno dei seguenti tipi:
execution_details

ExecutionDetails

Solo output. Dettagli aggiuntivi per un evento di esecuzione.

EventType

Rappresenta il tipo di evento nell'elaborazione di una transazione, come osservato dallo strumento di convalida a cui è stata indirizzata la richiesta.

Enum
EVENT_TYPE_UNSPECIFIED Evento sconosciuto o non specificato.
EVENT_TYPE_RECEIVED La transazione è stata ricevuta da questo validatore direttamente da un client.
EVENT_TYPE_BROADCASTED La transazione è stata trasmessa da questo ad altri validatori.
EVENT_TYPE_ORDERED La transazione è stata ordinata e pianificata per l'esecuzione da questo validatore.
EVENT_TYPE_EXECUTION_STARTED L'esecuzione della transazione è iniziata.
EVENT_TYPE_EXECUTION_COMPLETED L'esecuzione della transazione è stata completata.
EVENT_TYPE_FINALIZED La transazione è stata finalizzata da questo validatore.

ExecutionDetails

Dettagli aggiuntivi per un evento di esecuzione.

Campi
round_id

int64

Solo output. L'ID round in cui si è verificato l'evento di esecuzione.

Campi

Una mappa dei campi (nome campo -> valore) di un contratto utilizzata per rappresentare i campi del contratto o dell'account.

Campi
fields

map<string, Value>

Solo output. La mappa dei nomi dei campi e dei relativi valori.

GetEndpointRequest

Messaggio di richiesta per GetEndpoint.

Campi
name

string

Obbligatorio. Il nome dell'endpoint da recuperare. Formato: projects/{project}/locations/{location}/endpoints/{endpoint}

GrantContractPermissions

Concede le autorizzazioni al contratto da parte del mittente della transazione. Se è specificato delegate_contract_id, le autorizzazioni e lo spazio di archiviazione corrispondente vengono concessi esclusivamente al contratto delegate_contract_id, non al mittente.

Tieni presente che non è supportata la revoca delle autorizzazioni.

Campi
contract
(deprecated)

Entity

Facoltativo. Deprecato: utilizza contract_id. ID del contratto a cui vengono concesse le autorizzazioni.

contract_id

string

Facoltativo. L'ID del contratto a cui vengono concesse le autorizzazioni. È necessario specificare contract o contract_id.

permissions[]

ContractPermission

Le autorizzazioni da concedere.

delegate_contract_id

string

Facoltativo. L'ID contratto per cui vengono concesse le autorizzazioni. Il mittente della transazione deve essere il proprietario di questo contratto.

IncreaseTokenIssuanceLimit

Transazioni per l'emissione e la creazione di token. Comunica alla rete che l'account di destinazione ha depositato fondi di riserva e aumenta il limite di emissione dei token. Il mittente deve essere un account di compensazione.

Campi
token_manager
(deprecated)

Entity

Facoltativo. Deprecato: utilizza token_manager_id. L'ID dell'account istituzionale il cui limite di conio deve essere aumentato. Perché la transazione sia valida, questo account deve essere un gestore di token.

token_manager_id

string

Facoltativo. L'ID dell'account istituzionale il cui limite di conio deve essere aumentato. Perché la transazione sia valida, questo account deve essere un gestore di token. È necessario specificare token_manager o token_manager_id.

amount

CurrencyValue

Obbligatorio. L'importo di cui aumentare il limite. L'importo deve essere positivo.

Int64List

Un elenco di numeri interi a 64 bit.

Campi
values[]

int64

Facoltativo. I valori int64.

InvokeContractMethod

Richiama l'esecuzione di un metodo di contratto.

Campi
contract
(deprecated)

Entity

Facoltativo. Deprecato: utilizza contract_id. L'ID del contratto da eseguire.

contract_id

string

Facoltativo. L'ID del contratto da eseguire. È necessario specificare contract o contract_id.

method_name

string

Nome del metodo da eseguire.

arguments
(deprecated)

map<string, Value>

Facoltativo. Immutabile. Deprecato: utilizza method_arguments. Argomenti per il metodo.

method_arguments

map<string, Value>

Facoltativo. Immutabile. Contiene gli argomenti da passare al metodo.

payment

CurrencyValue

L'importo da pagare. Deve essere maggiore di zero quando vengono richiamati metodi pagabili e zero per quelli non pagabili.

KeyFormat

Specifica il formato in cui viene fornita una chiave pubblica. In futuro potrebbero essere aggiunti nuovi valori a questa enumerazione.

Enum
KEY_FORMAT_UNSPECIFIED Il formato della chiave non è specificato. Questo valore non è valido e non deve essere utilizzato.
KEY_FORMAT_TINK_WIRE_FORMAT Un keyset serializzato binario nel formato wire di Tink.
KEY_FORMAT_PEM_EC_P256_SHA256 Una chiave di firma a curva ellittica con codifica PEM che utilizza la curva P-256 con digest SHA256. Le firme devono essere fornite in formato DER.

KeySlot

Un identificatore degli slot che possono contenere chiavi su un account.

Enum
KEY_SLOT_UNSPECIFIED Lo slot della chiave non è specificato.
KEY_SLOT_PRIMARY Lo slot della chiave primaria.
KEY_SLOT_ALTERNATE Lo slot per la chiave alternativo.

ListEndpointsRequest

Messaggio di richiesta per ListEndpoints.

Campi
parent

string

Obbligatorio. L'elemento principale, proprietario di questa raccolta di endpoint. Formato: projects/{project}/locations/{location}

page_size

int32

Facoltativo. Il numero massimo di endpoint da restituire. Il servizio potrebbe restituire un numero inferiore a questo valore. Se non è specificato, verranno restituiti al massimo 50 endpoint. Il valore massimo è 1000; i valori superiori a 1000 verranno forzati a 1000.

page_token

string

Facoltativo. Un token di pagina ricevuto da una precedente chiamata ListEndpoints. Forniscilo per recuperare la pagina successiva.

ListEndpointsResponse

Messaggio di risposta per ListEndpoints.

Campi
endpoints[]

Endpoint

Gli endpoint per il progetto e la località specifici.

next_page_token

string

Un token, che può essere inviato come page_token per recuperare la pagina successiva. Se questo campo viene omesso, non verranno visualizzate altre pagine.

MerkleTree

Un albero Merkle con un digest crittografico del nodo radice.

Campi
root_hash_hex
(deprecated)

string

Solo output. Il digest crittografico del nodo principale. Deprecato: utilizza root_digest_hex.

root_digest_hex

string

Solo output. La rappresentazione esadecimale del digest del nodo radice. Formato: una stringa esadecimale di 64 caratteri.

num_transactions

int64

Solo output. Il numero di transazioni nell'albero.

Menta

Conia token di valuta e li trasferisce a un account specificato. Il mittente deve essere un gestore dei token.

Campi
mint_amount

CurrencyValue

Obbligatorio. L'importo da coniare. L'importo deve essere tale che il numero totale di token creati dal gestore di token non superi il limite di creazione. Se l'importo è superiore, la transazione deve essere rifiutata

beneficiary
(deprecated)

Entity

Facoltativo. Deprecato: utilizza beneficiary_id. L'account a cui deve essere trasferito l'importo coniato. L'account beneficiario deve avere ROLE_RECEIVER abilitato.

beneficiary_id

string

Facoltativo. L'ID dell'account a cui deve essere trasferito l'importo coniato. L'account di destinazione deve avere ROLE_RECEIVER abilitato. È necessario specificare beneficiary o beneficiary_id.

NoneValue

Un'enumerazione singleton per rappresentare il valore None.

Enum
NONE_VALUE_UNSPECIFIED Il valore Nessuno.

PlatformOperatorDetails

Dettagli specifici di un operatore della piattaforma.

Campi
account_status

AccountStatus

Solo output. Lo stato di questo account.

previous_entity_id
(deprecated)

Entity

Solo output. Deprecato: utilizza previous_platform_operator_id. L'operatore della piattaforma precedente che ha trasferito la proprietà del ruolo di operatore della piattaforma a questo account. Se questo è il primo operatore della piattaforma, il campo sarà vuoto.

previous_platform_operator_id

string

Solo output. L'ID dell'operatore della piattaforma precedente che ha trasferito la proprietà del ruolo di operatore della piattaforma a questo account. Se questo è il primo operatore della piattaforma, il campo sarà vuoto.

ProofOfInclusion

Certificato dell'inclusione degli effetti di una transazione nello stato mondiale.

Campi
transaction_certificate

TransactionCertificate

Solo output. Certificato dell'inclusione degli effetti della transazione in un round specifico.

round_certificate

RoundCertificate

Solo output. Certificato di esecuzione del round.

path_to_round_root[]

MerkleTreeNode

Solo output. Prova crittografica dell'inclusione degli effetti della transazione nel round di esecuzione.

Viene fornito come percorso da una determinata foglia (un digest della transazione) alla radice del round di esecuzione. Il percorso è rappresentato come un elenco di coppie (figlio sinistro, figlio destro) e la prima coppia è costituita dai figli sinistro e destro del nodo padre della foglia specificata. Ad esempio, supponendo che l'albero Merkle sia stato creato con otto hash foglia [t0, t1, t2, t3, t4, t5, t6, t7], con la seguente struttura:

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

Qui, path_to_round_root per t0 conterrà: [(t0, t1), (h10, h11), (h20, h21)].

È possibile calcolare consecutivamente i digest SHA-256 di ogni nodo del percorso per verificare che il digest del percorso produca lo stesso valore di round_certificate.merkle_tree.root_digest_hex. Pertanto, verifica che la foglia sia stata inclusa nell'albero Merkle del round.

MerkleTreeNode

Rappresenta un nodo in un percorso dell'albero Merkle.

Campi
left_child_hash_hex
(deprecated)

string

Solo output. La rappresentazione esadecimale del digest del nodo secondario sinistro di un nodo. Deprecato: utilizza left_child_digest_hex.

right_child_hash_hex
(deprecated)

string

Solo output. La rappresentazione esadecimale del digest del figlio destro di un nodo. Deprecato: utilizza right_child_digest_hex.

left_child_digest_hex

string

Solo output. La rappresentazione esadecimale del digest del nodo secondario sinistro di un nodo. Formato: una stringa esadecimale di 64 caratteri.

right_child_digest_hex

string

Solo output. La rappresentazione esadecimale del digest del figlio destro di un nodo. Formato: una stringa esadecimale di 64 caratteri.

QualifiedCurrencyValue

Rappresenta una valuta nel registro, qualificata dal relativo operatore di valuta.

Campi
operator_id

string

Obbligatorio. L'ID operatore valuta che amministra la valuta.

QueryAccountRequest

Messaggio di richiesta per QueryAccount.

Campi
endpoint

string

Obbligatorio. L'endpoint per gestire la richiesta. Formato: projects/{project}/locations/{location}/endpoints/{endpoint} La posizione è una regione.

account_id

string

Obbligatorio. L'ID account di cui ottenere informazioni. Il valore è limitato a 60 caratteri.

round_id

int64

Facoltativo. L'ID del round di esecuzione (simile all'"altezza" del blocco) in cui richiedere i dati. Le informazioni sull'account restituite saranno accurate per lo stato del mondo in questo round di esecuzione. Se non specificato, utilizza l'ultimo round finalizzato noto al validatore di pubblicazione. Lo stato in un determinato ID round è sempre coerente e canonico.

QueryAccountResponse

Messaggio di risposta per QueryAccount.

Campi
account

Account

Le informazioni dell'account, insieme all'altezza a cui sono state ottenute.

QueryDataRequest

Messaggio di richiesta per QueryData.

Campi
endpoint

string

Obbligatorio. L'endpoint per gestire la richiesta. Formato: projects/{project}/locations/{location}/endpoints/{endpoint} La posizione è una regione.

serialized_signed_query_request

bytes

Obbligatorio. Un SignedQueryRequest serializzato protobuf per eseguire query sulla rete Universal Ledger.

QueryDataResponse

Messaggio di risposta per QueryData.

Campi
redacted_fields[]

RedactedField

Indica quali campi sono stati oscurati dalla risposta a causa di limitazioni delle autorizzazioni.

Campo unione kind. Il risultato specifico della query. kind può essere solo uno dei seguenti tipi:
account

Account

I dati dell'account, se la query riguardava un account.

transaction_state

TransactionState

Lo stato di una transazione, se la query riguardava una transazione.

QueryTransactionStateRequest

Messaggio di richiesta per QueryTransactionState.

Campi
endpoint

string

Obbligatorio. L'endpoint per gestire la richiesta. Formato: projects/{project}/locations/{location}/endpoints/{endpoint} La posizione è una regione.

transaction_digest_hex

string

Obbligatorio. L'ID transazione di cui ottenere lo stato.

QueryTransactionStateResponse

Messaggio di risposta per QueryTransactionState.

Campi
transaction_attempts[]

TransactionAttempt

Una voce per ogni invio noto della transazione al validatore che gestisce la richiesta.

RedactedField

Informazioni su un campo oscurato nella risposta.

Campi
redacted_path

FieldMask

Solo output. I percorsi dei campi completi che sono stati oscurati dal payload.

reason

string

Solo output. Una spiegazione leggibile del motivo per cui i campi sono stati oscurati.

reason_code

Code

Solo output. Un codice leggibile dalla macchina che indica il motivo per cui i campi sono stati oscurati.

RemoveRoles

Rimuove i ruoli specificati dall'account. Il mittente deve essere l'account manager dell'account da modificare.

Campi
account
(deprecated)

Entity

Facoltativo. Deprecato: utilizza account_id. L'ID dell'account da modificare.

account_id

string

Facoltativo. L'ID dell'account da modificare. È necessario specificare account o account_id. Il valore è limitato a 60 caratteri.

roles[]

Role

Obbligatorio. I ruoli da rimuovere.

RemoveSigningPublicKey

Rimuove la chiave di firma dell'account dallo slot specificato. L'altro slot non deve essere vuoto e deve contenere la chiave utilizzata per firmare ClientTransaction.

Campi
key_slot

KeySlot

Obbligatorio. Lo slot della chiave da cui la stiamo rimuovendo. Se è già vuoto, la transazione non andrà a buon fine.

ReplaceSigningPublicKey

Sostituisce la chiave di firma dell'account nello slot specificato. L'altro slot non deve essere vuoto e deve contenere la chiave utilizzata per firmare ClientTransaction.

Campi
key_slot

KeySlot

Obbligatorio. Lo slot in cui stiamo sostituendo la chiave.

new_public_key

bytes

Obbligatorio. La nuova chiave pubblica, che sostituirà la chiave pubblica nello slot specificato.

Il formato della chiave pubblica è definito dal campo new_key_format. Considerate informazioni pubbliche.

new_key_format

KeyFormat

Obbligatorio. Il formato della nuova chiave pubblica. Consulta la definizione di KeyFormat per un elenco dei formati supportati. Considerate informazioni pubbliche.

Ruolo

Il set di ruoli standard.

Enum
ROLE_UNSPECIFIED Ruolo non valido.
ROLE_PAYER Il ruolo che consente a un account di avviare una transazione di pagamento.
ROLE_RECEIVER Il ruolo che consente a un account di ricevere pagamenti.
ROLE_CONTRACT_CREATOR Il ruolo che consente a un account di eseguire il deployment dei contratti.
ROLE_CONTRACT_PARTICIPANT Il ruolo che consente a un account di interagire con i contratti di cui è stato eseguito il deployment.

RoundCertificate

Certificato dell'esecuzione di un round da parte di un validatore specifico.

Campi
round_id

int64

Solo output. L'ID del round a cui si riferisce il certificato.

validator_id

string

Solo output. L'identificatore dello strumento di convalida leggibile. Viene utilizzato per cercare la chiave pubblica rispetto alla quale viene verificato il validator_signatures.

round_state_checksum_hex

string

Solo output. La rappresentazione esadecimale del digest omomorfico sullo stato del mondo dopo l'applicazione degli effetti di questo round.

round_delta_checksum_hex

string

Solo output. La rappresentazione esadecimale del digest omomorfico sugli effetti aggregati delle transazioni di questo round.

merkle_tree

MerkleTree

Solo output. Albero Merkle con questo round come nodo radice e batch di transazioni (eseguiti nel round) come foglie.

validator_signatures[]

bytes

Facoltativo. La firma del validatore. Questa firma viene applicata all'hash del payload precedente di questo record.

is_finalized

bool

Solo output. Valore booleano che indica se il round è finalizzato, ovvero se un quorum sufficiente di validatori ha certificato questo round con lo stesso certificato.

SettlementMode

La modalità di compensazione per una camera di compensazione.

Enum
SETTLEMENT_MODE_UNSPECIFIED La modalità di pagamento non è specificata. Questo valore non è valido e non deve essere utilizzato.
SETTLEMENT_MODE_DEFERRED La camera di compensazione è responsabile del monitoraggio della proprietà dei fondi fuori dal ledger e dell'emissione periodica di transazioni SettlementRequest per mantenere sincronizzati i saldi corrispondenti nel ledger.
SETTLEMENT_MODE_INSTANT La camera di compensazione gestisce un unico pool di fondi e il registro funge da fonte principale per la distribuzione di questi fondi tra i gestori dei token. Questa modalità di pagamento può essere descritta anche come "pagamento lordo istantaneo".

SettlementRequest

Avvia un'operazione di compensazione tra due gestori di token. Il mittente deve essere un account di compensazione.

Nel SettlementMode differito in cui la camera di compensazione ha la custodia dei fondi del gestore dei token, questa è l'unica transazione che deve essere inviata per eseguire un regolamento tra i due gestori dei token.

Campi
payer
(deprecated)

Entity

Facoltativo. Immutabile. Deprecato: utilizza payer_id. L'ID account della parte che deve effettuare il trasferimento di fondi.

payer_id

string

Facoltativo. Immutabile. L'ID account della parte che deve effettuare il trasferimento di fondi. È necessario specificare payer o payer_id.

beneficiary
(deprecated)

Entity

Facoltativo. Immutabile. Deprecato: utilizza beneficiary_id. L'ID account della parte che deve essere pagata.

beneficiary_id

string

Facoltativo. Immutabile. L'ID account della parte che riceverà i fondi. È necessario specificare beneficiary o beneficiary_id.

balance

CurrencyValue

Obbligatorio. Immutabile. Il saldo dei token emessi che devono essere trasferiti dall'account payer all'account beneficiary nel ledger.

round_id

int64

Obbligatorio. Immutabile. L'ID del round in cui è stato calcolato questo importo del pagamento.

SignedTransaction

Una transazione con firme allegate. Per inviare una transazione, questo messaggio deve essere serializzato e incluso in un SubmitTransactionRequest.

Campi
serialized_client_transaction

bytes

Obbligatorio. Un ClientTransaction serializzato con i dettagli della transazione.

sender_signature

bytes

Obbligatorio. La firma del mittente della transazione.

La firma deve essere calcolata firmando i serialized_client_transaction byte con la propria chiave privata.

Per una catena di transazioni, i byte da firmare vengono calcolati come concatenazione di: - Un digest della transazione client serializzata dell'intera catena. - Un riepilogo della transazione firmata serializzata di ogni unità della catena, nell'ordine in cui appaiono nella catena. I digest vengono calcolati utilizzando SHA-256.

sender_signing_key_slot

KeySlot

Facoltativo. Lo slot della chiave del mittente utilizzato per firmare la transazione. Utilizza lo slot principale dell'account mittente se non specificato.

other_signatures[]

bytes

Facoltativo. Le firme degli account elencati come firmatari aggiuntivi della transazione. Il numero e l'ordine di queste firme devono corrispondere al campo signatories nel ClientTransaction.

I byte da firmare sono gli stessi del sender_signature, che ogni firmatario deve firmare con la propria chiave privata.

Il numero e l'identità dei firmatari aggiuntivi dipendono dal tipo di transazione specifico. Per una catena di transazioni, è necessaria una firma per ogni account che figura come mittente o firmatario di un'unità della catena.

other_signing_key_slots[]

KeySlot

Facoltativo. I key slot degli account elencati come firmatari aggiuntivi della transazione. Se impostati, il numero e l'ordine di questi slot chiave devono corrispondere al campo other_signatures nel SignedTransaction. Se non specificato, il valore predefinito è lo slot principale di ogni account.

StatusEvent

Rappresenta un evento nell'elaborazione di una transazione osservato da un singolo validatore.

Tutti i valori riportati sono dal punto di vista del validatore che gestisce la richiesta e potrebbero differire dalla visualizzazione di altri validatori.

Campi
event_time

Timestamp

Solo output. L'ora in cui l'evento è stato registrato da questo validatore.

event_type

EventType

Solo output. Il tipo di evento.

event_details

EventDetails

Solo output. Ulteriori dettagli associati all'evento.

StringList

Un elenco di stringhe.

Campi
values[]

string

Facoltativo. I valori stringa.

SubmitOperationalTransactionRequest

Messaggio di richiesta per SubmitOperationalTransaction.

Campi
endpoint

string

Obbligatorio. L'endpoint per gestire la richiesta. Formato: projects/{project}/locations/{location}/endpoints/{endpoint} La posizione è una regione.

serialized_signed_operational_transaction

bytes

Obbligatorio. Un protobuf serializzato SignedTransaction da inviare al ledger. La transazione del cliente allegata deve essere una transazione operativa e il mittente deve essere l'operatore della piattaforma. L'utilizzo di un formato serializzato garantisce che tutti i validatori calcolino lo stesso ID transazione come digest SHA-256 dei byte serializzati.

SubmitOperationalTransactionResponse

Messaggio di risposta per SubmitOperationalTransaction.

Campi
transaction_digest_hex

string

Identificatore che rappresenta in modo univoco la transazione operativa inviata. È la rappresentazione esadecimale del digest SHA-256 di serialized_signed_operational_transaction. Questo ID transazione viene fornito in modo che un client possa monitorare la transazione senza dover implementare la logica di hashing. L'identificatore può essere utilizzato direttamente nelle chiamate API successive, ad esempio per eseguire query sullo stato della transazione.

SubmitTransactionRequest

Messaggio di richiesta per SubmitTransaction.

Campi
endpoint

string

Obbligatorio. L'endpoint a cui inviare la transazione. Formato: projects/{project}/locations/{location}/endpoints/{endpoint} La posizione è una regione.

serialized_signed_transaction

bytes

Obbligatorio. Un protobuf serializzato SignedTransaction da inviare al ledger. L'utilizzo di un formato serializzato garantisce che tutti i validatori calcolino lo stesso ID transazione come digest SHA-256 dei byte serializzati.

SubmitTransactionResponse

Messaggio di risposta per SubmitTransaction.

Campi
transaction_digest_hex

string

Identificatore che rappresenta in modo univoco la transazione inviata. È la rappresentazione esadecimale del digest SHA-256 di serialized_signed_transaction. Questo ID transazione viene fornito in modo che un client possa monitorare la transazione senza dover implementare la logica di hashing. L'identificatore può essere utilizzato direttamente nelle chiamate API successive, ad esempio per eseguire query sullo stato della transazione.

TokenManagerDetails

Dettagli specifici di un Token Manager.

Campi
issuance_limit

CurrencyValue

Solo output. La quantità di token che questo gestore di token può generare.

issued_tokens

CurrencyValue

Solo output. La quantità di token creati da questo gestore di token. Questo numero aumenterà durante il minting e diminuirà durante il burning.

TransactionAttempt

Lo stato di un tentativo di invio di transazione.

Campi
status

TransactionStatus

Solo output. Lo stato attuale del tentativo di transazione.

proof_of_inclusion

ProofOfInclusion

Solo output. Certificato dell'inclusione degli effetti della transazione nello stato del mondo. Fornito solo se lo stato è FINALIZED.

status_events[]

StatusEvent

Solo output. Gli eventi di stato ordinati registrati per il tentativo di transazione.

TransactionStatus

Lo stato del tentativo di transazione.

Enum
TRANSACTION_STATUS_UNSPECIFIED Stato sconosciuto o non inizializzato.
PENDING La transazione è nota a questo validatore, ma non è ancora stata finalizzata.
FINALIZED La transazione è stata finalizzata. I suoi effetti sono stati mantenuti sulla blockchain e non possono essere annullati.

TransactionCertificate

Certificato dell'esecuzione di una transazione specifica in un round.

Campi
transaction_digest_hex

string

Solo output. L'ID della transazione a cui si riferisce questo certificato.

round_id

int64

Solo output. L'ID del round di esecuzione in cui è stata eseguita questa transazione.

transaction_effects

TransactionEffects

Solo output. Gli effetti dell'esecuzione della transazione.

events[]

TransactionEvent

Solo output. Eventi generati dalla transazione.

transaction_effects_state_checksum_hex

string

Solo output. Checksum omomorfico degli effetti. Un valore di 2048 byte codificato come stringa esadecimale.

certification_results_digest_hex

string

Solo output. Il digest crittografico di tutti i campi precedenti in sequenza. Utilizzato per creare un albero Merkle per la prova di inclusione.

TransactionChain

Una catena di transazioni che include più unità di transazione da eseguire in sequenza.

Le unità verranno eseguite in sequenza, nell'ordine in cui sono elencate. Se tutte le unità hanno esito positivo, i loro effetti cumulativi vengono registrati in modo atomico nello stato del mondo. In caso contrario, se una delle condizioni non viene soddisfatta, l'intera catena non verrà eseguita e nessuno dei suoi effetti verrà applicato.

Campi
units[]

bytes

Le singole unità della catena. Ogni unità deve essere un SignedTransaction serializzato.

Tieni presente che i byte serializzati sono necessari per determinare i byte da firmare per la catena stessa.

TransactionEffect

Rappresenta un aggiornamento di alcune transazioni allo stato globale.

Se ha un delta_val, si presume che sia un delta (un offset intero) applicato al valore memorizzato in precedenza per una determinata chiave. In questo caso, new_val e old_val devono essere vuoti.

In caso contrario, si presume che abbia almeno uno tra old_val e new_val (o entrambi). Un old_val vuoto indica che il valore è stato inserito. Un new_val vuoto indica che il valore è stato eliminato.

Campi
key

bytes

Solo output. La chiave nello stato del mondo che è stata aggiornata.

old_val

bytes

Solo output. Il valore della chiave prima dell'esecuzione della transazione.

new_val

bytes

Solo output. Il valore della chiave dopo l'esecuzione della transazione.

delta_val

int64

Solo output. Un offset intero applicato al valore memorizzato in precedenza.

TransactionEffects

Effetti dell'esecuzione di una transazione.

Campi
status

TransactionStatus

Solo output. Lo stato risultante dell'esecuzione della transazione.

effects[]
(deprecated)

TransactionEffect

Solo output. Obsoleto: esegui una query sullo stato della rete per determinare eventuali modifiche allo stato del mondo. Gli effetti della transazione nello stato del mondo.

TransactionEvent

Un evento prodotto da una transazione.

Campi
type

string

Solo output. Il tipo di evento. Un evento speciale di tipo transaction_output contiene gli output prodotti dalla transazione, ad esempio l'ID account di un account appena creato.

attributes[]

EventAttribute

Solo output. Gli attributi dell'evento come coppie chiave-valore arbitrarie.

EventAttribute

Un attributo individuale come coppia chiave-valore.

Campi
key

string

Solo output. La chiave dell'attributo.

value

string

Solo output. Il valore dell'attributo.

TransactionState

Lo stato di una transazione.

Campi
transaction_attempts[]

TransactionAttempt

Una voce per ogni invio noto della transazione al validatore che gestisce la richiesta.

TransactionStatus

Rappresenta lo stato di esecuzione di una transazione.

Campi
code

int32

Solo output. Il codice di stato, un valore numerico il cui significato è definito dal codice di stato gRPC corrispondente.

message

bytes

Solo output. Il messaggio di errore, se presente. Imposta solo se il codice non è OK. Si tratta di una stringa codificata come byte UTF-8. Memorizzati come byte per evitare problemi di determinismo della codifica.

Trasferisci

Trasferisce i token da un account utente a un altro. Il mittente deve essere un account utente normale, non un account con privilegi come un gestore token o un account manager.

Inoltre, il mittente della transazione deve avere ROLE_PAYER abilitato, mentre il destinatario deve avere ROLE_RECEIVER abilitato.

Campi
beneficiary
(deprecated)

Entity

Facoltativo. Deprecato: utilizza beneficiary_id. L'account che riceve i token.

beneficiary_id

string

Facoltativo. L'ID dell'account che riceve i token. È necessario specificare beneficiary o beneficiary_id.

amount

CurrencyValue

Obbligatorio. L'importo da trasferire. L'importo deve essere positivo.

TransferContractTokenManager

Trasferisce la proprietà del gestore dei token di contratto a un nuovo account. Il mittente deve essere l'operatore valutario attuale per la valuta.

Se la transazione va a buon fine, il gestore dei token di contratto corrente per la valuta viene disattivato e l'ID dell'account appena creato viene restituito come evento nel TransactionCertificate della transazione finalizzata.

Campi
public_key

bytes

Obbligatorio. La chiave pubblica del nuovo gestore dei token del contratto. Tieni presente che non si tratta della chiave pubblica dell'operatore. Si tratta della chiave pubblica del gestore di token del nuovo contratto e verrà archiviata nel ledger. Verrà utilizzato per convalidare la firma delle transazioni provenienti dall'account del gestore dei token di contratto.

Il formato della chiave pubblica è definito dal campo key_format. Considerate informazioni pubbliche.

account_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro dell'account. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

key_format

KeyFormat

Facoltativo. Immutabile. Il formato della chiave pubblica. Se non specificato, il valore predefinito è un keyset serializzato binario nel formato wire di Tink. Considerate informazioni pubbliche.

TransferCurrencyOperator

Trasferisce la proprietà dell'operatore di valuta specificato a un nuovo account. Il mittente deve essere l'operatore della piattaforma.

Se la transazione va a buon fine, disattiva l'operatore di valuta specificato e l'ID del conto appena creato viene restituito come evento nel TransactionCertificate della transazione finalizzata.

Campi
public_key

bytes

Obbligatorio. La chiave pubblica del nuovo operatore di valuta. Questa chiave pubblica verrà associata all'operatore di valuta e memorizzata nel ledger. Verrà utilizzato per convalidare la firma delle transazioni provenienti dall'account dell'operatore valutario.

Il formato della chiave pubblica è definito dal campo key_format. Considerate informazioni pubbliche.

key_format

KeyFormat

Facoltativo. Immutabile. Il formato della chiave pubblica. Se non specificato, il valore predefinito è un keyset serializzato binario nel formato wire di Tink. Considerate informazioni pubbliche.

account_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro dell'account. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

currency_operator
(deprecated)

Entity

Facoltativo. Deprecato: utilizza currency_operator_id. L'operatore di valuta da sostituire. Deve essere attivo.

currency_operator_id

string

Facoltativo. L'ID dell'operatore di valuta da sostituire. Deve essere attivo. È necessario specificare currency_operator o currency_operator_id. Il valore è limitato a 60 caratteri.

TransferPlatformOperator

Trasferisce la proprietà dell'operatore della piattaforma a un nuovo account. Il mittente deve essere l'attuale operatore della piattaforma.

Se la transazione va a buon fine, l'operatore della piattaforma corrente viene disattivato e l'ID dell'account appena creato viene restituito come evento nel TransactionCertificate della transazione finalizzata.

Campi
public_key

bytes

Obbligatorio. La chiave pubblica del nuovo operatore della piattaforma. Questa chiave pubblica verrà associata all'operatore della piattaforma e memorizzata nel ledger. Verrà utilizzato per convalidare la firma delle transazioni provenienti dall'account dell'operatore della piattaforma.

Il formato della chiave pubblica è definito dal campo key_format. Considerate informazioni pubbliche.

key_format

KeyFormat

Facoltativo. Immutabile. Il formato della chiave pubblica. Se non specificato, il valore predefinito è un keyset serializzato binario nel formato wire di Tink. Considerate informazioni pubbliche.

account_comment

string

Facoltativo. Immutabile. Un campo per i commenti opaco che non viene interpretato dal sistema, ma memorizzato nel registro dell'account. Considerate informazioni pubbliche. La lunghezza massima è di 128 caratteri. Può essere lasciato vuoto. Una volta creato, il campo è immutabile.

UserDetails

Dettagli specifici di un account utente.

Campi
account_manager
(deprecated)

Entity

Solo output. Deprecato: utilizza account_manager_id. Il responsabile dell'account per questo utente.

account_manager_id

string

Solo output. L'ID del responsabile dell'account per questo utente.

token_manager
(deprecated)

Entity

Solo output. Deprecato: utilizza token_manager_id. Il gestore dei token per questo utente.

token_manager_id

string

Solo output. L'ID del gestore dei token per questo utente.

roles[]

Role

Solo output. L'elenco dei ruoli concessi a questo account.

account_status

AccountStatus

Solo output. Lo stato di questo account.

balance

CurrencyValue

Solo output. Il saldo dei token di questo account utente.

account_fields
(deprecated)

map<string, Fields>

Solo output. Deprecato: utilizza contract_account_fields. I campi dell'account contratto (ID contratto -> campi) per questo utente.

contract_account_fields

map<string, Fields>

Solo output. I campi dell'account contratto (ID contratto -> campi) per questo utente.

Valore

Un valore concreto di un determinato tipo.

Campi
Campo unione value. Il valore effettivo. value può essere solo uno dei seguenti tipi:
none_value

NoneValue

Facoltativo. Rappresenta un valore None.

bool_value

bool

Facoltativo. Un valore booleano.

int64_value

int64

Facoltativo. Un valore int64.

string_value

string

Facoltativo. Un valore stringa.

account_id

string

Facoltativo. Un ID account.

dict_value

DictValue

Facoltativo. Un valore del dizionario.

qualified_currency_value

QualifiedCurrencyValue

Facoltativo. Un valore di valuta qualificato.

amount_value

AmountValue

Facoltativo. Un valore di importo.