Package google.cloud.universalledger.v1

Index

UniversalLedger

Service permettant d'interagir avec le grand livre universel Google Cloud. Les points de terminaison sont précréés et gérés par Google. Les utilisateurs ne peuvent pas les modifier. Les noms des points de terminaison disponibles seront fournis dans la documentation publique. Un point de terminaison est une ressource régionale au sein d'un réseau Universal Ledger. Les requêtes envoyées à un point de terminaison peuvent être acheminées vers différents validateurs du réseau donné dans la région donnée.

GetEndpoint

rpc GetEndpoint(GetEndpointRequest) returns (Endpoint)

Récupère les détails d'un point de terminaison spécifique.

Niveaux d'accès des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour plus d'informations, consultez la Authentication Overview.

ListEndpoints

rpc ListEndpoints(ListEndpointsRequest) returns (ListEndpointsResponse)

Liste tous les points de terminaison pour un projet et un emplacement donnés.

Niveaux d'accès des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour plus d'informations, consultez la Authentication Overview.

QueryAccount

rpc QueryAccount(QueryAccountRequest) returns (QueryAccountResponse)

Interroge toutes les informations stockées sur un compte dans le réseau. Les détails du compte renvoyés peuvent varier d'un appel à l'autre, car un point de terminaison peut acheminer les requêtes vers différents validateurs au sein du réseau et de la région. De plus, les validateurs peuvent ne pas avoir le même ID de tour à un moment donné.

Niveaux d'accès des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour plus d'informations, consultez la Authentication Overview.

QueryData

rpc QueryData(QueryDataRequest) returns (QueryDataResponse)

Interroge le réseau pour obtenir des informations stockées dans le grand livre, telles que les comptes et les transactions.

L'accès à certains champs sensibles, tels que les soldes de compte, peut être limité en fonction de l'identité de l'expéditeur, qui est déduite de la signature dans la demande. Si l'expéditeur ne dispose pas de l'autorisation requise, les champs sensibles seront masqués dans la réponse et signalés dans le champ redacted_fields.

Niveaux d'accès des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour plus d'informations, consultez la Authentication Overview.

QueryTransactionState

rpc QueryTransactionState(QueryTransactionStateRequest) returns (QueryTransactionStateResponse)

Interroge l'état d'une transaction. Cette méthode peut être appelée pour toute transaction envoyée au réseau. Les détails de la transaction renvoyés peuvent varier d'un appel à l'autre, car un point de terminaison peut acheminer les requêtes vers différents validateurs du réseau et de la région. De plus, les validateurs peuvent ne pas avoir le même ID de tour à un moment donné.

Niveaux d'accès des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour plus d'informations, consultez la Authentication Overview.

SubmitOperationalTransaction

rpc SubmitOperationalTransaction(SubmitOperationalTransactionRequest) returns (SubmitOperationalTransactionResponse)

Envoie une transaction opérationnelle au réseau. Cette méthode ne renvoie une valeur que lorsque la transaction a été répliquée sur la majorité des validateurs du réseau ou en cas d'échec de la transaction.

Niveaux d'accès des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour plus d'informations, consultez la Authentication Overview.

SubmitTransaction

rpc SubmitTransaction(SubmitTransactionRequest) returns (SubmitTransactionResponse)

Envoie une transaction au réseau. La requête est d'abord validée pour vérifier qu'elle est correcte. Si la validation échoue, la requête échoue immédiatement. Si la validation réussit, cette méthode ne renvoie une réponse qu'une fois la transaction répliquée sur la majorité des validateurs du réseau ou jusqu'à ce que la requête échoue.

Niveaux d'accès des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour plus d'informations, consultez la Authentication Overview.

Compte

Représente l'état d'un compte dans le grand livre.

Champs
sequence_number

int64

Uniquement en sortie. Numéro de séquence de ce compte. Ce nombre augmente à chaque transaction envoyée par ce compte.

public_key

bytes

Uniquement en sortie. Clé publique principale associée à ce compte, utilisée pour la validation de la signature.

round_id

int64

Uniquement en sortie. ID du tour d'exécution (semblable à la "hauteur" du bloc) auquel les informations de compte fournies sont exactes.

comment

string

Uniquement en sortie. Commentaire sur le compte enregistré lors de sa création.

Champ d'union account_details. des informations spécifiques en fonction du type de compte. account_details ne peut être qu'un des éléments suivants :
user_details

UserDetails

Uniquement en sortie. Informations sur un compte utilisateur standard.

account_manager_details

AccountManagerDetails

Uniquement en sortie. Informations sur un compte de responsable de compte.

token_manager_details

TokenManagerDetails

Uniquement en sortie. Informations sur un compte administrateur de jetons.

contract_token_manager_details

ContractTokenManagerDetails

Uniquement en sortie. Informations sur un compte administrateur de jetons de contrat.

contract_details

ContractDetails

Uniquement en sortie. Détails d'un compte de contrat intelligent.

clearinghouse_details

ClearingHouseDetails

Uniquement en sortie. Informations sur un compte de chambre de compensation.

currency_operator_details

CurrencyOperatorDetails

Uniquement en sortie. Informations sur un compte d'opérateur de devises.

platform_operator_details

PlatformOperatorDetails

Uniquement en sortie. Informations sur un compte d'opérateur de plate-forme.

AccountIdList

Liste des ID de compte.

Champs
values[]

string

Facultatif. Valeurs des ID de compte.

AccountManagerDetails

Informations spécifiques à un responsable de compte.

Champs
token_manager
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt token_manager_id. Gestionnaire de jetons par défaut pour les comptes créés par ce gestionnaire de comptes.

num_accounts

int32

Uniquement en sortie. Nombre de comptes créés par ce responsable de compte.

token_manager_id

string

Uniquement en sortie. ID du gestionnaire de jetons par défaut pour les comptes créés par ce gestionnaire de compte.

AccountStatus

État d'un compte.

Enums
ACCOUNT_STATUS_UNSPECIFIED État non valide.
ACCOUNT_STATUS_ACTIVE État actif dans lequel le compte peut effectuer les opérations autorisées par ses rôles.
ACCOUNT_STATUS_INACTIVE État inactif dans lequel toutes les transactions sur le compte sont interdites. L'administrateur du compte peut toujours envoyer des transactions de gestion de compte.

ActivateAccount

Marque un compte comme ACCOUNT_STATUS_ACTIVE. L'expéditeur doit être le responsable du compte à activer.

Le propriétaire du compte peut reprendre les opérations normales autorisées par les rôles du compte.

Champs
account
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt account_id. ID du compte à activer.

account_id

string

Facultatif. ID du compte à activer. Vous devez spécifier account ou account_id. La valeur est limitée à 60 caractères.

AddRoles

Ajoute les rôles spécifiés au compte. L'expéditeur doit être le responsable du compte à modifier.

Champs
account
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt account_id. ID du compte à modifier.

account_id

string

Facultatif. ID du compte à modifier. Vous devez spécifier account ou account_id. La valeur est limitée à 60 caractères.

roles[]

Role

Obligatoire. Rôles à ajouter.

AmountValue

Représente un montant libellé dans une devise.

Champs
currency

QualifiedCurrencyValue

Obligatoire. Devise du montant.

amount_value

int64

Obligatoire. Nombre de sous-unités de la devise.

BalanceToSettle

Solde à régler entre deux gestionnaires de jetons.

Champs
balance_payer
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt balance_payer_id. Compte auquel le solde à régler est dû.

balance_payer_id

string

Uniquement en sortie. ID du compte qui doit régler le solde.

balance_receiver
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt balance_receiver_id. Compte auquel le solde à régler est dû.

balance_receiver_id

string

Uniquement en sortie. ID du compte auquel le solde à régler est dû.

balance

CurrencyValue

Uniquement en sortie. Solde à régler. Doit être positive.

BoolList

Liste de valeurs booléennes.

Champs
values[]

bool

Facultatif. Valeurs booléennes.

Brûlure

Brûle les jetons de devise. L'expéditeur doit être un gestionnaire de jetons, et le compte fournissant les jetons à brûler doit également signer la transaction.

Le flux attendu est que le gestionnaire de jetons dispose de son propre compte de destruction auquel les clients transfèrent les jetons avant qu'ils ne soient détruits. Les clients peuvent également signer directement la transaction, auquel cas elle agira comme une transaction atomique de type "transfert et destruction".

Champs
burn_amount

CurrencyValue

Obligatoire. Montant à dépenser.

payer
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt payer_id. Compte fournissant les jetons à brûler. Le compte doit avoir ROLE_PAYER activé.

payer_id

string

Facultatif. ID du compte fournissant les jetons à brûler. Le compte du payeur doit avoir activé ROLE_PAYER. Vous devez spécifier payer ou payer_id.

ChangeAccountManager

Transfère la responsabilité de la gestion d'un compte spécifique à un autre administrateur. L'expéditeur doit être le responsable de compte actuel. Pour donner son consentement, le nouveau responsable doit également signer cette transaction.

Champs
account
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt account_id. ID du compte dont l'administrateur doit être modifié.

account_id

string

Facultatif. ID du compte dont l'administrateur doit être modifié. Vous devez spécifier account ou account_id. La valeur est limitée à 60 caractères.

next_manager
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt next_manager_id. ID du nouveau responsable de compte proposé. La validation exige que le nouvel administrateur ait également signé cette transaction.

next_manager_id

string

Facultatif. ID du nouveau responsable de compte proposé. La validation exige que le nouvel administrateur ait également signé cette transaction. Vous devez spécifier next_manager ou next_manager_id. La valeur est limitée à 60 caractères.

ClearingHouseDetails

Informations spécifiques à une chambre de compensation.

Champs
account_status

AccountStatus

Uniquement en sortie. État de ce compte.

balances[]

BalanceToSettle

Uniquement en sortie. Soldes que cette chambre de compensation suit actuellement pour le règlement.

settlement_mode

SettlementMode

Uniquement en sortie. Mode de règlement de cette chambre de compensation.

ClientTransaction

Représente une transaction initiée par un client.

Champs
source
(deprecated)

Entity

Facultatif. Expéditeur de la transaction. Obsolète : utilisez plutôt sender_id.

sender_id

string

Facultatif. ID du compte qui envoie cette transaction. Vous devez définir source ou sender_id.

signatories[]
(deprecated)

Entity

Facultatif. Comptes qui, en plus de l'expéditeur, ont signé cette transaction. Obsolète : utilisez plutôt other_signatory_ids.

other_signatory_ids[]

string

Facultatif. ID des comptes qui, en plus de l'expéditeur, ont signé cette transaction.

sequence_number

int64

Obligatoire. Nombre unique qui augmente de façon monotone, en commençant par 0.

Ce nombre doit être augmenté d'une unité pour chaque transaction précédemment envoyée au réseau par le même expéditeur.

Notez que cela n'inclut pas les unités de transaction qui ont pu être envoyées dans le cadre d'une chaîne et qui ne doivent pas définir de numéro de séquence. mais inclut l'expéditeur de la chaîne de transactions elle-même.

chained_unit

bool

Doit être défini sur "true" si cette transaction client fait partie d'une chaîne de transactions. Sinon, elle doit être définie sur "false".

Cela permet d'éviter qu'une transaction signée destinée à faire partie d'une chaîne soit envoyée seule.

Champ d'union kind. Message spécifique à la transaction du client. kind ne peut être qu'un des éléments suivants :
app
(deprecated)

Any

Facultatif. Obsolète : utilisez plutôt l'un des champs spécifiques au message. Message spécifique à une transaction client. Doit être l'un des éléments suivants :

operational

Any

Facultatif. Message transactionnel opérationnel. Notez que seul l'opérateur de la plate-forme peut envoyer ce message. Doit être l'un des éléments suivants :

transfer_platform_operator_transaction

TransferPlatformOperator

Facultatif. Message pour transférer le rôle d'opérateur de plate-forme vers un nouveau compte.

create_currency_operator_transaction

CreateCurrencyOperator

Facultatif. Message pour créer un opérateur de devise.

transfer_currency_operator_transaction

TransferCurrencyOperator

Facultatif. Message pour transférer le rôle d'opérateur de devise vers un nouveau compte.

create_clearinghouse_transaction

CreateClearinghouse

Facultatif. Message pour créer une nouvelle chambre de compensation.

create_account_manager_transaction

CreateAccountManager

Facultatif. Message pour la création d'un compte administrateur.

create_token_manager_transaction

CreateTokenManager

Facultatif. Message permettant de créer un gestionnaire de jetons associé à la devise de l'opérateur qui envoie la demande.

increase_token_issuance_limit_transaction

IncreaseTokenIssuanceLimit

Facultatif. Avertit le réseau que le compte cible a déposé des fonds de réserve et augmente sa limite d'émission de jetons.

decrease_token_issuance_limit_transaction

DecreaseTokenIssuanceLimit

Facultatif. Avertit le réseau que le compte cible souhaite retirer des fonds de réserve et diminue sa limite d'émission de jetons.

settlement_request_transaction

SettlementRequest

Facultatif. Message pour lancer une opération de règlement.

mint_transaction

Mint

Facultatif. Message permettant de créer des jetons de devise et de les transférer vers un compte.

burn_transaction

Burn

Facultatif. Message permettant de supprimer des jetons de devise d'un compte.

create_account_transaction

CreateAccount

Facultatif. Message pour créer un compte utilisateur.

deactivate_account_transaction

DeactivateAccount

Facultatif. Message pour la désactivation d'un compte utilisateur.

activate_account_transaction

ActivateAccount

Facultatif. Message pour activer un compte utilisateur.

add_roles_transaction

AddRoles

Facultatif. Message pour ajouter des rôles à un compte.

remove_roles_transaction

RemoveRoles

Facultatif. Message permettant de supprimer des rôles d'un compte.

change_account_manager_transaction

ChangeAccountManager

Facultatif. Message permettant de modifier le responsable de compte d'un compte.

transfer_transaction

Transfer

Facultatif. Message permettant de transférer des jetons d'un compte utilisateur à un autre.

create_contract_transaction

CreateContract

Facultatif. Message permettant de créer un contrat sur le grand livre.

grant_contract_permissions_transaction

GrantContractPermissions

Facultatif. Message permettant d'accorder des autorisations pour un contrat.

invoke_contract_method_transaction

InvokeContractMethod

Facultatif. Message permettant d'appeler l'exécution d'une méthode de contrat.

create_contract_token_manager_transaction

CreateContractTokenManager

Facultatif. Message permettant de créer un gestionnaire de jetons associé à la devise de l'opérateur qui envoie la demande.

transfer_contract_token_manager_transaction

TransferContractTokenManager

Facultatif. Message pour transférer le rôle de gestionnaire de jetons pour une devise d'un compte à un autre.

remove_signing_public_key_transaction

RemoveSigningPublicKey

Facultatif. Message pour supprimer une clé de signature de compte.

replace_signing_public_key_transaction

ReplaceSigningPublicKey

Facultatif. Message pour remplacer une clé de signature de compte.

chain

TransactionChain

Facultatif. Message pour une chaîne de transactions comprenant plusieurs unités de transaction à exécuter dans l'ordre.

ContractDetails

Informations spécifiques à un contrat intelligent.

Champs
owner
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt owner_id. Propriétaire du contrat.

owner_id

string

Uniquement en sortie. ID du propriétaire du contrat.

code

bytes

Uniquement en sortie. Code de contrat sérialisé.

contract_fields

Fields

Uniquement en sortie. Champs du contrat (nom du champ -> valeur) pour ce contrat.

currency_balances

map<string, CurrencyValue>

Uniquement en sortie. Soldes de devises détenus par le contrat (opérateur de devise → solde).

ContractPermission

Ensemble des autorisations qui peuvent être accordées à un contrat. D'autres valeurs devraient être ajoutées à l'avenir.

Enums
CONTRACT_PERMISSION_UNSPECIFIED Autorisation non valide.
CONTRACT_PERMISSION_STORAGE

Permet à un contrat de lire et d'écrire dans l'espace de stockage appartenant au compte qui a accordé l'autorisation. Le contrat ne peut lire et écrire que les propriétés qu'il a écrites précédemment.

Notez que cela ne permet pas au contrat de lire ou d'écrire des données gérées par d'autres contrats, ni de mettre à jour directement d'autres propriétés de compte (par exemple, le solde du compte dans sa devise native).

ContractTokenManagerDetails

Informations spécifiques à un gestionnaire de jetons de contrat.

Champs
issuance_limit

CurrencyValue

Uniquement en sortie. Nombre de jetons pour lesquels ce gestionnaire de jetons de contrat est autorisé à fournir une garantie.

Étant donné que les gestionnaires de jetons de contrat ne peuvent pas augmenter ni diminuer leur limite d'émission, celle-ci doit être égale à issued_tokens.

issued_tokens

CurrencyValue

Uniquement en sortie. Nombre de jetons pour lesquels ce gestionnaire de jetons de contrat fournit une garantie (c'est-à-dire sa responsabilité totale).

Cela correspond à la somme de tous les soldes détenus dans les contrats pour sa devise, plus sa position nette dans la matrice de règlement.

previous_contract_token_manager_id

string

Uniquement en sortie. ID de compte de l'ancien gestionnaire de jetons de contrat pour cette devise. Cela forme une piste d'audit qui peut être parcourue pour découvrir tous les gestionnaires précédents. Si ce gestionnaire de jetons de contrat est le premier pour la devise, ce champ sera vide.

account_status

AccountStatus

Uniquement en sortie. État de ce compte.

CreateAccount

Crée un compte utilisateur. L'expéditeur doit être un responsable de compte.

Si la transaction aboutit, l'ID du compte nouvellement créé est renvoyé sous forme d'événement dans le TransactionCertificate de la transaction finalisée.

Champs
public_key

bytes

Obligatoire. Clé publique du titulaire du compte. Notez qu'il ne s'agit pas de la clé publique de l'expéditeur. Il s'agit de la clé publique du nouveau propriétaire du compte, qui sera stockée dans le grand livre. Elle sera utilisée pour valider la signature des transactions émanant du compte créé.

Le format de la clé publique est défini par le champ key_format. Elles sont considérées comme des informations publiques.

key_format

KeyFormat

Facultatif. Immuable. Format de la clé publique. Si aucune valeur n'est spécifiée, la valeur par défaut est un keyset sérialisé au format binaire Tink. Elles sont considérées comme des informations publiques.

roles[]

Role

Facultatif. Liste des rôles à accorder à ce compte.

account_status

AccountStatus

Facultatif. État du compte à créer. Par défaut, l'état d'un compte nouvellement créé est ACCOUNT_STATUS_ACTIVE.

account_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le compte du grand livre. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

token_manager
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt token_manager_id. Gestionnaire de jetons pour ce compte. Ce champ est facultatif. S'il n'est pas renseigné, le gestionnaire de jetons par défaut associé au gestionnaire de compte (c'est-à-dire l'expéditeur de cette transaction) sera utilisé.

token_manager_id

string

Facultatif. ID du gestionnaire de jetons pour ce compte. Ce champ est facultatif. S'il n'est pas renseigné, le gestionnaire de jetons par défaut associé au gestionnaire de compte (c'est-à-dire l'expéditeur de cette transaction) sera utilisé. La valeur est limitée à 60 caractères.

CreateAccountManager

Crée un responsable de compte. L'expéditeur doit être un opérateur de change.

Si la transaction aboutit, l'ID du compte nouvellement créé est renvoyé sous forme d'événement dans le TransactionCertificate de la transaction finalisée.

Champs
public_key

bytes

Obligatoire. Clé publique du nouveau gestionnaire de compte. Notez qu'il ne s'agit pas de la clé publique de l'opérateur. Cette clé publique sera associée au gestionnaire de compte et stockée dans le grand livre. Il sera utilisé pour valider la signature des transactions provenant du compte du responsable de compte.

Le format de la clé publique est défini par le champ key_format. Elles sont considérées comme des informations publiques.

key_format

KeyFormat

Facultatif. Immuable. Format de la clé publique. Si aucune valeur n'est spécifiée, la valeur par défaut est un keyset sérialisé au format binaire Tink. Elles sont considérées comme des informations publiques.

default_token_manager
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt default_token_manager_id. Gestionnaire de jetons par défaut pour les comptes qui seront créés par cet administrateur.

default_token_manager_id

string

Facultatif. ID du gestionnaire de jetons par défaut pour les comptes qui seront créés par cet administrateur. La valeur est limitée à 60 caractères.

account_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le compte du grand livre. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

CreateClearinghouse

Crée une chambre de compensation. L'expéditeur doit être un opérateur de change.

Si la transaction aboutit, l'ID du compte nouvellement créé est renvoyé sous forme d'événement dans le TransactionCertificate de la transaction finalisée.

Champs
public_key

bytes

Obligatoire. Clé publique de la nouvelle chambre de compensation. Notez qu'il ne s'agit pas de la clé publique de l'opérateur. Cette clé publique sera associée à la chambre de compensation et stockée dans le grand livre. Il sera utilisé pour valider la signature des transactions provenant du compte de la chambre de compensation.

Le format de la clé publique est défini par le champ key_format. Elles sont considérées comme des informations publiques.

key_format

KeyFormat

Facultatif. Immuable. Format de la clé publique. Si aucune valeur n'est spécifiée, la valeur par défaut est un keyset sérialisé au format binaire Tink. Elles sont considérées comme des informations publiques.

account_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le compte du grand livre. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

settlement_mode

SettlementMode

Obligatoire. Mode de règlement pour cette chambre de compensation. Obligatoire. Elles sont considérées comme des informations publiques.

CreateContract

Stocke un contrat dans le grand livre.

Champs
contract_bytes

bytes

Octets de contrat sérialisés.

arguments
(deprecated)

map<string, Value>

Facultatif. Immuable. Obsolète : utilisez plutôt init_arguments. Arguments pour la méthode __init__.

init_arguments

map<string, Value>

Facultatif. Immuable. Contient les arguments de la méthode __init__.

contract_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le grand livre du contrat. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

CreateContractTokenManager

Crée un gestionnaire de jetons de contrat associé à la devise de l'opérateur qui envoie la demande. L'expéditeur doit être un opérateur de change. Le gestionnaire de jetons de contrat nouvellement créé est actif par défaut. Si le gestionnaire de jetons de contrat doit être remplacé, la transaction TransferContractTokenManager doit être envoyée à la place. Si un autre gestionnaire de jetons de contrat associé à la même devise existe, cette transaction échouera.

Contrairement aux gestionnaires de jetons classiques, les gestionnaires de jetons de contrat ne sont pas autorisés à exécuter des transactions telles que l'émission ou la destruction de jetons. Toutefois, ils peuvent participer aux opérations de règlement.

Si la transaction aboutit, l'ID du compte nouvellement créé est renvoyé sous forme d'événement dans le TransactionCertificate de la transaction finalisée.

Champs
public_key

bytes

Obligatoire. Clé publique du nouveau gestionnaire de jetons de contrat. Notez qu'il ne s'agit pas de la clé publique de l'opérateur. Cette clé publique sera associée au gestionnaire de jetons du contrat et stockée dans le grand livre. Il sera utilisé pour valider la signature des transactions émanant du compte du gestionnaire de jetons du contrat.

Le format de la clé publique est défini par le champ key_format. Elles sont considérées comme des informations publiques.

account_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le compte du grand livre. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

key_format

KeyFormat

Facultatif. Immuable. Format de la clé publique. Si aucune valeur n'est spécifiée, la valeur par défaut est un keyset sérialisé au format binaire Tink. Elles sont considérées comme des informations publiques.

CreateCurrencyOperator

Crée un opérateur de devise. L'expéditeur doit être l'opérateur de la plate-forme.

Si la transaction aboutit, l'ID du compte nouvellement créé est renvoyé sous forme d'événement dans le TransactionCertificate de la transaction finalisée.

Cette transaction doit introduire une nouvelle devise dans le système. Si la devise spécifiée existe déjà, cette transaction échouera. Si l'opérateur de devise doit être remplacé, la transaction TransferCurrencyOperator doit être envoyée à la place.

Champs
public_key

bytes

Obligatoire. Clé publique du nouvel opérateur de devise. Cette clé publique sera associée à l'opérateur de devise et stockée dans le grand livre. Elle servira à valider la signature des transactions émanant du compte de l'opérateur.

Le format de la clé publique est défini par le champ key_format. Elles sont considérées comme des informations publiques.

key_format

KeyFormat

Facultatif. Immuable. Format de la clé publique. Si aucune valeur n'est spécifiée, la valeur par défaut est un keyset sérialisé au format binaire Tink. Elles sont considérées comme des informations publiques.

account_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le compte du grand livre. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

currency
(deprecated)

string

Facultatif. Obsolète : utilisez plutôt currency_code. Devise fiduciaire associée à cet opérateur, représentée par un code ISO 4217 à trois lettres majuscules. Elles sont considérées comme des informations publiques.

currency_code

string

Facultatif. Devise fiduciaire associée à cet opérateur, représentée par un code ISO 4217 à trois lettres majuscules. Elles sont considérées comme des informations publiques.

CreateSnapshot

Ce type ne comporte aucun champ.

Déclenche la création d'un instantané du réseau. L'expéditeur doit être l'opérateur de la plate-forme.

CreateTokenManager

Crée un gestionnaire de jetons associé à la devise de l'opérateur qui envoie la requête. L'expéditeur doit être un opérateur de change.

Si la transaction aboutit, l'ID du compte nouvellement créé est renvoyé sous forme d'événement dans le TransactionCertificate de la transaction finalisée.

Champs
public_key

bytes

Obligatoire. Clé publique du nouveau gestionnaire de jetons. Notez qu'il ne s'agit pas de la clé publique de l'opérateur. Cette clé publique sera associée au gestionnaire de jetons et stockée dans le grand livre. Il sera utilisé pour valider la signature des transactions provenant du compte du gestionnaire de jetons.

Le format de la clé publique est défini par le champ key_format. Elles sont considérées comme des informations publiques.

key_format

KeyFormat

Facultatif. Immuable. Format de la clé publique. Si aucune valeur n'est spécifiée, la valeur par défaut est un keyset sérialisé au format binaire Tink. Elles sont considérées comme des informations publiques.

account_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le compte du grand livre. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

CurrencyOperatorDetails

Détails spécifiques à un opérateur de devises.

Champs
currency
(deprecated)

string

Uniquement en sortie. Obsolète : utilisez plutôt currency_code. Devise associée à ce compte, représentée par le code ISO 4217 à trois lettres.

currency_code

string

Uniquement en sortie. ID de la devise associée à ce compte, représenté par le code ISO 4217 à trois lettres.

account_status

AccountStatus

Uniquement en sortie. État de ce compte.

previous_entity_id
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt previous_currency_operator_id. L'opérateur de devise précédent qui a transféré la propriété du rôle d'opérateur de devise à ce compte. Si c'est le premier opérateur de devise pour la devise, ce champ sera vide.

previous_currency_operator_id

string

Uniquement en sortie. ID de l'opérateur de devises précédent qui a transféré la propriété du rôle d'opérateur de devises à ce compte. Si c'est le premier opérateur de devise pour la devise, ce champ sera vide.

platform_operator_entity_id
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt platform_operator_id. Opérateur de plate-forme qui a créé cet opérateur de devise.

platform_operator_id

string

Uniquement en sortie. ID de l'opérateur de plate-forme qui a créé cet opérateur de devise.

contract_token_manager
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt contract_token_manager_id. Gestionnaire de jetons de contrat associé à cet opérateur de devise.

contract_token_manager_id

string

Uniquement en sortie. ID du gestionnaire de jetons de contrat associé à cet opérateur de devise.

clearinghouse_id

string

Uniquement en sortie. ID de la chambre de compensation associée à cet opérateur de devise.

CurrencyValue

Représente un montant de devise (c'est-à-dire de l'argent). Notez que la devise de facturation n'est pas incluse dans ce message. La devise appropriée est déterminée par le compte qui envoie la transaction. Chaque compte est associé à une devise unique et immuable.

Champs
value

int64

Obligatoire. Nombre de sous-unités de la devise.

Cette plus petite dénomination valide est appelée "unité mineure" et est spécifiée dans la norme ISO 4217. Par exemple, pour l'USD, la valeur correspondra au nombre de cents, et pour la GBP, au nombre de pence. Pour le yen japonais, qui n'a pas de sous-unité, il s'agit du nombre de yens.

DeactivateAccount

Marque un compte comme ACCOUNT_STATUS_INACTIVE. L'expéditeur doit être le responsable du compte à désactiver.

Cela signifie que le propriétaire du compte ne pourra effectuer aucune transaction sur le compte, quels que soient les rôles.

Champs
account
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt account_id. ID du compte à désactiver.

account_id

string

Facultatif. ID du compte à désactiver. Vous devez spécifier account ou account_id. La valeur est limitée à 60 caractères.

DecreaseTokenIssuanceLimit

Avertit le réseau que le compte cible souhaite retirer des fonds de réserve et diminue sa limite d'émission de jetons. L'expéditeur doit être un compte de chambre de compensation.

Notez que cette transaction doit être finalisée avant que les fonds de réserve puissent être retirés. Cette étape est nécessaire, car il est possible que la transaction échoue (par exemple, si le montant émis est déjà supérieur à la limite réduite demandée).

Champs
token_manager
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt token_manager_id. ID du compte institutionnel dont la limite d'émission doit être abaissée. Ce compte doit être un gestionnaire de jetons pour que la transaction soit valide.

token_manager_id

string

Facultatif. ID du compte institutionnel dont la limite d'émission doit être abaissée. Ce compte doit être un gestionnaire de jetons pour que la transaction soit valide. Vous devez spécifier token_manager_id (recommandé) ou token_manager (obsolète).

amount

CurrencyValue

Obligatoire. Montant de la diminution de la limite. Le montant doit être positif. La transaction échouera si la limite réduite est inférieure aux jetons actuellement émis.

DictList

Liste de dictionnaires.

Champs
values[]

DictValue

Facultatif. Valeurs DictValue. Tous les dictionnaires imbriqués doivent avoir le même type concret.

DictValue

Les index mappent la clé à la valeur. Par exemple, la clé keys[0] correspond à values[0].

Champs
Champ d'union keys. Chaque clé ne peut être qu'un seul type. keys ne peut être qu'un des éléments suivants :
bool_keys

BoolList

Facultatif. Liste de clés booléennes.

string_keys

StringList

Facultatif. Liste de clés de chaîne.

int64_keys

Int64List

Facultatif. Liste de clés int64.

account_id_keys

AccountIdList

Facultatif. Liste des clés d'ID de compte.

Champ d'union values. Chaque valeur ne peut être qu'un seul type. values ne peut être qu'un des éléments suivants :
bool_values

BoolList

Facultatif. Liste de valeurs booléennes.

string_values

StringList

Facultatif. Liste de valeurs de chaîne.

int64_values

Int64List

Facultatif. Liste de valeurs int64.

dict_values

DictList

Facultatif. Les valeurs sont une liste de dictionnaires imbriqués.

Point de terminaison

Représente un point de terminaison Universal Ledger.

Champs
name

string

Identifiant. Nom de ressource du point de terminaison. Format : projects/{project}/locations/{location}/endpoints/{endpoint}

Entité

Entité du réseau Universal Ledger. Tous les comptes sont associés à une entité. L'ID d'entité, souvent appelé ID de compte, est unique et immuable sur l'ensemble du réseau.

Champs
id

string

Uniquement en sortie. ID attribué à l'entité. Il est attribué par le réseau lors de la création du compte.

EventDetails

Représente des informations supplémentaires sur un événement d'état.

Champs
Champ d'union event_details. Détails de l'événement. event_details ne peut être qu'un des éléments suivants :
execution_details

ExecutionDetails

Uniquement en sortie. Informations supplémentaires sur un événement d'exécution.

EventType

Représente le type d'événement lors du traitement d'une transaction, tel qu'observé par le programme de validation auquel la requête a été envoyée.

Enums
EVENT_TYPE_UNSPECIFIED Événement inconnu ou non spécifié.
EVENT_TYPE_RECEIVED Le validateur a reçu la transaction directement d'un client.
EVENT_TYPE_BROADCASTED La transaction a été diffusée par ce validateur à d'autres.
EVENT_TYPE_ORDERED La transaction a été ordonnée et planifiée pour exécution par ce validateur.
EVENT_TYPE_EXECUTION_STARTED L'exécution de la transaction a commencé.
EVENT_TYPE_EXECUTION_COMPLETED L'exécution de la transaction est terminée.
EVENT_TYPE_FINALIZED La transaction a été finalisée par ce validateur.

ExecutionDetails

Informations supplémentaires sur un événement d'exécution.

Champs
round_id

int64

Uniquement en sortie. ID du tour au cours duquel l'événement d'exécution s'est produit.

Champs

Map des champs (nom du champ -> valeur) d'un contrat utilisé pour représenter les champs du contrat ou du compte.

Champs
fields

map<string, Value>

Uniquement en sortie. Mappage des noms de champs à leurs valeurs.

GetEndpointRequest

Message de requête pour GetEndpoint.

Champs
name

string

Obligatoire. Nom du point de terminaison à récupérer. Format : projects/{project}/locations/{location}/endpoints/{endpoint}

GrantContractPermissions

Accorde des autorisations au contrat par l'expéditeur de la transaction. Si delegate_contract_id est spécifié, les autorisations et l'espace de stockage correspondant sont accordés exclusivement au contrat delegate_contract_id, et non à l'expéditeur.

Notez qu'il n'est pas possible de révoquer les autorisations.

Champs
contract
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt contract_id. ID du contrat pour lequel des autorisations sont accordées.

contract_id

string

Facultatif. ID du contrat pour lequel des autorisations sont accordées. Vous devez spécifier contract ou contract_id.

permissions[]

ContractPermission

Autorisations à accorder.

delegate_contract_id

string

Facultatif. ID du contrat pour lequel des autorisations sont accordées. L'émetteur de la transaction doit être le propriétaire de ce contrat.

IncreaseTokenIssuanceLimit

Transactions pour l'émission et la création de jetons. Avertit le réseau que le compte cible a déposé des fonds de réserve et augmente sa limite d'émission de jetons. L'expéditeur doit être un compte de chambre de compensation.

Champs
token_manager
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt token_manager_id. ID du compte institutionnel dont la limite de frappe doit être augmentée. Ce compte doit être un gestionnaire de jetons pour que la transaction soit valide.

token_manager_id

string

Facultatif. ID du compte institutionnel dont la limite de frappe doit être augmentée. Ce compte doit être un gestionnaire de jetons pour que la transaction soit valide. Vous devez spécifier token_manager ou token_manager_id.

amount

CurrencyValue

Obligatoire. Montant de l'augmentation de la limite. Le montant doit être positif.

Int64List

Liste d'entiers int64.

Champs
values[]

int64

Facultatif. Valeurs int64.

InvokeContractMethod

Appelle l'exécution d'une méthode de contrat.

Champs
contract
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt contract_id. ID du contrat à exécuter.

contract_id

string

Facultatif. ID du contrat à exécuter. Vous devez spécifier contract ou contract_id.

method_name

string

Nom de la méthode à exécuter.

arguments
(deprecated)

map<string, Value>

Facultatif. Immuable. Obsolète : utilisez plutôt method_arguments. Arguments de la méthode.

method_arguments

map<string, Value>

Facultatif. Immuable. Contient les arguments à transmettre à la méthode.

payment

CurrencyValue

Montant à payer. Doit être supérieur à zéro lors de l'appel de méthodes payables et égal à zéro pour les méthodes non payables.

KeyFormat

Spécifie le format dans lequel une clé publique est fournie. De nouvelles valeurs pourront être ajoutées à cette énumération à l'avenir.

Enums
KEY_FORMAT_UNSPECIFIED Le format de la clé n'est pas spécifié. Cette valeur n'est pas valide et ne doit pas être utilisée.
KEY_FORMAT_TINK_WIRE_FORMAT Ensemble de clés sérialisé au format binaire Tink.
KEY_FORMAT_PEM_EC_P256_SHA256 Clé de signature de courbe elliptique encodée au format PEM utilisant la courbe P-256 avec un condensé SHA256. Les signatures doivent être fournies au format DER.

KeySlot

Identifiant des emplacements pouvant contenir des clés dans un compte.

Enums
KEY_SLOT_UNSPECIFIED L'emplacement de la clé n'est pas spécifié.
KEY_SLOT_PRIMARY Emplacement de la clé primaire.
KEY_SLOT_ALTERNATE Emplacement de la clé alternative.

ListEndpointsRequest

Message de requête pour ListEndpoints.

Champs
parent

string

Obligatoire. Parent qui possède cette collection de points de terminaison. Format : projects/{project}/locations/{location}

page_size

int32

Facultatif. Nombre maximal de points de terminaison à renvoyer. Le service peut renvoyer un nombre inférieur à cette valeur. Si aucune valeur n'est spécifiée, 50 points de terminaison au maximum sont renvoyés. La valeur maximale est 1 000. Les valeurs supérieures sont réduites à 1 000.

page_token

string

Facultatif. Jeton de page reçu d'un appel ListEndpoints précédent. Fournissez-le pour récupérer la page suivante.

ListEndpointsResponse

Message de réponse pour ListEndpoints.

Champs
endpoints[]

Endpoint

Points de terminaison pour le projet et l'emplacement donnés.

next_page_token

string

Jeton pouvant être envoyé en tant que page_token pour récupérer la page suivante. Si ce champ est omis, il n'y a pas d'autres pages.

MerkleTree

Arbre de Merkle avec un résumé cryptographique du nœud racine.

Champs
root_hash_hex
(deprecated)

string

Uniquement en sortie. Digest cryptographique du nœud racine. Obsolète : utilisez plutôt root_digest_hex.

root_digest_hex

string

Uniquement en sortie. Représentation hexadécimale du condensé du nœud racine. Format : chaîne hexadécimale de 64 caractères.

num_transactions

int64

Uniquement en sortie. Nombre de transactions dans l'arborescence.

Mint

Crée des jetons de devise et les transfère vers un compte spécifié. L'expéditeur doit être un gestionnaire de jetons.

Champs
mint_amount

CurrencyValue

Obligatoire. Montant à frapper. Le montant doit être tel que le nombre total de jetons frappés par le gestionnaire de jetons ne dépasse pas la limite d'émission. Si le montant est supérieur, la transaction doit être refusée.

beneficiary
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt beneficiary_id. Compte auquel le montant émis doit être transféré. Le compte bénéficiaire doit avoir ROLE_RECEIVER activé.

beneficiary_id

string

Facultatif. ID du compte auquel le montant émis doit être transféré. Le compte destinataire doit avoir activé ROLE_RECEIVER. Vous devez spécifier beneficiary ou beneficiary_id.

NoneValue

Énumération singleton pour représenter la valeur "None".

Enums
NONE_VALUE_UNSPECIFIED Valeur "None".

PlatformOperatorDetails

Informations spécifiques à un opérateur de plate-forme.

Champs
account_status

AccountStatus

Uniquement en sortie. État de ce compte.

previous_entity_id
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt previous_platform_operator_id. Opérateur de plate-forme précédent qui a transféré la propriété du rôle d'opérateur de plate-forme à ce compte. Si c'est le premier opérateur de plate-forme, ce champ sera vide.

previous_platform_operator_id

string

Uniquement en sortie. ID de l'opérateur de plate-forme précédent qui a transféré la propriété du rôle d'opérateur de plate-forme à ce compte. Si c'est le premier opérateur de plate-forme, ce champ sera vide.

ProofOfInclusion

Certificat d'inclusion des effets d'une transaction dans l'état du monde.

Champs
transaction_certificate

TransactionCertificate

Uniquement en sortie. Certificat d'inclusion des effets de la transaction dans un tour spécifique.

round_certificate

RoundCertificate

Uniquement en sortie. Certificat d'exécution du tour.

path_to_round_root[]

MerkleTreeNode

Uniquement en sortie. Preuve cryptographique de l'inclusion des effets de la transaction dans le tour d'exécution.

Il est fourni sous la forme d'un chemin d'accès d'une feuille donnée (un résumé de transaction) à la racine du tour d'exécution. Le chemin est représenté sous la forme d'une liste de paires (enfant de gauche, enfant de droite). La première paire correspond aux enfants de gauche et de droite du nœud parent de la feuille donnée. Par exemple, en supposant que l'arbre de Merkle ait été créé avec huit résumés de feuille [t0, t1, t2, t3, t4, t5, t6, t7], avec la structure suivante :

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

Dans path_to_round_root pour t0, vous trouverez : [(t0, t1), (h10, h11), (h20, h21)].

Il est possible de calculer consécutivement les condensés SHA-256 de chaque nœud de chemin d'accès pour vérifier que le condensé du chemin d'accès produit la même valeur que round_certificate.merkle_tree.root_digest_hex. Cela permet de vérifier que la feuille a été incluse dans l'arbre de Merkle du tour.

MerkleTreeNode

Représente un nœud dans un chemin d'arbre Merkle.

Champs
left_child_hash_hex
(deprecated)

string

Uniquement en sortie. Représentation hexadécimale du résumé du nœud enfant de gauche. Obsolète : utilisez plutôt left_child_digest_hex.

right_child_hash_hex
(deprecated)

string

Uniquement en sortie. Représentation hexadécimale du résumé du nœud enfant de droite. Obsolète : utilisez plutôt right_child_digest_hex.

left_child_digest_hex

string

Uniquement en sortie. Représentation hexadécimale du résumé du nœud enfant de gauche. Format : chaîne hexadécimale de 64 caractères.

right_child_digest_hex

string

Uniquement en sortie. Représentation hexadécimale du résumé du nœud enfant de droite. Format : chaîne hexadécimale de 64 caractères.

QualifiedCurrencyValue

Représente une devise dans le grand livre, qualifiée par son opérateur de devise.

Champs
operator_id

string

Obligatoire. ID de l'opérateur de devises qui gère la devise.

QueryAccountRequest

Message de requête pour QueryAccount.

Champs
endpoint

string

Obligatoire. Point de terminaison pour traiter la requête. Format : projects/{project}/locations/{location}/endpoints/{endpoint} L'emplacement est une région.

account_id

string

Obligatoire. ID du compte pour lequel obtenir des informations. La valeur est limitée à 60 caractères.

round_id

int64

Facultatif. ID du tour d'exécution (semblable à la "hauteur" du bloc) pour lequel demander des données. Les informations sur le compte renvoyées seront exactes pour l'état du monde lors de ce cycle d'exécution. Si aucune valeur n'est spécifiée, le dernier tour finalisé connu par le validateur de diffusion est utilisé. L'état à un ID de tour donné est toujours cohérent et canonique.

QueryAccountResponse

Message de réponse pour QueryAccount.

Champs
account

Account

Informations sur le compte, ainsi que la hauteur à laquelle il a été obtenu.

QueryDataRequest

Message de requête pour QueryData.

Champs
endpoint

string

Obligatoire. Point de terminaison pour traiter la requête. Format : projects/{project}/locations/{location}/endpoints/{endpoint} L'emplacement est une région.

serialized_signed_query_request

bytes

Obligatoire. SignedQueryRequest sérialisé en tant que protobuf pour interroger le réseau Universal Ledger.

QueryDataResponse

Message de réponse pour QueryData.

Champs
redacted_fields[]

RedactedField

Indique les champs qui ont été masqués dans la réponse en raison de restrictions d'autorisation.

Champ d'union kind. Résultat spécifique à la requête. kind ne peut être qu'un des éléments suivants :
account

Account

Informations sur le compte, si la requête concernait un compte.

transaction_state

TransactionState

État d'une transaction, si la requête concernait une transaction.

QueryTransactionStateRequest

Message de requête pour QueryTransactionState.

Champs
endpoint

string

Obligatoire. Point de terminaison pour traiter la requête. Format : projects/{project}/locations/{location}/endpoints/{endpoint} L'emplacement est une région.

transaction_digest_hex

string

Obligatoire. ID de la transaction dont vous souhaitez connaître l'état.

QueryTransactionStateResponse

Message de réponse pour QueryTransactionState.

Champs
transaction_attempts[]

TransactionAttempt

Une entrée pour chaque envoi connu de la transaction au validateur qui traite la demande.

RedactedField

Informations sur un champ masqué dans la réponse.

Champs
redacted_path

FieldMask

Uniquement en sortie. Chemins d'accès complets aux champs masqués dans la charge utile.

reason

string

Uniquement en sortie. Explication lisible par l'utilisateur des raisons pour lesquelles les champs ont été masqués.

reason_code

Code

Uniquement en sortie. Code lisible par machine indiquant pourquoi les champs ont été masqués.

RemoveRoles

Supprime les rôles spécifiés du compte. L'expéditeur doit être le responsable du compte à modifier.

Champs
account
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt account_id. ID du compte à modifier.

account_id

string

Facultatif. ID du compte à modifier. Vous devez spécifier account ou account_id. La valeur est limitée à 60 caractères.

roles[]

Role

Obligatoire. Rôles à supprimer.

RemoveSigningPublicKey

Supprime la clé de signature du compte de l'emplacement spécifié. L'autre emplacement ne doit pas être vide et doit contenir la clé utilisée pour signer le ClientTransaction.

Champs
key_slot

KeySlot

Obligatoire. Emplacement de la clé à supprimer. Si ce champ est déjà vide, la transaction échouera.

ReplaceSigningPublicKey

Remplace la clé de signature du compte dans l'emplacement spécifié. L'autre emplacement ne doit pas être vide et doit contenir la clé utilisée pour signer le ClientTransaction.

Champs
key_slot

KeySlot

Obligatoire. Emplacement de la clé que nous remplaçons.

new_public_key

bytes

Obligatoire. Nouvelle clé publique qui remplacera celle de l'emplacement spécifié.

Le format de la clé publique est défini par le champ "new_key_format". Elles sont considérées comme des informations publiques.

new_key_format

KeyFormat

Obligatoire. Format de la nouvelle clé publique. Consultez la définition de KeyFormat pour obtenir la liste des formats acceptés. Elles sont considérées comme des informations publiques.

Rôle

Ensemble de rôles standard.

Enums
ROLE_UNSPECIFIED Rôle non valide.
ROLE_PAYER Rôle qui permet à un compte de lancer une transaction de paiement.
ROLE_RECEIVER Rôle qui permet à un compte de recevoir des paiements.
ROLE_CONTRACT_CREATOR Rôle qui permet à un compte de déployer des contrats.
ROLE_CONTRACT_PARTICIPANT Rôle qui permet à un compte d'interagir avec les contrats déployés.

RoundCertificate

Certificat de l'exécution d'un tour par un validateur spécifique.

Champs
round_id

int64

Uniquement en sortie. ID du tournoi pour lequel le certificat est destiné.

validator_id

string

Uniquement en sortie. Identifiant du validateur lisible par l'utilisateur. Elle permet de rechercher la clé publique par rapport à laquelle validator_signatures est vérifié.

round_state_checksum_hex

string

Uniquement en sortie. Représentation hexadécimale du résumé homomorphique sur l'état du monde après l'application des effets de ce tour.

round_delta_checksum_hex

string

Uniquement en sortie. Représentation hexadécimale du résumé homomorphique sur les effets de transaction agrégés de ce tour.

merkle_tree

MerkleTree

Uniquement en sortie. Arbre Merkle dont ce tour est le nœud racine et les lots de transactions (exécutés au cours du tour) sont les feuilles.

validator_signatures[]

bytes

Facultatif. Signature du validateur. La signature est apposée sur le résumé de la charge utile précédente de cet enregistrement.

is_finalized

bool

Uniquement en sortie. Valeur booléenne indiquant si le tour est finalisé, c'est-à-dire si un quorum suffisant de validateurs a certifié ce tour avec le même certificat.

SettlementMode

Mode de règlement d'une chambre de compensation.

Enums
SETTLEMENT_MODE_UNSPECIFIED Le mode de règlement n'est pas spécifié. Cette valeur n'est pas valide et ne doit pas être utilisée.
SETTLEMENT_MODE_DEFERRED La chambre de compensation est chargée de suivre la propriété des fonds hors chaîne et d'émettre périodiquement des transactions SettlementRequest pour maintenir la synchronisation des soldes correspondants dans le grand livre.
SETTLEMENT_MODE_INSTANT La chambre de compensation gère un pool de fonds unique, et le grand livre sert de source de référence pour l'allocation de ces fonds entre les gestionnaires de jetons. Ce mode de règlement peut également être décrit comme un "règlement brut instantané".

SettlementRequest

Lance une opération de règlement entre deux gestionnaires de jetons. L'expéditeur doit être un compte de chambre de compensation.

Dans le SettlementMode différé où la chambre de compensation a la garde des fonds du gestionnaire de jetons, il s'agit de la seule transaction à envoyer pour exécuter un règlement entre les deux gestionnaires de jetons.

Champs
payer
(deprecated)

Entity

Facultatif. Immuable. Obsolète : utilisez plutôt payer_id. Numéro de compte de la partie qui doit effectuer le transfert de fonds.

payer_id

string

Facultatif. Immuable. Numéro de compte de la partie qui doit effectuer le transfert de fonds. Vous devez spécifier payer ou payer_id.

beneficiary
(deprecated)

Entity

Facultatif. Immuable. Obsolète : utilisez plutôt beneficiary_id. Numéro de compte de la partie à payer.

beneficiary_id

string

Facultatif. Immuable. Numéro de compte de la partie qui recevra les fonds. Vous devez spécifier beneficiary ou beneficiary_id.

balance

CurrencyValue

Obligatoire. Immuable. Solde des jetons émis qui doivent être transférés du compte payer au compte beneficiary dans le grand livre.

round_id

int64

Obligatoire. Immuable. ID du tour pour lequel ce montant de règlement a été calculé.

SignedTransaction

Transaction avec des signatures jointes. Pour envoyer une transaction, ce message doit être sérialisé et inclus dans un SubmitTransactionRequest.

Champs
serialized_client_transaction

bytes

Obligatoire. ClientTransaction sérialisé contenant les détails de la transaction.

sender_signature

bytes

Obligatoire. Signature de l'expéditeur de la transaction.

La signature doit être calculée en signant les octets serialized_client_transaction avec leur propre clé privée.

Pour une chaîne de transactions, les octets à signer sont calculés comme la concaténation des éléments suivants : un résumé de la transaction client sérialisée de l'ensemble de la chaîne. - Un résumé de la transaction signée sérialisée de chaque unité de la chaîne, dans l'ordre dans lequel elles apparaissent dans la chaîne. Les condensés sont calculés à l'aide de SHA-256.

sender_signing_key_slot

KeySlot

Facultatif. Emplacement de la clé de l'expéditeur utilisée pour signer la transaction. Utilise l'emplacement principal du compte de l'expéditeur s'il n'est pas spécifié.

other_signatures[]

bytes

Facultatif. Signatures des comptes listés comme signataires supplémentaires des transactions. Le nombre et l'ordre de ces signatures doivent correspondre au champ signatories dans ClientTransaction.

Les octets à signer sont les mêmes que ceux de sender_signature, que chaque signataire doit signer avec sa propre clé privée.

Le nombre et l'identité des signataires supplémentaires dépendent du type de transaction. Pour une chaîne de transactions, une signature est requise pour chaque compte apparaissant comme expéditeur ou signataire d'une unité de la chaîne.

other_signing_key_slots[]

KeySlot

Facultatif. Emplacements de clé des comptes listés comme signataires supplémentaires des transactions. Si cette valeur est définie, le nombre et l'ordre de ces emplacements de clés doivent correspondre au champ other_signatures dans SignedTransaction. Si ce champ n'est pas spécifié, l'emplacement principal de chaque compte est utilisé par défaut.

StatusEvent

Représente un événement lors du traitement d'une transaction, tel qu'observé par un seul validateur.

Toutes les valeurs indiquées sont celles du validateur qui traite la demande. Elles peuvent donc différer de celles d'autres validateurs.

Champs
event_time

Timestamp

Uniquement en sortie. Heure à laquelle l'événement a été enregistré par ce validateur.

event_type

EventType

Uniquement en sortie. Le type d'événement.

event_details

EventDetails

Uniquement en sortie. Informations supplémentaires associées à l'événement.

StringList

Liste de chaînes.

Champs
values[]

string

Facultatif. Valeurs de chaîne.

SubmitOperationalTransactionRequest

Message de requête pour SubmitOperationalTransaction.

Champs
endpoint

string

Obligatoire. Point de terminaison pour traiter la requête. Format : projects/{project}/locations/{location}/endpoints/{endpoint} L'emplacement est une région.

serialized_signed_operational_transaction

bytes

Obligatoire. Un SignedTransaction protobuf sérialisé à envoyer au grand livre. La transaction client incluse doit être une transaction opérationnelle, et l'expéditeur doit être l'opérateur de la plate-forme. L'utilisation d'un format sérialisé garantit que tous les validateurs calculent le même ID de transaction que le condensé SHA-256 des octets sérialisés.

SubmitOperationalTransactionResponse

Message de réponse pour SubmitOperationalTransaction.

Champs
transaction_digest_hex

string

Identifiant qui représente de manière unique la transaction opérationnelle envoyée. Il s'agit de la représentation hexadécimale du condensé SHA-256 de serialized_signed_operational_transaction. Cet ID de transaction est fourni pour qu'un client puisse suivre la transaction sans avoir à implémenter lui-même la logique de hachage. L'identifiant peut être utilisé directement dans les appels d'API ultérieurs, par exemple pour interroger l'état de la transaction.

SubmitTransactionRequest

Message de requête pour SubmitTransaction.

Champs
endpoint

string

Obligatoire. Point de terminaison auquel envoyer la transaction. Format : projects/{project}/locations/{location}/endpoints/{endpoint} L'emplacement est une région.

serialized_signed_transaction

bytes

Obligatoire. Un SignedTransaction protobuf sérialisé à envoyer au grand livre. L'utilisation d'un format sérialisé garantit que tous les validateurs calculent le même ID de transaction que le condensé SHA-256 des octets sérialisés.

SubmitTransactionResponse

Message de réponse pour SubmitTransaction.

Champs
transaction_digest_hex

string

Identifiant qui représente de manière unique la transaction envoyée. Il s'agit de la représentation hexadécimale du condensé SHA-256 de serialized_signed_transaction. Cet ID de transaction est fourni pour qu'un client puisse suivre la transaction sans avoir à implémenter lui-même la logique de hachage. L'identifiant peut être utilisé directement dans les appels d'API ultérieurs, par exemple pour interroger l'état de la transaction.

TokenManagerDetails

Informations spécifiques à un gestionnaire de jetons.

Champs
issuance_limit

CurrencyValue

Uniquement en sortie. Nombre de jetons que ce gestionnaire de jetons est autorisé à générer.

issued_tokens

CurrencyValue

Uniquement en sortie. Nombre de jetons créés par ce gestionnaire de jetons. Ce nombre augmente lors de la frappe et diminue lors de la destruction.

TransactionAttempt

État d'une tentative d'envoi de transaction.

Champs
status

TransactionStatus

Uniquement en sortie. État actuel de la tentative de transaction.

proof_of_inclusion

ProofOfInclusion

Uniquement en sortie. Certificat d'inclusion des effets de la transaction dans l'état du monde. Fourni uniquement si l'état est FINALIZED.

status_events[]

StatusEvent

Uniquement en sortie. Événements d'état enregistrés pour la tentative de transaction.

TransactionStatus

État de la tentative de transaction.

Enums
TRANSACTION_STATUS_UNSPECIFIED État inconnu ou non initialisé.
PENDING Le validateur connaît la transaction, mais elle n'est pas encore finalisée.
FINALIZED La transaction est finalisée. Ses effets ont été conservés sur la blockchain et ne peuvent pas être annulés.

TransactionCertificate

Certificat d'exécution d'une transaction spécifique dans un tour.

Champs
transaction_digest_hex

string

Uniquement en sortie. ID de la transaction à laquelle ce certificat se rapporte.

round_id

int64

Uniquement en sortie. ID du cycle d'exécution au cours duquel cette transaction a été exécutée.

transaction_effects

TransactionEffects

Uniquement en sortie. Effets de l'exécution de la transaction.

events[]

TransactionEvent

Uniquement en sortie. Événements générés par la transaction.

transaction_effects_state_checksum_hex

string

Uniquement en sortie. Somme de contrôle homomorphe des effets. Valeur de 2 048 octets encodée sous forme de chaîne hexadécimale.

certification_results_digest_hex

string

Uniquement en sortie. Digest cryptographique de tous les champs précédents dans l'ordre. Utilisé pour créer un arbre Merkle pour la preuve d'inclusion.

TransactionChain

Chaîne de transactions incluant plusieurs unités de transaction à exécuter dans l'ordre.

Les unités seront exécutées de manière séquentielle, dans l'ordre dans lequel elles sont listées. Si toutes les unités réussissent, leurs effets cumulés seront appliqués de manière atomique à l'état du monde. Sinon, si l'une d'elles échoue, l'ensemble de la chaîne échouera et aucun de ses effets ne sera appliqué.

Champs
units[]

bytes

Unités individuelles de la chaîne. Chaque unité doit être un SignedTransaction sérialisé.

Notez que les octets sérialisés sont nécessaires pour déterminer les octets à signer pour la chaîne elle-même.

TransactionEffect

Représente une mise à jour de l'état du monde par une transaction.

Si elle comporte un delta_val, elle est considérée comme un delta (un décalage entier) appliqué à la valeur précédemment stockée pour une clé donnée. Dans ce cas, new_val et old_val doivent être vides.

Sinon, il est supposé avoir au moins l'un des éléments old_val ou new_val (ou les deux). Une valeur old_val vide indique que la valeur a été insérée. Une valeur new_val vide indique que la valeur a été supprimée.

Champs
key

bytes

Uniquement en sortie. Clé de l'état du monde qui a été mise à jour.

old_val

bytes

Uniquement en sortie. Valeur de la clé avant l'exécution de la transaction.

new_val

bytes

Uniquement en sortie. Valeur de la clé après l'exécution de la transaction.

delta_val

int64

Uniquement en sortie. Décalage entier appliqué à la valeur stockée précédemment.

TransactionEffects

Effets de l'exécution d'une transaction.

Champs
status

TransactionStatus

Uniquement en sortie. État de l'exécution de la transaction.

effects[]
(deprecated)

TransactionEffect

Uniquement en sortie. Obsolète : interrogez plutôt l'état du réseau pour déterminer les modifications apportées à l'état du monde. Effets de la transaction sur l'état du monde.

TransactionEvent

Événement produit par une transaction.

Champs
type

string

Uniquement en sortie. Type d'événement. Un événement spécial de type transaction_output contient les résultats produits par la transaction (par exemple, l'ID de compte d'un compte nouvellement créé).

attributes[]

EventAttribute

Uniquement en sortie. Attributs de l'événement sous forme de paires clé/valeur arbitraires.

EventAttribute

Attribut individuel sous forme de paire clé/valeur.

Champs
key

string

Uniquement en sortie. Clé de l'attribut.

value

string

Uniquement en sortie. Valeur de l'attribut.

TransactionState

État d'une transaction.

Champs
transaction_attempts[]

TransactionAttempt

Une entrée pour chaque envoi connu de la transaction au validateur qui traite la demande.

TransactionStatus

Représente l'état d'une exécution de transaction.

Champs
code

int32

Uniquement en sortie. Code d'état, une valeur numérique dont la signification est définie par le code d'état gRPC correspondant.

message

bytes

Uniquement en sortie. Message d'erreur, le cas échéant. Défini uniquement si le code n'est pas OK. Il s'agit d'une chaîne encodée en octets UTF-8. Stocké sous forme d'octets pour éviter tout problème de déterminisme de l'encodage.

Transfert

Transfère des jetons d'un compte utilisateur à un autre. L'expéditeur doit être un compte utilisateur standard, et non un compte privilégié tel qu'un gestionnaire de jetons ou un responsable de compte.

De plus, l'émetteur de la transaction doit avoir activé ROLE_PAYER, tandis que le destinataire doit avoir activé ROLE_RECEIVER.

Champs
beneficiary
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt beneficiary_id. Compte qui reçoit les jetons.

beneficiary_id

string

Facultatif. ID du compte qui reçoit les jetons. Vous devez spécifier beneficiary ou beneficiary_id.

amount

CurrencyValue

Obligatoire. Montant à transférer. Le montant doit être positif.

TransferContractTokenManager

Transfère la propriété du gestionnaire de jetons de contrat vers un nouveau compte. L'expéditeur doit être l'opérateur de devise actuel pour la devise.

Si la transaction aboutit, le gestionnaire de jetons de contrat actuel pour la devise est désactivé, et l'ID du compte nouvellement créé est renvoyé en tant qu'événement dans le TransactionCertificate de la transaction finalisée.

Champs
public_key

bytes

Obligatoire. Clé publique du nouveau gestionnaire de jetons de contrat. Notez qu'il ne s'agit pas de la clé publique de l'opérateur. Il s'agit de la clé publique du gestionnaire de jetons du nouveau contrat, qui sera stockée dans le grand livre. Il sera utilisé pour valider la signature des transactions émanant du compte du gestionnaire de jetons du contrat.

Le format de la clé publique est défini par le champ key_format. Elles sont considérées comme des informations publiques.

account_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le compte du grand livre. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

key_format

KeyFormat

Facultatif. Immuable. Format de la clé publique. Si aucune valeur n'est spécifiée, la valeur par défaut est un keyset sérialisé au format binaire Tink. Elles sont considérées comme des informations publiques.

TransferCurrencyOperator

Transfère la propriété de l'opérateur de devise donné à un nouveau compte. L'expéditeur doit être l'opérateur de la plate-forme.

Si la transaction aboutit, l'opérateur de devise donné est désactivé et l'ID du compte nouvellement créé est renvoyé en tant qu'événement dans le TransactionCertificate de la transaction finalisée.

Champs
public_key

bytes

Obligatoire. Clé publique du nouvel opérateur de devise. Cette clé publique sera associée à l'opérateur de devise et stockée dans le grand livre. Elle sera utilisée pour valider la signature des transactions provenant du compte de l'opérateur de devises.

Le format de la clé publique est défini par le champ key_format. Elles sont considérées comme des informations publiques.

key_format

KeyFormat

Facultatif. Immuable. Format de la clé publique. Si aucune valeur n'est spécifiée, la valeur par défaut est un keyset sérialisé au format binaire Tink. Elles sont considérées comme des informations publiques.

account_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le compte du grand livre. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

currency_operator
(deprecated)

Entity

Facultatif. Obsolète : utilisez plutôt currency_operator_id. Opérateur de devise à remplacer. Doit être actif.

currency_operator_id

string

Facultatif. ID de l'opérateur de devise à remplacer. Doit être actif. Vous devez spécifier currency_operator ou currency_operator_id. La valeur est limitée à 60 caractères.

TransferPlatformOperator

Transfère la propriété de l'opérateur de plate-forme vers un nouveau compte. L'expéditeur doit être l'opérateur actuel de la plate-forme.

Si la transaction aboutit, l'opérateur de plate-forme actuel est désactivé et l'ID du compte nouvellement créé est renvoyé sous forme d'événement dans le TransactionCertificate de la transaction finalisée.

Champs
public_key

bytes

Obligatoire. Clé publique du nouvel opérateur de plate-forme. Cette clé publique sera associée à l'opérateur de la plate-forme et stockée dans le grand livre. Il sera utilisé pour valider la signature des transactions provenant du compte de l'opérateur de la plate-forme.

Le format de la clé publique est défini par le champ key_format. Elles sont considérées comme des informations publiques.

key_format

KeyFormat

Facultatif. Immuable. Format de la clé publique. Si aucune valeur n'est spécifiée, la valeur par défaut est un keyset sérialisé au format binaire Tink. Elles sont considérées comme des informations publiques.

account_comment

string

Facultatif. Immuable. Champ de commentaire opaque qui n'est pas interprété par le système, mais qui est stocké dans le compte du grand livre. Elles sont considérées comme des informations publiques. Il ne doit pas dépasser 128 caractères. Peut être laissé vide. Une fois créé, le champ est immuable.

UserDetails

Informations spécifiques à un compte utilisateur.

Champs
account_manager
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt account_manager_id. Gestionnaire de compte pour cet utilisateur.

account_manager_id

string

Uniquement en sortie. ID du responsable de compte pour cet utilisateur.

token_manager
(deprecated)

Entity

Uniquement en sortie. Obsolète : utilisez plutôt token_manager_id. Gestionnaire de jetons pour cet utilisateur.

token_manager_id

string

Uniquement en sortie. ID du gestionnaire de jetons pour cet utilisateur.

roles[]

Role

Uniquement en sortie. Liste des rôles attribués à ce compte.

account_status

AccountStatus

Uniquement en sortie. État de ce compte.

balance

CurrencyValue

Uniquement en sortie. Solde de jetons de ce compte utilisateur.

account_fields
(deprecated)

map<string, Fields>

Uniquement en sortie. Obsolète : utilisez plutôt contract_account_fields. Champs du compte contractuel (ID du contrat → champs) pour cet utilisateur.

contract_account_fields

map<string, Fields>

Uniquement en sortie. Champs du compte contractuel (ID du contrat → champs) pour cet utilisateur.

Valeur

Valeur concrète d'un type donné.

Champs
Champ d'union value. Valeur réelle. value ne peut être qu'un des éléments suivants :
none_value

NoneValue

Facultatif. Représente une valeur "None".

bool_value

bool

Facultatif. Une valeur booléenne.

int64_value

int64

Facultatif. Valeur int64.

string_value

string

Facultatif. Valeur de chaîne.

account_id

string

Facultatif. ID de compte.

dict_value

DictValue

Facultatif. Valeur de dictionnaire.

qualified_currency_value

QualifiedCurrencyValue

Facultatif. Valeur monétaire qualifiée.

amount_value

AmountValue

Facultatif. Valeur du montant.