Account

表示账本中账号的状态。

JSON 表示法
{
  "sequenceNumber": string,
  "publicKey": string,
  "roundId": string,
  "comment": string,

  // Union field account_details can be only one of the following:
  "userDetails": {
    object (UserDetails)
  },
  "accountManagerDetails": {
    object (AccountManagerDetails)
  },
  "tokenManagerDetails": {
    object (TokenManagerDetails)
  },
  "contractTokenManagerDetails": {
    object (ContractTokenManagerDetails)
  },
  "contractDetails": {
    object (ContractDetails)
  },
  "clearinghouseDetails": {
    object (ClearingHouseDetails)
  },
  "currencyOperatorDetails": {
    object (CurrencyOperatorDetails)
  },
  "platformOperatorDetails": {
    object (PlatformOperatorDetails)
  }
  // End of list of possible types for union field account_details.
}
字段
sequenceNumber

string (int64 format)

仅限输出。相应账号的序列号。此数字会随着相应账号发送的每笔交易而递增。

publicKey

string (bytes format)

仅限输出。与此账号关联的用于签名验证的主公钥。

使用 base64 编码的字符串。

roundId

string (int64 format)

仅限输出。所提供的账号信息准确无误的执行轮次(类似于块“高度”)的 ID。

comment

string

仅限输出。创建相应账号时存储的账号注释。

联合字段 account_details。具体详情取决于账号类型。account_details 只能是下列其中一项:
userDetails

object (UserDetails)

仅限输出。标准用户账号的详细信息。

accountManagerDetails

object (AccountManagerDetails)

仅限输出。客户经理账号的详细信息。

tokenManagerDetails

object (TokenManagerDetails)

仅限输出。令牌管理账号的详细信息。

contractTokenManagerDetails

object (ContractTokenManagerDetails)

仅限输出。合约代币管理器账号的详细信息。

contractDetails

object (ContractDetails)

仅限输出。智能合约账号的详细信息。

clearinghouseDetails

object (ClearingHouseDetails)

仅限输出。清算机构账号的详细信息。

currencyOperatorDetails

object (CurrencyOperatorDetails)

仅限输出。币种运营商账号的详细信息。

platformOperatorDetails

object (PlatformOperatorDetails)

仅限输出。平台运营商账号的详细信息。

UserDetails

特定于用户账号的详细信息。

JSON 表示法
{
  "accountManager": {
    object (Entity)
  },
  "accountManagerId": string,
  "tokenManager": {
    object (Entity)
  },
  "tokenManagerId": string,
  "roles": [
    enum (Role)
  ],
  "accountStatus": enum (AccountStatus),
  "balance": {
    object (CurrencyValue)
  },
  "accountFields": {
    string: {
      object (Fields)
    },
    ...
  },
  "contractAccountFields": {
    string: {
      object (Fields)
    },
    ...
  }
}
字段
accountManager
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 accountManagerId。相应用户的客户经理。

accountManagerId

string

仅限输出。相应用户的客户经理的 ID。

tokenManager
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 tokenManagerId。相应用户的令牌管理器。

tokenManagerId

string

仅限输出。相应用户的令牌管理器的 ID。

roles[]

enum (Role)

仅限输出。授予相应账号的角色列表。

accountStatus

enum (AccountStatus)

仅限输出。相应账号的状态。

balance

object (CurrencyValue)

仅限输出。相应用户账号的令牌余额。

accountFields
(deprecated)

map (key: string, value: object (Fields))

仅限输出。已弃用:请改用 contractAccountFields。相应用户的合同账号字段(合同 ID -> 字段)。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

contractAccountFields

map (key: string, value: object (Fields))

仅限输出。相应用户的合同账号字段(合同 ID -> 字段)。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

实体

Universal Ledger 网络中的实体。所有账号都与某个实体相关联。实体 ID(也常称为账号 ID)在整个广告资源网中是唯一且不可变的。

JSON 表示法
{
  "id": string
}
字段
id

string

仅限输出。分配给实体的 ID。此 ID 由网络在创建账号时分配。

角色

常规角色集。

枚举
ROLE_UNSPECIFIED 角色无效。
ROLE_PAYER 允许账号发起付款交易的角色。
ROLE_RECEIVER 允许账号接收付款的角色。
ROLE_CONTRACT_CREATOR 允许账号部署合约的角色。
ROLE_CONTRACT_PARTICIPANT 允许账号与已部署的合约进行交互的角色。

AccountStatus

账号的状态。

枚举
ACCOUNT_STATUS_UNSPECIFIED 状态无效。
ACCOUNT_STATUS_ACTIVE 有效状态,表示账号可以执行其角色允许的操作。
ACCOUNT_STATUS_INACTIVE 一种不活跃状态,表示禁止对相应账号进行所有交易。账号的经理仍然可以发送账号管理交易。

CurrencyValue

表示货币金额(即资金)。请注意,此消息中不包含币种。相关币种由发送交易的账号决定。每个账号都关联着一种唯一的不可变币种。

JSON 表示法
{
  "value": string
}
字段
value

string (int64 format)

必需。相应币种的次要单位数量。

这种最小有效面额称为“次级单位”,在 ISO 4217 中指定。例如,对于美元,该值将为美分数;对于英镑,该值将为便士数。对于没有次级单位的日元,该值将是日元的数量。

字段

一个字段(字段名称 -> 值)映射,用于表示合同字段或账号字段。

JSON 表示法
{
  "fields": {
    string: {
      object (Value)
    },
    ...
  }
}
字段
fields

map (key: string, value: object (Value))

仅限输出。字段名称到其值的映射。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

某种类型的具体值。

JSON 表示法
{

  // Union field value can be only one of the following:
  "noneValue": enum (NoneValue),
  "boolValue": boolean,
  "int64Value": string,
  "stringValue": string,
  "accountId": string,
  "dictValue": {
    object (DictValue)
  },
  "qualifiedCurrencyValue": {
    object (QualifiedCurrencyValue)
  },
  "amountValue": {
    object (AmountValue)
  }
  // End of list of possible types for union field value.
}
字段
联合字段 value。实际值。value 只能是下列其中一项:
noneValue

enum (NoneValue)

可选。表示 None 值。

boolValue

boolean

可选。布尔值。

int64Value

string (int64 format)

可选。一个 int64 值。

stringValue

string

可选。一个字符串值。

accountId

string

可选。账号 ID。

dictValue

object (DictValue)

可选。字典值。

qualifiedCurrencyValue

object (QualifiedCurrencyValue)

可选。符合条件的币种值。

amountValue

object (AmountValue)

可选。金额值。

NoneValue

用于表示 None 值的单例枚举。

枚举
NONE_VALUE_UNSPECIFIED None 值。

DictValue

索引将键映射到值。例如,keys[0] 键映射到 values[0]

JSON 表示法
{

  // Union field keys can be only one of the following:
  "boolKeys": {
    object (BoolList)
  },
  "stringKeys": {
    object (StringList)
  },
  "int64Keys": {
    object (Int64List)
  },
  "accountIdKeys": {
    object (AccountIdList)
  }
  // End of list of possible types for union field keys.

  // Union field values can be only one of the following:
  "boolValues": {
    object (BoolList)
  },
  "stringValues": {
    object (StringList)
  },
  "int64Values": {
    object (Int64List)
  },
  "dictValues": {
    object (DictList)
  }
  // End of list of possible types for union field values.
}
字段
联合字段 keys。每个键只能是一种类型。keys 只能是下列其中一项:
boolKeys

object (BoolList)

可选。布尔值键的列表。

stringKeys

object (StringList)

可选。字符串键的列表。

int64Keys

object (Int64List)

可选。int64 键的列表。

accountIdKeys

object (AccountIdList)

可选。账号 ID 键的列表。

联合字段 values。每个值只能是一种类型。values 只能是下列其中一项:
boolValues

object (BoolList)

可选。布尔值列表。

stringValues

object (StringList)

可选。字符串值的列表。

int64Values

object (Int64List)

可选。一个 int64 值列表。

dictValues

object (DictList)

可选。值是嵌套字典的列表。

BoolList

一个布尔值列表。

JSON 表示法
{
  "values": [
    boolean
  ]
}
字段
values[]

boolean

可选。布尔值。

StringList

字符串列表。

JSON 表示法
{
  "values": [
    string
  ]
}
字段
values[]

string

可选。字符串值。

Int64List

一个 int64 列表。

JSON 表示法
{
  "values": [
    string
  ]
}
字段
values[]

string (int64 format)

可选。int64 值。

AccountIdList

账号 ID 列表。

JSON 表示法
{
  "values": [
    string
  ]
}
字段
values[]

string

可选。账号 ID 值。

DictList

字典列表。

JSON 表示法
{
  "values": [
    {
      object (DictValue)
    }
  ]
}
字段
values[]

object (DictValue)

可选。DictValue 值。所有嵌套字典都必须具有相同的具体类型。

QualifiedCurrencyValue

表示账本上的币种,由其币种运算符限定。

JSON 表示法
{
  "operatorId": string
}
字段
operatorId

string

必需。管理相应币种的货币运营商 ID。

AmountValue

表示以某种货币计价的金额。

JSON 表示法
{
  "currency": {
    object (QualifiedCurrencyValue)
  },
  "amountValue": string
}
字段
currency

object (QualifiedCurrencyValue)

必需。金额的币种。

amountValue

string (int64 format)

必需。相应币种的次要单位数量。

AccountManagerDetails

特定于客户经理的详细信息。

JSON 表示法
{
  "tokenManager": {
    object (Entity)
  },
  "numAccounts": integer,
  "tokenManagerId": string
}
字段
tokenManager
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 tokenManagerId。此账号管理器所创建账号的默认令牌管理器。

numAccounts

integer

仅限输出。相应客户经理创建的账号数量。

tokenManagerId

string

仅限输出。相应账号管理器所创建账号的默认令牌管理器的 ID。

TokenManagerDetails

特定于令牌管理器的详细信息。

JSON 表示法
{
  "issuanceLimit": {
    object (CurrencyValue)
  },
  "issuedTokens": {
    object (CurrencyValue)
  }
}
字段
issuanceLimit

object (CurrencyValue)

仅限输出。相应令牌管理器允许创建的令牌数量。

issuedTokens

object (CurrencyValue)

仅限输出。相应令牌管理器铸造的令牌数量。铸造时,此数值会增加;销毁时,此数值会减少。

ContractTokenManagerDetails

特定于 Contract Token Manager 的详细信息。

JSON 表示法
{
  "issuanceLimit": {
    object (CurrencyValue)
  },
  "issuedTokens": {
    object (CurrencyValue)
  },
  "previousContractTokenManagerId": string,
  "accountStatus": enum (AccountStatus)
}
字段
issuanceLimit

object (CurrencyValue)

仅限输出。相应合约令牌管理器可为之提供支持的令牌数量。

由于合约代币管理器无法增加或减少其发行限额,因此该值应等于 issuedTokens

issuedTokens

object (CurrencyValue)

仅限输出。相应合约代币管理器提供支持的代币数量(即其总负债)。

这等于合约中持有的相应币种的所有余额之和,加上结算矩阵中的净头寸。

previousContractTokenManagerId

string

仅限输出。相应币种之前合约令牌管理器的账号 ID。这样便形成了一个可用于发现所有先前管理者的审核跟踪记录。如果这是相应币种的第一个合约令牌管理器,则此字段为空。

accountStatus

enum (AccountStatus)

仅限输出。相应账号的状态。

ContractDetails

智能合约特有的详细信息。

JSON 表示法
{
  "owner": {
    object (Entity)
  },
  "ownerId": string,
  "code": string,
  "contractFields": {
    object (Fields)
  },
  "currencyBalances": {
    string: {
      object (CurrencyValue)
    },
    ...
  }
}
字段
owner
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 ownerId。合约的所有者。

ownerId

string

仅限输出。合同所有者的 ID。

code

string (bytes format)

仅限输出。序列化的合约代码。

使用 base64 编码的字符串。

contractFields

object (Fields)

仅限输出。相应合同的合同字段(字段名称 -> 值)。

currencyBalances

map (key: string, value: object (CurrencyValue))

仅限输出。合约持有的币种余额(币种运算符 -> 余额)。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

ClearingHouseDetails

清算中心的具体详细信息。

JSON 表示法
{
  "accountStatus": enum (AccountStatus),
  "balances": [
    {
      object (BalanceToSettle)
    }
  ],
  "settlementMode": enum (SettlementMode)
}
字段
accountStatus

enum (AccountStatus)

仅限输出。相应账号的状态。

balances[]

object (BalanceToSettle)

仅限输出。此清算机构目前正在跟踪以进行结算的余额。

settlementMode

enum (SettlementMode)

仅限输出。相应清算机构的结算模式。

BalanceToSettle

两个令牌管理器之间待结算的余额。

JSON 表示法
{
  "balancePayer": {
    object (Entity)
  },
  "balancePayerId": string,
  "balanceReceiver": {
    object (Entity)
  },
  "balanceReceiverId": string,
  "balance": {
    object (CurrencyValue)
  }
}
字段
balancePayer
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 balancePayerId。欠款待结的账号。

balancePayerId

string

仅限输出。欠款待结算的账号的 ID。

balanceReceiver
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 balanceReceiverId。应结算余额的账号。

balanceReceiverId

string

仅限输出。应结算余额的账号的 ID。

balance

object (CurrencyValue)

仅限输出。要结算的余额。必须为正值。

SettlementMode

清算机构的结算模式。

枚举
SETTLEMENT_MODE_UNSPECIFIED 结算模式未指定。此值无效,不应使用。
SETTLEMENT_MODE_DEFERRED 清算机构负责跟踪链下资金的所有权,并定期发布 SettlementRequest 交易,以使账本上的相应余额保持同步。
SETTLEMENT_MODE_INSTANT 清算机构维护一个单一的资金池,而账本则充当令牌管理器之间资金分配的黄金来源。此结算模式也可描述为“即时总额结算”。

CurrencyOperatorDetails

特定于币种运算符的详细信息。

JSON 表示法
{
  "currency": string,
  "currencyCode": string,
  "accountStatus": enum (AccountStatus),
  "previousEntityId": {
    object (Entity)
  },
  "previousCurrencyOperatorId": string,
  "platformOperatorEntityId": {
    object (Entity)
  },
  "platformOperatorId": string,
  "contractTokenManager": {
    object (Entity)
  },
  "contractTokenManagerId": string,
  "clearinghouseId": string
}
字段
currency
(deprecated)

string

仅限输出。已弃用:请改用 currencyCode。与相应账号关联的币种,以 3 个字母的 ISO 4217 代码表示。

currencyCode

string

仅限输出。与相应账号关联的币种的 ID,以 3 个字母的 ISO 4217 代码表示。

accountStatus

enum (AccountStatus)

仅限输出。相应账号的状态。

previousEntityId
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 previousCurrencyOperatorId。之前负责管理币种操作员的角色并将币种操作员角色所有权转移给此账号的币种操作员。如果这是相应币种的第一个币种运算符,则此字段为空。

previousCurrencyOperatorId

string

仅限输出。之前将币种运营商角色的所有权转移到此账号的币种运营商的 ID。如果这是相应币种的第一个币种运算符,则此字段为空。

platformOperatorEntityId
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 platformOperatorId。创建此币种运算符的平台运营商。

platformOperatorId

string

仅限输出。创建相应币种运营商的平台运营商的 ID。

contractTokenManager
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 contractTokenManagerId。与此币种运算符关联的合同令牌管理器。

contractTokenManagerId

string

仅限输出。与此币种运营商关联的合约令牌管理器的 ID。

clearinghouseId

string

仅限输出。与相应币种运营商关联的清算机构的 ID。

PlatformOperatorDetails

特定于平台运营商的详细信息。

JSON 表示法
{
  "accountStatus": enum (AccountStatus),
  "previousEntityId": {
    object (Entity)
  },
  "previousPlatformOperatorId": string
}
字段
accountStatus

enum (AccountStatus)

仅限输出。相应账号的状态。

previousEntityId
(deprecated)

object (Entity)

仅限输出。已弃用:请改用 previousPlatformOperatorId。之前将平台运营者角色的所有权转移给此账号的平台运营者。如果这是第一个平台运营商,则此字段为空。

previousPlatformOperatorId

string

仅限输出。之前将平台操作员角色的所有权转移给此账号的平台操作员的 ID。如果这是第一个平台运营商,则此字段为空。