ClientTransaction

クライアントによって開始されたトランザクションを表します。

JSON 表現
{
  "source": {
    object (Entity)
  },
  "senderId": string,
  "signatories": [
    {
      object (Entity)
    }
  ],
  "otherSignatoryIds": [
    string
  ],
  "sequenceNumber": string,
  "chainedUnit": boolean,

  // Union field kind can be only one of the following:
  "app": {
    "@type": string,
    field1: ...,
    ...
  },
  "operational": {
    "@type": string,
    field1: ...,
    ...
  },
  "transferPlatformOperatorTransaction": {
    object (TransferPlatformOperator)
  },
  "createCurrencyOperatorTransaction": {
    object (CreateCurrencyOperator)
  },
  "transferCurrencyOperatorTransaction": {
    object (TransferCurrencyOperator)
  },
  "createClearinghouseTransaction": {
    object (CreateClearinghouse)
  },
  "createAccountManagerTransaction": {
    object (CreateAccountManager)
  },
  "createTokenManagerTransaction": {
    object (CreateTokenManager)
  },
  "increaseTokenIssuanceLimitTransaction": {
    object (IncreaseTokenIssuanceLimit)
  },
  "decreaseTokenIssuanceLimitTransaction": {
    object (DecreaseTokenIssuanceLimit)
  },
  "settlementRequestTransaction": {
    object (SettlementRequest)
  },
  "mintTransaction": {
    object (Mint)
  },
  "burnTransaction": {
    object (Burn)
  },
  "createAccountTransaction": {
    object (CreateAccount)
  },
  "deactivateAccountTransaction": {
    object (DeactivateAccount)
  },
  "activateAccountTransaction": {
    object (ActivateAccount)
  },
  "addRolesTransaction": {
    object (AddRoles)
  },
  "removeRolesTransaction": {
    object (RemoveRoles)
  },
  "changeAccountManagerTransaction": {
    object (ChangeAccountManager)
  },
  "transferTransaction": {
    object (Transfer)
  },
  "createContractTransaction": {
    object (CreateContract)
  },
  "grantContractPermissionsTransaction": {
    object (GrantContractPermissions)
  },
  "invokeContractMethodTransaction": {
    object (InvokeContractMethod)
  },
  "createContractTokenManagerTransaction": {
    object (CreateContractTokenManager)
  },
  "transferContractTokenManagerTransaction": {
    object (TransferContractTokenManager)
  },
  "removeSigningPublicKeyTransaction": {
    object (RemoveSigningPublicKey)
  },
  "replaceSigningPublicKeyTransaction": {
    object (ReplaceSigningPublicKey)
  },
  "chain": {
    object (TransactionChain)
  }
  // End of list of possible types for union field kind.
}
フィールド
source
(deprecated)

object (Entity)

省略可。トランザクションの送信者。非推奨: 代わりに、senderId を使用してください。

senderId

string

省略可。このトランザクションを送信しているアカウントの ID。source または senderId のいずれかを設定する必要があります。

signatories[]
(deprecated)

object (Entity)

省略可。送信者に加えて、このトランザクションに署名したアカウント。非推奨: 代わりに、otherSignatoryIds を使用してください。

otherSignatoryIds[]

string

省略可。送信者に加えて、このトランザクションに署名したアカウントの ID。

sequenceNumber

string (int64 format)

必須。0 から始まる単調増加する一意の数値。

この数値は、同じトランザクション送信者によってネットワークに以前に送信されたトランザクションごとに 1 ずつ増やす必要があります。

なお、チェーンの一部として送信された取引単位は含まれません。チェーンの一部として送信された取引単位にはシーケンス番号を設定できません。ただし、トランザクション チェーンの送信者自体は含まれます。

chainedUnit

boolean

このクライアント トランザクションがトランザクション チェーンの一部である場合は、true に設定する必要があります。それ以外の場合は、false に設定する必要があります。

これは、チェーンの一部として意図された署名付きトランザクションが単独で送信されるのを防ぐために必要です。

共用体フィールド kind。クライアント トランザクション固有のメッセージ。kind は次のいずれかになります。
app
(deprecated)

object

省略可。非推奨: 代わりに、メッセージ固有のフィールドのいずれかを使用してください。クライアント トランザクション固有のメッセージ。次のいずれかにする必要があります。

任意のデータ型のフィールドを含むオブジェクト。型を識別する URI を含むフィールド "@type" を追加できます。例: { "id": 1234, "@type": "types.example.com/standard/id" }

operational

object

省略可。運用トランザクション メッセージ。なお、このリクエストを送信できるのはプラットフォーム オペレーターのみです。次のいずれかにする必要があります。

任意のデータ型のフィールドを含むオブジェクト。型を識別する URI を含むフィールド "@type" を追加できます。例: { "id": 1234, "@type": "types.example.com/standard/id" }

transferPlatformOperatorTransaction

object (TransferPlatformOperator)

省略可。プラットフォーム オペレーターのロールを新しいアカウントに転送するためのメッセージ。

createCurrencyOperatorTransaction

object (CreateCurrencyOperator)

省略可。新しい通貨演算子を作成するためのメッセージ。

transferCurrencyOperatorTransaction

object (TransferCurrencyOperator)

省略可。通貨演算子ロールを新しいアカウントに移行するためのメッセージ。

createClearinghouseTransaction

object (CreateClearinghouse)

省略可。新しいクリアリングハウスを作成するためのメッセージ。

createAccountManagerTransaction

object (CreateAccountManager)

省略可。新しいアカウント マネージャーを作成するためのメッセージ。

createTokenManagerTransaction

object (CreateTokenManager)

省略可。リクエストを送信する事業者の通貨に関連付けられた新しいトークン マネージャーを作成するためのメッセージ。

increaseTokenIssuanceLimitTransaction

object (IncreaseTokenIssuanceLimit)

省略可。ターゲット アカウントが準備金を預け入れたことをネットワークに通知し、トークン発行上限を引き上げます。

decreaseTokenIssuanceLimitTransaction

object (DecreaseTokenIssuanceLimit)

省略可。ターゲット アカウントが準備金の引き出しを希望していることをネットワークに通知し、トークン発行上限を引き下げます。

settlementRequestTransaction

object (SettlementRequest)

省略可。決済オペレーションを開始するためのメッセージ。

mintTransaction

object (Mint)

省略可。通貨トークンを生成してアカウントに転送するためのメッセージ。

burnTransaction

object (Burn)

省略可。アカウントから通貨トークンをバーンするためのメッセージ。

createAccountTransaction

object (CreateAccount)

省略可。新しいユーザー アカウントを作成するためのメッセージ。

deactivateAccountTransaction

object (DeactivateAccount)

省略可。ユーザー アカウントを無効にするためのメッセージ。

activateAccountTransaction

object (ActivateAccount)

省略可。ユーザー アカウントを有効にするためのメッセージ。

addRolesTransaction

object (AddRoles)

省略可。アカウントにロールを追加するためのメッセージ。

removeRolesTransaction

object (RemoveRoles)

省略可。アカウントからロールを削除するためのメッセージ。

changeAccountManagerTransaction

object (ChangeAccountManager)

省略可。アカウントのアカウント マネージャーを変更するためのメッセージ。

transferTransaction

object (Transfer)

省略可。ユーザー アカウント間でトークンを転送するためのメッセージ。

createContractTransaction

object (CreateContract)

省略可。台帳に新しいコントラクトを作成するためのメッセージ。

grantContractPermissionsTransaction

object (GrantContractPermissions)

省略可。コントラクトに権限を付与するためのメッセージ。

invokeContractMethodTransaction

object (InvokeContractMethod)

省略可。コントラクト メソッドの実行を呼び出すメッセージ。

createContractTokenManagerTransaction

object (CreateContractTokenManager)

省略可。リクエストを送信する事業者の通貨に関連付けられた新しいトークン マネージャーを作成するためのメッセージ。

transferContractTokenManagerTransaction

object (TransferContractTokenManager)

省略可。通貨のトークン マネージャー ロールをあるアカウントから別のアカウントに移行するためのメッセージ。

removeSigningPublicKeyTransaction

object (RemoveSigningPublicKey)

省略可。アカウント署名鍵を削除するためのメッセージ。

replaceSigningPublicKeyTransaction

object (ReplaceSigningPublicKey)

省略可。アカウント署名鍵の置き換えに関するメッセージ。

chain

object (TransactionChain)

省略可。複数のトランザクション ユニットを順番に実行するトランザクション チェーンのメッセージ。

TransferPlatformOperator

プラットフォーム オペレーターの所有権を新しいアカウントに移行します。送信者は現在のプラットフォーム オペレーターである必要があります。

取引が成功すると、現在のプラットフォーム オペレーターが無効になり、新しく作成されたアカウントの ID が、確定した取引の TransactionCertificate のイベントとして返されます。

JSON 表現
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string
}
フィールド
publicKey

string (bytes format)

必須。新しいプラットフォーム オペレーターの公開鍵。この公開鍵はプラットフォーム オペレーターに関連付けられ、台帳に保存されます。これは、プラットフォーム オペレーターのアカウントから発信されるトランザクションの署名を検証するために使用されます。

公開鍵の形式は keyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

keyFormat

enum (KeyFormat)

省略可。変更不可。公開鍵の鍵形式。指定しない場合、デフォルトは Tink ワイヤー形式のバイナリ シリアル化キーセットになります。一般公開情報と見なされます。

accountComment

string

省略可。変更不可。システムによって解釈されず、アカウントの台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

CreateCurrencyOperator

新しい通貨演算子を作成します。送信者はプラットフォーム運営者である必要があります。

トランザクションが成功すると、新しく作成されたアカウントの ID が、確定したトランザクションの TransactionCertificate のイベントとして返されます。

このトランザクションでは、新しい通貨をシステムに導入する必要があります。指定された通貨がすでに存在する場合、このトランザクションは失敗します。通貨オペレーターを置き換える必要がある場合は、代わりに TransferCurrencyOperator トランザクションを送信する必要があります。

JSON 表現
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string,
  "currency": string,
  "currencyCode": string
}
フィールド
publicKey

string (bytes format)

必須。新しい通貨演算子の公開鍵。この公開鍵は通貨オペレーターに関連付けられ、台帳に保存されます。これは、オペレーターのアカウントから発信されるトランザクションの署名を検証するために使用されます。

公開鍵の形式は keyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

keyFormat

enum (KeyFormat)

省略可。変更不可。公開鍵の鍵形式。指定しない場合、デフォルトは Tink ワイヤー形式のバイナリ シリアル化キーセットになります。一般公開情報と見なされます。

accountComment

string

省略可。変更不可。システムによって解釈されず、アカウントの台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

currency
(deprecated)

string

省略可。非推奨: 代わりに、currencyCode を使用してください。この事業者に割り当てられた法定通貨。3 文字の大文字の ISO 4217 コードで表されます。一般公開情報と見なされます。

currencyCode

string

省略可。この事業者に割り当てられた法定通貨。3 文字の大文字の ISO 4217 コードで表されます。一般公開情報と見なされます。

TransferCurrencyOperator

指定された通貨演算子の所有権を新しいアカウントに移行します。送信者はプラットフォーム運営者である必要があります。

取引が成功すると、指定された通貨オペレーターが無効になり、新しく作成されたアカウントの ID が、確定した取引の TransactionCertificate のイベントとして返されます。

JSON 表現
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string,
  "currencyOperator": {
    object (Entity)
  },
  "currencyOperatorId": string
}
フィールド
publicKey

string (bytes format)

必須。新しい通貨演算子の公開鍵。この公開鍵は通貨オペレーターに関連付けられ、台帳に保存されます。これは、通貨運営者のアカウントから発信される取引の署名を検証するために使用されます。

公開鍵の形式は keyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

keyFormat

enum (KeyFormat)

省略可。変更不可。公開鍵の鍵形式。指定しない場合、デフォルトは Tink ワイヤー形式のバイナリ シリアル化キーセットになります。一般公開情報と見なされます。

accountComment

string

省略可。変更不可。システムによって解釈されず、アカウントの台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

currencyOperator
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、currencyOperatorId を使用してください。置き換える通貨演算子。有効である必要があります。

currencyOperatorId

string

省略可。置き換える通貨演算子の ID。有効である必要があります。currencyOperator または currencyOperatorId のいずれかを指定する必要があります。値は 60 文字に制限されています。

CreateClearinghouse

新しいクリアリングハウスを作成します。送信者は通貨事業者である必要があります。

トランザクションが成功すると、新しく作成されたアカウントの ID が、確定したトランザクションの TransactionCertificate のイベントとして返されます。

JSON 表現
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string,
  "settlementMode": enum (SettlementMode)
}
フィールド
publicKey

string (bytes format)

必須。新しいクリアリングハウスの公開鍵。これはオペレーターの公開鍵ではありません。この公開鍵はクリアリングハウスに関連付けられ、台帳に保存されます。これは、クリアリングハウスのアカウントから発信される取引の署名を検証するために使用されます。

公開鍵の形式は keyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

keyFormat

enum (KeyFormat)

省略可。変更不可。公開鍵の鍵形式。指定しない場合、デフォルトは Tink ワイヤー形式のバイナリ シリアル化キーセットになります。一般公開情報と見なされます。

accountComment

string

省略可。変更不可。システムによって解釈されず、アカウントの台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

settlementMode

enum (SettlementMode)

必須。このクリアリングハウスの決済モード。必須。一般公開情報と見なされます。

CreateAccountManager

新しいアカウント マネージャーを作成します。送信者は通貨事業者である必要があります。

トランザクションが成功すると、新しく作成されたアカウントの ID が、確定したトランザクションの TransactionCertificate のイベントとして返されます。

JSON 表現
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "defaultTokenManager": {
    object (Entity)
  },
  "defaultTokenManagerId": string,
  "accountComment": string
}
フィールド
publicKey

string (bytes format)

必須。新しいアカウント マネージャーの公開鍵。これはオペレーターの公開鍵ではありません。この公開鍵はアカウント マネージャーに関連付けられ、台帳に保存されます。これは、アカウント マネージャーのアカウントから発信されたトランザクションの署名を検証するために使用されます。

公開鍵の形式は keyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

keyFormat

enum (KeyFormat)

省略可。変更不可。公開鍵の鍵形式。指定しない場合、デフォルトは Tink ワイヤー形式のバイナリ シリアル化キーセットになります。一般公開情報と見なされます。

defaultTokenManager
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、defaultTokenManagerId を使用してください。このマネージャーによって作成されるアカウントのデフォルトのトークン マネージャー。

defaultTokenManagerId

string

省略可。この MCC によって作成されるアカウントのデフォルトのトークン マネージャーの ID。値は 60 文字に制限されています。

accountComment

string

省略可。変更不可。システムによって解釈されず、アカウントの台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

CreateTokenManager

リクエストを送信するオペレーターの通貨に関連付けられた新しいトークン マネージャーを作成します。送信者は通貨事業者である必要があります。

トランザクションが成功すると、新しく作成されたアカウントの ID が、確定したトランザクションの TransactionCertificate のイベントとして返されます。

JSON 表現
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string
}
フィールド
publicKey

string (bytes format)

必須。新しいトークン マネージャーの公開鍵。これはオペレーターの公開鍵ではありません。この公開鍵はトークン マネージャーに関連付けられ、台帳に保存されます。これは、トークン マネージャーのアカウントから発信されるトランザクションの署名を検証するために使用されます。

公開鍵の形式は keyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

keyFormat

enum (KeyFormat)

省略可。変更不可。公開鍵の鍵形式。指定しない場合、デフォルトは Tink ワイヤー形式のバイナリ シリアル化キーセットになります。一般公開情報と見なされます。

accountComment

string

省略可。変更不可。システムによって解釈されず、アカウントの台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

IncreaseTokenIssuanceLimit

トークンの発行とミントのトランザクション。ターゲット アカウントが準備金を預け入れたことをネットワークに通知し、トークン発行上限を引き上げます。送信者はクリアリングハウス アカウントである必要があります。

JSON 表現
{
  "tokenManager": {
    object (Entity)
  },
  "tokenManagerId": string,
  "amount": {
    object (CurrencyValue)
  }
}
フィールド
tokenManager
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、tokenManagerId を使用してください。発行上限を引き上げる機関アカウントの ID。このアカウントは、取引が有効になるためのトークン マネージャーである必要があります。

tokenManagerId

string

省略可。発行上限を引き上げる機関アカウントの ID。このアカウントは、取引が有効になるためのトークン マネージャーである必要があります。tokenManager または tokenManagerId のいずれかを指定する必要があります。

amount

object (CurrencyValue)

必須。上限を引き上げる金額。金額は正の値で指定してください。

DecreaseTokenIssuanceLimit

ターゲット アカウントが準備金の引き出しを希望していることをネットワークに通知し、トークン発行上限を引き下げます。送信者はクリアリングハウス アカウントである必要があります。

この取引は、準備金を引き出す前に正常に完了する必要があります。これは、トランザクションが失敗する可能性があるためです(たとえば、発行された金額がすでにリクエストされた上限を超えている場合など)。

JSON 表現
{
  "tokenManager": {
    object (Entity)
  },
  "tokenManagerId": string,
  "amount": {
    object (CurrencyValue)
  }
}
フィールド
tokenManager
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、tokenManagerId を使用してください。ミントの上限を引き下げる機関アカウントの ID。このアカウントは、取引が有効になるためのトークン マネージャーである必要があります。

tokenManagerId

string

省略可。ミントの上限を引き下げる機関アカウントの ID。このアカウントは、取引が有効になるためのトークン マネージャーである必要があります。tokenManagerId(推奨)または tokenManager(非推奨)のいずれかを指定する必要があります。

amount

object (CurrencyValue)

必須。上限を引き下げる金額。金額は正の値で指定してください。引き下げ後の上限が現在発行されているトークンを下回る場合、トランザクションは失敗します。

SettlementRequest

2 つのトークン マネージャー間の決済オペレーションを開始します。送信者はクリアリングハウス アカウントである必要があります。

クリアリングハウスがトークン マネージャーの資金を保管している遅延 SettlementMode では、2 つのトークン マネージャー間の決済を実行するために送信する必要があるのはこのトランザクションのみです。

JSON 表現
{
  "payer": {
    object (Entity)
  },
  "payerId": string,
  "beneficiary": {
    object (Entity)
  },
  "beneficiaryId": string,
  "balance": {
    object (CurrencyValue)
  },
  "roundId": string
}
フィールド
payer
(deprecated)

object (Entity)

省略可。変更不可。非推奨: 代わりに、payerId を使用してください。資金移動を行う必要がある当事者のアカウント ID。

payerId

string

省略可。変更不可。資金移動を行う必要がある当事者のアカウント ID。payer または payerId のいずれかを指定する必要があります。

beneficiary
(deprecated)

object (Entity)

省略可。変更不可。非推奨: 代わりに、beneficiaryId を使用してください。支払いが必要な当事者のアカウント ID。

beneficiaryId

string

省略可。変更不可。資金を受け取る当事者のアカウント ID。beneficiary または beneficiaryId のいずれかを指定する必要があります。

balance

object (CurrencyValue)

必須。変更不可。payer アカウントから台帳の beneficiary アカウントに転送する必要がある発行済みトークンの残高。

roundId

string (int64 format)

必須。変更不可。この決済額が計算されたラウンド ID。

ミント

通貨トークンを生成し、指定されたアカウントに転送します。送信者はトークン マネージャーである必要があります。

JSON 表現
{
  "mintAmount": {
    object (CurrencyValue)
  },
  "beneficiary": {
    object (Entity)
  },
  "beneficiaryId": string
}
フィールド
mintAmount

object (CurrencyValue)

必須。ミントする金額。トークン マネージャーが発行するトークンの合計数が発行上限を超えないように、金額を設定する必要があります。金額がこれを超える場合は、取引を拒否する必要があります。

beneficiary
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、beneficiaryId を使用してください。発行された金額の振込先アカウント。受取人アカウントで ROLE_RECEIVER が有効になっている必要があります。

beneficiaryId

string

省略可。発行された金額の移行先アカウントの ID。移行先アカウントで ROLE_RECEIVER が有効になっている必要があります。beneficiary または beneficiaryId のいずれかを指定する必要があります。

CreateAccount

新しいユーザー アカウントを作成します。送信者はアカウント マネージャーである必要があります。

トランザクションが成功すると、新しく作成されたアカウントの ID が、確定したトランザクションの TransactionCertificate のイベントとして返されます。

JSON 表現
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "roles": [
    enum (Role)
  ],
  "accountStatus": enum (AccountStatus),
  "accountComment": string,
  "tokenManager": {
    object (Entity)
  },
  "tokenManagerId": string
}
フィールド
publicKey

string (bytes format)

必須。アカウント所有者の公開鍵。これは送信者の公開鍵ではありません。これは新しいアカウント所有者の公開鍵であり、台帳に保存されます。これは、作成されたアカウントから発信されるトランザクションの署名を検証するために使用されます。

公開鍵の形式は keyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

keyFormat

enum (KeyFormat)

省略可。変更不可。公開鍵の鍵形式。指定しない場合、デフォルトは Tink ワイヤー形式のバイナリ シリアル化キーセットになります。一般公開情報と見なされます。

roles[]

enum (Role)

省略可。このアカウントに付与するロールのリスト。

accountStatus

enum (AccountStatus)

省略可。作成するアカウントのステータス。デフォルトでは、新しく作成されたアカウントのアカウント ステータスは ACCOUNT_STATUS_ACTIVE になります。

accountComment

string

省略可。変更不可。システムによって解釈されず、アカウントの台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

tokenManager
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、tokenManagerId を使用してください。このアカウントのトークン マネージャー。このフィールドは省略可能です。指定しない場合は、アカウント マネージャー(このトランザクションの送信者)に関連付けられているデフォルトのトークン マネージャーが使用されます。

tokenManagerId

string

省略可。このアカウントのトークン マネージャーの ID。このフィールドは省略可能です。指定しない場合は、アカウント マネージャー(このトランザクションの送信者)に関連付けられているデフォルトのトークン マネージャーが使用されます。値は 60 文字に制限されています。

DeactivateAccount

アカウントを ACCOUNT_STATUS_INACTIVE としてマークします。送信者は、無効にするアカウントのアカウント マネージャーである必要があります。

つまり、アカウントのオーナーは、ロールに関係なくアカウントで取引を行うことができなくなります。

JSON 表現
{
  "account": {
    object (Entity)
  },
  "accountId": string
}
フィールド
account
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、accountId を使用してください。無効にするアカウントの ID。

accountId

string

省略可。無効にするアカウントの ID。account または accountId のいずれかを指定する必要があります。値は 60 文字に制限されています。

RemoveRoles

アカウントから指定されたロールを削除します。送信者は、変更するアカウントのアカウント マネージャーである必要があります。

JSON 表現
{
  "account": {
    object (Entity)
  },
  "accountId": string,
  "roles": [
    enum (Role)
  ]
}
フィールド
account
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、accountId を使用してください。変更するアカウントの ID。

accountId

string

省略可。変更するアカウントの ID。account または accountId のいずれかを指定する必要があります。値は 60 文字に制限されています。

roles[]

enum (Role)

必須。削除するロール。

転送

あるユーザー アカウントから別のユーザー アカウントにトークンを転送します。送信者は、トークン マネージャーやアカウント マネージャーなどの特権アカウントではなく、通常のユーザー アカウントである必要があります。

また、トランザクションの送信者で ROLE_PAYER が有効になっており、受信者で ROLE_RECEIVER が有効になっている必要があります。

JSON 表現
{
  "beneficiary": {
    object (Entity)
  },
  "beneficiaryId": string,
  "amount": {
    object (CurrencyValue)
  }
}
フィールド
beneficiary
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、beneficiaryId を使用してください。トークンを受け取るアカウント。

beneficiaryId

string

省略可。トークンを受け取るアカウントの ID。beneficiary または beneficiaryId のいずれかを指定する必要があります。

amount

object (CurrencyValue)

必須。振り替える金額。金額は正の値で指定してください。

CreateContract

契約を台帳に保存します。

JSON 表現
{
  "contractBytes": string,
  "arguments": {
    string: {
      object (Value)
    },
    ...
  },
  "initArguments": {
    string: {
      object (Value)
    },
    ...
  },
  "contractComment": string
}
フィールド
contractBytes

string (bytes format)

シリアル化されたコントラクト バイト。

Base64 でエンコードされた文字列。

arguments
(deprecated)

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

省略可。変更不可。非推奨: 代わりに、initArguments を使用してください。__init__ メソッドの引数。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

initArguments

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

省略可。変更不可。__init__ メソッドの引数が含まれます。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

contractComment

string

省略可。変更不可。システムによって解釈されず、契約の台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

GrantContractPermissions

トランザクション送信者によってコントラクトに権限が付与されます。delegateContractId が指定されている場合、権限と対応するストレージは送信者ではなく delegateContractId コントラクトにのみ付与されます。

権限の取り消しはサポートされていません。

JSON 表現
{
  "contract": {
    object (Entity)
  },
  "contractId": string,
  "permissions": [
    enum (ContractPermission)
  ],
  "delegateContractId": string
}
フィールド
contract
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、contractId を使用してください。権限が付与される契約の ID。

contractId

string

省略可。権限が付与される契約の ID。contract または contractId のいずれかを指定する必要があります。

permissions[]

enum (ContractPermission)

付与する権限。

delegateContractId

string

省略可。権限が付与される契約の ID。トランザクションの送信者は、このコントラクトのオーナーである必要があります。

InvokeContractMethod

コントラクト メソッドの実行を呼び出します。

JSON 表現
{
  "contract": {
    object (Entity)
  },
  "contractId": string,
  "methodName": string,
  "arguments": {
    string: {
      object (Value)
    },
    ...
  },
  "methodArguments": {
    string: {
      object (Value)
    },
    ...
  },
  "payment": {
    object (CurrencyValue)
  }
}
フィールド
contract
(deprecated)

object (Entity)

省略可。非推奨: 代わりに、contractId を使用してください。実行するコントラクトの ID。

contractId

string

省略可。実行する契約の ID。contract または contractId のいずれかを指定する必要があります。

methodName

string

実行するメソッドの名前。

arguments
(deprecated)

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

省略可。変更不可。非推奨: 代わりに、methodArguments を使用してください。メソッドの引数。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

methodArguments

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

省略可。変更不可。メソッドに渡す引数が含まれます。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

payment

object (CurrencyValue)

支払われる金額。支払可能なメソッドを呼び出す場合は 0 より大きい値にする必要があります。支払不可能なメソッドの場合は 0 にします。

CreateContractTokenManager

リクエストを送信するオペレーターの通貨に関連付けられた新しいコントラクト トークン マネージャーを作成します。送信者は通貨事業者である必要があります。新しく作成されたコントラクト トークン マネージャーは、デフォルトで有効になっています。コントラクト トークン マネージャーを置き換える必要がある場合は、代わりに TransferContractTokenManager トランザクションを送信する必要があります。同じ通貨に関連付けられている別の契約トークン マネージャーが存在する場合、このトランザクションは失敗します。

通常のトークン マネージャーとは異なり、コントラクト トークン マネージャーは、ミントやバーンなどのトランザクションを実行できません。ただし、決済オペレーションには参加できます。

トランザクションが成功すると、新しく作成されたアカウントの ID が、確定したトランザクションの TransactionCertificate のイベントとして返されます。

JSON 表現
{
  "publicKey": string,
  "accountComment": string,
  "keyFormat": enum (KeyFormat)
}
フィールド
publicKey

string (bytes format)

必須。新しいコントラクト トークン マネージャーの公開鍵。これはオペレーターの公開鍵ではありません。この公開鍵はコントラクト トークン マネージャーに関連付けられ、台帳に保存されます。これは、コントラクト トークン マネージャーのアカウントから発信されるトランザクションの署名を検証するために使用されます。

公開鍵の形式は keyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

accountComment

string

省略可。変更不可。システムによって解釈されず、アカウントの台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

keyFormat

enum (KeyFormat)

省略可。変更不可。公開鍵の鍵形式。指定しない場合、デフォルトは Tink ワイヤー形式のバイナリ シリアル化キーセットになります。一般公開情報と見なされます。

TransferContractTokenManager

コントラクト トークン マネージャーの所有権を新しいアカウントに移行します。送信者は、その通貨の現在の通貨事業者である必要があります。

トランザクションが成功すると、通貨の現在のコントラクト トークン マネージャーが無効になり、新しく作成されたアカウントの ID が、確定したトランザクションの TransactionCertificate のイベントとして返されます。

JSON 表現
{
  "publicKey": string,
  "accountComment": string,
  "keyFormat": enum (KeyFormat)
}
フィールド
publicKey

string (bytes format)

必須。新しいコントラクト トークン マネージャーの公開鍵。これはオペレーターの公開鍵ではありません。これは新しいコントラクト トークン マネージャーの公開鍵で、台帳に保存されます。これは、コントラクト トークン マネージャーのアカウントから発信されるトランザクションの署名を検証するために使用されます。

公開鍵の形式は keyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

accountComment

string

省略可。変更不可。システムによって解釈されず、アカウントの台帳に保存される不透明なコメント フィールド。一般公開情報とみなされます。最大長は 128 文字です。空欄にしてもかまいません。作成後のフィールドは変更できません。

keyFormat

enum (KeyFormat)

省略可。変更不可。公開鍵の鍵形式。指定しない場合、デフォルトは Tink ワイヤー形式のバイナリ シリアル化キーセットになります。一般公開情報と見なされます。

RemoveSigningPublicKey

指定されたスロットからアカウント署名鍵を削除します。もう一方のスロットは空ではなく、ClientTransaction の署名に使用される鍵を保持している必要があります。

JSON 表現
{
  "keySlot": enum (KeySlot)
}
フィールド
keySlot

enum (KeySlot)

必須。鍵を削除する鍵スロット。これがすでに空の場合、トランザクションは失敗します。

ReplaceSigningPublicKey

指定されたスロットのアカウント署名鍵を置き換えます。もう一方のスロットは空ではなく、ClientTransaction の署名に使用される鍵を保持している必要があります。

JSON 表現
{
  "keySlot": enum (KeySlot),
  "newPublicKey": string,
  "newKeyFormat": enum (KeyFormat)
}
フィールド
keySlot

enum (KeySlot)

必須。鍵を置き換える鍵スロット。

newPublicKey

string (bytes format)

必須。指定したスロットの公開鍵を置き換える新しい公開鍵。

公開鍵の形式は newKeyFormat フィールドで定義されます。一般公開情報と見なされます。

Base64 でエンコードされた文字列。

newKeyFormat

enum (KeyFormat)

必須。新しい公開鍵の鍵形式。サポートされている形式のリストについては、KeyFormat の定義をご覧ください。一般公開情報と見なされます。

TransactionChain

複数のトランザクション ユニットを順次実行するトランザクション チェーン。

ユニットは、リストに表示されている順序で順次実行されます。すべてのユニットが成功すると、それらの累積効果がアトミックにワールド状態にコミットされます。いずれかが失敗すると、チェーン全体が失敗し、その効果は適用されません。

JSON 表現
{
  "units": [
    string
  ]
}
フィールド
units[]

string (bytes format)

チェーンの個々のユニット。各ユニットはシリアル化された SignedTransaction である必要があります。

チェーン自体で署名されるバイトを特定するには、シリアル化されたバイトが必要です。

Base64 でエンコードされた文字列。