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

זה שינוי אופציונלי. המזהה של החשבון ששולח את העסקה הזו. צריך להגדיר את אחד מהמאפיינים source או senderId.

signatories[]
(deprecated)

object (Entity)

זה שינוי אופציונלי. חשבונות שחתמו על העסקה הזו בנוסף לשולח. הוצא משימוש: במקומו, צריך להשתמש ב-otherSignatoryIds.

otherSignatoryIds[]

string

זה שינוי אופציונלי. מזהי החשבונות שבנוסף לשולח חתמו על העסקה הזו.

sequenceNumber

string (int64 format)

חובה. מספר ייחודי שגדל באופן מונוטוני, החל מ-0.

המספר הזה צריך לגדול באחד לכל עסקה שנשלחה בעבר לרשת על ידי אותו שולח עסקאות.

שימו לב: הנתון הזה לא כולל יחידות של עסקאות שאולי נשלחו כחלק משרשרת, שבהן אסור להגדיר מספר סידורי. אבל הוא כן כולל את השולח של שרשרת הטרנזקציות עצמה.

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

העברת הבעלות על מפעיל הפלטפורמה לחשבון חדש. השולח חייב להיות המפעיל הנוכחי של הפלטפורמה.

אם העסקה תצליח, המפעיל הנוכחי של הפלטפורמה יושבת, ומזהה החשבון שנוצר יוחזר כאירוע ב-TransactionCertificate של העסקה הסופית.

ייצוג ב-JSON
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string
}
שדות
publicKey

string (bytes format)

חובה. המפתח הציבורי של מפעיל הפלטפורמה החדש. המפתח הציבורי הזה ישויך למפעיל הפלטפורמה ויאוחסן בספר החשבונות. הוא ישמש לאימות החתימה של העסקאות שמגיעות מחשבון מפעיל הפלטפורמה.

הפורמט של המפתח הציבורי מוגדר בשדה keyFormat. נחשב למידע ציבורי.

מחרוזת בקידוד Base64.

keyFormat

enum (KeyFormat)

זה שינוי אופציונלי. אי אפשר לשנות. פורמט המפתח של המפתח הציבורי. אם לא מציינים את הפרמטר הזה, ברירת המחדל היא קבוצת מפתחות בינארית שעברה סריאליזציה בפורמט Tink wire. נחשב למידע ציבורי.

accountComment

string

זה שינוי אופציונלי. אי אפשר לשנות. שדה תגובה אטום שהמערכת לא מפרשת, אבל מאוחסן בפנקס החשבונות בחשבון. נחשב למידע ציבורי. האורך המרבי הוא 128 תווים. אפשר להשאיר את השדה ריק. אחרי שיוצרים את השדה, אי אפשר לשנות אותו.

CreateCurrencyOperator

יצירת אופרטור מטבע חדש. השולח חייב להיות מפעיל הפלטפורמה.

אם העסקה תבוצע בהצלחה, המזהה של החשבון החדש שנוצר יוחזר כאירוע בשדה TransactionCertificate של העסקה הסופית.

העסקה הזו חייבת להציג מטבע חדש במערכת. אם המטבע שצוין כבר קיים, העסקה הזו תיכשל. אם צריך להחליף את מפעיל המטבע, צריך לשלוח במקום זאת את העסקה TransferCurrencyOperator.

ייצוג ב-JSON
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string,
  "currency": string,
  "currencyCode": string
}
שדות
publicKey

string (bytes format)

חובה. המפתח הציבורי של מפעיל המטבע החדש. המפתח הציבורי הזה ישויך למפעיל המטבע ויישמר בספר החשבונות. הוא ישמש לאימות החתימה של העסקאות שמגיעות מהחשבון של המפעיל.

הפורמט של המפתח הציבורי מוגדר בשדה keyFormat. נחשב למידע ציבורי.

מחרוזת בקידוד Base64.

keyFormat

enum (KeyFormat)

זה שינוי אופציונלי. אי אפשר לשנות. פורמט המפתח של המפתח הציבורי. אם לא מציינים את הפרמטר הזה, ברירת המחדל היא קבוצת מפתחות בינארית שעברה סריאליזציה בפורמט Tink wire. נחשב למידע ציבורי.

accountComment

string

זה שינוי אופציונלי. אי אפשר לשנות. שדה תגובה אטום שהמערכת לא מפרשת, אבל מאוחסן בפנקס החשבונות בחשבון. נחשב למידע ציבורי. האורך המרבי הוא 128 תווים. אפשר להשאיר את השדה ריק. אחרי שיוצרים את השדה, אי אפשר לשנות אותו.

currency
(deprecated)

string

זה שינוי אופציונלי. הוצא משימוש: במקומו, צריך להשתמש ב-currencyCode. המטבע הפיאט שמשויך למפעיל הזה, שמיוצג כקוד ISO 4217 בן 3 אותיות רישיות. נחשב למידע ציבורי.

currencyCode

string

זה שינוי אופציונלי. המטבע הפיאט שמשויך למפעיל הזה, שמיוצג כקוד ISO 4217 בן 3 אותיות רישיות. נחשב למידע ציבורי.

TransferCurrencyOperator

העברת הבעלות על האופרטור של המטבע שצוין לחשבון חדש. השולח חייב להיות מפעיל הפלטפורמה.

אם העסקה תצליח, המערכת תשבית את האופרטור של המטבע שצוין, ומזהה החשבון שנוצר יוחזר כאירוע בשדה TransactionCertificate של העסקה הסופית.

ייצוג ב-JSON
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string,
  "currencyOperator": {
    object (Entity)
  },
  "currencyOperatorId": string
}
שדות
publicKey

string (bytes format)

חובה. המפתח הציבורי של מפעיל המטבע החדש. המפתח הציבורי הזה ישויך למפעיל המטבע ויישמר בספר החשבונות. הוא ישמש לאימות החתימה של העסקאות שמגיעות מהחשבון של מפעיל המטבע.

הפורמט של המפתח הציבורי מוגדר בשדה keyFormat. נחשב למידע ציבורי.

מחרוזת בקידוד Base64.

keyFormat

enum (KeyFormat)

זה שינוי אופציונלי. אי אפשר לשנות. פורמט המפתח של המפתח הציבורי. אם לא מציינים את הפרמטר הזה, ברירת המחדל היא קבוצת מפתחות בינארית שעברה סריאליזציה בפורמט Tink wire. נחשב למידע ציבורי.

accountComment

string

זה שינוי אופציונלי. אי אפשר לשנות. שדה תגובה אטום שהמערכת לא מפרשת, אבל מאוחסן בפנקס החשבונות בחשבון. נחשב למידע ציבורי. האורך המרבי הוא 128 תווים. אפשר להשאיר את השדה ריק. אחרי שיוצרים את השדה, אי אפשר לשנות אותו.

currencyOperator
(deprecated)

object (Entity)

זה שינוי אופציונלי. הוצא משימוש: במקומו, צריך להשתמש ב-currencyOperatorId. אופרטור המטבע שיוחלף. חייב להיות פעיל.

currencyOperatorId

string

זה שינוי אופציונלי. המזהה של אופרטור המטבע שרוצים להחליף. חייב להיות פעיל. צריך לציין את currencyOperator או את currencyOperatorId. הערך מוגבל ל-60 תווים.

CreateClearinghouse

יצירת מרכז מידע חדש. השולח חייב להיות מפעיל מטבע.

אם העסקה תבוצע בהצלחה, המזהה של החשבון החדש שנוצר יוחזר כאירוע בשדה TransactionCertificate של העסקה הסופית.

ייצוג ב-JSON
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string,
  "settlementMode": enum (SettlementMode)
}
שדות
publicKey

string (bytes format)

חובה. המפתח הציבורי של מרכז הסליקה החדש. חשוב לזכור שזה לא המפתח הציבורי של המפעיל. המפתח הציבורי הזה ישויך למרכז המידע ויישמר בספר החשבונות. הוא ישמש לאימות החתימה של העסקאות שמגיעות מחשבון המרכז לסליקה.

הפורמט של המפתח הציבורי מוגדר בשדה keyFormat. נחשב למידע ציבורי.

מחרוזת בקידוד Base64.

keyFormat

enum (KeyFormat)

זה שינוי אופציונלי. אי אפשר לשנות. פורמט המפתח של המפתח הציבורי. אם לא מציינים את הפרמטר הזה, ברירת המחדל היא קבוצת מפתחות בינארית שעברה סריאליזציה בפורמט Tink wire. נחשב למידע ציבורי.

accountComment

string

זה שינוי אופציונלי. אי אפשר לשנות. שדה תגובה אטום שהמערכת לא מפרשת, אבל מאוחסן בפנקס החשבונות בחשבון. נחשב למידע ציבורי. האורך המרבי הוא 128 תווים. אפשר להשאיר את השדה ריק. אחרי שיוצרים את השדה, אי אפשר לשנות אותו.

settlementMode

enum (SettlementMode)

חובה. מצב הסליקה של מרכז הסליקה הזה. חובה. נחשב למידע ציבורי.

CreateAccountManager

יוצר מנהל חשבון חדש. השולח חייב להיות מפעיל מטבע.

אם העסקה תבוצע בהצלחה, המזהה של החשבון החדש שנוצר יוחזר כאירוע בשדה TransactionCertificate של העסקה הסופית.

ייצוג ב-JSON
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "defaultTokenManager": {
    object (Entity)
  },
  "defaultTokenManagerId": string,
  "accountComment": string
}
שדות
publicKey

string (bytes format)

חובה. המפתח הציבורי של מנהל החשבון החדש. חשוב לזכור שזה לא המפתח הציבורי של המפעיל. המפתח הציבורי הזה ישויך למנהל החשבון ויישמר בספר החשבונות. הוא ישמש לאימות החתימה של העסקאות שמתבצעות בחשבון של מנהל החשבון.

הפורמט של המפתח הציבורי מוגדר בשדה keyFormat. נחשב למידע ציבורי.

מחרוזת בקידוד Base64.

keyFormat

enum (KeyFormat)

זה שינוי אופציונלי. אי אפשר לשנות. פורמט המפתח של המפתח הציבורי. אם לא מציינים את הפרמטר הזה, ברירת המחדל היא קבוצת מפתחות בינארית שעברה סריאליזציה בפורמט Tink wire. נחשב למידע ציבורי.

defaultTokenManager
(deprecated)

object (Entity)

זה שינוי אופציונלי. הוצא משימוש: במקומו, צריך להשתמש ב-defaultTokenManagerId. מנהל האסימונים שמוגדר כברירת מחדל בחשבונות שייווצרו על ידי חשבון הניהול הזה.

defaultTokenManagerId

string

זה שינוי אופציונלי. המזהה של מנהל האסימונים שמוגדר כברירת מחדל בחשבונות שייווצרו על ידי חשבון הניהול הזה. הערך מוגבל ל-60 תווים.

accountComment

string

זה שינוי אופציונלי. אי אפשר לשנות. שדה תגובה אטום שהמערכת לא מפרשת, אבל מאוחסן בפנקס החשבונות בחשבון. נחשב למידע ציבורי. האורך המרבי הוא 128 תווים. אפשר להשאיר את השדה ריק. אחרי שיוצרים את השדה, אי אפשר לשנות אותו.

CreateTokenManager

יוצר מנהל אסימונים חדש שמשויך למטבע של המפעיל ששולח את הבקשה. השולח חייב להיות מפעיל מטבע.

אם העסקה תבוצע בהצלחה, המזהה של החשבון החדש שנוצר יוחזר כאירוע בשדה TransactionCertificate של העסקה הסופית.

ייצוג ב-JSON
{
  "publicKey": string,
  "keyFormat": enum (KeyFormat),
  "accountComment": string
}
שדות
publicKey

string (bytes format)

חובה. המפתח הציבורי של הכלי החדש לניהול אסימונים. חשוב לזכור שזה לא המפתח הציבורי של המפעיל. המפתח הציבורי הזה ישויך למנהל הטוקנים ויאוחסן בספר החשבונות. הוא ישמש לאימות החתימה של העסקאות שמגיעות מהחשבון של מנהל האסימונים.

הפורמט של המפתח הציבורי מוגדר בשדה keyFormat. נחשב למידע ציבורי.

מחרוזת בקידוד Base64.

keyFormat

enum (KeyFormat)

זה שינוי אופציונלי. אי אפשר לשנות. פורמט המפתח של המפתח הציבורי. אם לא מציינים את הפרמטר הזה, ברירת המחדל היא קבוצת מפתחות בינארית שעברה סריאליזציה בפורמט Tink wire. נחשב למידע ציבורי.

accountComment

string

זה שינוי אופציונלי. אי אפשר לשנות. שדה תגובה אטום שהמערכת לא מפרשת, אבל מאוחסן בפנקס החשבונות בחשבון. נחשב למידע ציבורי. האורך המרבי הוא 128 תווים. אפשר להשאיר את השדה ריק. אחרי שיוצרים את השדה, אי אפשר לשנות אותו.

IncreaseTokenIssuanceLimit

עסקאות להנפקת טוקנים וליצירת טוקנים חדשים. הודעה לרשת שחשבון היעד הפקיד כספים לקרן מילואים, והגדלת המגבלה על הנפקת אסימונים. השולח צריך להיות חשבון של מרכז סליקה.

ייצוג ב-JSON
{
  "tokenManager": {
    object (Entity)
  },
  "tokenManagerId": string,
  "amount": {
    object (CurrencyValue)
  }
}
שדות
tokenManager
(deprecated)

object (Entity)

זה שינוי אופציונלי. הוצא משימוש: במקומו, צריך להשתמש ב-tokenManagerId. המזהה של החשבון המוסדי שרוצים להגדיל את מגבלת הטבעת המטבעות שלו. החשבון הזה צריך להיות מנהל אסימונים כדי שהעסקה תהיה תקפה.

tokenManagerId

string

זה שינוי אופציונלי. המזהה של החשבון המוסדי שרוצים להגדיל את מגבלת הטבעת המטבעות שלו. החשבון הזה צריך להיות מנהל אסימונים כדי שהעסקה תהיה תקפה. צריך לציין את tokenManager או את tokenManagerId.

amount

object (CurrencyValue)

חובה. הסכום שבו רוצים להגדיל את המגבלה. הסכום חייב להיות חיובי.

DecreaseTokenIssuanceLimit

הודעה לרשת שחשבון היעד רוצה למשוך כספים מהרזרבה, והקטנת מגבלת הנפקת האסימונים שלו. השולח צריך להיות חשבון של מרכז סליקה.

חשוב לזכור שצריך להשלים את העסקה לפני שאפשר למשוך את הכספים ששמורים. הדבר נחוץ כי יכול להיות שהעסקה תיכשל (לדוגמה, אם הסכום שנוצר כבר גבוה מהמגבלה המופחתת המבוקשת).

ייצוג ב-JSON
{
  "tokenManager": {
    object (Entity)
  },
  "tokenManagerId": string,
  "amount": {
    object (CurrencyValue)
  }
}
שדות
tokenManager
(deprecated)

object (Entity)

זה שינוי אופציונלי. הוצא משימוש: במקומו, צריך להשתמש ב-tokenManagerId. המזהה של החשבון המוסדי שרוצים להקטין את מכסת הטוקנים שלו. החשבון הזה צריך להיות מנהל אסימונים כדי שהעסקה תהיה תקפה.

tokenManagerId

string

זה שינוי אופציונלי. המזהה של החשבון המוסדי שרוצים להקטין את מכסת הטוקנים שלו. החשבון הזה צריך להיות מנהל אסימונים כדי שהעסקה תהיה תקפה. צריך לציין את אחד מהמאפיינים הבאים: 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. מספר החשבון של הצד שצריך לבצע את העברת הכספים.

payerId

string

זה שינוי אופציונלי. אי אפשר לשנות. מספר החשבון של הצד שצריך לבצע את העברת הכספים. צריך לציין את payer או את payerId.

beneficiary
(deprecated)

object (Entity)

זה שינוי אופציונלי. אי אפשר לשנות. הוצא משימוש: במקומו, צריך להשתמש ב-beneficiaryId. מספר החשבון של הגורם שצריך לקבל תשלום.

beneficiaryId

string

זה שינוי אופציונלי. אי אפשר לשנות. מספר החשבון של הצד שיקבל את הכספים. צריך לציין את beneficiary או את beneficiaryId.

balance

object (CurrencyValue)

חובה. אי אפשר לשנות. היתרה של האסימונים שהונפקו ושצריך להעביר מחשבון payer לחשבון beneficiary בפנקס החשבונות.

roundId

string (int64 format)

חובה. אי אפשר לשנות. מזהה הסבב שבו חושב סכום ההסדר הזה.

מנטה

יוצר אסימוני מטבע ומעביר אותם לחשבון שצוין. השולח חייב להיות מנהל אסימונים.

ייצוג ב-JSON
{
  "mintAmount": {
    object (CurrencyValue)
  },
  "beneficiary": {
    object (Entity)
  },
  "beneficiaryId": string
}
שדות
mintAmount

object (CurrencyValue)

חובה. הסכום להנפקה. הסכום צריך להיות כזה שהמספר הכולל של האסימונים שנוצרו על ידי מנהל האסימונים לא יעלה על מגבלת הטבעת האסימונים. אם הסכום גבוה יותר, צריך לדחות את העסקה

beneficiary
(deprecated)

object (Entity)

זה שינוי אופציונלי. הוצא משימוש: במקומו, צריך להשתמש ב-beneficiaryId. החשבון שאליו יועבר הסכום שהונפק. צריך להפעיל את ROLE_RECEIVER בחשבון המוטב.

beneficiaryId

string

זה שינוי אופציונלי. המזהה של החשבון שאליו צריך להעביר את הסכום שהונפק. צריך להפעיל את התכונה ROLE_RECEIVER בחשבון המקבל. צריך לציין את beneficiary או את beneficiaryId.

CreateAccount

יצירת חשבון משתמש חדש. השולח צריך להיות מנהל חשבון.

אם העסקה תבוצע בהצלחה, המזהה של החשבון החדש שנוצר יוחזר כאירוע בשדה 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 wire. נחשב למידע ציבורי.

roles[]

enum (Role)

זה שינוי אופציונלי. רשימת התפקידים שרוצים להקצות לחשבון הזה.

accountStatus

enum (AccountStatus)

זה שינוי אופציונלי. הסטטוס של החשבון שייווצר. כברירת מחדל, סטטוס החשבון של חשבון שנוצר לאחרונה יהיה ACCOUNT_STATUS_ACTIVE.

accountComment

string

זה שינוי אופציונלי. אי אפשר לשנות. שדה תגובה אטום שהמערכת לא מפרשת, אבל מאוחסן בפנקס החשבונות בחשבון. נחשב למידע ציבורי. האורך המרבי הוא 128 תווים. אפשר להשאיר את השדה ריק. אחרי שיוצרים את השדה, אי אפשר לשנות אותו.

tokenManager
(deprecated)

object (Entity)

זה שינוי אופציונלי. הוצא משימוש: במקומו, צריך להשתמש ב-tokenManagerId. הכלי לניהול טוקנים בחשבון הזה. השדה הזה הוא אופציונלי, ואם לא מספקים אותו, המערכת תשתמש בניהול האסימונים שמשויך לחשבון הניהול (כלומר, השולח של העסקה הזו).

tokenManagerId

string

זה שינוי אופציונלי. המזהה של מנהל האסימונים בחשבון הזה. השדה הזה הוא אופציונלי, ואם לא מספקים אותו, המערכת תשתמש בניהול האסימונים שמשויך לחשבון הניהול (כלומר, השולח של העסקה הזו). הערך מוגבל ל-60 תווים.

DeactivateAccount

סימון חשבון כACCOUNT_STATUS_INACTIVE. השולח צריך להיות מנהל החשבון שרוצים להשבית.

המשמעות היא שבעל החשבון לא יוכל לבצע טרנזקציות בחשבון, ללא קשר לתפקידים.

ייצוג ב-JSON
{
  "account": {
    object (Entity)
  },
  "accountId": string
}
שדות
account
(deprecated)

object (Entity)

זה שינוי אופציונלי. הוצא משימוש: במקומו, צריך להשתמש ב-accountId. המזהה של החשבון שרוצים להשבית.

accountId

string

זה שינוי אופציונלי. המזהה של החשבון שרוצים להשבית. צריך לציין את account או את accountId. הערך מוגבל ל-60 תווים.

RemoveRoles

הסרת התפקידים שצוינו מהחשבון. השולח צריך להיות מנהל החשבון של החשבון שרוצים לשנות.

ייצוג ב-JSON
{
  "account": {
    object (Entity)
  },
  "accountId": string,
  "roles": [
    enum (Role)
  ]
}
שדות
account
(deprecated)

object (Entity)

זה שינוי אופציונלי. הוצא משימוש: במקומו, צריך להשתמש ב-accountId. המזהה של החשבון שרוצים לשנות.

accountId

string

זה שינוי אופציונלי. המזהה של החשבון שרוצים לשנות. צריך לציין את 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

זה שינוי אופציונלי. המזהה של החשבון שמקבל את האסימונים. צריך לציין את 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. המזהה של החוזה שלגביו מוענקות ההרשאות.

contractId

string

זה שינוי אופציונלי. המזהה של החוזה שלגביו מוענקות ההרשאות. צריך לציין את contract או את contractId.

permissions[]

enum (ContractPermission)

ההרשאות שיינתנו.

delegateContractId

string

זה שינוי אופציונלי. מזהה החוזה שלגביו מוענקות הרשאות. השולח של העסקה חייב להיות הבעלים של החוזה הזה.

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. המזהה של החוזה להפעלה.

contractId

string

זה שינוי אופציונלי. המזהה של החוזה להפעלה. צריך לציין את contract או את contractId.

methodName

string

שם ה-method להפעלה.

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)

הסכום לתשלום. הערך חייב להיות גדול מאפס כשמפעילים שיטות שניתן לשלם עבורן, ואפס כשמפעילים שיטות שלא ניתן לשלם עבורן.

CreateContractTokenManager

יוצר מנהל חדש של אסימוני חוזים שמשויך למטבע של המפעיל ששולח את הבקשה. השולח חייב להיות מפעיל מטבע. כברירת מחדל, מנהל הטוקנים של החוזה שנוצר חדש פעיל. אם צריך להחליף את מנהל הטוקנים של החוזה, צריך לשלוח במקום זאת את העסקה TransferContractTokenManager. אם קיים עוד מנהל אסימוני חוזה שמשויך לאותו מטבע, העסקה הזו תיכשל.

בניגוד למנהלי אסימונים רגילים, למנהלי אסימונים של חוזים אסור לבצע עסקאות כמו יצירה או ביטול של אסימונים. עם זאת, הם יכולים להשתתף בפעולות של הסדרים.

אם העסקה תבוצע בהצלחה, המזהה של החשבון החדש שנוצר יוחזר כאירוע בשדה TransactionCertificate של העסקה הסופית.

ייצוג ב-JSON
{
  "publicKey": string,
  "accountComment": string,
  "keyFormat": enum (KeyFormat)
}
שדות
publicKey

string (bytes format)

חובה. המפתח הציבורי של מנהל הטוקנים החדש של החוזה. חשוב לזכור שזה לא המפתח הציבורי של המפעיל. המפתח הציבורי הזה ישויך למנהל אסימוני החוזה ויאוחסן בספר החשבונות. הוא ישמש לאימות החתימה של העסקאות שמגיעות מהחשבון של מנהל האסימונים בחוזה.

הפורמט של המפתח הציבורי מוגדר בשדה keyFormat. נחשב למידע ציבורי.

מחרוזת בקידוד Base64.

accountComment

string

זה שינוי אופציונלי. אי אפשר לשנות. שדה תגובה אטום שהמערכת לא מפרשת, אבל מאוחסן בפנקס החשבונות בחשבון. נחשב למידע ציבורי. האורך המרבי הוא 128 תווים. אפשר להשאיר את השדה ריק. אחרי שיוצרים את השדה, אי אפשר לשנות אותו.

keyFormat

enum (KeyFormat)

זה שינוי אופציונלי. אי אפשר לשנות. פורמט המפתח של המפתח הציבורי. אם לא מציינים את הפרמטר הזה, ברירת המחדל היא קבוצת מפתחות בינארית שעברה סריאליזציה בפורמט Tink wire. נחשב למידע ציבורי.

TransferContractTokenManager

העברת הבעלות על מנהל טוקנים של חוזה לחשבון חדש. השולח חייב להיות המפעיל הנוכחי של המטבע.

אם העסקה תצליח, המערכת תשבית את מנהל אסימוני החוזה הנוכחי למטבע, ומזהה החשבון שנוצר יוחזר כאירוע ב-TransactionCertificate של העסקה הסופית.

ייצוג ב-JSON
{
  "publicKey": string,
  "accountComment": string,
  "keyFormat": enum (KeyFormat)
}
שדות
publicKey

string (bytes format)

חובה. המפתח הציבורי של מנהל הטוקנים החדש של החוזה. חשוב לזכור שזה לא המפתח הציבורי של המפעיל. זהו המפתח הציבורי של מנהל הטוקנים של החוזה החדש, והוא יישמר בספר החשבונות. הוא ישמש לאימות החתימה של העסקאות שמגיעות מהחשבון של מנהל האסימונים בחוזה.

הפורמט של המפתח הציבורי מוגדר בשדה keyFormat. נחשב למידע ציבורי.

מחרוזת בקידוד Base64.

accountComment

string

זה שינוי אופציונלי. אי אפשר לשנות. שדה תגובה אטום שהמערכת לא מפרשת, אבל מאוחסן בפנקס החשבונות בחשבון. נחשב למידע ציבורי. האורך המרבי הוא 128 תווים. אפשר להשאיר את השדה ריק. אחרי שיוצרים את השדה, אי אפשר לשנות אותו.

keyFormat

enum (KeyFormat)

זה שינוי אופציונלי. אי אפשר לשנות. פורמט המפתח של המפתח הציבורי. אם לא מציינים את הפרמטר הזה, ברירת המחדל היא קבוצת מפתחות בינארית שעברה סריאליזציה בפורמט Tink wire. נחשב למידע ציבורי.

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 מסוג serialized.

שימו לב: הבייטים שעברו סריאליזציה נדרשים כדי לקבוע את הבייטים שצריך לחתום עליהם עבור השרשרת עצמה.

מחרוזת בקידוד Base64.