- Oracle Blockchain Platform Digital Assets Edition
- Allgemeine Token-Frameworks
- Kombiniertes Token-Framework
- Kombiniertes Token Framework - Wrapper-API-Package
Kombiniertes Token Framework - Wrapper-API-Package
Die Oracle Blockchain Platform Digital Assets Edition umfasst ein Wrapper-API-Package, mit dem die REST-API erweitert wird, um Vorgänge zu unterstützen, die für einen sammelbaren NFT-Marktplatz spezifisch sind.
NFTCollectiblesWithERC1155WrapperAPI.zip
, eine Archivdatei, die das Wrapper-API-Package enthält, einschließlich der für das Deployment erforderlichen Terraform-Skripte. Sie stellen diese Datei in einem Resource Manager-Stack auf Oracle Cloud Infrastructure (OCI) bereit, um die erforderlichen Oracle-Ressourcen für die Wrapper-APIs zu erstellen.NFTCollectiblesWithERC1155_WrapperAPI.postman_collection.json
, eine Postman-Collection, mit der Sie die bereitgestellten Wrapper-APIs testen können. Die Sammlung umfasst vorkonfigurierte Anforderungen mit Endpunkten und Payloads, die den im Wrapper-API-Package definierten APIs entsprechen.
Wrapper-APIs
-
activateAccount
- Ursprünglicher Methodenname:
activateAccount
- Diese POST-Methode aktiviert ein Token-Konto. Diese Methode kann nur von einem Administrator oder Kontoinhaber aufgerufen werden. Bei vorhandenen Konten, bei denen kein
accountStatus
im Buch gefunden wird, gibt die Methode einaccountStatus
-Objekt zurück, bei dem der Status aufactive
gesetzt ist. - Payload:
{ "tokenId": "{{bc-token-id}}", "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "endorsers": {{endorsers}} }
- Parameter:
tokenId: string
: Die ID des Tokens.orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Rückgabewert:
- Bei Erfolg eine JSON-Darstellung des aktualisierten Accountstatusobjekts für das fungible Token-Konto.
- Beispiel für Rückgabewerte:
{ "assetType": "oaccountStatus", "status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7", "account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1", "status": "active" }
-
addTokenAdmin
- Ursprünglicher Methodenname:
addTokenAdmin
- Diese POST-Methode fügt einen Benutzer als
Token Admin
des Chaincodes hinzu. Diese Methode kann nur von einemToken Admin
des Chaincodes aufgerufen werden. - Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "endorsers": {{endorsers}} }
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Rückgabewert:
- Bei erfolgreicher Ausführung eine Meldung mit Details des Benutzers, der als
Token Admin
des Chaincodes hinzugefügt wurde.
- Bei erfolgreicher Ausführung eine Meldung mit Details des Benutzers, der als
- Beispiel für Rückgabewerte:
{ "msg": "Successfully added Admin (OrgId: appDev, UserId: user1)" }
-
addRole
- Ursprünglicher Methodenname:
addRole
- Diese POST-Methode fügt die Rolle dem angegebenen Benutzer und Token hinzu. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. Für den Parameter tokenDetails "Fungible Token" ist der WerttokenId
als Eingabe erforderlich. Nicht fungible Token erfordern tokenName als Eingabe, um zu erreichen, dass wir den Parameter tokenDetail verwenden, um Details von fungiblen und nicht fungiblen Token unterschiedlich anzugeben. - Payload:
{ "tokenId": "{{bc-token-id}}", "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "role": "role minter/burner" "tokenDetails": "{"tokenName": "token name value"}" "endorsers": {{endorsers}} }
- Parameter:
tokenId: string
: Die ID des Tokens.orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.role: string
: Der Name der Rolle, die dem angegebenen Benutzer hinzugefügt werden soll.tokenDetails: TokenDetail
: Die Details, die das Token angeben. Verwenden Sie für fungible Token das folgende Format:
Verwenden Sie für nicht fungible Token das folgende Format:{"tokenId":"token1"}
{"tokenName":"artCollection"}
endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
{ "msg": "Successfully added role 'minter' to Account Id: oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: user2)" }
-
associateFungibleTokenToAccount
- Ursprünglicher Methodenname:
associateFungibleTokenToAccount
- Diese POST-Methode verknüpft das fungible Token-Konto eines Benutzers mit einem angegebenen Token.
- Payload:
{ "tokenId": "{{bc-token-id}}", "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "endorsers": {{endorsers}} }
- Parameter:
tokenId: string
: Die ID des Tokens.orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
{ "assetType": "ouaccount", "accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc", "userId": "user2", "orgId": "appdev", "totalAccounts": 1, "totalFtAccounts": 1, "associatedFtAccounts": [ { "accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a", "tokenId": "tokenOne" } ], "associatedNftAccount": "" }
-
buyWithEthCoin
- Ursprünglicher Methodenname:
buyWithEthCoin
- Jeder Kontoinhaber kann diese POST-Methode verwenden, um einen NFT mit Ethereum zu kaufen und Treue-Token als Prämienpunkte zu übertragen.
- Payload:
{ "fromOrgId":"from_org_id value", "fromUserId":"from_user_id value", "toOrgId":"to_org_id value", "toUserId":"to_user_id value", "nftId":"[\"nft_id value\"]", "loyaltyId":"[\"loyalty_id value\"]", "ethQty":"[eth_qty value]", "loyaltyRewardQuantity":"[loyalty_reward_quantity value]", "endorsers":{{"endorsers"}} }
- Parameter:
fromOrgId: string
- Die Mitgliedschaftsdienstleister-ID (MSP) des Absenders (Eigentümers) in der aktuellen Organisation.fromUserId: string
: Der Benutzername oder die E-Mail-ID des Absenders (Eigentümer).toOrgId: string
: Die Mitgliedschaftsdienstleister-ID (MSP) des Empfängers in der aktuellen Organisation.toUserId: string
: Der Benutzername oder die E-Mail-ID des Empfängers.nftId: string
: Die ID des zu kaufenden Tokens.loyaltyId: string
: Die ID des fungiblen Tokens, das Treuepunkte darstellt.ethQty: number
– Der Preis des Tokens in Ethereum.loyaltyRewardQuantity: string
- Die Anzahl der zu transferierenden Treuepunkte.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
{ "msg": "Token ID : 'artcollection1' has been successfully transferred to UserID : 'user1'" }
-
balanceOfBatch
- Ursprünglicher Methodenname:
balanceOfBatch
- Diese GET-Methode schließt einen Batchvorgang ab, der die Salden von Tokenkonten abruft. Diese Methode kann nur von einem
Token Admin
des Chaincodes oder vom Accounteigentümer aufgerufen werden. - Abfrage:
/balanceOfBatch?orgIds=["{{bc-org-id}}"]&userIds=["{{bc-user-id}}"]&tokenIds=["{{bc-token-id}}"]
- Parameter:
orgIds: string[]
: Eine Liste der Mitgliedschaftsserviceprovider-(MSP-)IDs in der aktuellen Organisation.userIds: string[]
: Eine Liste der Benutzernamen oder E-Mail-IDs.tokenIds: string[]
: Eine Liste der Token-IDs.
- Beispiel für Rückgabewerte:
[ { "orgId": "AppBldFFFFMay22", "userId": "user2", "userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38", "tokenAccountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371", "tokenId": "FNFT", "balance": 100 }, { "orgId": "AppBldFFFFMay22", "userId": "user2", "userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38", "tokenAccountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e", "tokenId": "FT", "balance": 50 }, { "orgId": "AppBldFFFFMay22", "userId": "example_minter", "userAccountId": "ouaccount~9501bb774c156eb8354dfe489250ea91f757523d70f08ee494bda98bb352003b", "tokenAccountId": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446", "tokenId": "FNFT", "balance": 10 } ]
-
batchTransferFrom
- Ursprünglicher Methodenname:
batchTransferFrom
- Diese POST-Methode schließt einen Batchvorgang ab, bei dem Token, die in einer Liste mit Token-IDs angegeben sind, von einem Benutzer an einen anderen Benutzer übertragen werden. Diese Methode kann von jedem Benutzer aufgerufen werden.
- Payload:
{ "fromOrgId": "fromOrgId value", "fromUserId": "fromUserId value", "toOrgId": "toOrgId value", "toUserId": "toUserId value", "tokenIds": "[\"{{bc-token-id}}\"]", "quantity": "[quantity value]", "endorsers": {{endorsers}} }
- Parameter:
fromOrgId: string
– Die Mitgliedsdienstleister-ID (MSP) des Absenders.fromUserId: string
: Die Benutzer-ID des Absenders.toOrgId: string
– Die Mitgliedschaftsdienstleister-ID (MSP) des Empfängers.toUserId: string
: Die Benutzer-ID des Empfängers.tokenIds: string[]
: Eine Liste der Token-IDs für die zu übertragenden Token.quantity: number[]
: Die Liste der zu übertragenden Tokenmengen entsprechend dem Token-ID-Array.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Rückgabewert:
- Bei erfolgreicher Ausführung wird eine Nachricht mit Details für jede Tokentransfer angezeigt.
- Beispiel für Rückgabewerte:
[ { "msg": "Successfully transferred NFT token: 'FNFT' of '10' quantity from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: AppBldFFFFMay22, User-Id: user2) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: AppBldFFFFMay22, User-Id: example_minter)" }, { "msg": "Successfully transferred 10 FT token: 'FT' from Account-Id: oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e (Org-Id: AppBldFFFFMay22, User-Id: user2) to Account-Id: oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c (Org-Id: AppBldFFFFMay22, User-Id: example_minter)" }, { "msg": "Successfully transferred NFT token: 'NFT' from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: AppBldFFFFMay22, User-Id: user2) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: AppBldFFFFMay22, User-Id: example_minter)" } ]
-
burnBatch
- Ursprünglicher Methodenname:
burnBatch
- Diese POST-Methode deaktiviert oder verbrennt die angegebenen fungiblen und nicht fungiblen Token. Jeder Benutzer mit der Brennerrolle kann diese Methode aufrufen.
- Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "tokenIds": "[\"{{bc-token-id}}\"]", "quantity": "[quantity value]", "sameOrgEndorser": true }
- Parameter:
orgId: string
– Die Mitgliedschaftsdienstleister-ID (MSP) in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID.tokenIds: string[]
: Die Liste der zu brennenden Token-IDsquantity: number[]
- Die Liste der zu brennenden Tokenmengen, die dem Token-ID-Array entsprechen.sameOrgEndorser: boolean
: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen aus derselben Organisation wie der Anforderer stammen müssen.
- Rückgabewert:
- Bei Erfolg eine Meldung mit Details zu den Burn-Vorgängen.
- Beispiel für Rückgabewerte:
[ { "msg": "Successfully burned NFT token: 'art' from Account-Id: oaccount~76cb672eeb1bd535899562a840d0c15a356db89e24bc8b43ac1dba845a4282c6 (Org-Id: appdev, User-Id: user2)" }, { "msg": "Successfully burned 5 tokens of tokenId: tokenOne from Account-ID oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: user2)" }, { "msg": "Successfully burned 2 token share of tokenId: FNFT from Account-ID oaccount~87bcb699d507368ee3966cd03ee6d7736ffc55dde8c0f0e16b14866334ac504a (Org-Id: AutoF1377358917, User-Id: user2)" } ]
-
burnNFT
- Ursprünglicher Methodenname:
burnNFT
- Diese POST-Methode deaktiviert oder verbrennt das angegebene nicht fungible Token und gibt ein Tokenobjekt und eine Tokenhistorie zurück. Jeder Benutzer mit der Brennerrolle kann diese Methode aufrufen.
- Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "tokenId": "{{bc-token-id}}", "sameOrgEndorser": true }
- Parameter:
orgId: string
– Die Mitgliedschaftsdienstleister-ID (MSP) in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID.tokenId: string
- Die ID des nicht fungiblen Tokens zum VerbrennensameOrgEndorser: boolean
: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen aus derselben Organisation wie der Anforderer stammen müssen.
- Rückgabewert:
- Bei Erfolg ein JSON-Array, das eine Meldung über den Burn-Vorgang enthält.
- Beispiel für Rückgabewerte:
{ "msg": "Successfully burned NFT token: 'art' from Account-Id: oaccount~76cb672eeb1bd535899562a840d0c15a356db89e24bc8b43ac1dba845a4282c6 (Org-Id: appdev, User-Id: user2)" }
-
createAccount
- Ursprünglicher Methodenname:
createAccount
- Diese POST-Methode erstellt ein Konto für einen angegebenen Benutzer und zugehörige Tokenkonten für fungible oder nicht fungible Token. Ein Konto muss für jeden Benutzer erstellt werden, der zu einem beliebigen Zeitpunkt Token hat. Das Benutzerkonto verfolgt das NFT-Konto und die fungiblen Token-Konten, die ein Benutzer besitzt. Benutzer müssen über Konten im Netzwerk verfügen, um tokenbezogene Vorgänge abzuschließen. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden.Ein Benutzerkonto hat eine eindeutige ID, die durch einen SHA-256-Hash des Parameters
orgId
und des ParametersuserId
gebildet wird.Ein Benutzer kann mehrere fungible Token-Konten mit eindeutigen Konto-IDs haben. Fungible Token-Konto-IDs werden durch einen SHA-256-Hash des Parameters
orgId
, den ParameteruserId
, die durch das Tilde-Symbol (~
) getrennte konstante Zeichenfolgeft
und eine Zählernummer gebildet, die den Index des fungiblen Kontos angibt, das durch das Tilde-Symbol (~
) getrennt erstellt wird.Ein Benutzer kann nur einen nicht fungiblen Tokenaccount haben. Konto-IDs für nicht fungible Token sind eindeutig und werden durch einen SHA-256-Hash des Parameters
orgId
, den ParameteruserId
und die durch das Tilde-Symbol (~
) getrennte konstante Zeichenfolgenft
gebildet. Alle nicht fungiblen Token, für die ein Benutzer verantwortlich ist, ob ganz oder teilweise, sind mit diesem Konto verknüpft.Benutzeraccount-IDs beginnen mit
ouaccount~
. Tokenaccount-IDs beginnen mitoaccount~
. - Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "ftAccount": true, "nftAccount": true, "endorsers": {{endorsers}} }
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.ftAccount: boolean
: Bei "true" wird ein fungibler Tokenaccount erstellt und mit dem Benutzeraccount verknüpft.nftAccount: boolean
: Bei "true" wird ein nicht fungibler Tokenaccount erstellt und mit dem Benutzeraccount verknüpft.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
{ "assetType": "ouaccount", "accountId": "ouaccount~cf20877546f52687f387e7c91d88b9722c97e1a456cc0484f40c747f7804feae", "userId": "user1", "orgId": "appdev", "totalAccounts": 2, "totalFtAccounts": 1, "associatedFtAccounts": [ { "accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b", "tokenId": "" } ], "associatedNftAccount": "oaccount~73c3e835dac6d0a56ca9d8def08269f83cefd59b9d297fe2cdc5a9083828fa58" }
-
createArtCollectionToken
- Ursprünglicher Methodenname:
createArtCollectionToken
- Diese POST-Methode erstellt (mindert) einen NFT. Das Asset und die zugehörigen Eigenschaften werden in der Statusdatenbank gespeichert. Der Aufrufer dieser Transaktion muss ein Token-Konto haben. Der Anrufer dieser Transaktion wird Eigentümer der NFT. Wenn die Tokenspezifikationsdatei den Abschnitt
roles
fürbehaviors
und die Eigenschaftminter_role_name
fürroles
enthält, muss der Aufrufer der Transaktion die Minter-Rolle haben. Ansonsten kann jeder Anrufer NFTs prägen. - Payload:
{ "tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"tokenUri\":\"tokenUri value\",\"tokenMetadata\":{\"Painting_Name\":\"Painting_Name value\",\"Description\":\"Description value\",\"Painter_Name\":\"Painter_Name value\"},\"Price\":999,\"On_Sale_Flag\":true}", "quantity": 1, "sameOrgEndorser": true }
- Parameter:
tokenAsset: <Token Class>
: Das Tokenasset für die Minze. Weitere Informationen zu den Eigenschaften des Tokenassets finden Sie in der Eingabespezifikationsdatei.quantity: number
: Die Anzahl der zu prägenden Token. Der einzige unterstützte Wert für diesen Parameter ist1
.sameOrgEndorser: boolean
: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen aus derselben Organisation wie der Anforderer stammen müssen.
- Beispiel für Rückgabewerte:
{ "tokenMetadata": { "ISIN": "ISIN value", "Segment": "Segment value", "Issuer": "Issuer value", "FaceValue": 999, "IssueSize": 999, "CouponRate": 999, "InterestPaymentType": "simple", "InterestFrequency": "monthly", "IssueDate": "2023-03-28T15:16:36.000Z", "MaturityDate": "2023-03-28T15:16:36.000Z" }, "assetType": "otoken", "events": false, "tokenId": "token2", "tokenName": "bond", "tokenDesc": "tokenDesc value", "tokenStandard": "erc1155+", "tokenType": "nonfungible", "tokenUnit": "fractional", "behaviors": [ "divisible", "mintable", "transferable", "burnable", "roles" ], "roles": { "minter_role_name": "minter", "burner_role_name": "burner" }, "mintable": { "max_mint_quantity": 0 }, "quantity": 10, "createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43", "creationDate": "2024-12-03T12:07:24.000Z", "divisible": { "decimal": 0 }, "isBurned": false, "isLocked": false, "tokenUri": "tokenUri value", "status": "created" }
-
createLoyaltyToken
- Ursprünglicher Methodenname:
createLoyaltyToken
- Diese POST-Methode erstellt Token. Jedes definierte Token verfügt über eine eigene Erstellungsmethode. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Payload:
{ "tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"Token_Name\":\"Token_Name value\",\"Token_to_Currency_Ratio\":999}", "sameOrgEndorser": true }
- Parameter:
tokenAsset: <Token Class>
: Das Tokenasset. Die Eigenschaften des Assets werden in der Modelldatei definiert.sameOrgEndorser: boolean
: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen aus derselben Organisation wie der Anforderer stammen müssen.
- Beispiel für Rückgabewerte:
{ "assetType": "otoken", "events": false, "tokenId": "token2", "tokenName": "loyalty", "tokenDesc": "tokenDesc value", "tokenStandard": "erc1155+", "tokenType": "fungible", "tokenUnit": "fractional", "behaviors": [ "divisible", "mintable", "transferable", "burnable", "roles" ], "roles": { "minter_role_name": "minter", "burner_role_name": "burner" }, "mintable": { "max_mint_quantity": 0 }, "quantity": 10, "createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43", "creationDate": "2024-12-03T12:07:24.000Z", "divisible": { "decimal": 0 }, "isBurned": false, "isLocked": false, "tokenUri": "tokenUri value", "status": "created" }
-
createTokenAccount
- Ursprünglicher Methodenname:
createTokenAccount
- Diese POST-Methode erstellt ein fungibles oder nicht fungibles Token-Konto, das einem Benutzerkonto zugeordnet werden kann.
Ein Benutzer kann mehrere fungible Token-Konten mit eindeutigen Konto-IDs haben. Fungible Token-Konto-IDs werden durch einen SHA-256-Hash des Parameters
orgId
, den ParameteruserId
, die durch das Tilde-Symbol (~
) getrennte konstante Zeichenfolgeft
und eine Zählernummer gebildet, die den Index des fungiblen Kontos angibt, das durch das Tilde-Symbol (~
) getrennt erstellt wird.Ein Benutzer kann nur einen nicht fungiblen Tokenaccount haben. Konto-IDs für nicht fungible Token sind eindeutig und werden durch einen SHA-256-Hash des Parameters
orgId
, den ParameteruserId
und die durch das Tilde-Symbol (~
) getrennte konstante Zeichenfolgenft
gebildet. Alle nicht fungiblen Token, für die ein Benutzer verantwortlich ist, ob ganz oder teilweise, sind mit diesem Konto verknüpft.Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "tokenType": "nonfungible", "endorsers": {{endorsers}} }
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.tokenType: TokenType
: Der Typ des zu erstellenden Tokenaccounts. Die einzigen unterstützten Tokentypen sindnonfungible
undfungible
.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Rückgabewert:
- Bei Erfolg ein JSON-Objekt des erstellten Tokenaccounts.
- Beispiel für Rückgabewerte:
{ "assetType": "ouaccount", "accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc", "userId": "user2", "orgId": "appdev", "totalAccounts": 1, "totalFtAccounts": 1, "associatedFtAccounts": [ { "accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a", "tokenId": "" } ], "associatedNftAccount": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a" }
-
createUserAccount
- Ursprünglicher Methodenname:
createUserAccount
- Diese POST-Methode erstellt ein Konto für einen angegebenen Benutzer. Ein Konto muss für jeden Benutzer erstellt werden, der zu einem beliebigen Zeitpunkt Token hat. Das Benutzerkonto verfolgt das NFT-Konto und die fungiblen Token-Konten, die ein Benutzer hat. Benutzer müssen über Konten im Netzwerk verfügen, um tokenbezogene Vorgänge abzuschließen.
Eine Konto-ID ist ein SHA-256-Hash des Parameters
orgId
und des ParametersuserId
. Diese Methode kann nur von einemToken Admin
des Chaincodes aufgerufen werden. - Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "endorsers": {{endorsers}} }
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Rückgabewert:
- Bei Erfolg ein JSON-Objekt des erstellten Benutzerkontos.
- Beispiel für Rückgabewerte:
{ "assetType": "ouaccount", "accountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc", "userId": "user2", "orgId": "appdev", "totalAccounts": 0, "totalFtAccounts": 0, "associatedFtAccounts": [], "associatedNftAccount": "" }
-
deleteAccount
- Ursprünglicher Methodenname:
deleteAccount
- Diese POST-Methode löscht ein Tokenkonto. Nachdem ein Konto gelöscht wurde, befindet sich das Konto in einem endgültigen Status und kann nicht mehr aktualisiert oder in einen anderen Status geändert werden. Um ein Konto zu löschen, muss der Kontensaldo Null sein. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "endorsers": {{endorsers}} }
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Rückgabewert:
- Bei Erfolg eine JSON-Darstellung des Tokenaccountstatus.
- Beispiel für Rückgabewerte:
{ "assetType": "oaccountStatus", "status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7", "account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1", "status": "deleted" }
-
exchangeToken
- Ursprünglicher Methodenname:
exchangeToken
- Diese Methode tauscht Token zwischen angegebenen Konten aus. Diese Methode unterstützt nur den Austausch zwischen einem NFT und einem fungiblen Token oder einem fungiblen Token und einem NFT. Die NFT kann ganz oder teilweise sein. Diese Methode kann nur vom Kontoinhaber aufgerufen werden.
- Payload:
{ "fromTokenId": "fromTokenId value", "fromOrgId": "fromOrgId value", "fromUserId": "fromUserId value", "fromTokenQuantity": 1, "toTokenId": "toTokenId value", "toOrgId": "toOrgId value", "toUserId": "toUserId value", "toTokenQuantity": 1, "endorsers": {{endorsers}} }
- Parameter:
fromTokenId: string
: Die ID des Tokens, dessen Eigentümer der Absender ist.fromOrgId: string
- Die Mitgliedschaftsdienstleister-ID (MSP) des Absenders in der aktuellen Organisation.fromUserId: string
: Der Benutzername oder die E-Mail-ID des Absenders.fromTokenQuantity: number
- Die Anzahl der Token vom Absender, die mit dem Empfänger ausgetauscht werden sollen.toTokenId: string
: Die ID des Tokens, dessen Eigentümer der Empfänger ist.toOrgId: string
: Die Mitgliedschaftsdienstleister-ID (MSP) des Empfängers in der aktuellen Organisation.toUserId: string
: Der Benutzername oder die E-Mail-ID des Empfängers.toTokenQuantity: number
- Die Anzahl der Token vom Empfänger, die mit dem Absender ausgetauscht werden sollen.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Rückgabewert:
- Bei Erfolg eine Nachricht mit Details zum Tokenaustausch.
- Beispiel für Rückgabewerte:
{ "msg": "Succesfully exchanged 10 tokens of type nonfungible with tokenId: [r1] from Account oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (OrgId: AppBldFFFFMay22, UserId: user2) to 10 tokens of type fungible with tokenId: [loy1] from Account oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c (OrgId: AppBldFFFFMay22, UserId: example_minter)" }
-
getAccount
- Ursprünglicher Methodenname:
getAccount
- Diese GET-Methode gibt Tokenaccountdetails für einen angegebenen Benutzer zurück. Diese Methode kann nur von einem
Token Admin
des Chaincodes oder demAccount Owner
des Accounts aufgerufen werden. - Abfrage:
/getAccount?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.
- Rückgabewert:
- Bei Erfolg ein JSON-Objekt, das Tokenaccountdetails enthält.
- Beispiel für Rückgabewert
{ "assetType": "oaccount", "accountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371", "userId": "user2", "orgId": "AppBldFFFFMay22", "tokenType": "nonfungible", "noOfNfts": 3 }
-
getAccountDetailsByUser
- Ursprünglicher Methodenname:
getAccountDetailsByUser
- Diese GET-Methode gibt Kontodetails für einen angegebenen Benutzer zurück. Diese Methode kann nur von einem
Token Admin
des Chaincodes oder demAccount Owner
des Accounts aufgerufen werden. - Abfrage:
/getAccountDetailsByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.
- Beispiel für Rückgabewerte:
{ "userAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38", "associatedFTAccounts": [ { "accountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e", "tokenId": "FT", "balance": 50 } ], "associatedNFTAccount": { "accountId": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371", "associatedNFTs": [ { "nftTokenId": "FNFT", "tokenShare": 100 }, { "nftTokenId": "FNFT2", "tokenShare": 110 }, { "nftTokenId": "NFT" } ] } }
-
getAccountHistory
- Ursprünglicher Methodenname:
getAccountHistory
- Diese GET-Methode gibt die Kontohistorie für ein angegebenes Tokenkonto zurück. Bei NFT-Konten muss der Parameter
tokenId
leer sein. Diese Methode kann nur vomToken Admin
des Chaincodes oder vom Accounteigentümer aufgerufen werden. - Abfrage:
/getAccountHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}&tokenId={{bc-token-id}}
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.tokenId: string
: Die ID des fungiblen Tokens.
- Beispiel für Rückgabewerte:
[ { "trxId": "a2cfc6fc064334d6b9931cdf67193711ec2ff5c50a4714f11855fe7384f00e35", "timeStamp": "2023-06-06T14:44:31.000Z", "value": { "accountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e", "assetType": "oaccount", "balance": 100, "orgId": "AppBldFFFFMay22", "tokenId": "loy1", "tokenName": "loyalty", "tokenType": "fungible", "userId": "user2" } }, { "trxId": "de483cf7505ae4e7018c4b604c3ab9327c2fb1f802d9408e22735667c1d6997f", "timeStamp": "2023-06-06T14:43:23.000Z", "value": { "assetType": "oaccount", "accountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e", "userId": "user2", "orgId": "AppBldFFFFMay22", "tokenType": "fungible", "tokenId": "loy1", "tokenName": "loyalty", "balance": 0 } }, { "trxId": "db053e653d3ad9aa5b7b6e04b7cd51aacfbb413272d857a155b60d2a6a12bf4d", "timeStamp": "2023-06-05T16:59:08.000Z", "value": { "assetType": "oaccount", "accountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e", "userId": "user2", "orgId": "AppBldFFFFMay22", "tokenType": "fungible", "tokenId": "", "balance": 0 } } ]
-
getAccountStatus
- Ursprünglicher Methodenname:
getAccountStatus
- Diese GET-Methode ruft den aktuellen Status des Tokenaccounts ab. Diese Methode kann vom
Token Admin
des Chaincodes oder vom Eigentümer des Tokenaccounts aufgerufen werden. - Abfrage:
/getAccountStatus?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.
- Rückgabewert:
- Bei Erfolg eine JSON-Darstellung des Tokenaccountstatus.
- Beispiel für Rückgabewerte:
{ "assetType": "oaccountStatus", "status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7", "account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1", "status": "active" }
-
getAccountStatusHistory
- Ursprünglicher Methodenname:
getAccountStatusHistory
- Diese GET-Methode ruft die Historie des Kontostatus ab. Diese Methode kann vom
Token Admin
des Chaincodes oder vom Eigentümer des Tokenaccounts aufgerufen werden. - Abfrage:
/getAccountStatusHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.
- Rückgabewert:
- Bei Erfolg die Kontostatushistorie im JSON-Format.
- Beispiel für Rückgabewerte:
[ { "trxId": "d5c6d6f601257ba9b6edaf5b7660f00adc13c37d5321b8f7d3a35afab2e93e63", "timeStamp": "2022-12-02T10:39:14.000Z", "value": { "assetType": "oaccountStatus", "status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7", "account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1", "status": "suspended" } }, { "trxId": "e6c850cfa084dc20ad95fb2bb8165eef3a3bd62a0ac867cccee57c2003125183", "timeStamp": "2022-12-02T10:37:50.000Z", "value": { "assetType": "oaccountStatus", "status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7", "account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1", "status": "active" } } ]
-
getAccountTransactionHistory
- Ursprünglicher Methodenname:
getAccountTransactionHistory
- Diese GET-Methode gibt die Kontotransaktionshistorie zurück. Diese Methode kann nur von einem
Token Admin
des Chaincodes oder vom Accounteigentümer aufgerufen werden. - Abfrage:
/getAccountTransactionHistory?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.
- Beispiel für Rückgabewerte:
[ { "transactionId": "otransaction~3a6b23c3003626f3947e990eddbd7ac23398d2200e2eb3eac745e6ddfae140bc~7c88c736df38d5622512f1e8dcdd50710eb47c953f1ecb24ac44790a9e2f475b", "timestamp": "2023-06-06T14:48:08.000Z", "tokenId": "FNFT", "transactedAmount": 10, "triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38", "transactedAccount": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446", "transactionType": "DEBIT", "balance": 90 }, { "transactionId": "otransaction~3a6b23c3003626f3947e990eddbd7ac23398d2200e2eb3eac745e6ddfae140bc~178e3730bc5bee50d02f1464a4eebf733a051905f651e5789039adb4a3edc114", "timestamp": "2023-06-06T14:48:08.000Z", "tokenId": "NFT", "triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38", "transactedAccount": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446", "transactionType": "DEBIT" }, { "transactionId": "otransaction~c369929e28e78de06c72d020f1418c9a154a7dd280b2e22ebb4ea4485e249124~a7cefb22ff39ee7e36967be71de27da6798548c872061a62dabc56d88d50b930", "timestamp": "2023-06-06T14:47:08.000Z", "tokenId": "NFT", "triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38", "transactedAccount": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371", "transactionType": "MINT" }, { "transactionId": "otransaction~114a1bc78d04be48ee6dc140c32c042ee9481cb118959626f090eec744522422~e4eb15d9354f694230df8835ade012100d82aa43672896a2c7125a86e3048f9f", "timestamp": "2023-06-05T17:17:57.000Z", "tokenId": "FNFT", "transactedAmount": 100, "triggeredByUserAccountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38", "transactedAccount": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371", "transactionType": "MINT", "balance": 100 } ]
-
getAccountsByRole
- Ursprünglicher Methodenname:
getAccountsByRole
- Diese Methode gibt eine Liste aller Konto-IDs für eine angegebene Rolle zurück. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Abfrage:
/getAccountsByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parameter:
role: string
: Der Name der Rolle, nach der gesucht werden soll.tokenDetails: TokenDetail
: Die Details, die das Token angeben. Verwenden Sie für fungible Token das folgende Format:
Verwenden Sie für nicht fungible Token das folgende Format:{"tokenId":"token1"}
{"tokenName":"artCollection"}
- Beispiel für Rückgabewerte:
{ "accounts": [ "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a", "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b" ] }
-
getAllAccounts
- Ursprünglicher Methodenname:
getAllAccounts
- Diese GET-Methode gibt Details aller Benutzerkonten zurück. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Abfrage:
/getAllAccounts
- Parameter:
- Kein
- Rückgabewert:
- Bei Erfolg ein JSON-Array aller Konten.
- Beispiel für Rückgabewerte:
[ { "assetType": "ouaccount", "accountId": "ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38", "userId": "user2", "orgId": "AppBldFFFFMay22", "totalAccounts": 2, "totalFtAccounts": 1, "associatedFtAccounts": [ { "accountId": "oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e", "tokenId": "loy1" } ], "associatedNftAccount": "oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371" }, { "assetType": "ouaccount", "accountId": "ouaccount~9501bb774c156eb8354dfe489250ea91f757523d70f08ee494bda98bb352003b", "userId": "example_minter", "orgId": "AppBldFFFFMay22", "totalAccounts": 2, "totalFtAccounts": 1, "associatedFtAccounts": [ { "accountId": "oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c", "tokenId": "loy1" } ], "associatedNftAccount": "oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446" }, ]
-
getAllTokenAdmins
- Ursprünglicher Methodenname:
getAllTokenAdmins
- Diese GET-Methode gibt eine Liste aller Benutzer zurück, die ein
Token Admin
des Chaincodes sind. Diese Methode kann nur vomToken Admin
des Chaincodes aufgerufen werden. - Abfrage:
/getAllTokenAdmins
- Parameter:
- Kein
- Rückgabewert:
- Bei Erfolg ein
admins
-Array im JSON-Format, dasorgId
- unduserId
-Objekte enthält.
- Bei Erfolg ein
- Beispiel für Rückgabewerte:
{ "admins": [ { "orgId": "appdev", "userId": "user2" }, { "orgId": "appdev", "userId": "user1" } ] }
-
getAllTokens
- Ursprünglicher Methodenname:
getAllTokens
- Diese GET-Methode gibt alle Tokenassets zurück, die in der Statusdatenbank gespeichert sind. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. Diese Methode verwendet SQL-Rich-Abfragen von Berkeley DB und kann nur aufgerufen werden, wenn eine Verbindung zum Remote-Netzwerk von Oracle Blockchain Platform besteht. - Abfrage:
/getAllTokens
- Parameter:
- Kein
- Beispiel für Rückgabewerte:
[{ "tokenMetadata": { "ISIN": "ISIN value", "Segment": "Segment value", "Issuer": "Issuer value", "FaceValue": 999, "IssueSize": 999, "CouponRate": 999, "InterestPaymentType": "simple", "InterestFrequency": "monthly", "IssueDate": "2023-03-28T15:16:36.000Z", "MaturityDate": "2023-03-28T15:16:36.000Z" }, "assetType": "otoken", "events": false, "tokenId": "token2", "tokenName": "bond", "tokenDesc": "tokenDesc value", "tokenStandard": "erc1155+", "tokenType": "nonfungible", "tokenUnit": "fractional", "behaviors": [ "divisible", "mintable", "transferable", "burnable", "roles" ], "roles": { "minter_role_name": "minter", "burner_role_name": "burner" }, "mintable": { "max_mint_quantity": 0 }, "quantity": 10, "createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43", "creationDate": "2024-12-03T12:07:24.000Z", "divisible": { "decimal": 0 }, "isBurned": false, "isLocked": false, "tokenUri": "tokenUri value", "status": "status value" }]
-
getAllTokensByUser
- Ursprünglicher Methodenname:
getAllTokensByUser
- Diese GET-Methode gibt alle Tokenassets zurück, deren Eigentümer ein bestimmter Benutzer ist. Diese Methode verwendet SQL-Rich-Abfragen von Berkeley DB und kann nur aufgerufen werden, wenn eine Verbindung zum Remote-Netzwerk von Oracle Blockchain Platform besteht. Diese Methode kann nur von einem
Token Admin
des Chaincodes oder vom Accounteigentümer aufgerufen werden. - Abfrage:
/getAllTokensByUser?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parameter:
org_id: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.user_id: string
: Der Benutzername oder die E-Mail-ID des Benutzers.
- Beispiel für Rückgabewerte:
[{ "tokenMetadata": { "ISIN": "ISIN value", "Segment": "Segment value", "Issuer": "Issuer value", "FaceValue": 999, "IssueSize": 999, "CouponRate": 999, "InterestPaymentType": "simple", "InterestFrequency": "monthly", "IssueDate": "2023-03-28T15:16:36.000Z", "MaturityDate": "2023-03-28T15:16:36.000Z" }, "assetType": "otoken", "events": false, "tokenId": "token2", "tokenName": "bond", "tokenDesc": "tokenDesc value", "tokenStandard": "erc1155+", "tokenType": "nonfungible", "tokenUnit": "fractional", "behaviors": [ "divisible", "mintable", "transferable", "burnable", "roles" ], "roles": { "minter_role_name": "minter", "burner_role_name": "burner" }, "mintable": { "max_mint_quantity": 0 }, "quantity": 10, "createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43", "creationDate": "2024-12-03T12:07:24.000Z", "divisible": { "decimal": 0 }, "isBurned": false, "isLocked": false, "tokenUri": "tokenUri value", "status": "status value" }]
-
getTokenById
- Ursprünglicher Methodenname:
getTokenById
- Diese GET-Methode gibt ein Tokenobjekt zurück, wenn das Token in der Statusdatenbank vorhanden ist. Diese Methode kann nur von einem
Token Admin
des Chaincodes oder des Tokeneigentümers aufgerufen werden. Bei partiellen NFTs enthält die Antwort die Liste der Tokenverantwortlichen. - Abfrage:
/getTokenById?tokenId={{bc-token-id}}
- Parameter:
tokenId: string
: Die ID des abzurufenden Tokens.
- Beispiel für Rückgabewerte:
[{ "tokenMetadata":{ "ISIN":"ISIN value", "Segment":"Segment value", "Issuer":"Issuer value", "FaceValue":10, "IssueSize":999, "CouponRate":10, "InterestPaymentType":"simple", "InterestFrequency":"monthly", "IssueDate":"2023-03-28T15:16:36.000Z", "MaturityDate":"2023-03-28T15:16:36.000Z" }, "assetType":"otoken", "events":true, "tokenId":"bond1", "tokenName":"bond", "tokenDesc":"tokenDesc value", "tokenStandard":"erc1155+", "tokenType":"nonfungible", "tokenUnit":"fractional", "behaviors":[ "divisible", "mintable", "transferable", "burnable", "roles" ], "roles":{ "minter_role_name":"minter", "burner_role_name":"burner" }, "mintable":{ "max_mint_quantity":0 }, "quantity":100, "createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00", "creationDate":"2024-12-02T12:42:09.000Z", "divisible":{ "decimal":0 }, "isBurned":false, "isLocked":false, "tokenUri":"tokenUri value", "status":"posted" } ]
-
getTokenDecimal
- Ursprünglicher Methodenname:
getTokenDecimal
- Diese Methode gibt die Anzahl der Dezimalstellen für ein angegebenes Token zurück. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Abfrage:
/getTokenDecimal?tokenId={{bc-token-id}}
- Parameter:
tokenId: string
: Die ID des Tokens.
- Beispiel für Rückgabewerte:
{ "msg": "Token Id: tokenOne has 2 decimal places." }
-
getTokenHistory
- Ursprünglicher Methodenname:
getTokenHistory
- Diese GET-Methode gibt die Historie für eine angegebene Token-ID zurück. Jeder kann diese Methode nennen.
/getTokenHistory?tokenId={{bc-token-id}}
- Parameter:
tokenId: string
: Die ID des Tokens.
- Beispiel für Rückgabewerte:
[{ "tokenMetadata":{ "ISIN":"ISIN value", "Segment":"Segment value", "Issuer":"Issuer value", "FaceValue":10, "IssueSize":999, "CouponRate":10, "InterestPaymentType":"simple", "InterestFrequency":"monthly", "IssueDate":"2023-03-28T15:16:36.000Z", "MaturityDate":"2023-03-28T15:16:36.000Z" }, "assetType":"otoken", "events":true, "tokenId":"bond1", "tokenName":"bond", "tokenDesc":"tokenDesc value", "tokenStandard":"erc1155+", "tokenType":"nonfungible", "tokenUnit":"fractional", "behaviors":[ "divisible", "mintable", "transferable", "burnable", "roles" ], "roles":{ "minter_role_name":"minter", "burner_role_name":"burner" }, "mintable":{ "max_mint_quantity":0 }, "quantity":100, "createdBy":"oaccount~276bcf1324b1ad1e493e22432db3b39f7a4b9bb17b8525c0391ea3ba36138e00", "creationDate":"2024-12-02T12:42:09.000Z", "divisible":{ "decimal":0 }, "isBurned":false, "isLocked":false, "tokenUri":"tokenUri value", "status":"posted" } ]
-
getTokensByName
- Ursprünglicher Methodenname:
getTokensByName
- Diese GET-Methode gibt alle Tokenassets für einen angegebenen Tokennamen zurück. Diese Methode verwendet SQL-Rich-Abfragen der Berkeley-DB und kann nur aufgerufen werden, wenn eine Verbindung zum Remote-Oracle Blockchain Platform-Netzwerk besteht. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Abfrage:
/getTokensByName?tokenName=tokenName value
- Parameter:
tokenName: string
: Der Name des Tokens.
- Beispiel für Rückgabewerte:
[ { "key": "tokenOne", "valueJson": { "assetType": "otoken", "tokenId": "tokenOne", "tokenName": "moneytok", "tokenStandard": "erc1155+", "tokenType": "fungible", "tokenUnit": "fractional", "behaviors": [ "divisible", "mintable", "transferable", "roles" ], "roles": { "minter_role_name": "minter", "burner_role_name": "burner" }, "mintable": { "max_mint_quantity": 1000 }, "divisible": { "decimal": 2 } } }, { "key": "tokenTwo", "valueJson": { "assetType": "otoken", "tokenId": "tokenTwo", "tokenName": "moneytok", "tokenStandard": "erc1155+", "tokenType": "fungible", "tokenUnit": "fractional", "behaviors": [ "divisible", "mintable", "transferable", "roles" ], "roles": { "minter_role_name": "minter", "burner_role_name": "burner" }, "mintable": { "max_mint_quantity": 1000 }, "divisible": { "decimal": 2 } } } ]
-
getTransactionById
- Ursprünglicher Methodenname:
getTransactionById
- Diese GET-Methode gibt die Transaktionshistorie für eine angegebene Transaktions-ID zurück. Dies ist eine asynchrone Methode. Diese Methode kann von jedem Benutzer aufgerufen werden.
- Abfrage:
/getTransactionById?transactionId=transactionId value
- Parameter:
transactionId: string
: Die ID der Transaktion. Dies ist das Präfixotransaction~
gefolgt vom 64-Bit-Hash im hexadezimalen Format.
- Beispiel für Rückgabewerte:
{ "transactionId": "otransaction~9ea7b05ab099f7ff4db8342b8c3609031f1d54f11205906e7f1fe88661fe3cbe~33b59ce0c89e96c1e16449f24301581e8e71954f38ad977c7eb6f065e87f2a53", "history": [ { "trxId": "9ea7b05ab099f7ff4db8342b8c3609031f1d54f11205906e7f1fe88661fe3cbe", "timeStamp": "2022-12-08T09:01:28.000Z", "value": { "assetType": "otransaction", "transactionId": "otransaction~9ea7b05ab099f7ff4db8342b8c3609031f1d54f11205906e7f1fe88661fe3cbe~33b59ce0c89e96c1e16449f24301581e8e71954f38ad977c7eb6f065e87f2a53", "tokenId": "tokenOne", "fromAccountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a", "toAccountId": "", "transactionType": "BURN", "amount": 5, "timestamp": "2022-12-08T09:01:28.000Z", "triggeredByUserAccountId": "ouaccount~24ffd4d32a028a85b4b960f5d55536c837b5429bc7f346150adfa904ec2937cc" } } ] }
-
getUserByAccountId
- Ursprünglicher Methodenname:
getUserByAccountId
- Diese GET-Methode gibt die Organisations-ID und die Benutzer-ID für eine angegebene Konto-ID zurück.
- Abfrage:
/getUserByAccountId?accountId=accountId value
- Parameter:
accountId: string
: Die ID des Accounts.
- Beispiel für Rückgabewerte:
{ "orgId": "AppBldFFFFMay22", "userId": "user2" }
-
getUsersByRole
- Ursprünglicher Methodenname:
getUsersByRole
- Diese GET-Methode gibt eine Liste aller Benutzer für eine angegebene Rolle zurück.
- Abfrage:
/getUsersByRole?role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parameter:
role: string
: Der Name der Rolle, nach der gesucht werden soll.tokenDetail: TokenDetail
: Die Details, die das Token angeben. Verwenden Sie für fungible Token das folgende Format:
Verwenden Sie für nicht fungible Token das folgende Format:{"tokenId":"token1"}
{"tokenName":"artCollection"}
- Beispiel für Rückgabewerte:
{ "users": [ { "accountId": "oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a", "orgId": "appdev", "userId": "user2" }, { "accountId": "oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b", "orgId": "appdev", "userId": "user1" } ] }
-
init
- Ursprünglicher Methodenname:
init
- Diese POST-Methode wird aufgerufen, wenn der Chaincode bereitgestellt wird. Die Benutzerinformationen werden als
Token Admin
des Chaincodes gespeichert. - Payload:
{ "adminList": "[{\"orgId\":\"{{bc-org-id}}\",\"userId\":\"{{bc-user-id}}\"}]" }
- Parameter:
adminList array
: Ein Array mit{user_id, org_id}
-Informationen, das die Liste der Tokenadministratoren angibt. Das ArrayadminList
ist ein obligatorischer Parameter.
- Rückgabewert:
- Bei Erfolg eine Nachricht ohne Payload.
- Beispiel für Rückgabewerte:
{ }
-
isInRole
- Ursprünglicher Methodenname:
isInRole
- Diese GET-Methode gibt einen booleschen Wert zurück, um anzugeben, ob ein Benutzer über eine angegebene Rolle verfügt. Diese Methode kann nur von einem
Token Admin
des Chaincodes oder demAccount Owner
des Accounts aufgerufen werden. - Abfrage:
/isInRole?orgId={{bc-org-id}}&userId={{bc-user-id}}&role=role value (for example minter / burner)&tokenDetail={"tokenName":"tokenName value"}
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.role: string
: Der Name der Rolle, nach der gesucht werden soll.tokenDetail: TokenDetail
: Die Details, die das Token angeben. Verwenden Sie für fungible Token das folgende Format:
Verwenden Sie für nicht fungible Token das folgende Format:{"tokenId":"token1"}
{"tokenName":"artCollection"}
- Beispiel für Rückgabewerte:
{ "result": true, "msg": "Account Id oaccount~1422a74d262a3a55a37cd9023ef8836f765d0be7b49d397696b9961d7434d22a (Org-Id: appdev, User-Id: user2) has minter role" }
-
isTokenAdmin
- Ursprünglicher Methodenname:
isTokenAdmin
- Diese GET-Methode gibt den booleschen Wert
true
zurück, wenn der Aufrufer der Funktion einToken Admin
ist. Andernfalls wirdfalse
zurückgegeben. Diese Methode kann nur von einemToken Admin
des Chaincodes aufgerufen werden. - Abfrage:
/isTokenAdmin?orgId={{bc-org-id}}&userId={{bc-user-id}}
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.
- Rückgabewert:
- Die Methode gibt
true
zurück, wenn der Aufrufer einToken Admin
ist. Andernfalls wirdfalse
zurückgegeben.
- Die Methode gibt
- Beispiel für Rückgabewerte:
{ "result": true }
-
mintBatch
- Ursprünglicher Methodenname:
mintBatch
- Diese POST-Methode erstellt (mindert) mehrere Token in einem Batchvorgang. Diese Methode erstellt nur fungible Token oder fraktionierte nicht fungible Token.
Wenn für fungible Token die Minter-Rolle in der Spezifikationsdatei definiert ist, kann jeder Benutzer mit der Minter-Rolle diese Methode aufrufen. Wenn nicht, kann jeder Benutzer diese Methode verwenden, um Token zu mintieren. Sie können nicht mehr als die Eigenschaft
max_mint_quantity
des Tokens mintieren, wenn diese Eigenschaft beim Erstellen oder Aktualisieren des Tokens angegeben wurde.Wenn für nicht fungible Token die Minter-Rolle in der Spezifikationsdatei definiert ist, kann jeder Benutzer mit der Minter-Rolle diese Methode aufrufen. Wenn nicht, kann jeder Benutzer diese Methode verwenden, um Token zu mintieren. Darüber hinaus muss der Aufrufer auch der Ersteller des Tokens sein. Es gibt keine Obergrenze für die Menge an fraktionierten nicht fungiblen Token, die geprägt werden können.
Sie können diese Methode nicht verwenden, um ein ganzes nicht fungibles Token zu prägen.
- Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "tokenIds": "[\"{{bc-token-id}}\"]", "quantity": "[quantity value]", "sameOrgEndorser": true }
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.tokenIds: string[]
: Die Liste der Token-IDs, für die Token geprägt werden sollen.quantity: number[]
: Die Liste der Mengen der zu prägenden Token, die dem Token-ID-Array entsprechen.sameOrgEndorser: boolean
: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen aus derselben Organisation wie der Anforderer stammen müssen.
- Rückgabewert:
- Bei Erfolg ein JSON-Objekt, das Details zu den geprägten Token enthält.
- Beispiel für Rückgabewerte:
{ "msg": "Successfully minted batch of tokens for User-Account-Id ouaccount~412de5e3998dcd100973e1bad6e8729fddc1c7ff610beab8376d733a35c51f38 (Org-Id: AppBldFFFFMay22, User-Id: user2).", "details": [ { "msg": "Successfully minted 100 tokens of fractional tokenId: plot55 to Org-Id: AppBldFFFFMay22, User-Id: user2" }, { "msg": "Successfully minted 100 tokens of tokenId: loyalty to Token-Account-Id oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e" } ] }
-
name
- Ursprünglicher Methodenname:
name
- Diese GET-Methode gibt den Namen der Token-Klasse zurück. Jeder kann diese Methode nennen.
- Abfrage:
/name?tokenId={{bc-token-id}}
- Parameter:
tokenId: string
: Die ID des Tokens.
- Beispiel für Rückgabewerte:
{ "tokenName": "artcollection" }
-
ownerOf
- Ursprünglicher Methodenname:
ownerOf
- Diese GET-Methode gibt die Konto-ID der Eigentümer der angegebenen Token-ID zurück. Jeder kann diese Methode nennen.
- Abfrage:
/ownerOf?tokenId={{bc-token-id}}
- Parameter:
tokenId: string
: Die ID des Tokens.
- Rückgabewert:
- Ein JSON-Objekt der Konto-IDs der Eigentümer.
- Beispiel für Rückgabewerte:
[ { "accountId": "oaccount~42e89f4c72dfde9502814876423c6da630d466e87436dd1aae201d347ad1288d", "orgId": "Org1MSP", "userId": "admin" }, { "accountId": "oaccount~74108eca702bab6d8548e740254f2cc7955d886885251d52d065042172a59db0", "orgId": "Org1MSP", "userId": "user" } ]
-
post
- Ursprünglicher Methodenname:
post
- Diese POST-Methode bucht ein Token für den Verkauf zu einem angegebenen Preis.
- Payload:
{ "tokenId": "{{bc-token-id}}", "sellingPrice": 1, "endorsers": {{endorsers}} }
- Parameter:
tokenId: string
: Die ID des Tokens.sellingPrice: number
: Der Preis des Tokens.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
{ "msg": "Token ID : 'artCollection1' has been posted for selling in the marketplace" }
-
removeRole
- Ursprünglicher Methodenname:
removeRole
- Diese Methode entfernt eine Rolle von einem angegebenen Benutzer. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "role": "role value (for example minter / burner)", "tokenDetail": "{\"tokenName\":\"tokenName value\"}", "endorsers": {{endorsers}} }
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.role: string
: Der Name der Rolle, die aus dem angegebenen Benutzer entfernt werden soll.tokenDetail: TokenDetail
: Die Details, die das Token angeben. Verwenden Sie für fungible Token das folgende Format:
Verwenden Sie für nicht fungible Token das folgende Format:{"tokenId":"token1"}
{"tokenName":"artCollection"}
endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
{ "msg": "Successfully removed role 'minter' from Account Id: oaccount~60bb20c14a83f6e426e1437c479c5891e1c6477dfd7ad18b73acac5d80bc504b (Org-Id: appdev, User-Id: user1)" }
-
removeTokenAdmin
- Ursprünglicher Methodenname:
removeTokenAdmin
- Diese POST-Methode entfernt einen Benutzer als
Token Admin
des Chaincodes. Diese Methode kann nur von einemToken Admin
des Chaincodes aufgerufen werden. Ein Administrator kann sich nicht selbst entfernen. - Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "sameOrgEndorser": true }
- Parameter:
org_id: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.user_id: string
: Der Benutzername oder die E-Mail-ID des Benutzers.sameOrgEndorser: boolean
: Ein boolescher Wert, der angibt, ob Transaktionsbestätigungen aus derselben Organisation wie der Anforderer stammen müssen.
- Beispiel für Rückgabewerte:
{ "msg": "Successfully removed Admin (OrgId: appDev, UserId: user1)" }
-
safeBatchTransferFrom
- Ursprünglicher Methodenname:
safeBatchTransferFrom
- Diese POST-Methode überträgt das Eigentum an den angegebenen Token vom Aufrufer auf ein anderes Konto. Der Aufrufer dieser Methode muss der Absender der Token sein und Eigentümer der angegebenen Token sein. Bei partiellen NFTs verliert ein Benutzer, wenn er alle seine Shares an einen anderen Benutzer überträgt, das Eigentum an dem Token.
- Payload:
{ "fromOrgId": "fromOrgId value", "fromUserId": "fromUserId value", "toOrgId": "toOrgId value", "toUserId": "toUserId value", "tokenIds": "[\"{{bc-token-id}}\"]", "quantity": "[quantity value]", "endorsers": {{endorsers}} }
- Parameter:
fromOrgId: string
: Die Mitgliedschaftsserviceprovider-(MSP-)ID des Absenders und Tokeneigentümers in der aktuellen Organisation.fromUserId: string
: Der Benutzername oder die E-Mail-ID des Absenders und Tokeneigentümers.toOrgId: string
: Die Mitgliedschaftsdienstleister-ID (MSP) des Empfängers in der aktuellen Organisation.toUserId: string
: Der Benutzername oder die E-Mail-ID des Empfängers.tokenIds: string[]
: Ein Array der IDs der zu übertragenden Token.quantity: number[]
: Die Liste der zu übertragenden Tokenmengen entsprechend dem Token-ID-Array.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
[ { "msg": "Successfully transferred NFT token: 'FNFT' of '10' quantity from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: AppBldFFFFMay22, User-Id: user2) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: AppBldFFFFMay22, User-Id: example_minter)" }, { "msg": "Successfully transferred 10 FT token: 'FT' from Account-Id: oaccount~21206f309941a2a23c4f158a0fe1b8f12bb8e2b0c9a2e1358f5efebc0c7d410e (Org-Id: AppBldFFFFMay22, User-Id: user2) to Account-Id: oaccount~1089ee5122f367ee0ca38c6660298f4b81f199627e4f67f3691c0f628237974c (Org-Id: AppBldFFFFMay22, User-Id: example_minter)" }, { "msg": "Successfully transferred NFT token: 'NFT' from Account-Id: oaccount~e88276a3be547e31b567346bdddde52d37734da4d5fae83ab2e5c98a10097371 (Org-Id: AppBldFFFFMay22, User-Id: user2) to Account-Id: oaccount~dcee860665db8740cb77b846e823752185a1e9a185814d0acb305890f5903446 (Org-Id: AppBldFFFFMay22, User-Id: example_minter)" } ]
-
suspendAccount
- Ursprünglicher Methodenname:
suspendAccount
- Diese POST-Methode setzt ein fungibles Token-Konto aus. Es löst einen Fehler aus, wenn kein
accountStatus
-Wert im Buch gefunden wird. Diese Methode kann nur von einemToken Admin
des Chaincodes aufgerufen werden. - Payload:
{ "orgId": "{{bc-org-id}}", "userId": "{{bc-user-id}}", "endorsers": {{endorsers}} }
- Parameter:
orgId: string
- Die Mitgliedschaftsserviceanbieter-ID (MSP) des Benutzers in der aktuellen Organisation.userId: string
: Der Benutzername oder die E-Mail-ID des Benutzers.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
{ "assetType": "oaccountStatus", "status_id": "oaccountStatus~5a0b0d8b1c6433af9fedfe0d9e6580e7cf6b6bb62a0de6267aaf79f79d5e96d7", "account_id": "oaccount~1c568151c4acbcd1bd265c766c677145760a61c47fc8a3ba681a4cfbe287f9c1", "status": "suspended" }
-
totalNetSupply
- Ursprünglicher Methodenname:
totalNetSupply
- Diese GET-Methode gibt die Gesamtanzahl der geprägten Token abzüglich der Anzahl der gebrannten Token zurück. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Abfrage (ungültige Token):
/totalNetSupply?tokenDetail={"tokenId":"{{bc-token-id}}"}
- Abfrage (nicht-ungültige Token):
/totalNetSupply?tokenDetail={"tokenName":"tokenName value"}
- Parameter:
tokenDetail: TokenDetail
: Die Details, die das Token angeben. Verwenden Sie für fungible Token das folgende Format:
Verwenden Sie für nicht fungible Token das folgende Format:{"tokenId":"token1"}
{"tokenName":"artCollection"}
- Beispiel für Rückgabewerte:
{ "totalNetSupply": 105 }
-
totalSupply
- Ursprünglicher Methodenname:
totalSupply
- Diese GET-Methode gibt die Gesamtanzahl der geprägten Token zurück. Diese Methode kann nur von einem
Token Admin
des Chaincodes aufgerufen werden. - Abfrage (ungültige Token):
/totalSupply?tokenDetail={"tokenId":"{{bc-token-id}}"}
- Abfrage (nicht-ungültige Token):
/totalSupply?tokenDetail={"tokenName":"tokenName value"}
- Parameter:
tokenDetail: TokenDetail
: Die Details, die das Token angeben. Verwenden Sie für fungible Token das folgende Format:
Verwenden Sie für nicht fungible Token das folgende Format:{"tokenId":"token1"}
{"tokenName":"artCollection"}
- Beispiel für Rückgabewerte:
{ "totalSupply": 110 }
-
updateArtCollectionToken
- Ursprünglicher Methodenname:
updateArtCollectionToken
- Diese POST-Methode aktualisiert Tokeneigenschaften. Nur der Token-Eigentümer kann diese Methode aufrufen. Bei NFTs können die Tokenmetadaten und die Token-URI nicht aktualisiert werden, nachdem das Token geprägt wurde.
- Payload:
{ "tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"tokenUri\":\"tokenUri value\",\"status\":\"status value\", \"tokenMetadata\":{\"ISIN\":\"ISIN value\",\"Segment\":\"Segment value\",\"Issuer\":\"Issuer value\",\"FaceValue\":999,\"IssueSize\":999,\"CouponRate\":999,\"InterestPaymentType\":\"InterestPaymentType value\",\"InterestFrequency\":\"InterestFrequency value\",\"IssueDate\":\"2023-03-28T15:16:36+00:00\",\"MaturityDate\":\"2023-03-28T15:16:36+00:00\"},\"status\":\"status value\"}", "sameOrgEndorser": true }
- Parameter:
tokenAsset: <Token Class>
: Das zu aktualisierende Tokenasset. Weitere Informationen zu den Eigenschaften des Tokenassets finden Sie in der Eingabespezifikationsdatei.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
{ "tokenMetadata": { "ISIN": "ISIN value", "Segment": "Segment value", "Issuer": "Issuer value", "FaceValue": 999, "IssueSize": 999, "CouponRate": 999, "InterestPaymentType": "simple", "InterestFrequency": "monthly", "IssueDate": "2023-03-28T15:16:36.000Z", "MaturityDate": "2023-03-28T15:16:36.000Z" }, "assetType": "otoken", "events": false, "tokenId": "token2", "tokenName": "bond", "tokenDesc": "tokenDesc value", "tokenStandard": "erc1155+", "tokenType": "nonfungible", "tokenUnit": "fractional", "behaviors": [ "divisible", "mintable", "transferable", "burnable", "roles" ], "roles": { "minter_role_name": "minter", "burner_role_name": "burner" }, "mintable": { "max_mint_quantity": 0 }, "quantity": 10, "createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43", "creationDate": "2024-12-03T12:07:24.000Z", "divisible": { "decimal": 0 }, "isBurned": false, "isLocked": false, "tokenUri": "tokenUri value", "status": "created" }
-
updateLoyaltyToken
- Ursprünglicher Methodenname:
updateLoyaltyToken
- Diese POST-Methode aktualisiert Tokeneigenschaften. Nur der Token-Eigentümer kann diese Methode aufrufen. Bei NFTs können die Tokenmetadaten und die Token-URI nicht aktualisiert werden, nachdem das Token geprägt wurde.
- Payload:
{ "tokenAsset": "{\"tokenId\":\"{{bc-token-id}}\",\"tokenDesc\":\"tokenDesc value\",\"Token_Name\":\"Token_Name value\",\"Token_to_Currency_Ratio\":999}", "sameOrgEndorser": true }
- Parameter:
tokenAsset: <Token Class>
: Das zu aktualisierende Tokenasset. Weitere Informationen zu den Eigenschaften des Tokenassets finden Sie in der Eingabespezifikationsdatei.endorsers: string[]
: Ein Array der Peers (z.B.peer1
,peer2
), das die Transaktion bestätigen muss.
- Beispiel für Rückgabewerte:
{ "assetType": "otoken", "events": false, "tokenId": "token2", "tokenName": "loyalty", "tokenDesc": "tokenDesc value", "tokenStandard": "erc1155+", "tokenType": "fungible", "tokenUnit": "fractional", "behaviors": [ "divisible", "mintable", "transferable", "burnable", "roles" ], "roles": { "minter_role_name": "minter", "burner_role_name": "burner" }, "mintable": { "max_mint_quantity": 0 }, "quantity": 10, "createdBy": "oaccount~85dfd98d1b99e5b8891e0a0fdcd7d2e07fc5d37958f5d2a5796290b6a9204a43", "creationDate": "2024-12-03T12:07:24.000Z", "divisible": { "decimal": 0 }, "isBurned": false, "isLocked": false, "tokenUri": "tokenUri value", "status": "created" }
-
URI
- Ursprünglicher Methodenname:
URI
- Diese GET-Methode gibt die URI eines angegebenen Tokens zurück. Nur der Token-Ersteller kann diese Methode aufrufen.
- Abfrage
/URI?tokenId={{bc-token-id}}
- Parameter:
tokenId: string
: Die ID des Tokens.
- Beispiel für Rückgabewerte:
{ "tokenUri": "example.com" }