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

선택사항입니다. 지원 중단됨: 대신 메시지별 필드 중 하나를 사용하세요. 클라이언트 거래 관련 메시지입니다. 다음 중 하나여야 합니다.

임의 유형의 필드를 포함하는 객체입니다. 추가 필드 "@type"은 유형을 식별하는 URI를 포함합니다. 예: { "id": 1234, "@type": "types.example.com/standard/id" }

operational

object

선택사항입니다. 운영 거래 메시지입니다. 이 이메일은 플랫폼 운영자만 보낼 수 있습니다. 다음 중 하나여야 합니다.

임의 유형의 필드를 포함하는 객체입니다. 추가 필드 "@type"은 유형을 식별하는 URI를 포함합니다. 예: { "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

선택사항입니다. 이 관리자가 생성할 계정의 기본 토큰 관리자의 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

두 토큰 관리자 간의 정산 작업을 시작합니다. 발신자는 클리어링하우스 계정이어야 합니다.

청산 기관이 토큰 관리자 자금을 보관하는 지연된 SettlementMode에서 이는 두 토큰 관리자 간의 결제를 실행하기 위해 전송해야 하는 유일한 트랜잭션입니다.

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입니다.

Mint

통화 토큰을 발행하고 지정된 계정으로 전송합니다. 발신자는 토큰 관리자여야 합니다.

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 인코딩 문자열입니다.