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입니다. 계정 생성 시 네트워크에서 할당합니다.

역할

일반적인 역할 집합입니다.

열거형
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에 지정되어 있습니다. 예를 들어 USD의 경우 값은 센트 수이고 GBP의 경우 값은 펜스 수입니다. 소수가 없는 일본 엔화의 경우 엔화 금액입니다.

필드

계약 필드 또는 계정 필드를 나타내는 데 사용되는 계약의 필드 (필드 이름 -> 값) 맵입니다.

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 값입니다. 모든 중첩된 dict는 동일한 구체적인 유형을 가져야 합니다.

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

계약 토큰 관리자와 관련된 세부정보입니다.

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입니다. 첫 번째 플랫폼 운영자인 경우 비어 있습니다.