Account

Merepresentasikan status akun di ledger.

Representasi JSON
{
  "sequenceNumber": string,
  "publicKey": string,
  "roundId": string,
  "comment": string,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "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 mutually exclusive fields.
}
Kolom
sequenceNumber

string (int64 format)

Hanya output. Nomor urut akun ini. Angka ini bertambah dengan setiap transaksi yang dikirim oleh akun ini.

publicKey

string (bytes format)

Hanya output. Kunci publik utama yang terkait dengan akun ini, yang digunakan untuk verifikasi tanda tangan.

String berenkode base64.

roundId

string (int64 format)

Hanya output. ID putaran eksekusi (mirip dengan "tinggi" blok) yang menunjukkan bahwa informasi akun yang diberikan akurat.

comment

string

Hanya output. Komentar akun yang disimpan saat akun ini dibuat.

Detail spesifik berdasarkan jenis akun. Berikut adalah daftar kolom yang sama-sama bersifat eksklusif. Maksimal satu kolom akan ditetapkan dalam respons:
userDetails

object (UserDetails)

Hanya output. Detail untuk akun pengguna standar.

accountManagerDetails

object (AccountManagerDetails)

Hanya output. Detail untuk akun pengelola akun.

tokenManagerDetails

object (TokenManagerDetails)

Hanya output. Detail untuk akun pengelola token.

contractTokenManagerDetails

object (ContractTokenManagerDetails)

Hanya output. Detail untuk akun pengelola token kontrak.

contractDetails

object (ContractDetails)

Hanya output. Detail untuk akun smart contract.

clearinghouseDetails

object (ClearingHouseDetails)

Hanya output. Detail untuk akun lembaga kliring.

currencyOperatorDetails

object (CurrencyOperatorDetails)

Hanya output. Detail untuk akun operator mata uang.

platformOperatorDetails

object (PlatformOperatorDetails)

Hanya output. Detail untuk akun operator platform.

Akhir kolom yang saling eksklusif.

UserDetails

Detail khusus untuk Akun pengguna.

Representasi JSON
{
  "accountManagerId": string,
  "tokenManagerId": string,
  "roles": [
    enum (Role)
  ],
  "accountStatus": enum (AccountStatus),
  "balance": {
    object (CurrencyValue)
  },
  "contractAccountFields": {
    string: {
      object (Fields)
    },
    ...
  }
}
Kolom
accountManagerId

string

Hanya output. ID pengelola akun untuk pengguna ini.

tokenManagerId

string

Hanya output. ID pengelola token untuk pengguna ini.

roles[]

enum (Role)

Hanya output. Daftar peran yang diberikan ke akun ini.

accountStatus

enum (AccountStatus)

Hanya output. Status akun ini.

balance

object (CurrencyValue)

Hanya output. Saldo token akun pengguna ini.

contractAccountFields

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

Hanya output. Kolom akun kontrak (ID kontrak -> kolom) untuk pengguna ini.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Peran

Kumpulan peran reguler.

Enum
ROLE_UNSPECIFIED Peran tidak valid.
ROLE_PAYER Peran yang memungkinkan akun memulai transaksi pembayaran.
ROLE_RECEIVER Peran yang memungkinkan akun menerima pembayaran.
ROLE_CONTRACT_CREATOR Peran yang memungkinkan akun men-deploy kontrak.
ROLE_CONTRACT_PARTICIPANT Peran yang memungkinkan akun berinteraksi dengan kontrak yang di-deploy.

AccountStatus

Status akun.

Enum
ACCOUNT_STATUS_UNSPECIFIED Status tidak valid.
ACCOUNT_STATUS_ACTIVE Status aktif tempat akun dapat melakukan operasi yang diizinkan oleh perannya.
ACCOUNT_STATUS_INACTIVE Status tidak aktif, yang melarang semua transaksi di akun. Pengelola akun masih dapat mengirim transaksi pengelolaan akun.

CurrencyValue

Mewakili jumlah mata uang (yaitu uang). Perhatikan bahwa mata uang yang didenominasi tidak disertakan dalam pesan ini. Mata uang yang relevan ditentukan oleh akun yang mengirim transaksi. Setiap akun memiliki mata uang unik yang tidak dapat diubah dan terkait dengannya.

Representasi JSON
{
  "value": string
}
Kolom
value

string (int64 format)

Wajib. Jumlah unit minor mata uang.

Denominasi terkecil yang valid ini disebut sebagai "unit minor" dan ditentukan dalam ISO 4217. Misalnya, untuk USD, nilainya akan berupa jumlah sen dan untuk GBP, nilainya akan berupa jumlah pence. Untuk Yen Jepang yang tidak memiliki unit minor, nilainya akan berupa jumlah Yen.

Kolom

Peta kolom (nama kolom -> nilai) dari kontrak yang digunakan untuk merepresentasikan kolom kontrak atau kolom akun.

Representasi JSON
{
  "fields": {
    string: {
      object (Value)
    },
    ...
  }
}
Kolom
fields

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

Hanya output. Peta nama kolom ke nilainya.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Nilai

Nilai konkret dari beberapa jenis.

Representasi JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "noneValue": enum (NoneValue),
  "boolValue": boolean,
  "int64Value": string,
  "stringValue": string,
  "dictValue": {
    object (DictValue)
  },
  "contractValue": {
    object (ContractValue)
  },
  "listValue": {
    object (ListValue)
  },
  "qualifiedCurrencyValue": {
    object (QualifiedCurrencyValue)
  },
  "accountValue": {
    object (AccountValue)
  },
  "amountValue": {
    object (AmountValue)
  }
  // End of mutually exclusive fields.
}
Kolom
Nilai sebenarnya. Berikut adalah daftar kolom yang sama-sama bersifat eksklusif. Maksimal satu kolom akan ditetapkan dalam respons:
noneValue

enum (NoneValue)

Opsional. Merepresentasikan nilai None.

boolValue

boolean

Opsional. Nilai boolean.

int64Value

string (int64 format)

Opsional. Nilai int64.

stringValue

string

Opsional. Nilai string.

dictValue

object (DictValue)

Opsional. Nilai kamus.

contractValue

object (ContractValue)

Opsional. Referensi kontrak.

listValue

object (ListValue)

Opsional. Nilai daftar.

qualifiedCurrencyValue

object (QualifiedCurrencyValue)

Opsional. Nilai mata uang yang memenuhi syarat.

accountValue

object (AccountValue)

Opsional. Nilai akun.

amountValue

object (AmountValue)

Opsional. Nilai jumlah.

Akhir kolom yang saling eksklusif.

NoneValue

Enumerasi singleton untuk mewakili nilai None.

Enum
NONE_VALUE_UNSPECIFIED Nilai None.

DictValue

Indeks memetakan kunci ke nilai. Misalnya, kunci keys[0] dipetakan ke values[0].

Representasi JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "boolKeys": {
    object (BoolList)
  },
  "stringKeys": {
    object (StringList)
  },
  "int64Keys": {
    object (Int64List)
  },
  "genericKeys": {
    object (RepeatedValue)
  }
  // End of mutually exclusive fields.

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "boolValues": {
    object (BoolList)
  },
  "stringValues": {
    object (StringList)
  },
  "int64Values": {
    object (Int64List)
  },
  "genericValues": {
    object (RepeatedValue)
  }
  // End of mutually exclusive fields.
}
Kolom
Setiap kunci hanya dapat berupa satu jenis. Berikut adalah daftar kolom yang sama-sama bersifat eksklusif. Maksimal satu kolom akan ditetapkan dalam respons:
boolKeys

object (BoolList)

Opsional. Daftar kunci boolean.

stringKeys

object (StringList)

Opsional. Daftar kunci string.

int64Keys

object (Int64List)

Opsional. Daftar kunci int64.

genericKeys

object (RepeatedValue)

Opsional. Daftar kunci umum.

Akhir kolom yang saling eksklusif.
Setiap nilai hanya boleh memiliki satu jenis. Berikut adalah daftar kolom yang sama-sama bersifat eksklusif. Maksimal satu kolom akan ditetapkan dalam respons:
boolValues

object (BoolList)

Opsional. Daftar nilai boolean.

stringValues

object (StringList)

Opsional. Daftar nilai string.

int64Values

object (Int64List)

Opsional. Daftar nilai int64.

genericValues

object (RepeatedValue)

Opsional. Daftar nilai umum sebagai nilai.

Akhir kolom yang saling eksklusif.

BoolList

Daftar boolean.

Representasi JSON
{
  "values": [
    boolean
  ]
}
Kolom
values[]

boolean

Opsional. Nilai boolean.

StringList

Daftar string.

Representasi JSON
{
  "values": [
    string
  ]
}
Kolom
values[]

string

Opsional. Nilai string.

Int64List

Daftar int64.

Representasi JSON
{
  "values": [
    string
  ]
}
Kolom
values[]

string (int64 format)

Opsional. Nilai int64.

RepeatedValue

Daftar nilai umum.

Representasi JSON
{
  "values": [
    {
      object (Value)
    }
  ]
}
Kolom
values[]

object (Value)

Opsional. Nilai dalam daftar.

ContractValue

Mewakili referensi kontrak.

Representasi JSON
{
  "contractId": string
}
Kolom
contractId

string

Wajib. ID kontrak.

ListValue

Daftar nilai.

Representasi JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "boolValues": {
    object (BoolList)
  },
  "stringValues": {
    object (StringList)
  },
  "int64Values": {
    object (Int64List)
  },
  "genericValues": {
    object (RepeatedValue)
  }
  // End of mutually exclusive fields.
}
Kolom
Setiap nilai hanya boleh memiliki satu jenis. Berikut adalah daftar kolom yang sama-sama bersifat eksklusif. Maksimal satu kolom akan ditetapkan dalam respons:
boolValues

object (BoolList)

Opsional. Daftar nilai boolean.

stringValues

object (StringList)

Opsional. Daftar nilai string.

int64Values

object (Int64List)

Opsional. Daftar nilai int64.

genericValues

object (RepeatedValue)

Opsional. Daftar nilai umum.

Akhir kolom yang saling eksklusif.

QualifiedCurrencyValue

Mewakili mata uang di ledger, yang memenuhi syarat berdasarkan Operator Mata Uangnya.

Representasi JSON
{
  "operatorId": string
}
Kolom
operatorId

string

Wajib. ID Operator Mata Uang yang mengelola mata uang.

AccountValue

Referensi ke akun di ledger.

Referensi ini ditukar dengan objek gcul.Account lengkap oleh runtime ledger. Untuk mengetahui detail selengkapnya, lihat class gcul.Account dalam referensi bahasa GCULpy.

Representasi JSON
{
  "accountId": string
}
Kolom
accountId

string

Wajib. ID akun.

AmountValue

Mewakili jumlah yang didenominasi dalam mata uang.

Representasi JSON
{
  "currency": {
    object (QualifiedCurrencyValue)
  },
  "amountValue": string
}
Kolom
currency

object (QualifiedCurrencyValue)

Wajib. Mata uang jumlah.

amountValue

string (int64 format)

Wajib. Jumlah unit minor mata uang.

AccountManagerDetails

Detail khusus untuk Account Manager.

Representasi JSON
{
  "numAccounts": integer,
  "tokenManagerId": string
}
Kolom
numAccounts

integer

Hanya output. Jumlah akun yang dibuat oleh pengelola akun ini.

tokenManagerId

string

Hanya output. ID pengelola token default untuk akun yang dibuat oleh pengelola akun ini.

TokenManagerDetails

Detail khusus untuk Token Manager.

Representasi JSON
{
  "issuanceLimit": {
    object (CurrencyValue)
  },
  "issuedTokens": {
    object (CurrencyValue)
  }
}
Kolom
issuanceLimit

object (CurrencyValue)

Hanya output. Jumlah token yang diizinkan untuk dicetak oleh pengelola token ini.

issuedTokens

object (CurrencyValue)

Hanya output. Jumlah token yang dicetak oleh pengelola token ini. Jumlah ini akan meningkat saat pencetakan dan menurun saat pembakaran.

ContractTokenManagerDetails

Detail khusus untuk Pengelola Token Kontrak.

Representasi JSON
{
  "issuanceLimit": {
    object (CurrencyValue)
  },
  "issuedTokens": {
    object (CurrencyValue)
  },
  "previousContractTokenManagerId": string,
  "accountStatus": enum (AccountStatus)
}
Kolom
issuanceLimit

object (CurrencyValue)

Hanya output. Jumlah token yang diizinkan untuk didukung oleh pengelola token kontrak ini.

Karena pengelola token kontrak tidak dapat menambah atau mengurangi batas penerbitannya, jumlah ini harus sama dengan issuedTokens.

issuedTokens

object (CurrencyValue)

Hanya output. Jumlah token yang didukung oleh pengelola token kontrak ini (yaitu, total kewajibannya).

Jumlah ini sama dengan jumlah semua saldo yang disimpan dalam kontrak untuk mata uangnya, ditambah posisi bersihnya dalam matriks penyelesaian.

previousContractTokenManagerId

string

Hanya output. ID akun pengelola token kontrak sebelumnya untuk mata uang ini. Hal ini membentuk jejak audit yang dapat dilalui untuk menemukan semua pengelola sebelumnya. Jika ini adalah pengelola token kontrak pertama untuk mata uang tersebut, kolom ini akan kosong.

accountStatus

enum (AccountStatus)

Hanya output. Status akun ini.

ContractDetails

Detail khusus untuk Smart Contract.

Representasi JSON
{
  "ownerId": string,
  "code": string,
  "contractFields": {
    object (Fields)
  },
  "currencyBalances": {
    string: {
      object (CurrencyValue)
    },
    ...
  }
}
Kolom
ownerId

string

Hanya output. ID pemilik kontrak.

code

string (bytes format)

Hanya output. Kode kontrak yang diserialisasi.

String berenkode base64.

contractFields

object (Fields)

Hanya output. Kolom kontrak (nama kolom -> nilai) untuk kontrak ini.

currencyBalances

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

Hanya output. Saldo mata uang yang dimiliki oleh kontrak (operator mata uang -> saldo).

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ClearingHouseDetails

Detail khusus untuk Clearinghouse.

Representasi JSON
{
  "accountStatus": enum (AccountStatus),
  "balances": [
    {
      object (BalanceToSettle)
    }
  ],
  "settlementMode": enum (SettlementMode)
}
Kolom
accountStatus

enum (AccountStatus)

Hanya output. Status akun ini.

balances[]

object (BalanceToSettle)

Hanya output. Saldo yang saat ini dilacak oleh lembaga kliring ini untuk penyelesaian.

settlementMode

enum (SettlementMode)

Hanya output. Mode penyelesaian lembaga kliring ini.

BalanceToSettle

Saldo yang harus diselesaikan antara dua pengelola token.

Representasi JSON
{
  "balancePayerId": string,
  "balanceReceiverId": string,
  "balance": {
    object (CurrencyValue)
  }
}
Kolom
balancePayerId

string

Hanya output. ID akun yang memiliki saldo yang harus diselesaikan.

balanceReceiverId

string

Hanya output. ID akun yang memiliki saldo yang harus diselesaikan.

balance

object (CurrencyValue)

Hanya output. Saldo yang harus diselesaikan. Harus positif.

SettlementMode

Mode penyelesaian untuk lembaga kliring.

Enum
SETTLEMENT_MODE_UNSPECIFIED Mode penyelesaian tidak ditentukan. Nilai ini tidak valid dan tidak boleh digunakan.
SETTLEMENT_MODE_DEFERRED Lembaga kliring bertanggung jawab untuk melacak kepemilikan dana di luar ledger, dan secara berkala menerbitkan transaksi SettlementRequest untuk menjaga saldo yang sesuai di ledger tetap sinkron.
SETTLEMENT_MODE_INSTANT Lembaga kliring mengelola satu kumpulan dana dan ledger bertindak sebagai sumber utama untuk alokasi dana tersebut di antara pengelola token. Mode penyelesaian ini juga dapat digambarkan sebagai "penyelesaian bruto instan".

CurrencyOperatorDetails

Detail khusus untuk Operator Mata Uang.

Representasi JSON
{
  "currencyCode": string,
  "accountStatus": enum (AccountStatus),
  "previousCurrencyOperatorId": string,
  "platformOperatorId": string,
  "contractTokenManagerId": string,
  "clearinghouseId": string
}
Kolom
currencyCode

string

Hanya output. ID mata uang yang terkait dengan akun ini, yang diwakili oleh kode ISO 4217 3 huruf.

accountStatus

enum (AccountStatus)

Hanya output. Status akun ini.

previousCurrencyOperatorId

string

Hanya output. ID operator mata uang sebelumnya yang mentransfer kepemilikan peran operator mata uang ke akun ini. Jika ini adalah operator mata uang pertama untuk mata uang tersebut, kolom ini akan kosong.

platformOperatorId

string

Hanya output. ID operator platform yang membuat operator mata uang ini.

contractTokenManagerId

string

Hanya output. ID pengelola token kontrak yang terkait dengan operator mata uang ini.

clearinghouseId

string

Hanya output. ID lembaga kliring yang terkait dengan operator mata uang ini.

PlatformOperatorDetails

Detail khusus untuk Operator Platform.

Representasi JSON
{
  "accountStatus": enum (AccountStatus),
  "previousPlatformOperatorId": string
}
Kolom
accountStatus

enum (AccountStatus)

Hanya output. Status akun ini.

previousPlatformOperatorId

string

Hanya output. ID operator platform sebelumnya yang mentransfer kepemilikan peran operator platform ke akun ini. Jika ini adalah operator platform pertama, bagian ini akan kosong.