diff --git a/hapi-proto/HAPI.html b/hapi-proto/HAPI.html index 79a032316309..82b7e9eb95e7 100644 --- a/hapi-proto/HAPI.html +++ b/hapi-proto/HAPI.html @@ -266,6 +266,18 @@
Unique identifier for a topic (used by the consensus service)
+shardNum | int64 | - | The shard number (nonnegative) |
+ A nonnegative shard number |
||
realmNum | int64 | - | The realm number (nonnegative) |
+ A nonnegative realm number |
||
topicNum | +tokenNum | int64 | - | Unique topic identifier within a realm (nonnegative). |
+ A nonnegative token number |
hederaFunctionality | -HederaFunctionality | +tokenId | +TokenID | - | A particular transaction or query |
+
|
feeData | -FeeData | +symbol | +string | - | Resource price coefficients |
+
|
transactionValidStart | -Timestamp | +tokenId | +TokenID | - | The transaction is invalid if consensusTimestamp < transactionID.transactionStartValid |
+
|
accountID | -AccountID | +balance | +uint64 | - | The Account ID that paid for this transaction |
+
|
The transactions and queries supported by Hedera Hashgraph.
-symbol | +string | ++ |
|
+
kycStatus | +TokenKycStatus | ++ |
|
+
freezeStatus | +TokenFreezeStatus | ++ |
|
+
Unique identifier for a topic (used by the consensus service)
+ + +Field | Type | Label | Description |
shardNum | +int64 | ++ | The shard number (nonnegative) |
+
realmNum | +int64 | ++ | The realm number (nonnegative) |
+
topicNum | +int64 | ++ | Unique topic identifier within a realm (nonnegative). |
+
The fees for a specific transaction or query based on the fee data.
+ + +Field | Type | Label | Description |
hederaFunctionality | +HederaFunctionality | ++ | A particular transaction or query |
+
feeData | +FeeData | ++ | Resource price coefficients |
+
The ID for a transaction. This is used for retrieving receipts and records for a transaction, for appending to a file right after creating it, for instantiating a smart contract with bytecode in a file just created, and internally by the network for detecting when duplicate transactions are submitted. A user might get a transaction processed faster by submitting it to N nodes, each with a different node account, but all with the same TransactionID. Then, the transaction will take effect when the first of all those nodes submits the transaction and it reaches consensus. The other transactions will not take effect. So this could make the transaction take effect faster, if any given node might be slow. However, the full transaction fee is charged for each transaction, so the total fee is N times as much if the transaction is sent to N nodes.
+ + +Field | Type | Label | Description |
transactionValidStart | +Timestamp | ++ | The transaction is invalid if consensusTimestamp < transactionID.transactionStartValid |
+
accountID | +AccountID | ++ | The Account ID that paid for this transaction |
+
The transactions and queries supported by Hedera Hashgraph.
+Name | Number | Description | + |
UncheckedSubmit | +55 | ++ |
TokenCreate | +56 | ++ |
TokenTransact | +57 | ++ |
TokenGetInfo | +58 | ++ |
TokenFreezeAccount | +59 | ++ |
TokenUnfreezeAccount | +60 | ++ |
TokenGrantKycToAccount | +61 | ++ |
TokenRevokeKycFromAccount | +62 | ++ |
TokenDelete | +63 | ++ |
TokenUpdate | +64 | ++ |
TokenMint | +65 | ++ |
TokenBurn | +66 | ++ |
TokenAccountWipe | +67 | ++ |
Name | Number | Description |
FreezeNotApplicable | +0 | ++ |
Frozen | +1 | ++ |
Unfrozen | +2 | ++ |
Name | Number | Description |
KycNotApplicable | +0 | ++ |
Granted | +1 | ++ |
Revoked | +2 | ++ |
The threshold amount (in tinybars) for which an account record is created for any send/withdraw transaction
[Deprecated]. The threshold amount (in tinybars) for which an account record is created for any send/withdraw transaction
The threshold amount (in tinybars) for which an account record is created for any receive/deposit transaction
[Deprecated]. The threshold amount (in tinybars) for which an account record is created for any receive/deposit transaction
Name | +Option | +
sendRecordThreshold | +true |
+
receiveRecordThreshold | +true |
+
The current balance, in tinybars
Field | Type | Label | Description |
tokenId | +TokenID | ++ |
|
+
balance | +uint64 | ++ |
|
+
The threshold amount, in tinybars, at which a record is created of any transaction that decreases the balance of this account by more than the threshold
[Deprecated]. The threshold amount, in tinybars, at which a record is created of any transaction that decreases the balance of this account by more than the threshold
The threshold amount, in tinybars, at which a record is created of any transaction that increases the balance of this account by more than the threshold
[Deprecated]. The threshold amount, in tinybars, at which a record is created of any transaction that increases the balance of this account by more than the threshold
All of the livehashes attached to the account (each of which is a hash along with the keys that authorized it and can delete it)
Name | +Option | +
generateSendRecordThreshold | +true |
+
generateReceiveRecordThreshold | +true |
+
Field | Type | Label | Description |
token | +TokenID | ++ |
|
+
transfers | +AccountAmount | +repeated | +
|
+
A list of accounts and amounts to transfer out of each account (negative) or into it (positive).
@@ -5051,7 +5686,7 @@The new threshold amount (in tinybars) for which an account record is created for any send/withdraw transaction
[Deprecated]. The new threshold amount (in tinybars) for which an account record is created for any send/withdraw transaction
The new threshold amount (in tinybars) for which an account record is created for any receive/deposit transaction.
[Deprecated]. The new threshold amount (in tinybars) for which an account record is created for any receive/deposit transaction.
true
true
true
true
true
Retrieves the active versions of Hedera Services and HAPI proto
Semantic versions of Hedera Services and HAPI proto
attempt to set negative receive record threshold
[Deprecated]. attempt to set negative receive record threshold
attempt to set negative send record threshold
[Deprecated]. attempt to set negative send record threshold
An attempted operation was not authorized (ie - a deleteTopic for a topic with no adminKey).
An attempted operation was not authorized (ie - a deleteTopic for a topic with no adminKey, a tokenUpdate or tokenDelete for token with no adminKey).
For every chunk, the payer account that is part of initialTransactionID must match the Payer Account of this transaction. The entire initialTransactionID should match the transactionID of the first chunk, but this is not checked or enforced by Hedera except when the chunk number is 1.
Every query receives a response containing the QueryResponseHeader. Either or both of the cost and stateProof fields may be blank, if the responseType didn't ask for the cost or stateProof.
- - -Field | Type | Label | Description |
nodeTransactionPrecheckCode | -ResponseCodeEnum | -- | Result of fee transaction precheck, saying it passed, or why it failed |
-
responseType | -ResponseType | -- | The requested response is repeated back here, for convenience |
-
cost | -uint64 | -- | The fee that would be charged to get the requested information (if a cost was requested). Note: This cost only includes the query fee and does not include the transfer fee(which is required to execute the transfer transaction to debit the payer account and credit the node account with query fee) |
-
stateProof | -bytes | -- | The state proof for this information (if a state proof was requested, and is available) |
-
Transactions and queries for the file service.
-Method Name | Request Type | Response Type | Description | |||
ACCOUNT_FROZEN_FOR_TOKEN | +165 | ++ | ||||
createContract | -Transaction | -TransactionResponse | -Creates a contract |
+ TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED | +166 | +|
updateContract | -Transaction | +INVALID_TOKEN_ID | +167 | ++ | ||
INVALID_TOKEN_DIVISIBILITY | +168 | ++ | ||||
INVALID_TOKEN_FLOAT | +169 | ++ | ||||
INVALID_TREASURY_ACCOUNT_FOR_TOKEN | +170 | ++ | ||||
INVALID_TOKEN_SYMBOL | +171 | ++ | ||||
TOKEN_HAS_NO_FREEZE_KEY | +172 | ++ | ||||
TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN | +173 | ++ | ||||
MISSING_TOKEN_SYMBOL | +174 | ++ | ||||
TOKEN_SYMBOL_TOO_LONG | +175 | ++ | ||||
TOKEN_SYMBOL_ALREADY_IN_USE | +176 | ++ | ||||
INVALID_TOKEN_REF | +177 | ++ | ||||
ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN | +178 | ++ | ||||
TOKEN_HAS_NO_KYC_KEY | +179 | ++ | ||||
INSUFFICIENT_TOKEN_BALANCE | +180 | ++ | ||||
TOKEN_WAS_DELETED | +181 | ++ | ||||
TOKEN_HAS_NO_SUPPLY_KEY | +182 | ++ | ||||
TOKEN_HAS_NO_WIPE_KEY | +183 | ++ | ||||
INVALID_TOKEN_MINT_AMOUNT | +184 | ++ | ||||
INVALID_TOKEN_BURN_AMOUNT | +185 | ++ | ||||
ACCOUNT_HAS_NO_TOKEN_RELATIONSHIP | +186 | ++ | ||||
CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT | +187 | ++ | ||||
INVALID_KYC_KEY | +188 | ++ | ||||
INVALID_WIPE_KEY | +189 | ++ | ||||
INVALID_FREEZE_KEY | +190 | ++ | ||||
INVALID_SUPPLY_KEY | +191 | ++ |
Every query receives a response containing the QueryResponseHeader. Either or both of the cost and stateProof fields may be blank, if the responseType didn't ask for the cost or stateProof.
+ + +Field | Type | Label | Description |
nodeTransactionPrecheckCode | +ResponseCodeEnum | ++ | Result of fee transaction precheck, saying it passed, or why it failed |
+
responseType | +ResponseType | ++ | The requested response is repeated back here, for convenience |
+
cost | +uint64 | ++ | The fee that would be charged to get the requested information (if a cost was requested). Note: This cost only includes the query fee and does not include the transfer fee(which is required to execute the transfer transaction to debit the payer account and credit the node account with query fee) |
+
stateProof | +bytes | ++ | The state proof for this information (if a state proof was requested, and is available) |
+
Transactions and queries for the file service.
+Method Name | Request Type | Response Type | Description | ||||
createContract | +Transaction | +TransactionResponse | +Creates a contract |
+ ||||
updateContract | +Transaction | TransactionResponse | Updates a contract with the content |
||||
contractCallLocalMethod | -Query | -Response | -Calls a smart contract to be run on a single node |
+ contractCallLocalMethod | +Query | +Response | +Calls a smart contract to be run on a single node |
+
ContractGetBytecode | +Query | +Response | +Retrieves the byte code of a contract |
+ ||||
getBySolidityID | +Query | +Response | +Retrieves a contract by its Solidity address |
+ ||||
getTxRecordByContractID | +Query | +Response | +Retrieves the 25-hour records stored for a contract |
+ ||||
deleteContract | +Transaction | +TransactionResponse | +Deletes a contract instance and transfers any remaining hbars to a specified receiver |
+ ||||
systemDelete | +Transaction | +TransactionResponse | +Deletes a contract if the submitting account has network admin privileges |
+ ||||
systemUndelete | +Transaction | +TransactionResponse | +Undeletes a contract if the submitting account has network admin privileges |
+
Delete a file or smart contract - can only be done with a Hedera administrative multisignature. When it is deleted, it immediately disappears from the system as seen by the user, but is still stored internally until the expiration time, at which time it is truly and permanently deleted. Until that time, it can be undeleted by the Hedera administrative multisignature. When a smart contract is deleted, the cryptocurrency account within it continues to exist, and is not affected by the expiration time here.
+ + +Field | Type | Label | Description |
fileID | +FileID | ++ | The file ID of the file to delete, in the format used in transactions |
+
contractID | +ContractID | ++ | The contract ID instance to delete, in the format used in transactions |
+
expirationTime | +TimestampSeconds | ++ | The timestamp in seconds at which the "deleted" file should truly be permanently deleted |
+
Undelete a file or smart contract that was deleted by SystemDelete; requires a Hedera administrative multisignature.
+ + +Field | Type | Label | Description |
fileID | +FileID | ++ | The file ID to undelete, in the format used in transactions |
+
contractID | +ContractID | ++ | The contract ID instance to undelete, in the format used in transactions |
+
An exact date and time. This is the same data structure as the protobuf Timestamp.proto (see the comments in https://github.com/google/protobuf/blob/master/src/google/protobuf/timestamp.proto)
+ + +Field | Type | Label | Description |
seconds | +int64 | ++ | Number of complete seconds since the start of the epoch |
+
nanos | +int32 | ++ | Number of nanoseconds since the start of the last second |
+
An exact date and time, with a resolution of one second (no nanoseconds).
+ + +Field | Type | Label | Description |
seconds | +int64 | ++ | Number of complete seconds since the start of the epoch |
+
Field | Type | Label | Description |
token | +TokenRef | ++ |
|
+
amount | +uint64 | ++ |
|
+
Create a new token, returning its id in the receipt.
+ + +Field | Type | Label | Description |
float | +uint64 | ++ | The total number of tokens to put into circulation |
+
divisibility | +uint32 | ++ | The number of unit into which each token may be subdivided |
+
treasury | +AccountID | ++ | The treasury account which should receive the initial float |
+
adminKey | +Key | ++ | The key which must sign to modify this token's properties |
+
kycKey | +Key | ++ | The key which must sign to grant or revoke KYC of an account for token transactions |
+
freezeKey | +Key | ++ | The key which must sign to freeze or unfreeze an account for token transactions |
+
wipeKey | +Key | ++ | The key which must sign to freeze or unfreeze an account for token transactions |
+
supplyKey | +Key | ++ | The key which must sign to freeze or unfreeze an account for token transactions |
+
freezeDefault | +bool | ++ | The default status (frozen or unfrozen) of Hedera accounts relative to this token |
+
kycDefault | +bool | ++ | The default KYC status (granted or revoked) of Hedera accounts relative to this token |
+
symbol | +string | ++ | The case-insensitive UTF-8 alphanumeric string identifying the token |
+
Field | Type | Label | Description |
token | +TokenRef | ++ |
|
+
Field | Type | Label | Description |
token | +TokenRef | ++ |
|
+
account | +AccountID | ++ |
|
+
Field | Type | Label | Description |
header | +QueryHeader | ++ |
|
+
token | +TokenRef | ++ |
|
+
Field | Type | Label | Description |
header | +ResponseHeader | ++ |
|
+
tokenInfo | +TokenInfo | ++ |
|
+
Field | Type | Label | Description |
tokenId | +TokenID | ++ |
|
+
symbol | +string | ++ |
|
+
treasury | +AccountID | ++ |
|
+
currentFloat | +uint64 | ++ |
|
+
divisibility | +uint32 | ++ |
|
+
adminKey | +Key | ++ |
|
+
kycKey | +Key | ++ |
|
+
freezeKey | +Key | ++ |
|
+
wipeKey | +Key | ++ |
|
+
supplyKey | +Key | ++ |
|
+
defaultFreezeStatus | +TokenFreezeStatus | ++ |
|
+
defaultKycStatus | +TokenKycStatus | ++ |
|
+
isDeleted | +bool | ++ |
|
+
Field | Type | Label | Description |
token | +TokenRef | ++ |
|
+
account | +AccountID | ++ |
|
+
Field | Type | Label | Description |
token | +TokenRef | ++ |
|
+
treasury | +AccountID | ++ |
|
+
adminKey | +Key | ++ |
|
+
kycKey | +Key | ++ |
|
+
freezeKey | +Key | ++ |
|
+
wipeKey | +Key | ++ |
|
+
supplyKey | +Key | ++ |
|
+
symbol | +string | ++ |
|
+
Field | Type | Label | Description |
token | +TokenRef | ++ |
|
+
amount | +uint64 | ++ |
|
+
Field | Type | Label | Description |
token | +TokenRef | ++ |
|
+
account | +AccountID | ++ |
|
+
The requests and responses for different network services.
+Method Name | Request Type | Response Type | Description | ||||
mintToken | +Transaction | +TransactionResponse | ++ | ||||
burnToken | +Transaction | +TransactionResponse | ++ | ||||
createToken | +Transaction | +TransactionResponse | ++ | ||||
updateToken | +Transaction | +TransactionResponse | ++ | ||||
deleteToken | +Transaction | +TransactionResponse | +|||||
ContractGetBytecode | -Query | -Response | -Retrieves the byte code of a contract |
+ transferTokens | +Transaction | +TransactionResponse | +|
getBySolidityID | -Query | -Response | -Retrieves a contract by its Solidity address |
+ wipeTokenAccount | +Transaction | +TransactionResponse | +|
getTxRecordByContractID | -Query | -Response | -Retrieves the 25-hour records stored for a contract |
+ freezeTokenAccount | +Transaction | +TransactionResponse | +|
deleteContract | +unfreezeTokenAccount | Transaction | TransactionResponse | -Deletes a contract instance and transfers any remaining hbars to a specified receiver |
+ |||
systemDelete | +grantKycToTokenAccount | Transaction | TransactionResponse | -Deletes a contract if the submitting account has network admin privileges |
+ |||
systemUndelete | +revokeKycFromTokenAccount | Transaction | TransactionResponse | -Undeletes a contract if the submitting account has network admin privileges |
+ + | ||
getTokenInfo | +Query | +Response | +
fileID | -FileID | +account | +AccountID | - | The file ID of the file to delete, in the format used in transactions |
+
|
|
contractID | -ContractID | +amount | +sint64 | - | The contract ID instance to delete, in the format used in transactions |
+
|
|
expirationTime | -TimestampSeconds | +token | +TokenRef | - | The timestamp in seconds at which the "deleted" file should truly be permanently deleted |
+
|
fileID | -FileID | -- | The file ID to undelete, in the format used in transactions |
- ||||
contractID | -ContractID | -- | The contract ID instance to undelete, in the format used in transactions |
+ transfers | +TokenTransfer | +repeated | +
|
seconds | -int64 | +token | +TokenRef | - | Number of complete seconds since the start of the epoch |
+
|
nanos | -int32 | +account | +AccountID | - | Number of nanoseconds since the start of the last second |
+
|
seconds | -int64 | +token | +TokenRef | - | Number of complete seconds since the start of the epoch |
+
|
+
account | +AccountID | ++ |
|
|
+ ||
uncheckedSubmit | +UncheckedSubmitBody | ++ |
|
+ |||
tokenCreation | +TokenCreation | ++ |
|
+ |||
tokenTransfers | +TokenTransfers | ++ |
|
+ |||
tokenFreeze | +TokenFreeze | ++ |
|
+ |||
tokenUnfreeze | +TokenUnfreeze | ++ |
|
+ |||
tokenGrantKyc | +TokenGrantKyc | ++ |
|
+ |||
tokenRevokeKyc | +TokenRevokeKyc | ++ |
|
+ |||
tokenDeletion | +TokenDeletion | ++ |
|
+ |||
tokenUpdate | +TokenManagement | ++ |
|
+ |||
tokenMint | +TokenMintCoins | ++ |
|
+ |||
tokenBurn | +TokenBurnCoins | ++ |
|
+ |||
tokenWipe | +TokenWipeAccount | ++ |
|
+
The ID of the transaction for which the receipt is requested.
Whether receipts of processing duplicate transactions should be returned along with the receipt of processing the first consensus transaction with the given id whose status was neither <tt>INVALID_NODE_ACCOUNT</tt> nor <tt>INVALID_PAYER_SIGNATURE</tt>; <b>or</b>, if no such receipt exists, the receipt of processing the first transaction to reach consensus with the given transaction id..
The receipt, indicating it reached consensus (and whether it succeeded or failed) or is currently unknown (because it hasn't reached consensus yet, or the transaction has expired already), and including the ID of any new account/file/instance created by that transaction.
Either the receipt of processing the first consensus transaction with the given id whose status was neither <tt>INVALID_NODE_ACCOUNT</tt> nor <tt>INVALID_PAYER_SIGNATURE</tt>; <b>or</b>, if no such receipt exists, the receipt of processing the first transaction to reach consensus with the given transaction id.
The receipts of processing all consensus transaction with the same id as the distinguished receipt above, in chronological order.
The ID of the transaction for which the record is requested.
Whether records of processing duplicate transactions should be returned along with the record of processing the first consensus transaction with the given id whose status was neither <tt>INVALID_NODE_ACCOUNT</tt> nor <tt>INVALID_PAYER_SIGNATURE</tt>; <b>or</b>, if no such record exists, the record of processing the first transaction to reach consensus with the given transaction id..
The requested record
Either the record of processing the first consensus transaction with the given id whose status was neither <tt>INVALID_NODE_ACCOUNT</tt> nor <tt>INVALID_PAYER_SIGNATURE</tt>; <b>or</b>, if no such record exists, the record of processing the first transaction to reach consensus with the given transaction id.
The records of processing all consensus transaction with the same id as the distinguished record above, in chronological order.
In the receipt of a ConsensusSubmitMessage, the version of the SHA-384 digest used to update the running hash.
In the receipt of a CreateToken, the id of the newly created token
All hbar transfers as a result of this transaction, such as fees, or transfers performed by the transaction, or by a smart contract it calls, or by the creation of threshold records that it triggers.
Submit an arbitrary (serialized) Transaction to the network without prechecks. Requires superuser privileges.
+ + +Field | Type | Label | Description |
transactionBytes | +bytes | ++ | The serialized bytes of the Transaction to be submitted without prechecks |
+